Tidy up CRYPTO_sysrand variants.
We can extend the inline function trick to avoid needing to add extra
wrappers to the fuzzer PRNG.
Change-Id: Ie007a4ccaf0e2d703a3710e4298a774af861d514
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/40624
Commit-Queue: Adam Langley <agl@google.com>
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/fipsmodule/rand/internal.h b/crypto/fipsmodule/rand/internal.h
index cf77bb3..1b15928 100644
--- a/crypto/fipsmodule/rand/internal.h
+++ b/crypto/fipsmodule/rand/internal.h
@@ -40,7 +40,7 @@
// system.
void CRYPTO_sysrand(uint8_t *buf, size_t len);
-#if defined(OPENSSL_URANDOM) || defined(BORINGSSL_UNSAFE_DETERMINISTIC_MODE)
+#if defined(OPENSSL_URANDOM)
// CRYPTO_sysrand_for_seed fills |len| bytes at |buf| with entropy from the
// operating system. It may draw from the |GRND_RANDOM| pool on Android,
// depending on the vendor's configuration.
@@ -53,6 +53,10 @@
// return 0.
int CRYPTO_sysrand_if_available(uint8_t *buf, size_t len);
#else
+OPENSSL_INLINE void CRYPTO_sysrand_for_seed(uint8_t *buf, size_t len) {
+ CRYPTO_sysrand(buf, len);
+}
+
OPENSSL_INLINE int CRYPTO_sysrand_if_available(uint8_t *buf, size_t len) {
CRYPTO_sysrand(buf, len);
return 1;
diff --git a/crypto/rand_extra/deterministic.c b/crypto/rand_extra/deterministic.c
index 36774c8..17fa71e 100644
--- a/crypto/rand_extra/deterministic.c
+++ b/crypto/rand_extra/deterministic.c
@@ -45,13 +45,4 @@
g_num_calls++;
}
-void CRYPTO_sysrand_for_seed(uint8_t *out, size_t requested) {
- CRYPTO_sysrand(out, requested);
-}
-
-int CRYPTO_sysrand_if_available(uint8_t *out, size_t requested) {
- CRYPTO_sysrand(out, requested);
- return 1;
-}
-
#endif // BORINGSSL_UNSAFE_DETERMINISTIC_MODE