diff options
author | Werner Koch <wk@gnupg.org> | 2016-02-19 15:35:03 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2016-02-19 15:35:03 +0100 |
commit | 934ba2ae5a95a96fdbb3b935b51ba43df66f11df (patch) | |
tree | fbf9e6190ef0825e132eefaf26e3fe5bf2ad1c5b /src/global.c | |
parent | 7cdbd6e6a3cf1ee366b981e148d41b1187a6fdcf (diff) | |
download | libgcrypt-934ba2ae5a95a96fdbb3b935b51ba43df66f11df.tar.gz |
random: Add a test case for DRBG_REINIT.
* src/global.c (_gcry_vcontrol) <DRBG_REINIT>: Test for FIPS RNG.
* tests/random.c (check_drbg_reinit): New.
(main): Call new test.
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'src/global.c')
-rw-r--r-- | src/global.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/global.c b/src/global.c index 4bd928b9..4d69b27b 100644 --- a/src/global.c +++ b/src/global.c @@ -663,6 +663,8 @@ _gcry_vcontrol (enum gcry_ctl_cmds cmd, va_list arg_ptr) int npers = va_arg (arg_ptr, int); if (va_arg (arg_ptr, void *) || npers < 0) rc = GPG_ERR_INV_ARG; + else if (_gcry_get_rng_type (!any_init_done) != GCRY_RNG_TYPE_FIPS) + rc = GPG_ERR_NOT_SUPPORTED; else rc = _gcry_rngdrbg_reinit (flagstr, pers, npers); } |