How can I get a list of the functions defined in a shared object library, or find out if a particular function is defined in one?
There are different executable file formats on a *nix system. a.out was a common format some years ago and today its ELF on nearby all major systems.
ELF consists of a headers describing each of the files data sections.
The part you are looking for is the symbol table, where each symbol (function, variable) is mapped to its address.
Shared libraries keep their global symbols in a section called .dynsym
What you are looking for are symbols of the type function and a global binding in this section.
On Solaris and FreeBSD theres also
Use nm with the -D (dynamic) switch: