This function should be used with caution! It looks up symbols in
*all* loaded modules and if module gets unloaded by somebody else
attempt to dereference the pointer is doomed to have fatal
consequences. Primary usage for this function is to probe *core*
system functionality, e.g. check if getnameinfo(3) is available
at run-time without bothering about OS-specific details such as
libc.so.versioning or where does it actually reside: in libc
itself or libsocket.
This function should be used with caution! It looks up symbols in *all* loaded modules and if module gets unloaded by somebody else attempt to dereference the pointer is doomed to have fatal consequences. Primary usage for this function is to probe *core* system functionality, e.g. check if getnameinfo(3) is available at run-time without bothering about OS-specific details such as libc.so.versioning or where does it actually reside: in libc itself or libsocket.