Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dlsym(3X) — Amiga System V Release 4 Version 2.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dlerror(3X)

dlopen(3X)

dlsym(3X)



dlsym(3X)        MISCELLANEOUS LIBRARY FUNCTIONS        dlsym(3X)



NAME
     dlsym - get the address of a symbol in shared object

SYNOPSIS
     cc [flag ...] file ...  -ldl [library ...]

     #include <dlfcn.h>

     void *dlsym(void *handle, char *name);

DESCRIPTION
     dlsym allows a process to obtain the  address  of  a  symbol
     defined  within a shared object previously opened by dlopen.
     handle is  a  value  returned  by  a  call  to  dlopen;  the
     corresponding  shared object must not have been closed using
     dlclose.  name is the symbol's name as a  character  string.
     dlsym will search for the named symbol in all shared objects
     loaded automatically as  a  result  of  loading  the  object
     referenced by handle [see dlopen(3X)].

EXAMPLES
     The following example shows how one can use dlopen and dlsym
     to  access either function or data objects.  For simplicity,
     error checking has been omitted.

          void *handle;
          int i, *iptr;
          int (*fptr)(int);

          /* open the needed object */
          handle = dlopen("/usr/mydir/libx.so", RTLD_LAZY);

          /* find address of function and data objects */
          fptr = (int (*)(int))dlsym(handle, "some_function");

          iptr = (int *)dlsym(handle, "int_object");

          /* invoke function, passing value of integer as a parameter */

          i = (*fptr)(*iptr);

SEE ALSO
     dlerror(3X), dlopen(3X), dlsym(3X).

DIAGNOSTICS
     If handle does not refer to a valid object opened by dlopen,
     or  if  the  named  symbol cannot be found within any of the
     objects associated with  handle,  dlsym  will  return  NULL.
     More  detailed  diagnostic  information  will  be  available
     through dlerror.





          Last change: C Programming Language Utilities         1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026