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 /conform | |
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 'conform')
-rw-r--r-- | conform/Makefile | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/conform/Makefile b/conform/Makefile index eed2843043..8f07d87ca5 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -414,7 +414,6 @@ test-xfail-XOPEN2K/glob.h/linknamespace = yes test-xfail-XOPEN2K/grp.h/linknamespace = yes test-xfail-XOPEN2K/libgen.h/linknamespace = yes test-xfail-XOPEN2K/mqueue.h/linknamespace = yes -test-xfail-XOPEN2K/net/if.h/linknamespace = yes test-xfail-XOPEN2K/netdb.h/linknamespace = yes test-xfail-XOPEN2K/pthread.h/linknamespace = yes test-xfail-XOPEN2K/pwd.h/linknamespace = yes @@ -436,7 +435,6 @@ test-xfail-POSIX2008/dirent.h/linknamespace = yes test-xfail-POSIX2008/fcntl.h/linknamespace = yes test-xfail-POSIX2008/grp.h/linknamespace = yes test-xfail-POSIX2008/mqueue.h/linknamespace = yes -test-xfail-POSIX2008/net/if.h/linknamespace = yes test-xfail-POSIX2008/netdb.h/linknamespace = yes test-xfail-POSIX2008/pthread.h/linknamespace = yes test-xfail-POSIX2008/regex.h/linknamespace = yes @@ -451,7 +449,6 @@ test-xfail-XOPEN2K8/fmtmsg.h/linknamespace = yes test-xfail-XOPEN2K8/grp.h/linknamespace = yes test-xfail-XOPEN2K8/libgen.h/linknamespace = yes test-xfail-XOPEN2K8/mqueue.h/linknamespace = yes -test-xfail-XOPEN2K8/net/if.h/linknamespace = yes test-xfail-XOPEN2K8/netdb.h/linknamespace = yes test-xfail-XOPEN2K8/pthread.h/linknamespace = yes test-xfail-XOPEN2K8/pwd.h/linknamespace = yes |