dlfcn.h raw

   1  #ifndef	_DLFCN_H
   2  #define	_DLFCN_H
   3  
   4  #ifdef __cplusplus
   5  extern "C" {
   6  #endif
   7  
   8  #include <features.h>
   9  
  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
  16  
  17  #define RTLD_NEXT    ((void *)-1)
  18  #define RTLD_DEFAULT ((void *)0)
  19  
  20  #define RTLD_DI_LINKMAP 2
  21  
  22  int    dlclose(void *);
  23  char  *dlerror(void);
  24  void  *dlopen(const char *, int);
  25  void  *dlsym(void *__restrict, const char *__restrict);
  26  
  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
  37  
  38  #if _REDIR_TIME64
  39  __REDIR(dlsym, __dlsym_time64);
  40  #endif
  41  
  42  #ifdef __cplusplus
  43  }
  44  #endif
  45  
  46  #endif
  47