From: Dr. Matthias St. Pierre Date: Mon, 13 Jul 2020 00:02:15 +0000 (+0200) Subject: test/drbgtest.c: set the correct counter to trigger reseeding X-Git-Tag: openssl-3.0.0-alpha6~72 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d1768e8298a35fcd8e6e19575e4a9b2e93e4d788;p=thirdparty%2Fopenssl.git test/drbgtest.c: set the correct counter to trigger reseeding It's the generate counter (drbg->reseed_gen_counter), not the reseed counter which needs to be raised above the reseed_interval. This mix-up was partially caused by some recent renamings of DRBG members variables, but that will be dealt with in a separate commit. Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/11195) --- diff --git a/test/drbgtest.c b/test/drbgtest.c index 058b0a4050b..3107ccaaf4e 100644 --- a/test/drbgtest.c +++ b/test/drbgtest.c @@ -190,6 +190,13 @@ static PROV_DRBG *prov_rand(RAND_DRBG *drbg) return (PROV_DRBG *)drbg->rand->data; } +static void set_generate_counter(RAND_DRBG *drbg, unsigned int n) +{ + PROV_DRBG *p = prov_rand(drbg); + + p->reseed_gen_counter = n; +} + static void set_reseed_counter(RAND_DRBG *drbg, unsigned int n) { PROV_DRBG *p = prov_rand(drbg); @@ -509,7 +516,7 @@ static int error_check(DRBG_SELFTEST_DATA *td) if (!instantiate(drbg, td, &t)) goto err; reseed_counter_tmp = reseed_counter(drbg); - set_reseed_counter(drbg, reseed_requests(drbg)); + set_generate_counter(drbg, reseed_requests(drbg)); /* Generate output and check entropy has been requested for reseed */ t.entropycnt = 0; @@ -534,7 +541,7 @@ static int error_check(DRBG_SELFTEST_DATA *td) if (!instantiate(drbg, td, &t)) goto err; reseed_counter_tmp = reseed_counter(drbg); - set_reseed_counter(drbg, reseed_requests(drbg)); + set_generate_counter(drbg, reseed_requests(drbg)); /* Generate output and check entropy has been requested for reseed */ t.entropycnt = 0;