diff options
author | Grigoriy Orlov <gluk@cvs.openbsd.org> | 2001-05-15 15:12:55 +0000 |
---|---|---|
committer | Grigoriy Orlov <gluk@cvs.openbsd.org> | 2001-05-15 15:12:55 +0000 |
commit | 917189dc8402b639be51f798db3b118b7abc081c (patch) | |
tree | dbe64f79673d63a6923cf619124aa5432b96ead4 /sys/netinet/if_ether.c | |
parent | 3dfe3cabecf879e5c91491dd7be57eb9c139d404 (diff) |
Accept ARP packet coming from bridge interface without IP address
configured. But deny such a packet if it coming on "wrong" bridge.
Reported and tested by form@
ho@, jason@ Ok.
Diffstat (limited to 'sys/netinet/if_ether.c')
-rw-r--r-- | sys/netinet/if_ether.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c index e13c12aec00..b5cb5b146a5 100644 --- a/sys/netinet/if_ether.c +++ b/sys/netinet/if_ether.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_ether.c,v 1.28 2001/02/06 00:22:24 mickey Exp $ */ +/* $OpenBSD: if_ether.c,v 1.29 2001/05/15 15:12:54 gluk Exp $ */ /* $NetBSD: if_ether.c,v 1.31 1996/05/11 12:59:58 mycroft Exp $ */ /* @@ -538,7 +538,8 @@ in_arpinput(m) rt->rt_expire = 1; /* no longer static */ } } - } else if (rt->rt_ifp != &ac->ac_if) { + } else if (rt->rt_ifp != &ac->ac_if && !(ac->ac_if.if_bridge && + (rt->rt_ifp->if_bridge == ac->ac_if.if_bridge))) { log(LOG_WARNING, "arp: attempt to add entry for %s " "on %s by %s on %s\n", |