Added <ifaddrs.h> interface with functions `getifaddrs', `freeifaddrs'.
authorRoland McGrath <roland@gnu.org>
Wed, 24 Jul 2002 22:56:44 +0000 (22:56 +0000)
committerRoland McGrath <roland@gnu.org>
Wed, 24 Jul 2002 22:56:44 +0000 (22:56 +0000)
commit7f1deee65e0a90d9e6699068b5d63a28d2546e12
treeb75aefbdd5d6d8347e0d4d3f665d8e49fcf6c43b
parent11d657d7278ae4f96f0f4c8655991f2818d0eeb9
Added <ifaddrs.h> interface with functions `getifaddrs', `freeifaddrs'.

This implementation supports only IPv4.
* inet/ifaddrs.h: New file.
* sysdeps/generic/ifaddrs.c: New file.
* sysdeps/gnu/ifaddrs.c: New file.
* inet/test-ifaddrs.c: New file.
* inet/Makefile (routines): Add ifaddrs.
(headers): Add ifaddrs.h here.
(tests): Add test-ifaddrs.
* inet/Versions (GLIBC_2.3): New set, add getifaddrs and freeifaddrs.

* resolv/res_hconf.c (_res_hconf_reorder_addrs): Use an explicit
socket call to get an AF_INET socket, instead of using __opensock.
The SIOCGIFNETMASK ioctl will work only with a PF_INET socket.

* sysdeps/generic/ifreq.h (__ifreq): Take third argument SOCKFD,
if not -1 use it instead of calling __opensock.
* sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise.
* sysdeps/mach/hurd/ifreq.h (__ifreq): Take new argument and ignore it.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Pass new argument.

* sysdeps/mach/hurd/ifreq.h: New file.
* sysdeps/generic/ifreq.h (__if_freereq): Take second argument NUM_IFS.
* sysdeps/unix/sysv/linux/ifreq.h (__if_freereq): Likewise.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Update caller.
ChangeLog
inet/Makefile
inet/Versions
inet/ifaddrs.h [new file with mode: 0644]
inet/test-ifaddrs.c [new file with mode: 0644]
resolv/res_hconf.c
sysdeps/generic/ifaddrs.c [new file with mode: 0644]
sysdeps/generic/ifreq.h
sysdeps/gnu/ifaddrs.c [new file with mode: 0644]
sysdeps/mach/hurd/ifreq.h [new file with mode: 0644]
sysdeps/unix/sysv/linux/ifreq.h