diff options
Diffstat (limited to 'src/lib/libssl/ssl_ciph.c')
-rw-r--r-- | src/lib/libssl/ssl_ciph.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/lib/libssl/ssl_ciph.c b/src/lib/libssl/ssl_ciph.c index a01465d9e0..13790c56be 100644 --- a/src/lib/libssl/ssl_ciph.c +++ b/src/lib/libssl/ssl_ciph.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_ciph.c,v 1.142 2024/05/09 07:55:48 tb Exp $ */ | 1 | /* $OpenBSD: ssl_ciph.c,v 1.143 2024/07/14 15:39:36 tb Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -524,6 +524,7 @@ ssl_get_handshake_evp_md(SSL *s, const EVP_MD **md) | |||
524 | 524 | ||
525 | handshake_mac = s->s3->hs.cipher->algorithm2 & SSL_HANDSHAKE_MAC_MASK; | 525 | handshake_mac = s->s3->hs.cipher->algorithm2 & SSL_HANDSHAKE_MAC_MASK; |
526 | 526 | ||
527 | /* XXX - can we simplify this now that TLSv1.0 and TLSv1.1 are gone? */ | ||
527 | /* For TLSv1.2 we upgrade the default MD5+SHA1 MAC to SHA256. */ | 528 | /* For TLSv1.2 we upgrade the default MD5+SHA1 MAC to SHA256. */ |
528 | if (SSL_USE_SHA256_PRF(s) && handshake_mac == SSL_HANDSHAKE_MAC_DEFAULT) | 529 | if (SSL_USE_SHA256_PRF(s) && handshake_mac == SSL_HANDSHAKE_MAC_DEFAULT) |
529 | handshake_mac = SSL_HANDSHAKE_MAC_SHA256; | 530 | handshake_mac = SSL_HANDSHAKE_MAC_SHA256; |
@@ -1624,6 +1625,21 @@ SSL_CIPHER_get_auth_nid(const SSL_CIPHER *c) | |||
1624 | } | 1625 | } |
1625 | LSSL_ALIAS(SSL_CIPHER_get_auth_nid); | 1626 | LSSL_ALIAS(SSL_CIPHER_get_auth_nid); |
1626 | 1627 | ||
1628 | const EVP_MD * | ||
1629 | SSL_CIPHER_get_handshake_digest(const SSL_CIPHER *c) | ||
1630 | { | ||
1631 | switch (c->algorithm2 & SSL_HANDSHAKE_MAC_MASK) { | ||
1632 | case SSL_HANDSHAKE_MAC_DEFAULT: | ||
1633 | case SSL_HANDSHAKE_MAC_SHA256: | ||
1634 | return EVP_sha256(); | ||
1635 | case SSL_HANDSHAKE_MAC_SHA384: | ||
1636 | return EVP_sha384(); | ||
1637 | default: | ||
1638 | return NULL; | ||
1639 | } | ||
1640 | } | ||
1641 | LSSL_ALIAS(SSL_CIPHER_get_handshake_digest); | ||
1642 | |||
1627 | int | 1643 | int |
1628 | SSL_CIPHER_is_aead(const SSL_CIPHER *c) | 1644 | SSL_CIPHER_is_aead(const SSL_CIPHER *c) |
1629 | { | 1645 | { |