From 6bd0638460756557bab2c3c176fd31f5e0ba6e1b Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 19 Jan 1999 23:47:25 +0000 Subject: Update. * elf/restest1.c: New file. Symbol resolution test. * elf/testobj1_1.c: New file. Module used in this test. * elf/Makefile: Add rules for restest1 generation and execution. --- elf/restest1.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 elf/restest1.c (limited to 'elf/restest1.c') diff --git a/elf/restest1.c b/elf/restest1.c new file mode 100644 index 0000000..e4eca55 --- /dev/null +++ b/elf/restest1.c @@ -0,0 +1,48 @@ +#include +#include +#include +#include + +int +main (void) +{ + void *h1; + int (*fp1) (int); + void *h2; + int (*fp2) (int); + int res1; + int res2; + + h1 = dlopen ("testobj1.so", RTLD_LAZY); + if (h1 == NULL) + error (EXIT_FAILURE, 0, "while loading `%s': %s", "testobj1.so", + dlerror ()); + + h2 = dlopen ("testobj1_1.so", RTLD_LAZY); + if (h1 == NULL) + error (EXIT_FAILURE, 0, "while loading `%s': %s", "testobj1_1.so", + dlerror ()); + + fp1 = dlsym (h1, "obj1func1"); + if (fp1 == NULL) + error (EXIT_FAILURE, 0, "getting `obj1func1' in `%s': %s", + "testobj1.so", dlerror ()); + + fp2 = dlsym (h2, "obj1func1"); + if (fp2 == NULL) + error (EXIT_FAILURE, 0, "getting `obj1func1' in `%s': %s", + "testobj1_1.so", dlerror ()); + + res1 = fp1 (10); + res2 = fp2 (10); + printf ("fp1(10) = %d\nfp2(10) = %d\n", res1, res2); + + return res1 != 42 || res2 != 72; +} + + +int +foo (int a) +{ + return a + 10; +} -- cgit v1.1