summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2014-07-18 07:41:38 +0000
committerpeter <peter@FreeBSD.org>2014-07-18 07:41:38 +0000
commitd4e36a8d1165a024b5f898eee84115aa9fcbf8de (patch)
treec30c9aabda6db89b9965255021f3c6f0bd9ff2b9 /sys
parent2c479407e0afce2c05606d6d9c052858196fcea2 (diff)
downloadFreeBSD-src-d4e36a8d1165a024b5f898eee84115aa9fcbf8de.zip
FreeBSD-src-d4e36a8d1165a024b5f898eee84115aa9fcbf8de.tar.gz
Fix an apparent conversion error in bge to the new driver api.
if_multiaddr_array() does the LLADDR work, don't do it twice. This broke IPv6 in "interesting" ways in the FreeBSD.org cluster.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/bge/if_bge.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c
index 69c8ba8..80715ef 100644
--- a/sys/dev/bge/if_bge.c
+++ b/sys/dev/bge/if_bge.c
@@ -1646,8 +1646,8 @@ bge_setmulti(struct bge_softc *sc)
if_multiaddr_array(ifp, mta, &mcnt, mc_count);
for(i = 0; i < mcnt; i++) {
- h = ether_crc32_le(LLADDR((struct sockaddr_dl *)
- (mta + (i * ETHER_ADDR_LEN))), ETHER_ADDR_LEN) & 0x7F;
+ h = ether_crc32_le(mta + (i * ETHER_ADDR_LEN),
+ ETHER_ADDR_LEN) & 0x7F;
hashes[(h & 0x60) >> 5] |= 1 << (h & 0x1F);
}
OpenPOWER on IntegriCloud