fix clash between sys/user.h and kernel ptrace.h on powerpc[64], sh
[musl.git] / include / dlfcn.h
blob78fb0733b2eb82be221e2e26fb5df369be7bb715
1 #ifndef _DLFCN_H
2 #define _DLFCN_H
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
8 #include <features.h>
10 #define RTLD_LAZY 1
11 #define RTLD_NOW 2
12 #define RTLD_NOLOAD 4
13 #define RTLD_NODELETE 4096
14 #define RTLD_GLOBAL 256
15 #define RTLD_LOCAL 0
17 #define RTLD_NEXT ((void *)-1)
18 #define RTLD_DEFAULT ((void *)0)
20 #define RTLD_DI_LINKMAP 2
22 int dlclose(void *);
23 char *dlerror(void);
24 void *dlopen(const char *, int);
25 void *dlsym(void *__restrict, const char *__restrict);
27 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
28 typedef struct {
29 const char *dli_fname;
30 void *dli_fbase;
31 const char *dli_sname;
32 void *dli_saddr;
33 } Dl_info;
34 int dladdr(const void *, Dl_info *);
35 int dlinfo(void *, int, void *);
36 #endif
38 #ifdef __cplusplus
40 #endif
42 #endif