The crash that I am seeing (using if_ndis) occurs in igmp_fasttimo... This patch doesn't fix that, I'll get more info as soon as I can. On Sat, 2009-03-14 at 14:06 -0700, Sam Leffler wrote: > This patches avoids the crash. Not sure how ifma_protospec is supposed > to be handled so I'm not committing it. > > Sam > > plain text document attachment (mcast.patch) > Index: in.c > =================================================================== > --- in.c (revision 189750) > +++ in.c (working copy) > _at__at_ -1040,7 +1040,8 _at__at_ > */ > IF_ADDR_LOCK(ifp); > TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { > - if (ifma->ifma_addr->sa_family != AF_INET) > + if (ifma->ifma_addr->sa_family != AF_INET || > + ifma->ifma_protospec == NULL) > continue; > inm = (struct in_multi *)ifma->ifma_protospec; > LIST_INSERT_HEAD(&purgeinms, inm, inm_link); > Index: igmp.c > =================================================================== > --- igmp.c (revision 189750) > +++ igmp.c (working copy) > _at__at_ -623,7 +623,8 _at__at_ > if (igi->igi_version == IGMP_VERSION_3) { > IF_ADDR_LOCK(ifp); > TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { > - if (ifma->ifma_addr->sa_family != AF_INET) > + if (ifma->ifma_addr->sa_family != AF_INET || > + ifma->ifma_protospec == NULL) > continue; > inm = (struct in_multi *)ifma->ifma_protospec; > if (inm->inm_state == IGMP_LEAVING_MEMBER) { > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org" -- Coleman Kane
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:44 UTC