chiark / gitweb /
eglibc (2.11.3-4+deb6u3) squeeze-lts; urgency=medium
[eglibc.git] / elf / tst-deep1.c
1 #include <dlfcn.h>
2 #include <stdio.h>
3
4 int
5 xyzzy (void)
6 {
7   printf ("%s:%s\n", __FILE__, __func__);
8   return 21;
9 }
10
11 int
12 back (void)
13 {
14   printf ("%s:%s\n", __FILE__, __func__);
15   return 1;
16 }
17
18 extern int foo (void);
19
20 static int
21 do_test (void)
22 {
23   void *p = dlopen ("$ORIGIN/tst-deep1mod2.so", RTLD_LAZY|RTLD_DEEPBIND);
24
25   int (*f) (void) = dlsym (p, "bar");
26   if (f == NULL)
27     {
28       puts (dlerror ());
29       return 1;
30     }
31
32   return foo () + f ();
33 }
34
35 #define TEST_FUNCTION do_test ()
36 #include "../test-skeleton.c"