summaryrefslogtreecommitdiffstats
path: root/sys/netinet/if_ether.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet/if_ether.c')
-rw-r--r--sys/netinet/if_ether.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c
index ac8d86d..2dbc38c 100644
--- a/sys/netinet/if_ether.c
+++ b/sys/netinet/if_ether.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)if_ether.c 8.1 (Berkeley) 6/10/93
- * $Id: if_ether.c,v 1.47 1998/06/12 03:48:14 julian Exp $
+ * $Id: if_ether.c,v 1.48 1998/09/17 00:04:21 fenner Exp $
*/
/*
@@ -41,6 +41,7 @@
*/
#include "opt_inet.h"
+#include "opt_bdg.h"
#include <sys/param.h>
#include <sys/kernel.h>
@@ -461,7 +462,16 @@ in_arpinput(m)
(void)memcpy(&isaddr, ea->arp_spa, sizeof (isaddr));
(void)memcpy(&itaddr, ea->arp_tpa, sizeof (itaddr));
for (ia = in_ifaddrhead.tqh_first; ia; ia = ia->ia_link.tqe_next)
+#ifdef BRIDGE
+ /*
+ * For a bridge, we want to check the address irrespective
+ * of the receive interface. (This will change slightly
+ * when we have clusters of interfaces).
+ */
+ {
+#else
if (ia->ia_ifp == &ac->ac_if) {
+#endif
maybe_ia = ia;
if ((itaddr.s_addr == ia->ia_addr.sin_addr.s_addr) ||
(isaddr.s_addr == ia->ia_addr.sin_addr.s_addr))
OpenPOWER on IntegriCloud