Fix ecparam -genkey with point compression or DER outform
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Sat, 24 Mar 2018 14:17:11 +0000 (15:17 +0100)
committerBernd Edlinger <bernd.edlinger@hotmail.de>
Sun, 25 Mar 2018 09:12:46 +0000 (11:12 +0200)
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5741)

apps/ecparam.c

index 51877f5..2290242 100644 (file)
@@ -384,6 +384,9 @@ int ecparam_main(int argc, char **argv)
                         "}\n");
     }
 
                         "}\n");
     }
 
+    if (outformat == FORMAT_ASN1 && genkey)
+        noout = 1;
+
     if (!noout) {
         if (outformat == FORMAT_ASN1)
             i = i2d_ECPKParameters_bio(out, group);
     if (!noout) {
         if (outformat == FORMAT_ASN1)
             i = i2d_ECPKParameters_bio(out, group);
@@ -410,6 +413,9 @@ int ecparam_main(int argc, char **argv)
             goto end;
         }
 
             goto end;
         }
 
+        if (new_form)
+            EC_KEY_set_conv_form(eckey, form);
+
         if (!EC_KEY_generate_key(eckey)) {
             BIO_printf(bio_err, "unable to generate key\n");
             EC_KEY_free(eckey);
         if (!EC_KEY_generate_key(eckey)) {
             BIO_printf(bio_err, "unable to generate key\n");
             EC_KEY_free(eckey);