PERFORCE change 82530 for review
Robert Watson
rwatson at FreeBSD.org
Thu Aug 25 13:35:16 GMT 2005
http://perforce.freebsd.org/chv.cgi?CH=82530
Change 82530 by rwatson at rwatson_paprika on 2005/08/25 13:35:05
Integrate netsmp:
- Loop back rtsock.c spl cleanup.
- proxy arp fix.
Affected files ...
.. //depot/projects/netsmp/src/sys/net/rtsock.c#7 integrate
.. //depot/projects/netsmp/src/sys/netinet/if_ether.c#4 integrate
Differences ...
==== //depot/projects/netsmp/src/sys/net/rtsock.c#7 (text+ko) ====
@@ -27,7 +27,7 @@
* SUCH DAMAGE.
*
* @(#)rtsock.c 8.7 (Berkeley) 10/12/95
- * $FreeBSD: src/sys/net/rtsock.c,v 1.126 2005/08/11 08:26:31 glebius Exp $
+ * $FreeBSD: src/sys/net/rtsock.c,v 1.127 2005/08/25 13:30:04 rwatson Exp $
*/
#include <sys/param.h>
==== //depot/projects/netsmp/src/sys/netinet/if_ether.c#4 (text+ko) ====
@@ -27,7 +27,7 @@
* SUCH DAMAGE.
*
* @(#)if_ether.c 8.1 (Berkeley) 6/10/93
- * $FreeBSD: src/sys/netinet/if_ether.c,v 1.139 2005/08/11 08:25:48 glebius Exp $
+ * $FreeBSD: src/sys/netinet/if_ether.c,v 1.140 2005/08/25 13:25:57 glebius Exp $
*/
/*
@@ -851,6 +851,15 @@
inet_ntoa(itaddr));
#endif
} else {
+ /*
+ * Return proxied ARP replies only on the interface
+ * where this network resides. Otherwise we may
+ * conflict with the host we are proxying for.
+ */
+ if (rt->rt_ifp != ifp) {
+ RT_UNLOCK(rt);
+ goto drop;
+ }
sdl = SDL(rt->rt_gateway);
(void)memcpy(ar_tha(ah), ar_sha(ah), ah->ar_hln);
(void)memcpy(ar_sha(ah), LLADDR(sdl), ah->ar_hln);
More information about the p4-projects
mailing list