#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>

intptr_t __vtxor_cookie;

void __attribute__ ((constructor)) __vtxor_cookie_setup(void) {

  // Default value... if the read fails...
  memset(&__vtxor_cookie,0x41,sizeof(__vtxor_cookie));

  int fd=open("/dev/urandom",O_RDONLY);
  if (fd>=0) {
      read(fd,&__vtxor_cookie,sizeof(__vtxor_cookie));
      close(fd);
  }

}

