summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2015-02-19 14:32:44 +0000
committerDr. Stephen Henson <steve@openssl.org>2015-02-19 14:44:46 +0000
commit86f300d38540ead85543aee0cb30c32145931744 (patch)
tree8d88f3e13382556dfc8f169d5cc509e4cc448452
parentf37879d07783a78cda66fd80eaae687dadc7269f (diff)
Use named curve parameter encoding by default.
Many applications require named curve parameter encoding instead of explicit parameter encoding (including the TLS library in OpenSSL itself). Set this encoding by default instead of requiring an explicit call to set it. Add OPENSSL_EC_EXPLICT_CURVE define. Reviewed-by: Matt Caswell <matt@openssl.org>
-rw-r--r--crypto/ec/ec.h3
-rw-r--r--crypto/ec/ec_lib.c2
2 files changed, 3 insertions, 2 deletions
diff --git a/crypto/ec/ec.h b/crypto/ec/ec.h
index b89add60e0..2d36dd5ea7 100644
--- a/crypto/ec/ec.h
+++ b/crypto/ec/ec.h
@@ -715,7 +715,8 @@ int EC_GROUP_get_pentanomial_basis(const EC_GROUP *, unsigned int *k1,
unsigned int *k2, unsigned int *k3);
# endif
-# define OPENSSL_EC_NAMED_CURVE 0x001
+# define OPENSSL_EC_EXPLICIT_CURVE 0x000
+# define OPENSSL_EC_NAMED_CURVE 0x001
typedef struct ecpk_parameters_st ECPKPARAMETERS;
diff --git a/crypto/ec/ec_lib.c b/crypto/ec/ec_lib.c
index cc3dd35077..2dcdb40168 100644
--- a/crypto/ec/ec_lib.c
+++ b/crypto/ec/ec_lib.c
@@ -106,7 +106,7 @@ EC_GROUP *EC_GROUP_new(const EC_METHOD *meth)
goto err;
ret->curve_name = 0;
- ret->asn1_flag = 0;
+ ret->asn1_flag = OPENSSL_EC_NAMED_CURVE;
ret->asn1_form = POINT_CONVERSION_UNCOMPRESSED;
ret->seed = NULL;