Annotation of src/include/link_elf.h, Revision 1.5
1.5 ! kettenis 1: /* $OpenBSD: link_elf.h,v 1.4 2002/09/08 17:55:37 drahn Exp $ */
1.1 art 2:
3: /*
1.4 drahn 4: * Public domain.
1.1 art 5: */
6:
1.2 pvalchev 7: #ifndef _LINK_ELF_H
1.4 drahn 8: #define _LINK_ELF_H
1.2 pvalchev 9:
1.1 art 10: #include <elf_abi.h>
11:
12: #ifndef DT_PROCNUM
13: #define DT_PROCNUM 0
14: #endif
15:
1.4 drahn 16: /*
17: * struct link_map is a part of the protocol between the debugger and
18: * ld.so. ld.so may have additional fields in it's version of this
19: * stucture but those are ld.so private fields.
20: */
21: struct link_map {
22: caddr_t l_addr; /* Base address of library */
23: const char *l_name; /* Absolute path to library */
24: void *l_ld; /* pointer to _DYNAMIC */
25: struct link_map *l_next;
26: struct link_map *l_prev;
27: };
1.5 ! kettenis 28:
! 29: struct dl_phdr_info {
! 30: Elf_Addr dlpi_addr;
! 31: const char *dlpi_name;
! 32: const Elf_Phdr *dlpi_phdr;
! 33: Elf_Half dlpi_phnum;
! 34: };
! 35:
! 36: __BEGIN_DECLS
! 37: int dl_iterate_phdr (int (*)(struct dl_phdr_info *, size_t, void *),
! 38: void *);
! 39: __END_DECLS
! 40:
1.2 pvalchev 41: #endif /* !_LINK_ELF_H */