#include <linux/unistd.h>
#include <linux/types.h>
#include <linux/sysctl.h>
#include <errno.h>

#ifndef EBUG
#define guard __guard
extern unsigned long __guard;
#else
unsigned long guard = 0UL;
#endif

#define SIZE(x) (sizeof(x)/sizeof(x[0]))
int main()
{

   int pair[] = { CTL_KERN, KERN_RANDOM };
   int len = sizeof(unsigned long *);

   if (sysctl(pair, SIZE(pair), guard, &len, 0, 0));

   if (errno != 0) {
      perror("sysctl");
      printf("This kernel lacks support for KERN_RANDOM\n");
      return 1;
   }
   printf("I think this might work... len=%d __guard=%p errno=%d\n",
	  len, guard, errno);
   return 0;
}
