summaryrefslogtreecommitdiff
path: root/libexec/ld.so/loader.c
diff options
context:
space:
mode:
Diffstat (limited to 'libexec/ld.so/loader.c')
-rw-r--r--libexec/ld.so/loader.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libexec/ld.so/loader.c b/libexec/ld.so/loader.c
index de53dc85d58..07cd0d8e107 100644
--- a/libexec/ld.so/loader.c
+++ b/libexec/ld.so/loader.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: loader.c,v 1.219 2024/01/14 09:39:03 kettenis Exp $ */
+/* $OpenBSD: loader.c,v 1.220 2024/01/16 19:07:31 deraadt Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -440,11 +440,14 @@ _dl_load_dep_libs(elf_object_t *object, int flags, int booting)
_dl_cache_grpsym_list_setup(object);
+ /*
+ * XXX pinsyscall(SYS_execve,...) can be removed once pinsyscalls()
+ * is fully operational
+ */
for (obj = _dl_objects; booting && obj != NULL; obj = obj->next) {
- char *soname = (char *)obj->Dyn.info[DT_SONAME];
struct sym_res sr;
- if (!soname || _dl_strncmp(soname, "libc.so.", 8))
+ if (!obj->islibc)
continue;
sr = _dl_find_symbol("execve",
SYM_SEARCH_SELF|SYM_PLT|SYM_WARNNOTFOUND, NULL, obj);