Translate an address to symbolic information
#include <dlfcn.h> int dladdr( void *address, Dl_info *dlip );
The Dl_info structure includes the following members:
If dladdr() can't find a symbol that describes the specified address, the function sets dli_sname and dli_saddr to NULL.
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The dladdr() function determines whether the specified address is located within one of the objects that make up the calling application's address space.
The dladdr() function is available only to dynamically linked processes. |
0 if the specified address can't be matched, or nonzero if it could be matched.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |
The Dl_info pointers may become invalid if objects are removed via dlclose().
There's no way to determine which symbol you'll get if multiple symbols are mapped to the same address.
dlclose(), dlerror(), dlopen(), dlsym()