tech-net archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: getifaddrs(3) returns 2 AF_LINK instances for the same interface
David Young wrote:
> I don't know. You will have to find out. IIRC, one of the AF_LINK
> records produced by getifaddrs(3) has the wrong netmask (should be
> all-1s), and the other has the struct if_data filled out. I don't know
> remember what other differences there are.
Do you mean the AF_LINK with the netmask is wrong?
>> How is userland supposed to pick the right AF_LINK or are they both right?
>
> I guess it depends on your purposes which is right. There may be more
> than two AF_LINK ifaddrs on an interface, BTW.
You mean two different if_data structures?
In simple terms, >1 hardware address? Interesting. So I need to check
for dups regardless of this outcome then.
>>> Have another look at the doco and source for getifaddrs(3). I think
>>> that if there is a bug, you will find it there.
>> I have checked and the last change of note was over 7 years ago.
>> So are you suggesting that getifaddrs(3) should ignore the _IFINFO
>> message or somehow merge it into the _NEWADDR one - if it's present?
>
> Based on my recollections, above, my guess is that getifaddrs(3) should
> merge the messages.
If we can have different AF_LINK addrs on the same interface then I how
would I know which AF_LINK addr was in _IFINFO so I could merge in the
correct data?
Thanks
Roy
Home |
Main Index |
Thread Index |
Old Index