crypto/mem.c: on Windows, use rand() instead of random()
authorRichard Levitte <levitte@openssl.org>
Tue, 27 Jun 2017 09:25:03 +0000 (11:25 +0200)
committerRichard Levitte <levitte@openssl.org>
Wed, 28 Jun 2017 20:15:02 +0000 (22:15 +0200)
Windows doesn't provide random().  In this particular case, our
requirements on the quality of randomness isn't high, so we don't
need to care how good randomness rand() does or doesn't provide.

Fixes #3778

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3779)

crypto/mem.c

index 0584814f73286f1bd1c06d9f9adc3c5b49aadc8f..aa5ac56b472791ad512b1dd174e0be8ea3bdbd3a 100644 (file)
@@ -111,6 +111,14 @@ static void parseit(void)
         md_failstring = semi;
 }
 
+/*
+ * Windows doesn't have random(), but it has rand()
+ * Some rand() implementations aren't good, but we're not
+ * dealing with secure randomness here.
+ */
+#ifdef _WIN32
+# define random() rand()
+#endif
 /*
  * See if the current malloc should fail.
  */