source: vendor/glibc-tests/glibc/elf/tst-global1.c

Last change on this file was 2036, checked in by bird, 20 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 553 bytes
Line 
1#include <dlfcn.h>
2#include <stdio.h>
3
4int
5main (void)
6{
7 void *h1 = dlopen ("$ORIGIN/testobj6.so", RTLD_GLOBAL|RTLD_LAZY);
8 if (h1 == NULL)
9 {
10 puts ("cannot open testobj6");
11 return 1;
12 }
13
14 void *h2 = dlopen ("$ORIGIN/testobj2.so",
15 RTLD_GLOBAL|RTLD_DEEPBIND|RTLD_LAZY);
16 if (h2 == NULL)
17 {
18 puts ("cannot open testobj2");
19 return 1;
20 }
21
22 dlclose (h1);
23
24 void (*f) (void) = dlsym (h2, "p");
25 if (f == NULL)
26 {
27 puts ("cannot find p");
28 return 1;
29 }
30
31 f ();
32
33 dlclose (h2);
34
35 return 0;
36}
Note: See TracBrowser for help on using the repository browser.