Source code pulled from OpenBSD for OpenNTPD. The place to contribute to this code is via the OpenBSD CVS tree.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

42 lines
920 B

/* $OpenBSD: link_elf.h,v 1.7 2016/09/20 18:24:55 kettenis Exp $ */
/*
* Public domain.
*/
#ifndef _LINK_ELF_H
#define _LINK_ELF_H
#include <elf_abi.h>
#ifndef DT_PROCNUM
#define DT_PROCNUM 0
#endif
/*
* struct link_map is a part of the protocol between the debugger and
* ld.so. ld.so may have additional fields in it's version of this
* structure but those are ld.so private fields.
*/
struct link_map {
caddr_t l_addr; /* Base address of library */
const char *l_name; /* Absolute path to library */
void *l_ld; /* pointer to _DYNAMIC */
struct link_map *l_next;
struct link_map *l_prev;
};
struct dl_phdr_info {
Elf_Addr dlpi_addr;
const char *dlpi_name;
const Elf_Phdr *dlpi_phdr;
Elf_Half dlpi_phnum;
};
__BEGIN_DECLS
int dl_iterate_phdr (int (*)(struct dl_phdr_info *, size_t, void *),
void *);
void *dl_unwind_find_exidx(const void *, int *);
__END_DECLS
#endif /* !_LINK_ELF_H */