Before initalising a live DRBG (i.e. not in test mode) run a complete health
check on a DRBG of the same type.
This commit is contained in:
parent
68ea88b8d1
commit
f3823ddfcf
@ -84,6 +84,18 @@ int FIPS_drbg_init(DRBG_CTX *dctx, int type, unsigned int flags)
|
|||||||
FIPSerr(FIPS_F_FIPS_DRBG_INIT, FIPS_R_ERROR_INITIALISING_DRBG);
|
FIPSerr(FIPS_F_FIPS_DRBG_INIT, FIPS_R_ERROR_INITIALISING_DRBG);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* If not in test mode run selftests on DRBG of the same type */
|
||||||
|
|
||||||
|
if (!(dctx->flags & DRBG_FLAG_TEST))
|
||||||
|
{
|
||||||
|
DRBG_CTX tctx;
|
||||||
|
if (!fips_drbg_kat(&tctx, type, flags | DRBG_FLAG_TEST))
|
||||||
|
{
|
||||||
|
/*FIPSerr(FIPS_F_FIPS_DRBG_INIT, FIPS_R_SELFTEST_FAILURE);*/
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user