diff options
author | Joseph Myers <joseph@codesourcery.com> | 2014-12-02 23:11:09 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2014-12-02 23:11:09 +0000 |
commit | 7f994279e900954f2b220a02fa01f2042eef74b1 (patch) | |
tree | e81fcdd2acfa38ebe638f0232f9beead60c02d8d /ChangeLog | |
parent | bbe4c142b024d639418069b480b0f3d05b489803 (diff) | |
download | glibc-7f994279e900954f2b220a02fa01f2042eef74b1.tar.gz glibc-7f994279e900954f2b220a02fa01f2042eef74b1.tar.xz glibc-7f994279e900954f2b220a02fa01f2042eef74b1.zip |
Fix getifaddrs, freeifaddrs namespace (bug 17668).
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.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index f8e0e6cb7d..cbdc3a4dce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +2014-12-02 Joseph Myers <joseph@codesourcery.com> + + [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. + 2014-12-02 Petar Jovanovic <petar.jovanovic@rt-rk.com> [BZ #17601] |