#ifndef _LINK_H #define _LLINK_H #include #define __NEED_size_t #include #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) #ifdef _LP64 #define ElfW(type) Elf64_ ## type #else #define ElfW(type) Elf32_ ## type #endif struct dl_phdr_info { uintptr_t dlpi_addr; const char *dlpi_name; const ElfW(Phdr) *dlpi_phdr; uint16_t dlpi_phnum; }; int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *); #endif #endif