| 6 |
details. |
details. |
| 7 |
|
|
| 8 |
Randomness |
Randomness |
| 9 |
$Id: random.c,v 1.1 2001/10/31 08:19:53 rabbi Exp $ */ |
$Id: random.c,v 1.2 2002/08/03 17:08:02 weaselp Exp $ */ |
| 10 |
|
|
| 11 |
|
|
| 12 |
#include "mix3.h" |
#include "mix3.h" |
| 23 |
#include <windows.h> |
#include <windows.h> |
| 24 |
#endif |
#endif |
| 25 |
#include <assert.h> |
#include <assert.h> |
| 26 |
|
#include <string.h> |
| 27 |
|
|
| 28 |
int rnd_state = RND_NOTSEEDED; |
int rnd_state = RND_NOTSEEDED; |
| 29 |
|
|
| 111 |
#ifdef DEV_URANDOM |
#ifdef DEV_URANDOM |
| 112 |
fd = open(DEV_URANDOM, O_RDONLY); |
fd = open(DEV_URANDOM, O_RDONLY); |
| 113 |
if (fd != -1) { |
if (fd != -1) { |
| 114 |
read(fd, b, sizeof(b)); |
ssize_t ret; |
| 115 |
rnd_add(b, sizeof(b)); |
|
| 116 |
|
ret = read(fd, b, sizeof(b)); |
| 117 |
|
if (ret > 0) { |
| 118 |
|
rnd_add(b, ret); |
| 119 |
|
} |
| 120 |
close(fd); |
close(fd); |
| 121 |
} |
} |
| 122 |
#endif |
#endif |