aesni-x86_64.pl: make ECB subroutine Windows ABI compliant.
[oweals/openssl.git] / crypto / ec / ec_cvt.c
index bfcbab35fe695d32beffbe8a704af40289f81d5c..d357c33031e2054cc6db73410ff6adc1e1f6059e 100644 (file)
  *
  */
 
+#ifdef OPENSSL_FIPS
+#include <openssl/fips.h>
+#endif
+
 #include <openssl/err.h>
 #include "ec_lcl.h"
 
@@ -78,6 +82,10 @@ EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, const BIGNUM *a, const BIGNUM
        const EC_METHOD *meth;
        EC_GROUP *ret;
 
+#ifdef OPENSSL_FIPS
+       if (FIPS_mode())
+               return FIPS_ec_group_new_curve_gfp(p,a,b,ctx);
+#endif
 #if defined(OPENSSL_BN_ASM_MONT)
        /*
         * This might appear controversial, but the fact is that generic
@@ -152,7 +160,11 @@ EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a, const BIGNUM
        {
        const EC_METHOD *meth;
        EC_GROUP *ret;
-       
+
+#ifdef OPENSSL_FIPS
+       if (FIPS_mode())
+               return FIPS_ec_group_new_curve_gf2m(p,a,b,ctx);
+#endif
        meth = EC_GF2m_simple_method();
        
        ret = EC_GROUP_new(meth);