about summary refs log tree commit diff
path: root/sysdeps/gnu/ifaddrs.c
Commit message (Collapse)AuthorAgeFilesLines
* hurd: Fix `getifaddrs' and `freeifaddrs' symbol expositionSamuel Thibault2017-09-281-0/+2
| | | | | | | | | | | | | | | from `freeaddrinfo'. `getifaddrs' and `freeifaddrs' are not in POSIX, they should not be exposed along `freeaddrinfo' (through `__check_pf') which is POSIX. * include/ifaddrs.h (__getifaddrs, __freeifaddrs): New declarations, and use libc_hidden_def on them. * inet/ifaddrs.c (__getifaddrs, __freeifaddrs): Use libc_hidden_def on them. * sysdeps/gnu/ifaddrs.c (__getifaddrs, __freeifaddrs): Likewise. * inet/check_pf.c (__check_pf): Use __getifaddrs and __freeifaddrs instead of getifaddrs and freeifaddrs.
* Update copyright dates with scripts/update-copyrights.Joseph Myers2017-01-011-1/+1
|
* Update copyright dates with scripts/update-copyrights.Joseph Myers2016-01-041-1/+1
|
* Update copyright dates with scripts/update-copyrights.Joseph Myers2015-01-021-1/+1
|
* Fix getifaddrs, freeifaddrs namespace (bug 17668).Joseph Myers2014-12-021-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Various objects in glibc bring in ifaddrs.o (via references to __netlink_*) and thereby getifaddrs and freeifaddrs, which are not part of any standard supported by glibc. These should be weak aliases of __getifaddrs and __freeifaddrs; this patch makes them so. (The path by which these functions are brought in is Linux-specific, but it seems less confusing to make all versions of these functions weak aliases rather than only the Linux-specific versions that definitely need it.) Tested for x86_64 (testsuite, and that disassembly of installed shared libraries is unchanged by this patch). [BZ #17668] * inet/ifaddrs.c (getifaddrs): Rename to __getifaddrs and define as weak alias of __getifaddrs. Use libc_hidden_weak. (freeifaddrs): Rename to __freeifaddrs and define as weak alias of __freeifaddrs. Use libc_hidden_weak. * sysdeps/gnu/ifaddrs.c (getifaddrs): Rename to __getifaddrs and define as weak alias of __getifaddrs. Use libc_hidden_weak. (freeifaddrs): Rename to __freeifaddrs and define as weak alias of __freeifaddrs. Use libc_hidden_weak. * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Rename to __getifaddrs and define as weak alias of __getifaddrs. Use libc_hidden_weak. (freeifaddrs): Rename to __freeifaddrs and define as weak alias of __freeifaddrs. Use libc_hidden_weak. * conform/Makefile (test-xfail-XOPEN2K/net/if.h/linknamespace): Remove variable. (test-xfail-POSIX2008/net/if.h/linknamespace): Likewise. (test-xfail-XOPEN2K8/net/if.h/linknamespace): Likewise.
* Update copyright notices with scripts/update-copyrightsAllan McRae2014-01-011-1/+1
|
* Update copyright notices with scripts/update-copyrights.Joseph Myers2013-01-021-1/+1
|
* Replace FSF snail mail address with URLs.Paul Eggert2012-02-091-3/+2
|
* Update.Ulrich Drepper2003-04-241-1/+5
| | | | | | | | | | | | | 2003-04-24 Ulrich Drepper <drepper@redhat.com> * include/ifaddrs.h: New file. * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and AI_ADDRCONFIG... * resolv/netdb.h: ...here. * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate. * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise. * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and AI_ADDRCONFIG.
* * inet/test-ifaddrs.c (main: addr_string): Handle null SA.Roland McGrath2002-11-261-11/+19
| | | | | | | | | | | | | | | | Grok AF_LINK if defined. From Momchil Velikov <velco@fadata.bg>. * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask, brdaddr, or dstaddr, just set those pointers to null and don't fail. Reported by Momchil Velikov <velco@fadata.bg>. * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len is > sizeof IFR->ifa_addr, advance past the whole longer length. (__ifreq): Count up NIFS that way too. Reported by Momchil Velikov <velco@fadata.bg>. * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
* * sysdeps/generic/ifreq.h (__if_nextreq): New function.Roland McGrath2002-09-201-3/+7
| | | | | | | | | | | * sysdeps/unix/sysv/linux/ifreq.h (__if_nextreq): New function. * sysdeps/mach/hurd/ifreq.h (__if_nextreq): New function. * sysdeps/gnu/ifaddrs.c (getifaddrs): Use __if_nextreq for iterating through the list of interfaces. * resolv/res_hconf.c (_res_hconf_reorder_addrs): Likewise. * sysdeps/unix/grantpt.c (pts_name): Set errno when __ptsname_r fails. Reported by Bruno Haible <bruno@clisp.org>.
* Added <ifaddrs.h> interface with functions `getifaddrs', `freeifaddrs'.Roland McGrath2002-07-241-0/+147
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.