aboutsummaryrefslogtreecommitdiffstats
path: root/src/pki/commands/issue.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pki/commands/issue.c')
-rw-r--r--src/pki/commands/issue.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/pki/commands/issue.c b/src/pki/commands/issue.c
index 0398c9dc9..4dbe2e069 100644
--- a/src/pki/commands/issue.c
+++ b/src/pki/commands/issue.c
@@ -356,11 +356,11 @@ static int issue()
error = "no random number generator found";
goto end;
}
- rng->allocate_bytes(rng, 8, &serial);
- while (*serial.ptr == 0x00)
+ if (!rng_allocate_bytes_not_zero(rng, 8, &serial, FALSE))
{
- /* we don't accept a serial number with leading zeroes */
- rng->get_bytes(rng, 1, serial.ptr);
+ error = "failed to generate serial number";
+ rng->destroy(rng);
+ goto end;
}
rng->destroy(rng);
}