Commit 9c3b120b authored by Adam Barth's avatar Adam Barth Committed by CQ bot account: [email protected]
Browse files

[fuchsia] Update to zx_cprng_draw

This change moves to the final version of zx_cprng_draw, which cannot
fail. If the syscall would fail, either the operating system terminates
or the kernel kills the userspace process (depending on where the error
comes from).

Change-Id: Iea9563c9f63ea5802e2cde741879fa58c19028f4

Reviewed-by: default avatarDavid Benjamin <[email protected]>
Commit-Queue: David Benjamin <[email protected]>
CQ-Verified: CQ bot account: [email protected] <[email protected]>
parent a0373182
......@@ -24,18 +24,7 @@
#include "../fipsmodule/rand/internal.h"
void CRYPTO_sysrand(uint8_t *out, size_t requested) {
while (requested > 0) {
size_t output_bytes_this_pass = ZX_CPRNG_DRAW_MAX_LEN;
if (requested < output_bytes_this_pass) {
output_bytes_this_pass = requested;
zx_status_t status = zx_cprng_draw_new(out, output_bytes_this_pass);
if (status != ZX_OK) {
requested -= output_bytes_this_pass;
out += output_bytes_this_pass;
zx_cprng_draw(out, requested);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment