Subject: Re: if_detach
To: Jason Thorpe <thorpej@nas.nasa.gov>
From: None <itojun@iijlab.net>
List: tech-net
Date: 02/02/2000 15:16:37
> > in6_purgeaddr() calls in6_savemkludge(). when the last interface
> > address is removed by in6_purgeaddr(), the list of joined multicast
> > group will be attached into in6_mk. when if_detach() removes ifnet
> > from if_list, I think if_detach should notify IPv6 part and ask
> > removal of kludge entry (otherwise ifnet * will be kept there).
>Well... here's what I have:
> if (oia->ia6_multiaddrs.lh_first != NULL) {
(snip)
>...i.e. if the interface associated with the ifaddr is dead, delete
>the multicast addresses, rather than do the savemkludge... shouldn't
>that get rid of them?
> > i think the code does the thing right. the missing piece is
> > removal of kludge entry when ifnet goes invisible by if_detach
> > (I think kludge entry should go away - am I correct?)
>Right... Shouldn't my code do that? :-)
oops sorry, I misread that part. It should do the right thing.
(still waiting for make build to complete....)
>BTW, I've also noticed that ARP entries for IPv4 aren't going
>away (don't know why I didn't notice that before, sigh). I
>do a routing table walk, so I'm a little confused about what's
>really going on here... clearly time for more printfs...
will situation change if we remove options INET6? or some other
reasons?
itojun