summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2017-05-24 21:54:03 +0100
committerDr. Stephen Henson <steve@openssl.org>2017-06-21 14:11:01 +0100
commit07afa3d8809f312e79340fcca117abccb61c8e8f (patch)
tree346c3ee157dbdc28f6fe2d20e574d6fe78bd3d49
parent65e89736b3c05c2b2c83c26586efb95616caf40e (diff)
Add index for ED25519
Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3585)
-rw-r--r--ssl/ssl_locl.h3
-rw-r--r--ssl/statem/statem_lib.c2
-rw-r--r--ssl/t1_lib.c5
3 files changed, 8 insertions, 2 deletions
diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h
index 83c48058c4..4607bc7904 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 0a5d7b4067..e4c8c668af 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 9112a0c492..fc1c66462a 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: