diff options
Diffstat (limited to 'src/lib/libcrypto/rand/randfile.c')
-rw-r--r-- | src/lib/libcrypto/rand/randfile.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/libcrypto/rand/randfile.c b/src/lib/libcrypto/rand/randfile.c index bc7d9c5804..4ed40b7b70 100644 --- a/src/lib/libcrypto/rand/randfile.c +++ b/src/lib/libcrypto/rand/randfile.c | |||
@@ -144,9 +144,7 @@ int RAND_load_file(const char *file, long bytes) | |||
144 | * I/O because we will waste system entropy. | 144 | * I/O because we will waste system entropy. |
145 | */ | 145 | */ |
146 | bytes = (bytes == -1) ? 2048 : bytes; /* ok, is 2048 enough? */ | 146 | bytes = (bytes == -1) ? 2048 : bytes; /* ok, is 2048 enough? */ |
147 | #ifndef OPENSSL_NO_SETVBUF_IONBF | ||
148 | setvbuf(in, NULL, _IONBF, 0); /* don't do buffered reads */ | 147 | setvbuf(in, NULL, _IONBF, 0); /* don't do buffered reads */ |
149 | #endif /* ndef OPENSSL_NO_SETVBUF_IONBF */ | ||
150 | } | 148 | } |
151 | #endif | 149 | #endif |
152 | for (;;) | 150 | for (;;) |
@@ -271,6 +269,7 @@ err: | |||
271 | const char *RAND_file_name(char *buf, size_t size) | 269 | const char *RAND_file_name(char *buf, size_t size) |
272 | { | 270 | { |
273 | char *s=NULL; | 271 | char *s=NULL; |
272 | int ok = 0; | ||
274 | #ifdef __OpenBSD__ | 273 | #ifdef __OpenBSD__ |
275 | struct stat sb; | 274 | struct stat sb; |
276 | #endif | 275 | #endif |
@@ -299,6 +298,7 @@ const char *RAND_file_name(char *buf, size_t size) | |||
299 | BUF_strlcat(buf,"/",size); | 298 | BUF_strlcat(buf,"/",size); |
300 | #endif | 299 | #endif |
301 | BUF_strlcat(buf,RFILE,size); | 300 | BUF_strlcat(buf,RFILE,size); |
301 | ok = 1; | ||
302 | } | 302 | } |
303 | else | 303 | else |
304 | buf[0] = '\0'; /* no file name */ | 304 | buf[0] = '\0'; /* no file name */ |
@@ -312,7 +312,7 @@ const char *RAND_file_name(char *buf, size_t size) | |||
312 | * to something hopefully decent if that isn't available. | 312 | * to something hopefully decent if that isn't available. |
313 | */ | 313 | */ |
314 | 314 | ||
315 | if (!buf[0]) | 315 | if (!ok) |
316 | if (BUF_strlcpy(buf,"/dev/arandom",size) >= size) { | 316 | if (BUF_strlcpy(buf,"/dev/arandom",size) >= size) { |
317 | return(NULL); | 317 | return(NULL); |
318 | } | 318 | } |