c144665
diff -up openssl-1.1.0d/apps/speed.c.curves openssl-1.1.0d/apps/speed.c
c144665
--- openssl-1.1.0d/apps/speed.c.curves	2017-01-26 14:10:21.000000000 +0100
c144665
+++ openssl-1.1.0d/apps/speed.c	2017-01-26 15:53:33.913324153 +0100
e443a79
@@ -536,42 +536,18 @@ static OPT_PAIR rsa_choices[] = {
510bcc2
 #define R_EC_X25519  16
510bcc2
 #ifndef OPENSSL_NO_EC
510bcc2
 static OPT_PAIR ecdsa_choices[] = {
510bcc2
-    {"ecdsap160", R_EC_P160},
510bcc2
-    {"ecdsap192", R_EC_P192},
e443a79
     {"ecdsap224", R_EC_P224},
510bcc2
     {"ecdsap256", R_EC_P256},
510bcc2
     {"ecdsap384", R_EC_P384},
510bcc2
     {"ecdsap521", R_EC_P521},
510bcc2
-    {"ecdsak163", R_EC_K163},
510bcc2
-    {"ecdsak233", R_EC_K233},
510bcc2
-    {"ecdsak283", R_EC_K283},
510bcc2
-    {"ecdsak409", R_EC_K409},
510bcc2
-    {"ecdsak571", R_EC_K571},
510bcc2
-    {"ecdsab163", R_EC_B163},
510bcc2
-    {"ecdsab233", R_EC_B233},
510bcc2
-    {"ecdsab283", R_EC_B283},
510bcc2
-    {"ecdsab409", R_EC_B409},
510bcc2
-    {"ecdsab571", R_EC_B571},
510bcc2
     {NULL}
510bcc2
 };
510bcc2
 
510bcc2
 static OPT_PAIR ecdh_choices[] = {
510bcc2
-    {"ecdhp160", R_EC_P160},
510bcc2
-    {"ecdhp192", R_EC_P192},
e443a79
     {"ecdhp224", R_EC_P224},
510bcc2
     {"ecdhp256", R_EC_P256},
510bcc2
     {"ecdhp384", R_EC_P384},
510bcc2
     {"ecdhp521", R_EC_P521},
510bcc2
-    {"ecdhk163", R_EC_K163},
510bcc2
-    {"ecdhk233", R_EC_K233},
510bcc2
-    {"ecdhk283", R_EC_K283},
510bcc2
-    {"ecdhk409", R_EC_K409},
510bcc2
-    {"ecdhk571", R_EC_K571},
510bcc2
-    {"ecdhb163", R_EC_B163},
510bcc2
-    {"ecdhb233", R_EC_B233},
510bcc2
-    {"ecdhb283", R_EC_B283},
510bcc2
-    {"ecdhb409", R_EC_B409},
510bcc2
-    {"ecdhb571", R_EC_B571},
510bcc2
     {"ecdhx25519", R_EC_X25519},
510bcc2
     {NULL}
510bcc2
 };
c144665
diff -up openssl-1.1.0d/crypto/ec/ecp_smpl.c.curves openssl-1.1.0d/crypto/ec/ecp_smpl.c
c144665
--- openssl-1.1.0d/crypto/ec/ecp_smpl.c.curves	2017-01-26 14:10:22.000000000 +0100
c144665
+++ openssl-1.1.0d/crypto/ec/ecp_smpl.c	2017-01-26 15:53:33.913324153 +0100
e443a79
@@ -144,6 +144,11 @@ int ec_GFp_simple_group_set_curve(EC_GRO
e443a79
         return 0;
e443a79
     }
510bcc2
 
e443a79
+    if (BN_num_bits(p) < 224) {
e443a79
+        ECerr(EC_F_EC_GFP_SIMPLE_GROUP_SET_CURVE, EC_R_UNSUPPORTED_FIELD);
e443a79
+        return 0;
e443a79
+    }
e443a79
+
e443a79
     if (ctx == NULL) {
e443a79
         ctx = new_ctx = BN_CTX_new();
e443a79
         if (ctx == NULL)