From: Dr. Stephen Henson Date: Wed, 24 May 2017 20:54:03 +0000 (+0100) Subject: Add index for ED25519 X-Git-Tag: OpenSSL_1_1_1-pre1~1268 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=07afa3d8809f312e79340fcca117abccb61c8e8f;p=thirdparty%2Fopenssl.git Add index for ED25519 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3585) --- diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 83c48058c49..4607bc79049 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -364,7 +364,8 @@ # define SSL_PKEY_GOST01 3 # define SSL_PKEY_GOST12_256 4 # define SSL_PKEY_GOST12_512 5 -# define SSL_PKEY_NUM 6 +# define SSL_PKEY_ED25519 6 +# define SSL_PKEY_NUM 7 /* * Pseudo-constant. GOST cipher suites can use different certs for 1 * SSL_CIPHER. So let's see which one we have in fact. diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index 0a5d7b40670..e4c8c668af8 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -1248,6 +1248,8 @@ int ssl_cert_type(const X509 *x, const EVP_PKEY *pk) #ifndef OPENSSL_NO_EC case EVP_PKEY_EC: return SSL_PKEY_ECC; + case NID_ED25519: + return SSL_PKEY_ED25519; #endif #ifndef OPENSSL_NO_GOST case NID_id_GostR3410_2001: diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 9112a0c4921..fc1c66462aa 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -798,7 +798,8 @@ static const uint16_t tls_default_sigalg[] = { TLSEXT_SIGALG_ecdsa_sha1, /* SSL_PKEY_ECC */ TLSEXT_SIGALG_gostr34102001_gostr3411, /* SSL_PKEY_GOST01 */ TLSEXT_SIGALG_gostr34102012_256_gostr34112012_256, /* SSL_PKEY_GOST12_256 */ - TLSEXT_SIGALG_gostr34102012_512_gostr34112012_512 /* SSL_PKEY_GOST12_512 */ + TLSEXT_SIGALG_gostr34102012_512_gostr34112012_512, /* SSL_PKEY_GOST12_512 */ + 0 /* SSL_PKEY_ED25519 */ }; /* Lookup TLS signature algorithm */ @@ -1394,6 +1395,8 @@ static int tls12_get_pkey_idx(int sig_nid) #ifndef OPENSSL_NO_EC case EVP_PKEY_EC: return SSL_PKEY_ECC; + case NID_ED25519: + return SSL_PKEY_ED25519; #endif #ifndef OPENSSL_NO_GOST case NID_id_GostR3410_2001: