Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dlsym(3X) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dlclose(3X)

dlerror(3X)

dlopen(3X)



dlsym(3X)       UNIX System V(C Programming Language Utilities)       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 searches 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", RTLDLAZY);

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

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

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

            i = (*fptr)(*iptr);

SEE ALSO
      dlclose(3X), dlerror(3X), dlopen(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 returns NULL.  More detailed diagnostic information is
      available through dlerror.






10/89                                                                    Page 1





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