Explorar o código

adapt static dl_iterate_phdr not to depend on !defined(SHARED)

like elsewhere, use a weak alias that the dynamic linker will override
with a more complete version capable of handling shared libraries.
Rich Felker %!s(int64=9) %!d(string=hai) anos
pai
achega
16f70388d4
Modificáronse 1 ficheiros con 3 adicións e 4 borrados
  1. 3 4
      src/ldso/dl_iterate_phdr.c

+ 3 - 4
src/ldso/dl_iterate_phdr.c

@@ -1,12 +1,10 @@
-#ifndef SHARED
-
 #include <elf.h>
 #include <link.h>
 #include "libc.h"
 
 #define AUX_CNT 38
 
-int dl_iterate_phdr(int(*callback)(struct dl_phdr_info *info, size_t size, void *data), void *data)
+static int static_dl_iterate_phdr(int(*callback)(struct dl_phdr_info *info, size_t size, void *data), void *data)
 {
 	unsigned char *p;
 	ElfW(Phdr) *phdr, *tls_phdr=0;
@@ -40,4 +38,5 @@ int dl_iterate_phdr(int(*callback)(struct dl_phdr_info *info, size_t size, void
 	}
 	return (callback)(&info, sizeof (info), data);
 }
-#endif
+
+weak_alias(static_dl_iterate_phdr, dl_iterate_phdr);