diff options
author | Joseph Myers <joseph@codesourcery.com> | 2015-02-18 18:47:34 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2015-02-18 18:47:34 +0000 |
commit | 4ffb1771554dd4661beb44be2036c598aa56c80a (patch) | |
tree | 28c5450c2dca041865cd73a3b1f90178fd7f20ba /ChangeLog | |
parent | 94c5a52a841f807a23dbdd19a5ddeb505cc1d543 (diff) | |
download | glibc-4ffb1771554dd4661beb44be2036c598aa56c80a.tar.gz glibc-4ffb1771554dd4661beb44be2036c598aa56c80a.tar.xz glibc-4ffb1771554dd4661beb44be2036c598aa56c80a.zip |
Fix search.h namespace (bug 17996).
The implementation of the (XSI POSIX) functions hsearch / hcreate / hdestroy uses hsearch_r / hcreate_r / hdestroy_r, which are not POSIX functions. This patch makes those into weak aliases for __*_r and uses those names for the calls within libc. Tested for x86_64 that the disassembly of installed shared libraries is unchanged by this patch. [BZ #17996] * include/search.h (hcreate_r): Don't use libc_hidden_proto. (hdestroy_r): Likewise. (hsearch_r): Likewise. (__hcreate_r): Declare and use libc_hidden_proto. (__hdestroy_r): Likewise. (__hsearch_r): Likewise. * misc/hsearch.c (hsearch): Call __hsearch_r instead of hsearch_r. (hcreate): Call __hcreate_r instead of hcreate_r. (__hdestroy): Call __hdestroy_r instead of hdestroy_r. * misc/hsearch_r.c (hcreate_r): Rename to __hcreate_r and define as weak alias of __hcreate_r. (hdestroy_r): Rename to __hdestroy_r and define as weak alias of __hdestroy_r. (hsearch_r): Rename to __hsearch_r and define as weak alias of __hsearch_r. * conform/Makefile (test-xfail-XPG3/search.h/linknamespace): Remove variable. (test-xfail-XPG4/search.h/linknamespace): Likewise. (test-xfail-UNIX98/search.h/linknamespace): Likewise. (test-xfail-XOPEN2K/search.h/linknamespace): Likewise. (test-xfail-XOPEN2K8/search.h/linknamespace): Likewise.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 3ada4f6ef0..6589167275 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,28 @@ +2015-02-18 Joseph Myers <joseph@codesourcery.com> + + [BZ #17996] + * include/search.h (hcreate_r): Don't use libc_hidden_proto. + (hdestroy_r): Likewise. + (hsearch_r): Likewise. + (__hcreate_r): Declare and use libc_hidden_proto. + (__hdestroy_r): Likewise. + (__hsearch_r): Likewise. + * misc/hsearch.c (hsearch): Call __hsearch_r instead of hsearch_r. + (hcreate): Call __hcreate_r instead of hcreate_r. + (__hdestroy): Call __hdestroy_r instead of hdestroy_r. + * misc/hsearch_r.c (hcreate_r): Rename to __hcreate_r and define + as weak alias of __hcreate_r. + (hdestroy_r): Rename to __hdestroy_r and define as weak alias of + __hdestroy_r. + (hsearch_r): Rename to __hsearch_r and define as weak alias of + __hsearch_r. + * conform/Makefile (test-xfail-XPG3/search.h/linknamespace): + Remove variable. + (test-xfail-XPG4/search.h/linknamespace): Likewise. + (test-xfail-UNIX98/search.h/linknamespace): Likewise. + (test-xfail-XOPEN2K/search.h/linknamespace): Likewise. + (test-xfail-XOPEN2K8/search.h/linknamespace): Likewise. + 2015-02-18 Siddhesh Poyarekar <siddhesh@redhat.com> * malloc/malloc.c (__libc_malloc): Consolidate arena_lookup and |