summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/rand/randfile.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/rand/randfile.c')
-rw-r--r--src/lib/libcrypto/rand/randfile.c6
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:
271const char *RAND_file_name(char *buf, size_t size) 269const 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 }