| OLD | NEW |
| 1 #ifndef _LINK_H | 1 #ifndef _LINK_H |
| 2 #define _LINK_H | 2 #define _LINK_H |
| 3 | 3 |
| 4 #ifdef __cplusplus | 4 #ifdef __cplusplus |
| 5 extern "C" { | 5 extern "C" { |
| 6 #endif | 6 #endif |
| 7 | 7 |
| 8 #include <elf.h> | 8 #include <elf.h> |
| 9 #define __NEED_size_t | 9 #define __NEED_size_t |
| 10 #define __NEED_uint32_t | 10 #define __NEED_uint32_t |
| 11 #include <bits/alltypes.h> | 11 #include <bits/alltypes.h> |
| 12 | 12 |
| 13 #if UINTPTR_MAX > 0xffffffff | 13 #if UINTPTR_MAX > 0xffffffff |
| 14 #define ElfW(type) Elf64_ ## type | 14 #define ElfW(type) Elf64_##type |
| 15 #else | 15 #else |
| 16 #define ElfW(type) Elf32_ ## type | 16 #define ElfW(type) Elf32_##type |
| 17 #endif | 17 #endif |
| 18 | 18 |
| 19 /* this is the same everywhere except alpha and s390 */ | 19 /* this is the same everywhere except alpha and s390 */ |
| 20 typedef uint32_t Elf_Symndx; | 20 typedef uint32_t Elf_Symndx; |
| 21 | 21 |
| 22 struct dl_phdr_info { | 22 struct dl_phdr_info { |
| 23 » ElfW(Addr) dlpi_addr; | 23 ElfW(Addr) dlpi_addr; |
| 24 » const char *dlpi_name; | 24 const char* dlpi_name; |
| 25 » const ElfW(Phdr) *dlpi_phdr; | 25 const ElfW(Phdr) * dlpi_phdr; |
| 26 » ElfW(Half) dlpi_phnum; | 26 ElfW(Half) dlpi_phnum; |
| 27 » unsigned long long int dlpi_adds; | 27 unsigned long long int dlpi_adds; |
| 28 » unsigned long long int dlpi_subs; | 28 unsigned long long int dlpi_subs; |
| 29 » size_t dlpi_tls_modid; | 29 size_t dlpi_tls_modid; |
| 30 » void *dlpi_tls_data; | 30 void* dlpi_tls_data; |
| 31 }; | 31 }; |
| 32 | 32 |
| 33 struct link_map { | 33 struct link_map { |
| 34 » ElfW(Addr) l_addr; | 34 ElfW(Addr) l_addr; |
| 35 » char *l_name; | 35 char* l_name; |
| 36 » ElfW(Dyn) *l_ld; | 36 ElfW(Dyn) * l_ld; |
| 37 » struct link_map *l_next, *l_prev; | 37 struct link_map *l_next, *l_prev; |
| 38 }; | 38 }; |
| 39 | 39 |
| 40 struct r_debug { | 40 struct r_debug { |
| 41 » int r_version; | 41 int r_version; |
| 42 » struct link_map *r_map; | 42 struct link_map* r_map; |
| 43 » ElfW(Addr) r_brk; | 43 ElfW(Addr) r_brk; |
| 44 » enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state; | 44 enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state; |
| 45 » ElfW(Addr) r_ldbase; | 45 ElfW(Addr) r_ldbase; |
| 46 }; | 46 }; |
| 47 | 47 |
| 48 int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *); | 48 int dl_iterate_phdr(int (*)(struct dl_phdr_info*, size_t, void*), void*); |
| 49 | 49 |
| 50 #ifdef __cplusplus | 50 #ifdef __cplusplus |
| 51 } | 51 } |
| 52 #endif | 52 #endif |
| 53 | 53 |
| 54 #endif | 54 #endif |
| OLD | NEW |