| DL_ITERATE_PHDR(3) | Library Functions Manual | DL_ITERATE_PHDR(3) | 
dl_iterate_phdr —
#include <link.h>
int
  
  dl_iterate_phdr(int
    (*callback)(struct dl_phdr_info *, size_t, void*),
    void *data);
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.
dl_iterate_phdr function first appeared in
  NetBSD 6.0.
| October 16, 2010 | NetBSD 9.4 |