#include <dlfcn.h>
#include <stdio.h>

static int
do_test (void)
{
  void *h = dlopen ("tst-tlsmod15a.so", RTLD_NOW);
  if (h != NULL)
    {
      puts ("unexpectedly succeeded to open tst-tlsmod15a.so");
      exit (1);
    }

  h = dlopen ("tst-tlsmod15b.so", RTLD_NOW);
  if (h == NULL)
    {
      puts ("failed to open tst-tlsmod15b.so");
      exit (1);
    }

  int (*fp) (void) = (int (*) (void)) dlsym (h, "in_dso");
  if (fp == NULL)
    {
      puts ("cannot find in_dso");
      exit (1);
    }

  return fp ();
}

#define TEST_FUNCTION do_test ()
#include "../test-skeleton.c"
