From: Dr. Stephen Henson Date: Thu, 11 Aug 2016 14:38:37 +0000 (+0100) Subject: Add encoded points to other EC curves too. X-Git-Tag: OpenSSL_1_1_0~208 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=3bca6c27317958f30f8bbfe67814a7ab9a07f4a3;p=oweals%2Fopenssl.git Add encoded points to other EC curves too. Add encoded point ctrl support for other curves: this makes it possible to handle X25519 and other EC curve point encoding in a similar way for TLS. Reviewed-by: Rich Salz --- diff --git a/crypto/ec/ec_ameth.c b/crypto/ec/ec_ameth.c index b1dc011953..f6a3f5c15f 100644 --- a/crypto/ec/ec_ameth.c +++ b/crypto/ec/ec_ameth.c @@ -496,6 +496,13 @@ static int ec_pkey_ctrl(EVP_PKEY *pkey, int op, long arg1, void *arg2) *(int *)arg2 = NID_sha256; return 2; + case ASN1_PKEY_CTRL_SET1_TLS_ENCPT: + return EC_KEY_oct2key(EVP_PKEY_get0_EC_KEY(pkey), arg2, arg1, NULL); + + case ASN1_PKEY_CTRL_GET1_TLS_ENCPT: + return EC_KEY_key2buf(EVP_PKEY_get0_EC_KEY(pkey), + POINT_CONVERSION_UNCOMPRESSED, arg2, NULL); + default: return -2;