> * Mark Andrews :
> > Complain to the Linux IPv6 stack developers. Every other OS
> > extended their sysctl()/ioctl() methods of interface scanning.
> > Linux is the only platform where the developers felt the need
> > to do this through the file system.

>
> Where's the problem with using getaddrinfo(3) to get the IP list?


I think you meant getifaddrs(3). getifaddrs(3) is a wrapper
around socket(2), sysctl(2), ioctl(2), close(2) and now
open(2) and read(2). It was designed to hide the OS specific
details from application developers.

named uses getifaddrs(3) if it is available and it supports
IPv6. Otherwise we do it the hard way.

getifaddrs(3) won't save you if the IPv6 stack developers
havn't provided a non file system method to get the interface
addresses. AFAIK the only way to get the list of interface
addresses under Linux is to use the file system either directly
or via getifaddrs(3).

Mark

> Best regards,
> Daniel
>

--
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: Mark_Andrews@isc.org