DLFCN(3)

NAME
dlopen, fdlopen, dlclose, dlinfo, dladdr, dlsym, dlfunc, dlvsym, dl_iterate_phdr, dlerror - programmatic interface to the dynamic linker

LIBRARY
This function is not in a library. It is included in every dynamically linked program automatically.

SYNOPSIS
#include <dlfcn.h>
void *
dlopen(const char *name, int mode);
void *
fdlopen(int fd, int mode);
int
dlclose(void *handle);
int
dlinfo(void * restrict handle, int request, void * restrict p);
int
dladdr(const void * restrict addr, Dl_info * restrict info);
void *
dlsym(void * restrict handle, const char * restrict name);
dlfunc_t
dlfunc(void * restrict handle, const char * restrict name);
void *
dlvsym(void * restrict handle, const char * restrict name, const char * restrict version);
char *
dlerror(void);
#include <link.h>
int
dl_iterate_phdr(int (*callback)(struct dl_phdr_info *, size_t, void *), void * data);

DESCRIPTION
These functions provide an interface to the run-time linker ld-elf.so.2(1). They allow new shared objects to be loaded into the process' address space under program control.

SEE ALSO
ld(1), rtld(1), dladdr(3), dlclose(3), dlerror(3), dlfunc(3), dlinfo(3), dl_iterate_phdr(3), dlopen(3), dlsym(3), dlvsym(3), fdlopen(3), link(5)

HISTORY
Some of the dl* functions first appeared in SunOS 4.