36 lines
515 B
C
36 lines
515 B
C
#include <dlfcn.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
int
|
|
main (void)
|
|
{
|
|
void *handle;
|
|
int (*test) (int);
|
|
int res;
|
|
|
|
handle = dlopen ("modstatic.so", RTLD_LAZY);
|
|
if (handle == NULL)
|
|
{
|
|
printf ("%s\n", dlerror ());
|
|
exit(1);
|
|
}
|
|
|
|
test = dlsym (handle, "test");
|
|
if (test == NULL)
|
|
{
|
|
printf ("%s\n", dlerror ());
|
|
exit(1);
|
|
}
|
|
|
|
res = test (2);
|
|
if (res != 4)
|
|
{
|
|
printf ("Got %i, expected 4\n", res);
|
|
exit (1);
|
|
}
|
|
|
|
dlclose (handle);
|
|
return 0;
|
|
}
|