aboutsummaryrefslogtreecommitdiff
path: root/include/argp-fmtstream.h
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:10:12 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:10:27 -0700
commit8345a76018851ba52e05216e3d7c772e24d5da44 (patch)
tree721429a6743345f134c49961c3a0459560d16e08 /include/argp-fmtstream.h
parentc26dd7c600a2192d031efa2a0fb28b1ded85bf1d (diff)
downloadglibc-8345a76018851ba52e05216e3d7c772e24d5da44.tar
glibc-8345a76018851ba52e05216e3d7c772e24d5da44.tar.gz
glibc-8345a76018851ba52e05216e3d7c772e24d5da44.tar.bz2
glibc-8345a76018851ba52e05216e3d7c772e24d5da44.zip
Mark internal argp functions with attribute_hidden [BZ #18822]
Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise.
Diffstat (limited to 'include/argp-fmtstream.h')
-rw-r--r--include/argp-fmtstream.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/argp-fmtstream.h b/include/argp-fmtstream.h
new file mode 100644
index 0000000000..45c65ce834
--- /dev/null
+++ b/include/argp-fmtstream.h
@@ -0,0 +1,19 @@
+#ifndef _ARGP_FMTSTREAM_H
+#include <argp/argp-fmtstream.h>
+
+#ifndef _ISOMAC
+extern __typeof (__argp_fmtstream_ensure) __argp_fmtstream_ensure
+ attribute_hidden;
+extern __typeof (__argp_fmtstream_free) __argp_fmtstream_free
+ attribute_hidden;
+extern __typeof (__argp_fmtstream_printf) __argp_fmtstream_printf
+ attribute_hidden;
+extern __typeof (__argp_fmtstream_update) __argp_fmtstream_update
+ attribute_hidden;
+extern __typeof (__argp_fmtstream_write) __argp_fmtstream_write
+ attribute_hidden;
+extern __typeof (__argp_make_fmtstream) __argp_make_fmtstream
+ attribute_hidden;
+#endif
+
+#endif