Free DRBG context in self tests.
[oweals/openssl.git] / fips / fips.c
index 6b5e4d4ccb46df39628425582a012c93608cc4be..c7d4bb567cd22288475f1fd75c067edd12be569d 100644 (file)
@@ -175,8 +175,10 @@ int FIPS_selftest(void)
     return FIPS_selftest_sha1()
        && FIPS_selftest_hmac()
        && FIPS_selftest_aes()
+       && FIPS_selftest_aes_gcm()
        && FIPS_selftest_des()
        && FIPS_selftest_rsa()
+       && FIPS_selftest_ecdsa()
        && FIPS_selftest_dsa();
     }
 
@@ -313,6 +315,13 @@ int FIPS_mode_set(int onoff)
            goto end;
            }
 
+       if (!FIPS_selftest_drbg())
+           {
+           fips_selftest_fail = 1;
+           ret = 0;
+           goto end;
+           }
+
        /* Perform RNG KAT before seeding */
        if (!FIPS_selftest_rng())
            {