1 #include <dlfcn.h> 2 #include <stdlib.h> 3 #include <stdio.h> 4 5 static int do_test(void)6do_test (void) 7 { 8 void *h = dlopen ("tst-tlsmod15a.so", RTLD_NOW); 9 if (h != NULL) 10 { 11 puts ("unexpectedly succeeded to open tst-tlsmod15a.so"); 12 exit (1); 13 } 14 15 h = dlopen ("tst-tlsmod15b.so", RTLD_NOW); 16 if (h == NULL) 17 { 18 puts ("failed to open tst-tlsmod15b.so"); 19 exit (1); 20 } 21 22 int (*fp) (void) = (int (*) (void)) dlsym (h, "in_dso"); 23 if (fp == NULL) 24 { 25 puts ("cannot find in_dso"); 26 exit (1); 27 } 28 29 return fp (); 30 } 31 32 #include <support/test-driver.c> 33