]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/ipv4/arp.c
Revert "ipv4: arp announce, arp_proxy and windows ip conflict verification"
[net-next-2.6.git] / net / ipv4 / arp.c
index 816494f271a72e6d1412a213026342a4f5f218b4..c29d75d8f1b124ee7706da2e145189eaf7c5b65e 100644 (file)
@@ -468,7 +468,7 @@ int arp_find(unsigned char *haddr, struct sk_buff *skb)
        __be32 paddr;
        struct neighbour *n;
 
-       if (!skb->dst) {
+       if (!skb_dst(skb)) {
                printk(KERN_DEBUG "arp_find is called with dst==NULL\n");
                kfree_skb(skb);
                return 1;
@@ -801,11 +801,8 @@ static int arp_process(struct sk_buff *skb)
  *  cache.
  */
 
-       /*
-        *  Special case: IPv4 duplicate address detection packet (RFC2131)
-        *  and Gratuitous ARP/ARP Announce. (RFC3927, Section 2.4)
-        */
-       if (sip == 0 || tip == sip) {
+       /* Special case: IPv4 duplicate address detection packet (RFC2131) */
+       if (sip == 0) {
                if (arp->ar_op == htons(ARPOP_REQUEST) &&
                    inet_addr_type(net, tip) == RTN_LOCAL &&
                    !arp_ignore(in_dev, sip, tip))