#include #include #include #include static int do_test (void) { void *h; int (*fp) (int); int result; mtrace (); h = dlopen ("renamed.so", RTLD_LAZY); if (h == NULL) { printf ("failed to load \"%s\": %s\n", "renamed.so", dlerror ()); exit (1); } fp = dlsym (h, "in_renamed"); if (fp == NULL) { printf ("lookup of \"%s\" failed: %s\n", "in_renamed", dlerror ()); exit (1); } result = fp (10); if (dlclose (h) != 0) { printf ("failed to close \"%s\": %s\n", "renamed.so", dlerror ()); exit (1); } return result; } #define TEST_FUNCTION do_test () #include "../test-skeleton.c"