diff options
-rw-r--r-- | sys/dev/de/if_de.c | 6 | ||||
-rw-r--r-- | sys/pci/if_de.c | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/sys/dev/de/if_de.c b/sys/dev/de/if_de.c index 49ae4a2..f3f0a2b 100644 --- a/sys/dev/de/if_de.c +++ b/sys/dev/de/if_de.c @@ -1,5 +1,5 @@ /* $NetBSD: if_de.c,v 1.80 1998/09/25 18:06:53 matt Exp $ */ -/* $Id: if_de.c,v 1.97 1999/01/29 08:29:05 bde Exp $ */ +/* $Id: if_de.c,v 1.98 1999/01/29 11:31:45 bde Exp $ */ /*- * Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com) @@ -3085,7 +3085,8 @@ tulip_addr_filter( sc->tulip_cmdmode &= ~TULIP_CMD_RXRUN; sc->tulip_intrmask &= ~TULIP_STS_RXSTOPPED; #if defined(IFF_ALLMULTI) - sc->tulip_if.if_flags &= ~IFF_ALLMULTI; + if (sc->tulip_if.if_flags & IFF_ALLMULTI) + sc->tulip_flags |= TULIP_ALLMULTI ; #endif #if defined(__FreeBSD__) && __FreeBSD_version >= 300000 @@ -4754,6 +4755,7 @@ tulip_ifioctl( printf(TULIP_PRINTF_FMT ": ignored invalid media request\n", TULIP_PRINTF_ARGS); } #endif + tulip_addr_filter(sc); /* reinit multicast filter */ tulip_init(sc); break; } diff --git a/sys/pci/if_de.c b/sys/pci/if_de.c index 49ae4a2..f3f0a2b 100644 --- a/sys/pci/if_de.c +++ b/sys/pci/if_de.c @@ -1,5 +1,5 @@ /* $NetBSD: if_de.c,v 1.80 1998/09/25 18:06:53 matt Exp $ */ -/* $Id: if_de.c,v 1.97 1999/01/29 08:29:05 bde Exp $ */ +/* $Id: if_de.c,v 1.98 1999/01/29 11:31:45 bde Exp $ */ /*- * Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com) @@ -3085,7 +3085,8 @@ tulip_addr_filter( sc->tulip_cmdmode &= ~TULIP_CMD_RXRUN; sc->tulip_intrmask &= ~TULIP_STS_RXSTOPPED; #if defined(IFF_ALLMULTI) - sc->tulip_if.if_flags &= ~IFF_ALLMULTI; + if (sc->tulip_if.if_flags & IFF_ALLMULTI) + sc->tulip_flags |= TULIP_ALLMULTI ; #endif #if defined(__FreeBSD__) && __FreeBSD_version >= 300000 @@ -4754,6 +4755,7 @@ tulip_ifioctl( printf(TULIP_PRINTF_FMT ": ignored invalid media request\n", TULIP_PRINTF_ARGS); } #endif + tulip_addr_filter(sc); /* reinit multicast filter */ tulip_init(sc); break; } |