1 // Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
13 #include <sys/ioctl.h>
17 #include <linux/random.h>
24 unsigned char data[N];
31 int random_fd = open("/dev/random", O_RDWR);
32 assert(random_fd >= 0);
34 while ((n = read(0, &buf.data, N)) > 0) {
35 buf.ent_count = n * 8;
37 if (ioctl(random_fd, RNDADDENTROPY, &buf) != 0) {
38 perror("failed to add entropy");