Commit ee774d5d authored by Pauli's avatar Pauli
Browse files

Address a bug in the DRBG tests where the reseeding wasn't properly


reinstantiating the DRBG.

Bug reported by Doug Gibbons.

Reviewed-by: default avatarPaul Yang <yang.yang@baishancloud.com>
(Merged from https://github.com/openssl/openssl/pull/8184)

(cherry picked from commit b1522fa5)
parent eaacc247
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -420,7 +420,7 @@ static int error_check(DRBG_SELFTEST_DATA *td)
     */

    /* Test explicit reseed with too large additional input */
    if (!init(drbg, td, &t)
    if (!instantiate(drbg, td, &t)
            || RAND_DRBG_reseed(drbg, td->adin, drbg->max_adinlen + 1, 0) > 0)
        goto err;

@@ -431,7 +431,7 @@ static int error_check(DRBG_SELFTEST_DATA *td)
        goto err;

    /* Test explicit reseed with too much entropy */
    if (!init(drbg, td, &t))
    if (!instantiate(drbg, td, &t))
        goto err;
    t.entropylen = drbg->max_entropylen + 1;
    if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen, 0), 0)
@@ -439,7 +439,7 @@ static int error_check(DRBG_SELFTEST_DATA *td)
        goto err;

    /* Test explicit reseed with too little entropy */
    if (!init(drbg, td, &t))
    if (!instantiate(drbg, td, &t))
        goto err;
    t.entropylen = drbg->min_entropylen - 1;
    if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen, 0), 0)