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 0584814..aa5ac56 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.
  */