| DL_ITERATE_PHDR(3) | Library Functions Manual | DL_ITERATE_PHDR(3) |
dl_iterate_phdr —
iterate over program headers
#include
<link.h>
int
dl_iterate_phdr(int
(*callback)(struct dl_phdr_info *, size_t, void*),
void *data);
The
dl_iterate_phdr()
function iterates over all shared objects loaded into a process's address
space, calling callback for each shared object,
passing it information about the object's program headers and the
data argument. The information about the program
headers is passed in a structure that is defined as:
struct dl_phdr_info {
Elf_Addr dlpi_addr;
const char *dlpi_name;
const Elf_Phdr *dlpi_phdr;
Elf_Half dlpi_phnum;
unsigned long long int dlpi_adds;
unsigned long long int dlpi_subs;
size_t dlpi_tls_modid;
void *dlpi_tls_data;
};
The members of struct dl_phdr_info have
the following meaning:
To make it possible for programs to check whether any new members have been added, the size of the structure is passed as an argument to callback.
The dl_iterate_phdr function first
appeared in NetBSD 6.0.
| October 16, 2010 | NetBSD 11.0 |