summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 17:58:08 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 17:58:24 -0700
commitbde06c87b7de97b5cd4721414b11af6e0d09187e (patch)
tree269c7681b717a8b597d21e509899144450e637b5
parentfa4265909edaa5118f7860f452e2fb9da48d0f6e (diff)
Hide internal __new_exitfn function [BZ #18822]
Hide internal __new_exitfn function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * stdlib/exit.h (__new_exitfn): Add attribute_hidden.
-rw-r--r--ChangeLog5
-rw-r--r--stdlib/exit.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 85de0ee009..85e4e02941 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
2017-10-01 H.J. Lu <hongjiu.lu@intel.com>
[BZ #18822]
+ * stdlib/exit.h (__new_exitfn): Add attribute_hidden.
+
+2017-10-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #18822]
* mon/gmon.c (__moncontrol): Add libc_hidden_proto and
libc_hidden_def.
diff --git a/stdlib/exit.h b/stdlib/exit.h
index dbf9f2d01f..eea50725c6 100644
--- a/stdlib/exit.h
+++ b/stdlib/exit.h
@@ -77,8 +77,8 @@ extern bool __exit_funcs_done attribute_hidden;
__libc_lock_define (extern, __exit_funcs_lock);
-extern struct exit_function *__new_exitfn (struct exit_function_list **listp);
-
+extern struct exit_function *__new_exitfn (struct exit_function_list **listp)
+ attribute_hidden;
extern void __run_exit_handlers (int status,
struct exit_function_list **listp,