(root)/
glibc-2.38/
dlfcn/
failtestmod.c
       1  #include <dlfcn.h>
       2  #include <stdio.h>
       3  
       4  
       5  extern void constr (void) __attribute__ ((__constructor__));
       6  void
       7  __attribute__ ((__constructor__))
       8  constr (void)
       9  {
      10    void *handle;
      11  
      12    /* Open the library.  */
      13    handle = dlopen (NULL, RTLD_NOW);
      14    if (handle == NULL)
      15      {
      16        puts ("Cannot get handle to own object");
      17        return;
      18      }
      19  
      20    /* Get a symbol.  */
      21    dlsym (handle, "main");
      22    puts ("called dlsym() to get main");
      23  
      24    dlclose (handle);
      25  }