OSDN Git Service

[PATCH] net/ipv4/arp.c: Fix arp reply when sender ip 0
authorJonas Danielsson <the.sator@gmail.com>
Tue, 20 Nov 2007 16:28:22 +0000 (17:28 +0100)
committerWilly Tarreau <w@1wt.eu>
Sat, 8 Dec 2007 10:39:03 +0000 (11:39 +0100)
Fix arp reply when received arp probe with sender ip 0.

Send arp reply with target ip address 0.0.0.0 and target hardware address
set to hardware address of requester. Previously sent reply with target
ip address and target hardware address set to same as source fields.

Signed-off-by: Jonas Danielsson <the.sator@gmail.com>
Acked-by: Alexey Kuznetov <kuznet@ms2.inr.ac.ru>
net/ipv4/arp.c

index 5742ff0..c8e61b8 100644 (file)
@@ -845,7 +845,8 @@ int arp_process(struct sk_buff *skb)
                if (arp->ar_op == htons(ARPOP_REQUEST) &&
                    inet_addr_type(tip) == RTN_LOCAL &&
                    !arp_ignore(in_dev,dev,sip,tip))
-                       arp_send(ARPOP_REPLY,ETH_P_ARP,tip,dev,tip,sha,dev->dev_addr,dev->dev_addr);
+                       arp_send(ARPOP_REPLY, ETH_P_ARP, sip, dev, tip, sha,
+                                dev->dev_addr, sha);
                goto out;
        }