Add support for memory leak checking in fips_algvs.
[openssl.git] / fips / aes / fips_aesavs.c
index 84bcbac..bbdb93a 100644 (file)
@@ -535,7 +535,7 @@ static int do_mct(char *amode,
                }
            }
        }
-    
+    FIPS_cipher_ctx_cleanup(&ctx);
     return ret;
     }
 
@@ -780,7 +780,7 @@ static int proc_file(char *rqfile, char *rspfile)
                    if(do_mct(amode, akeysz, aKey, iVec, 
                              dir, (unsigned char*)plaintext, len, 
                              rfp) < 0)
-                       EXIT(1);
+                       err = 1;
                    }
                else
                    {
@@ -850,6 +850,7 @@ static int proc_file(char *rqfile, char *rspfile)
        fclose(rfp);
     if (afp)
        fclose(afp);
+    FIPS_cipher_ctx_cleanup(&ctx);
     return err;
     }
 
@@ -862,7 +863,11 @@ static int proc_file(char *rqfile, char *rspfile)
     aes_test -d xxxxx.xxx
   The default is: -d req.txt
 --------------------------------------------------*/
+#ifdef FIPS_ALGVS
+int fips_aesavs_main(int argc, char **argv)
+#else
 int main(int argc, char **argv)
+#endif
     {
     char *rqlist = "req.txt", *rspfile = NULL;
     FILE *fp = NULL;
@@ -915,7 +920,7 @@ int main(int argc, char **argv)
            if (proc_file(rfn, rspfile))
                {
                printf(">>> Processing failed for: %s <<<\n", rfn);
-               EXIT(1);
+               return 1;
                }
            }
        fclose(fp);
@@ -929,7 +934,6 @@ int main(int argc, char **argv)
            printf(">>> Processing failed for: %s <<<\n", fn);
            }
        }
-    EXIT(0);
     return 0;
     }