http://defect.opensolaris.org/bz/show_bug.cgi?id=13416


Anurag S. Maskey <Anurag.Maskey at Sun.COM> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ACCEPTED                    |FIXINPROGRESS


--- Comment #6 from Anurag S. Maskey <Anurag.Maskey at Sun.COM> 2010-01-07 
20:49:25 UTC ---
The nwamd_if_address structure has been expanded to include the ifname of the
interface that has the given address.  These structures are also created for
DHCP-assigned and autoconf assigned address, so that their ifnames are also
saved.

When the routing socket messages are received, IF_STATE events are created
without the lifnum.  Thus, nwe_data.nwe_if_state.nwe_ifname has been removed
from the nwam_event structure (in libnwam.h).

When the IF_STATE event is handled in nwamd_ncu_handle_if_state_event, the
ifname is looked up:

* When addresses are added (RTM_NEWADDR/RTM_CHGADDR), the ifname is determined
by 
  walking the interface list and finding the interface with the address that
was 
  just added.  This ifname is stored in the nwamd_if_address structure.

* When addresses are removed (RTM_DELADDR/RTM_FREEADDR), the ifname is
determined 
  from the stored nwam_if_address structure.  The address is already gone from 
  the interface so we can't walk the interface list.

As before, IF_STATE events are not generated for routing socket messages for
0.0.0.0 and link-local addresses.

-- 
Configure bugmail: http://defect.opensolaris.org/bz/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Reply via email to