summaryrefslogtreecommitdiff
path: root/sys/dev/ic
diff options
context:
space:
mode:
authorJason Wright <jason@cvs.openbsd.org>2002-08-22 19:08:51 +0000
committerJason Wright <jason@cvs.openbsd.org>2002-08-22 19:08:51 +0000
commit0ef60d853496c4e43402fb804192bfe0b64132f3 (patch)
treebf1f4596c0d7a865368bc3dc446ece4ba5515359 /sys/dev/ic
parent21a853ee5713a8583eedacf655aabc75d888e454 (diff)
simplify multicast setup on the 3c905 (pre-B/C, etc)
Diffstat (limited to 'sys/dev/ic')
-rw-r--r--sys/dev/ic/xl.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/sys/dev/ic/xl.c b/sys/dev/ic/xl.c
index 3e57c501a51..c0a31b87c95 100644
--- a/sys/dev/ic/xl.c
+++ b/sys/dev/ic/xl.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: xl.c,v 1.40 2002/07/09 05:49:53 aaron Exp $ */
+/* $OpenBSD: xl.c,v 1.41 2002/08/22 19:08:50 jason Exp $ */
/*
* Copyright (c) 1997, 1998, 1999
@@ -634,10 +634,7 @@ void xl_setmulti(sc)
{
struct ifnet *ifp;
struct arpcom *ac = &sc->sc_arpcom;
- struct ether_multi *enm;
- struct ether_multistep step;
u_int8_t rxfilt;
- int mcnt = 0;
ifp = &sc->sc_arpcom.ac_if;
@@ -650,13 +647,7 @@ void xl_setmulti(sc)
return;
}
- ETHER_FIRST_MULTI(step, ac, enm);
- while (enm != NULL) {
- mcnt++;
- ETHER_NEXT_MULTI(step, enm);
- }
-
- if (mcnt)
+ if (ac->ac_multicnt > 0)
rxfilt |= XL_RXFILTER_ALLMULTI;
else
rxfilt &= ~XL_RXFILTER_ALLMULTI;