summaryrefslogtreecommitdiffstats
path: root/src/crypto/rand/internal.h
diff options
context:
space:
mode:
authorAdam Langley <agl@google.com>2015-06-23 16:28:07 -0700
committerAdam Langley <agl@google.com>2015-06-23 16:33:55 -0700
commitbd9957e6e28506c4431ce8d3cadbc0a04905b15e (patch)
tree25164b0a84665df0c05eb07a4abb82b39fa6d6a0 /src/crypto/rand/internal.h
parente0846beeb321f7d3170e4e389950b12fce69ab10 (diff)
downloadexternal_boringssl-bd9957e6e28506c4431ce8d3cadbc0a04905b15e.zip
external_boringssl-bd9957e6e28506c4431ce8d3cadbc0a04905b15e.tar.gz
external_boringssl-bd9957e6e28506c4431ce8d3cadbc0a04905b15e.tar.bz2
Handle RDRAND failures.
I mistakenly believed that only RDSEED could fail. However, the Intel manuals state that RDRAND can fail too. This change cherry-picks the following BoringSSL changes: 2cac3506 – Handle RDRAND failures. 248abbd7 – Add missing comma in .type pragma for rdrand code. Change-Id: Icdc56a50ce36e9c525063583882c676a5312d313
Diffstat (limited to 'src/crypto/rand/internal.h')
-rw-r--r--src/crypto/rand/internal.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/crypto/rand/internal.h b/src/crypto/rand/internal.h
index 1cca7f3..5e6ea11 100644
--- a/src/crypto/rand/internal.h
+++ b/src/crypto/rand/internal.h
@@ -29,8 +29,9 @@ void CRYPTO_sysrand(uint8_t *buf, size_t len);
int CRYPTO_have_hwrand(void);
/* CRYPTO_hwrand fills |len| bytes at |buf| with entropy from the hardware.
- * This function can only be called if |CRYPTO_have_hwrand| returns one. */
-void CRYPTO_hwrand(uint8_t *buf, size_t len);
+ * This function can only be called if |CRYPTO_have_hwrand| returns one.
+ * It returns one on success or zero on hardware failure. */
+int CRYPTO_hwrand(uint8_t *buf, size_t len);
#if defined(__cplusplus)