1#include <dlfcn.h>
2#include <stdio.h>
3
4extern int foo1 (void);
5
6int main()
7{
8  void *dl;
9  void *sym;
10  int (*func) (void);
11
12  if (foo1 () != 0)
13    return 1;
14
15  dl = dlopen("pr21964-2b.so", RTLD_LAZY);
16  if (!dl)
17    return 2;
18
19  sym = dlsym(dl, "__start___verbose");
20  if (!sym)
21    return 3;
22
23  func = dlsym(dl, "foo2");
24  if (!func)
25    return 4;
26  if (func () == 0)
27    printf ("PASS\n");
28
29  dlclose(dl);
30
31  return 0;
32}
33