X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Finternal%2Fdynlink.h;h=06f41d09857f178d5056bf41de1a2a9bf5fa69bb;hb=fa4a8abd06a401822cc8ba4e352a219544c0118d;hp=5717627a53575f214f1246b29b7c148e41437532;hpb=71392a91c333d47b6b3c8f99c897e3b5a7eb6d58;p=musl diff --git a/src/internal/dynlink.h b/src/internal/dynlink.h index 5717627a..06f41d09 100644 --- a/src/internal/dynlink.h +++ b/src/internal/dynlink.h @@ -4,6 +4,8 @@ #include #include #include +#include +#include #if UINTPTR_MAX == 0xffffffff typedef Elf32_Ehdr Ehdr; @@ -26,6 +28,7 @@ typedef Elf64_Sym Sym; enum { REL_NONE = 0, REL_SYMBOLIC = -100, + REL_USYMBOLIC, REL_GOT, REL_PLT, REL_RELATIVE, @@ -89,10 +92,26 @@ struct fdpic_dummy_loadmap { #define DT_DEBUG_INDIRECT 0 #endif +#ifndef DT_DEBUG_INDIRECT_REL +#define DT_DEBUG_INDIRECT_REL 0 +#endif + #define AUX_CNT 32 -#define DYN_CNT 32 +#define DYN_CNT 37 typedef void (*stage2_func)(unsigned char *, size_t *); -typedef _Noreturn void (*stage3_func)(size_t *); + +hidden void *__dlsym(void *restrict, const char *restrict, void *restrict); + +hidden void __dl_seterr(const char *, ...); +hidden int __dl_invalid_handle(void *); +hidden void __dl_vseterr(const char *, va_list); + +hidden ptrdiff_t __tlsdesc_static(), __tlsdesc_dynamic(); + +hidden extern int __malloc_replaced; +hidden extern int __aligned_alloc_replaced; +hidden void __malloc_donate(char *, char *); +hidden int __malloc_allzerop(void *); #endif