File openssl-fips-run_selftests_only_when_module_is_complete.patch of Package openssl

Index: openssl-1.0.2j/crypto/fips/fips.c
===================================================================
--- openssl-1.0.2j.orig/crypto/fips/fips.c	2017-05-12 15:51:59.258797863 +0200
+++ openssl-1.0.2j/crypto/fips/fips.c	2017-06-20 19:57:12.649510712 +0200
@@ -421,15 +421,15 @@ int FIPS_module_mode_set(int onoff, cons
         }
 # endif
 
-        if (!FIPS_selftest()) {
+        if (!verify_checksums()) {
+            FIPSerr(FIPS_F_FIPS_MODULE_MODE_SET,
+                    FIPS_R_FINGERPRINT_DOES_NOT_MATCH);
             fips_selftest_fail = 1;
             ret = 0;
             goto end;
         }
 
-        if (!verify_checksums()) {
-            FIPSerr(FIPS_F_FIPS_MODULE_MODE_SET,
-                    FIPS_R_FINGERPRINT_DOES_NOT_MATCH);
+        if (!FIPS_selftest()) {
             fips_selftest_fail = 1;
             ret = 0;
             goto end;
openSUSE Build Service is sponsored by