[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT/NEWLIB PATCH 04/16] link.h: Import from musl
Copied as is from the official musl git mirror git://git.musl-libc.org/musl, commit 6fcb440d. Signed-off-by: Costin Lupu <costin.lupu@xxxxxxxxx> --- musl-imported/arch/generic/bits/link.h | 1 + musl-imported/include/link.h | 53 ++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 musl-imported/arch/generic/bits/link.h create mode 100644 musl-imported/include/link.h diff --git a/musl-imported/arch/generic/bits/link.h b/musl-imported/arch/generic/bits/link.h new file mode 100644 index 0000000..4a94d8f --- /dev/null +++ b/musl-imported/arch/generic/bits/link.h @@ -0,0 +1 @@ +typedef uint32_t Elf_Symndx; diff --git a/musl-imported/include/link.h b/musl-imported/include/link.h new file mode 100644 index 0000000..8150185 --- /dev/null +++ b/musl-imported/include/link.h @@ -0,0 +1,53 @@ +#ifndef _LINK_H +#define _LINK_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include <elf.h> +#define __NEED_size_t +#define __NEED_uint32_t +#include <bits/alltypes.h> + +#if UINTPTR_MAX > 0xffffffff +#define ElfW(type) Elf64_ ## type +#else +#define ElfW(type) Elf32_ ## type +#endif + +#include <bits/link.h> + +struct dl_phdr_info { + ElfW(Addr) dlpi_addr; + const char *dlpi_name; + const ElfW(Phdr) *dlpi_phdr; + ElfW(Half) dlpi_phnum; + unsigned long long int dlpi_adds; + unsigned long long int dlpi_subs; + size_t dlpi_tls_modid; + void *dlpi_tls_data; +}; + +struct link_map { + ElfW(Addr) l_addr; + char *l_name; + ElfW(Dyn) *l_ld; + struct link_map *l_next, *l_prev; +}; + +struct r_debug { + int r_version; + struct link_map *r_map; + ElfW(Addr) r_brk; + enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state; + ElfW(Addr) r_ldbase; +}; + +int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *); + +#ifdef __cplusplus +} +#endif + +#endif -- 2.20.1 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |