Subject: Re: CVS commit: syssrc
To: None <firstname.lastname@example.org>
From: None <email@example.com>
Date: 10/08/2000 22:12:36
>Module Name: syssrc
>Committed By: enami
>Date: Sun Oct 8 09:15:29 UTC 2000
> syssrc/sys/netinet: in.c in_var.h
>- Keep track of allhost multicast address record we joined into
> each in_ifaddr and delete it when an address is purged.
maybe the above commit changed the goal slightly.
the goal of multicast kludge table (which i ported from
sys/netinet6/in6.c) was to keep multicast group information ONLY,
when all the interface address is gone. it was not my intention
to avoid the removal of the last IPv4 interface address.
could you tell me why is the change?
>- Don't simply try to delete a multicast address record listed in the
> ia_multiaddrs. It results a dangling pointer. Let who holds a
> reference to it to delete it.
this refers to in_purgemkludge(), correct? i experimented this
with IPv6 case and IPv4 case, and don't understand why we have
dangling pointer. i assumed that in_purgemkludge() is called
only after we flushed all interface addresses.