summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_sigalgs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libssl/ssl_sigalgs.c')
-rw-r--r--src/lib/libssl/ssl_sigalgs.c19
1 files changed, 1 insertions, 18 deletions
diff --git a/src/lib/libssl/ssl_sigalgs.c b/src/lib/libssl/ssl_sigalgs.c
index ee4088f6ab..779d47985a 100644
--- a/src/lib/libssl/ssl_sigalgs.c
+++ b/src/lib/libssl/ssl_sigalgs.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_sigalgs.c,v 1.53 2026/03/30 06:20:08 tb Exp $ */ 1/* $OpenBSD: ssl_sigalgs.c,v 1.54 2026/05/31 14:34:44 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2018-2020 Bob Beck <beck@openbsd.org> 3 * Copyright (c) 2018-2020 Bob Beck <beck@openbsd.org>
4 * Copyright (c) 2021 Joel Sing <jsing@openbsd.org> 4 * Copyright (c) 2021 Joel Sing <jsing@openbsd.org>
@@ -134,12 +134,6 @@ const struct ssl_sigalg sigalgs[] = {
134 .security_level = 1, 134 .security_level = 1,
135 }, 135 },
136 { 136 {
137 .value = SIGALG_RSA_PKCS1_MD5_SHA1,
138 .key_type = EVP_PKEY_RSA,
139 .md = EVP_md5_sha1,
140 .security_level = 1,
141 },
142 {
143 .value = SIGALG_NONE, 137 .value = SIGALG_NONE,
144 }, 138 },
145}; 139};
@@ -237,9 +231,6 @@ ssl_sigalgs_build(uint16_t tls_version, CBB *cbb, int security_level)
237 231
238 /* Add values in order as long as they are supported. */ 232 /* Add values in order as long as they are supported. */
239 for (i = 0; i < len; i++) { 233 for (i = 0; i < len; i++) {
240 /* Do not allow the legacy value for < 1.2 to be used. */
241 if (values[i] == SIGALG_RSA_PKCS1_MD5_SHA1)
242 return 0;
243 if ((sigalg = ssl_sigalg_lookup(values[i])) == NULL) 234 if ((sigalg = ssl_sigalg_lookup(values[i])) == NULL)
244 return 0; 235 return 0;
245 if (sigalg->security_level < security_level) 236 if (sigalg->security_level < security_level)
@@ -262,8 +253,6 @@ ssl_sigalg_for_legacy(SSL *s, EVP_PKEY *pkey)
262 /* Default signature algorithms used for TLSv1.2 and earlier. */ 253 /* Default signature algorithms used for TLSv1.2 and earlier. */
263 switch (EVP_PKEY_id(pkey)) { 254 switch (EVP_PKEY_id(pkey)) {
264 case EVP_PKEY_RSA: 255 case EVP_PKEY_RSA:
265 if (s->s3->hs.negotiated_tls_version < TLS1_2_VERSION)
266 return ssl_sigalg_lookup(SIGALG_RSA_PKCS1_MD5_SHA1);
267 return ssl_sigalg_lookup(SIGALG_RSA_PKCS1_SHA1); 256 return ssl_sigalg_lookup(SIGALG_RSA_PKCS1_SHA1);
268 case EVP_PKEY_EC: 257 case EVP_PKEY_EC:
269 return ssl_sigalg_lookup(SIGALG_ECDSA_SHA1); 258 return ssl_sigalg_lookup(SIGALG_ECDSA_SHA1);
@@ -317,9 +306,6 @@ ssl_sigalg_select(SSL *s, EVP_PKEY *pkey)
317{ 306{
318 CBS cbs; 307 CBS cbs;
319 308
320 if (!SSL_USE_SIGALGS(s))
321 return ssl_sigalg_for_legacy(s, pkey);
322
323 /* 309 /*
324 * RFC 5246 allows a TLS 1.2 client to send no sigalgs extension, 310 * RFC 5246 allows a TLS 1.2 client to send no sigalgs extension,
325 * in which case the server must use the default. 311 * in which case the server must use the default.
@@ -353,9 +339,6 @@ ssl_sigalg_for_peer(SSL *s, EVP_PKEY *pkey, uint16_t sigalg_value)
353{ 339{
354 const struct ssl_sigalg *sigalg; 340 const struct ssl_sigalg *sigalg;
355 341
356 if (!SSL_USE_SIGALGS(s))
357 return ssl_sigalg_for_legacy(s, pkey);
358
359 if ((sigalg = ssl_sigalg_from_value(s, sigalg_value)) == NULL) { 342 if ((sigalg = ssl_sigalg_from_value(s, sigalg_value)) == NULL) {
360 SSLerror(s, SSL_R_UNKNOWN_DIGEST); 343 SSLerror(s, SSL_R_UNKNOWN_DIGEST);
361 return NULL; 344 return NULL;