Something like dladdr that gives me a dynamic library handle to the shared object or a way to get the handle from the shared object's base address. The file containing the shared object may have been moved or deleted so no, I can't dlopen() the filename given by dladdr.
glibc - get handle to shared library having symbol containing specified address
926 views Asked by Hristo Venev At
1
There are 1 answers
Related Questions in C
- In Java how to read the latest string of constantly generated stream fast?
- Octave Real time plotting
- What technologies should I use to create a real time One to One chat?
- EXE_BAD_BADACCESS trying to access GKMatch?
- Event-Driven(Real - Time) mobile set-up suggestions
- rm scheduling - calculation
- How to make android app in which I can change database after publish the app?
- CloudAMQP & Android
- Is there an extensible open address hash table?
- Is it possible to add a text overlay to videos?
Related Questions in POSIX
- In Java how to read the latest string of constantly generated stream fast?
- Octave Real time plotting
- What technologies should I use to create a real time One to One chat?
- EXE_BAD_BADACCESS trying to access GKMatch?
- Event-Driven(Real - Time) mobile set-up suggestions
- rm scheduling - calculation
- How to make android app in which I can change database after publish the app?
- CloudAMQP & Android
- Is there an extensible open address hash table?
- Is it possible to add a text overlay to videos?
Related Questions in GLIBC
- In Java how to read the latest string of constantly generated stream fast?
- Octave Real time plotting
- What technologies should I use to create a real time One to One chat?
- EXE_BAD_BADACCESS trying to access GKMatch?
- Event-Driven(Real - Time) mobile set-up suggestions
- rm scheduling - calculation
- How to make android app in which I can change database after publish the app?
- CloudAMQP & Android
- Is there an extensible open address hash table?
- Is it possible to add a text overlay to videos?
Related Questions in DLADDR
- In Java how to read the latest string of constantly generated stream fast?
- Octave Real time plotting
- What technologies should I use to create a real time One to One chat?
- EXE_BAD_BADACCESS trying to access GKMatch?
- Event-Driven(Real - Time) mobile set-up suggestions
- rm scheduling - calculation
- How to make android app in which I can change database after publish the app?
- CloudAMQP & Android
- Is there an extensible open address hash table?
- Is it possible to add a text overlay to videos?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
glibc's dlopen handles are based on link_map. I can iterate all link_map's and see if one has l_addr equal to the one given by dladdr. The address of that link_map is the handle.
dietlibc also uses link_map's as handles.
In the case of uClibc there is another struct - dyn_elf. It contains a pointer to a link_map. The global variable _dl_symbol_tables has a pointer to the head of a linked list of dyn_elf's.
bionic uses its own struct which contains struct link_map as a member (not a pointer).