Loading fips/rand/fips_drbg_lib.c +5 −3 Original line number Diff line number Diff line Loading @@ -112,6 +112,7 @@ DRBG_CTX *FIPS_drbg_new(int type, unsigned int flags) void FIPS_drbg_free(DRBG_CTX *dctx) { if (dctx->uninstantiate) dctx->uninstantiate(dctx); OPENSSL_cleanse(dctx, sizeof(DRBG_CTX)); OPENSSL_free(dctx); Loading Loading @@ -388,7 +389,8 @@ int FIPS_drbg_uninstantiate(DRBG_CTX *dctx) { int rv; if (!dctx->uninstantiate) return 1; rv = 1; else rv = dctx->uninstantiate(dctx); /* Although we'd like to cleanse here we can't because we have to * test the uninstantiate really zeroes the data. Loading fips/rand/fips_drbg_selftest.c +1 −0 Original line number Diff line number Diff line Loading @@ -1011,6 +1011,7 @@ int FIPS_selftest_drbg(void) if (!fips_drbg_health_check(dctx, td)) break; } FIPS_drbg_free(dctx); if (td->nid == 0) return 1; return 0; Loading Loading
fips/rand/fips_drbg_lib.c +5 −3 Original line number Diff line number Diff line Loading @@ -112,6 +112,7 @@ DRBG_CTX *FIPS_drbg_new(int type, unsigned int flags) void FIPS_drbg_free(DRBG_CTX *dctx) { if (dctx->uninstantiate) dctx->uninstantiate(dctx); OPENSSL_cleanse(dctx, sizeof(DRBG_CTX)); OPENSSL_free(dctx); Loading Loading @@ -388,7 +389,8 @@ int FIPS_drbg_uninstantiate(DRBG_CTX *dctx) { int rv; if (!dctx->uninstantiate) return 1; rv = 1; else rv = dctx->uninstantiate(dctx); /* Although we'd like to cleanse here we can't because we have to * test the uninstantiate really zeroes the data. Loading
fips/rand/fips_drbg_selftest.c +1 −0 Original line number Diff line number Diff line Loading @@ -1011,6 +1011,7 @@ int FIPS_selftest_drbg(void) if (!fips_drbg_health_check(dctx, td)) break; } FIPS_drbg_free(dctx); if (td->nid == 0) return 1; return 0; Loading