about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-07-20 15:58:35 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-12-28 08:40:38 -0300
commitcda4f265c65fb6c4ce38ca1cf0a7e527c5e77cd5 (patch)
tree08cea314723ae19c899357bc098baf9de570fc53 /sysdeps
parent311c9ee54ea963ff69bd3a2e6981c37e893b4c3e (diff)
downloadglibc-cda4f265c65fb6c4ce38ca1cf0a7e527c5e77cd5.tar.gz
glibc-cda4f265c65fb6c4ce38ca1cf0a7e527c5e77cd5.tar.xz
glibc-cda4f265c65fb6c4ce38ca1cf0a7e527c5e77cd5.zip
elf: Add _dl_audit_symbind_alt and _dl_audit_symbind
It consolidates the code required to call la_symbind{32,64} audit
callback.

Checked on x86_64-linux-gnu, i686-linux-gnu, and aarch64-linux-gnu.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/ldsodefs.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 2c9c615928..eff1c1fa46 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -1421,6 +1421,16 @@ void _dl_audit_objopen (struct link_map *l, Lmid_t nsid)
 /* Call the la_objclose from the audit modules for the link_map L.  */
 void _dl_audit_objclose (struct link_map *l)
   attribute_hidden;
+
+/* Call the la_symbind{32,64} from the audit modules for the link_map L.  */
+void _dl_audit_symbind (struct link_map *l, struct reloc_result *reloc_result,
+			const ElfW(Sym) *defsym, DL_FIXUP_VALUE_TYPE *value,
+			lookup_t result)
+  attribute_hidden;
+/* Same as _dl_audit_symbind, but also sets LA_SYMB_DLSYM flag.  */
+void _dl_audit_symbind_alt (struct link_map *l, const ElfW(Sym) *ref,
+			    void **value, lookup_t result);
+rtld_hidden_proto (_dl_audit_symbind_alt)
 #endif /* SHARED */
 
 #if PTHREAD_IN_LIBC && defined SHARED