Date: Mon, 15 May 1995 23:50:01 -0700 From: Paul Traina <pst@Shockwave.COM> To: freebsd-bugs Subject: kern/424: if_ep driver does not support multicast Message-ID: <199505160650.XAA00909@freefall.cdrom.com> In-Reply-To: Your message of Mon, 15 May 1995 23:45:23 -0700 <199505160645.XAA21674@precipice.shockwave.com>
next in thread | previous in thread | raw e-mail | index | archive | help
>Number: 424 >Category: kern >Synopsis: 3COM 3C509 driver doesn't support multicast >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs (FreeBSD bugs mailing list) >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon May 15 23:50:00 1995 >Originator: Rob Widmer >Organization: cisco Systems, Inc. >Release: FreeBSD 2.0 >Environment: FreeBSD 2.0, 3COM 3C509 (if_ep) >Description: Add multicast support >How-To-Repeat: >Fix: *** 559,564 **** --- 559,565 ---- ifp->if_name = "ep"; ifp->if_mtu = ETHERMTU; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_NOTRAILERS; + ifp->if_flags |= IFF_MULTICAST; ifp->if_init = epinit; ifp->if_output = ether_output; ifp->if_start = epstart; *************** *** 1336,1341 **** --- 1337,1363 ---- ifp->if_mtu = ifr->ifr_mtu; } break; + + case SIOCADDMULTI: + case SIOCDELMULTI: + /* + * Update our multicast listeners + */ + if (cmd == SIOCADDMULTI) { + ether_addmulti(ifr, &sc->arpcom); + } else { + ether_delmulti(ifr, &sc->arpcom); + } + + if (error == ENETRESET) { + /* + * Multicast list has changed; set the + * hardware filter accordingly + */ + epreset(ifp->if_unit); + error = 0; + } + break; default: error = EINVAL; >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199505160650.XAA00909>