patch-2.2.16 linux/net/ipv4/arp.c
Next file: linux/net/ipv4/icmp.c
Previous file: linux/net/ipv4/Config.in
Back to the patch index
Back to the overall index
- Lines: 45
- Date:
Wed Jun 7 14:26:44 2000
- Orig file:
v2.2.15/linux/net/ipv4/arp.c
- Orig date:
Wed May 3 17:16:53 2000
diff -urN v2.2.15/linux/net/ipv4/arp.c linux/net/ipv4/arp.c
@@ -1,6 +1,6 @@
/* linux/net/inet/arp.c
*
- * Version: $Id: arp.c,v 1.77.2.5 1999/12/14 10:32:39 davem Exp $
+ * Version: $Id: arp.c,v 1.77.2.6 2000/05/27 04:46:43 davem Exp $
*
* Copyright (C) 1994 by Florian La Roche
*
@@ -65,6 +65,7 @@
* clean up the APFDDI & gen. FDDI bits.
* Alexey Kuznetsov: new arp state machine;
* now it is in net/core/neighbour.c.
+ * Krzysztof Halasa: Added Frame Relay ARP support.
* Julian Anastasov: "hidden" flag: hide the
* interface and don't reply for it
*/
@@ -618,7 +619,7 @@
#endif
}
- /* Undertsand only these message types */
+ /* Understand only these message types */
if (arp->ar_op != __constant_htons(ARPOP_REPLY) &&
arp->ar_op != __constant_htons(ARPOP_REQUEST))
@@ -634,12 +635,19 @@
tha=arp_ptr;
arp_ptr += dev->addr_len;
memcpy(&tip, arp_ptr, 4);
+
/*
* Check for bad requests for 127.x.x.x and requests for multicast
* addresses. If this is one such, delete it.
*/
if (LOOPBACK(tip) || MULTICAST(tip))
goto out;
+
+/*
+ * Special case: We must set Frame Relay source Q.922 address
+ */
+ if (dev_type == ARPHRD_DLCI)
+ sha = dev->broadcast;
/*
* Process entry. The idea here is we want to send a reply if it is a
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)