diff options
author | Wilco Dijkstra <wdijkstr@arm.com> | 2017-03-13 18:42:35 +0000 |
---|---|---|
committer | Wilco Dijkstra <wdijkstr@arm.com> | 2017-03-13 18:45:42 +0000 |
commit | ae65d4f3c3995279ca458c460ebf8bab1885fa03 (patch) | |
tree | afedd4aa53c009f9fe4b98d384a52db229d244a7 /inet | |
parent | 53a4608f8de7a89a41917ffeba9cd2098d6dec86 (diff) | |
download | glibc-ae65d4f3c3995279ca458c460ebf8bab1885fa03.zip glibc-ae65d4f3c3995279ca458c460ebf8bab1885fa03.tar.gz glibc-ae65d4f3c3995279ca458c460ebf8bab1885fa03.tar.bz2 |
Remove the str(n)dup inlines from string/bits/string2.h. Although inlining
calls with constant strings shows a small (~10%) performance gain, strdup is
typically used in error reporting code, so not performance critical.
Remove the now unused __need_malloc_and_calloc related defines from stdlib.h.
Rename existing uses of str(n)dup to __str(n)dup so it no longer needs to be
redirected to a builtin. Also building GLIBC with -Os now no longer shows
localplt or linkname space failures (partial fix for BZ #15105 and BZ #19463).
[BZ #15105]
[BZ #19463]
* elf/dl-cache.c (_dl_load_cache_lookup): Use __strdup.
* inet/rcmd.c (rcmd_af): Likewise.
* inet/rexec.c (rexec_af): Likewise.
* intl/dcigettext.c (_LIBC): Likewise.
* intl/finddomain.c (_nl_find_domain): Use strdup expansion.
* locale/loadarchive.c (_nl_load_locale_from_archive): Use __strdup.
* locale/setlocale.c (setlocale): Likewise.
* posix/spawn_faction_addopen.c
(posix_spawn_file_actions_addopen): Likewise.
* stdlib/putenv.c (putenv): Use __strndup.
* sunrpc/svc_simple.c (__registerrpc): Use __strdup.
* sysdeps/posix/getaddrinfo.c (gaih_inet): Use __strdup/__strndup.
* include/stdlib.h (__need_malloc_and_calloc): Remove uses.
(__Need_M_And_C) Remove define/undef.
* stdlib/stdlib.h (__need_malloc_and_calloc): Remove uses.
(__malloc_and_calloc_defined): Remove define.
* string/bits/string2.h (__strdup): Remove define.
(strdup): Likewise.
(__strndup): Likewise.
(strndup): Likewise.
Diffstat (limited to 'inet')
-rw-r--r-- | inet/rcmd.c | 2 | ||||
-rw-r--r-- | inet/rexec.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/inet/rcmd.c b/inet/rcmd.c index 8613d96..b7cc7a8 100644 --- a/inet/rcmd.c +++ b/inet/rcmd.c @@ -149,7 +149,7 @@ rcmd_af (char **ahost, u_short rport, const char *locuser, const char *remuser, if (res->ai_canonname){ free (ahostbuf); - ahostbuf = strdup (res->ai_canonname); + ahostbuf = __strdup (res->ai_canonname); if (ahostbuf == NULL) { __fxprintf(NULL, "%s", _("rcmd: Cannot allocate memory\n")); diff --git a/inet/rexec.c b/inet/rexec.c index 24ac4b1..43fb67b 100644 --- a/inet/rexec.c +++ b/inet/rexec.c @@ -73,7 +73,7 @@ rexec_af (char **ahost, int rport, const char *name, const char *pass, if (res0->ai_canonname){ free (ahostbuf); - ahostbuf = strdup (res0->ai_canonname); + ahostbuf = __strdup (res0->ai_canonname); if (ahostbuf == NULL) { perror ("rexec: strdup"); return (-1); |