#include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <stdlib.h> #define BUF_SIZE 256 static __attribute__((noinline)) void urandom_read(int fd, int count) { char buf[BUF_SIZE]; int i; for (i = 0; i < count; ++i) read(fd, buf, BUF_SIZE); } int main(int argc, char *argv[]) { int fd = open("/dev/urandom", O_RDONLY); int count = 4; if (fd < 0) return 1; if (argc == 2) count = atoi(argv[1]); urandom_read(fd, count); close(fd); return 0; } |