about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorCarlos O'Donell <carlos@redhat.com>2014-10-28 19:37:07 -0400
committerCarlos O'Donell <carlos@redhat.com>2014-10-28 19:46:15 -0400
commitcc00cecef5cca965191cd8f75aec85d6b4bb399a (patch)
tree2d2b8d5479307a5f65b575e227434c856d569dc6 /ChangeLog
parent51e623f2419c9f33423fa8e36ed9a9ff0d05e17e (diff)
downloadglibc-cc00cecef5cca965191cd8f75aec85d6b4bb399a.tar.gz
glibc-cc00cecef5cca965191cd8f75aec85d6b4bb399a.tar.xz
glibc-cc00cecef5cca965191cd8f75aec85d6b4bb399a.zip
elf/dl-load.c: Use __strdup.
During a refactoring pass several repeated blocks of code in dl-load.c
were turned into a call to a local function named local_strdup.  There
is no need for local_strdup, and the routines should instead call
__strdup.  This change does just that.  We call the internal symbol
__strdup because calling strdup is unsafe.  The user might be
using a standard that doesn't include strdup and may have defined this
symbol in their application. During a static link we might reference
the user defined symbol and crash if it doesn't implement a standards
conforming strdup. The resulting code is simpler to understand, and
makes it easier to debug.

No regressions on x86_64.

2014-10-28  Carlos O'Donell  <carlos@redhat.com>

	* dl-load.c (local_strdup): Remove.
	(expand_dynamic_string_token): Use __strdup.
	(decompose_rpath): Likewise.
	(_dl_map_object): Likewise.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog7
1 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 5c7bef3907..6874e5404d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2014-10-28  Carlos O'Donell  <carlos@redhat.com>
+
+	* dl-load.c (local_strdup): Remove.
+	(expand_dynamic_string_token): Use __strdup.
+	(decompose_rpath): Likewise.
+	(_dl_map_object): Likewise.
+
 2014-10-28  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #14132]