+ if((random_fd=open("/dev/urandom",O_RDONLY))<0)
+ {
+ puts("cannot open /dev/urandom");
+ return -23;
+ }
+ } else
+ {
+ if((random_fd=open(random_file,O_RDONLY))<0)
+ {
+ puts("cannot open random file");
+ return -23;
+ }
+ }
+ /* allocate random number buffer */
+ printf("malloc will free %d bytes now ...\n",RAND_BUF_SIZE);
+ if((rand_buf=(u32 *)malloc(RAND_BUF_SIZE))==NULL)
+ {
+ puts("failed allocating memory for random numbers");