diff options
Diffstat (limited to 'src/lib/libssl/ssl_sigalgs.c')
| -rw-r--r-- | src/lib/libssl/ssl_sigalgs.c | 19 |
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; |
