summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorHakan Olsson <ho@cvs.openbsd.org>2003-12-18 09:23:15 +0000
committerHakan Olsson <ho@cvs.openbsd.org>2003-12-18 09:23:15 +0000
commit500d47bdcfc062c26442b82c44d9c2763124417e (patch)
treec55eff1e1083ab927cc786ba89407151712213e5 /sys
parent455f4c4db1979d203380c14a8e5f8ddcc1ff4ff1 (diff)
Permit ethernet multicast addresses, as used by some HA/failover solutions. Suggested by and ok markus@.
Diffstat (limited to 'sys')
-rw-r--r--sys/netinet/if_ether.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c
index a7de46f9948..7153125e150 100644
--- a/sys/netinet/if_ether.c
+++ b/sys/netinet/if_ether.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ether.c,v 1.52 2003/12/10 07:22:43 itojun Exp $ */
+/* $OpenBSD: if_ether.c,v 1.53 2003/12/18 09:23:14 ho Exp $ */
/* $NetBSD: if_ether.c,v 1.31 1996/05/11 12:59:58 mycroft Exp $ */
/*
@@ -601,18 +601,13 @@ in_arpinput(m)
if (!bcmp((caddr_t)ea->arp_sha, enaddr, sizeof (ea->arp_sha)))
goto out; /* it's from me, ignore it. */
- if (ETHER_IS_MULTICAST (&ea->arp_sha[0])) {
+ if (ETHER_IS_MULTICAST (&ea->arp_sha[0]))
if (!bcmp((caddr_t)ea->arp_sha, (caddr_t)etherbroadcastaddr,
- sizeof (ea->arp_sha)))
- log(LOG_ERR,
- "arp: ether address is broadcast for IP address %s!\n",
- inet_ntoa(isaddr));
- else
- log(LOG_ERR,
- "arp: ether address is multicast for IP address %s!\n",
- inet_ntoa(isaddr));
- goto out;
- }
+ sizeof (ea->arp_sha))) {
+ log(LOG_ERR, "arp: ether address is broadcast for "
+ "IP address %s!\n", inet_ntoa(isaddr));
+ goto out;
+ }
if (myaddr.s_addr && isaddr.s_addr == myaddr.s_addr) {
log(LOG_ERR,
"duplicate IP address %s sent from ethernet address %s\n",