fix bug in fread() failure check
the two middle arguments to fread() are easily confused, and cause the checking of return value to fail incorrectly (and possibly succeed incorrectly.)
This commit is contained in:
@@ -4918,7 +4918,7 @@ int main(int argc, char **argv) {
|
||||
}
|
||||
} else {
|
||||
FILE *frand = fopen("/dev/urandom", "r");
|
||||
if ((frand == NULL) || fread(&seed16, sizeof(seed16), 1, frand) != sizeof(seed16)) {
|
||||
if ((frand == NULL) || fread(&seed16, 1, sizeof(seed16), frand) != sizeof(seed16)) {
|
||||
fprintf(stderr, "WARNING: could not read 16 bytes from /dev/urandom; falling back to insecure PRNG\n");
|
||||
uint64_t t = time(NULL) * (uint64_t)1337;
|
||||
seed16[0] ^= t;
|
||||
|
||||
Reference in New Issue
Block a user