diff options
author | jsing <> | 2021-12-04 14:03:22 +0000 |
---|---|---|
committer | jsing <> | 2021-12-04 14:03:22 +0000 |
commit | 553bc9b478f48580c6c51ddaa65c906cac0ee4e7 (patch) | |
tree | eaa42a538f5b252c276e4477b5f4bd6b0fd7a981 /src/lib/libssl/ssl_locl.h | |
parent | 7747938abe289fe6b8f9dd672e16cfcfcbdf8c95 (diff) | |
download | openbsd-553bc9b478f48580c6c51ddaa65c906cac0ee4e7.tar.gz openbsd-553bc9b478f48580c6c51ddaa65c906cac0ee4e7.tar.bz2 openbsd-553bc9b478f48580c6c51ddaa65c906cac0ee4e7.zip |
Clean up and refactor server side DHE key exchange.
Provide ssl_kex_generate_dhe_params_auto() which handles DHE key generation
based on parameters determined by the specified key bits. Convert the
existing DHE auto parameter selection code into a function that just tells
us how many key bits to use.
Untangle and rework the server side DHE key exchange to use the ssl_kex_*
functions.
ok inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/ssl_locl.h')
-rw-r--r-- | src/lib/libssl/ssl_locl.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h index 0051989ea0..d53c9ec273 100644 --- a/src/lib/libssl/ssl_locl.h +++ b/src/lib/libssl/ssl_locl.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_locl.h,v 1.371 2021/12/04 13:50:35 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_locl.h,v 1.372 2021/12/04 14:03:22 jsing 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 | * |
@@ -1343,7 +1343,7 @@ int ssl_undefined_const_function(const SSL *s); | |||
1343 | CERT_PKEY *ssl_get_server_send_pkey(const SSL *s); | 1343 | CERT_PKEY *ssl_get_server_send_pkey(const SSL *s); |
1344 | EVP_PKEY *ssl_get_sign_pkey(SSL *s, const SSL_CIPHER *c, const EVP_MD **pmd, | 1344 | EVP_PKEY *ssl_get_sign_pkey(SSL *s, const SSL_CIPHER *c, const EVP_MD **pmd, |
1345 | const struct ssl_sigalg **sap); | 1345 | const struct ssl_sigalg **sap); |
1346 | DH *ssl_get_auto_dh(SSL *s); | 1346 | size_t ssl_dhe_params_auto_key_bits(SSL *s); |
1347 | int ssl_cert_type(X509 *x, EVP_PKEY *pkey); | 1347 | int ssl_cert_type(X509 *x, EVP_PKEY *pkey); |
1348 | void ssl_set_cert_masks(CERT *c, const SSL_CIPHER *cipher); | 1348 | void ssl_set_cert_masks(CERT *c, const SSL_CIPHER *cipher); |
1349 | STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s); | 1349 | STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s); |
@@ -1448,6 +1448,7 @@ int ssl3_get_client_key_exchange(SSL *s); | |||
1448 | int ssl3_get_cert_verify(SSL *s); | 1448 | int ssl3_get_cert_verify(SSL *s); |
1449 | 1449 | ||
1450 | int ssl_kex_generate_dhe(DH *dh, DH *dh_params); | 1450 | int ssl_kex_generate_dhe(DH *dh, DH *dh_params); |
1451 | int ssl_kex_generate_dhe_params_auto(DH *dh, size_t key_len); | ||
1451 | int ssl_kex_params_dhe(DH *dh, CBB *cbb); | 1452 | int ssl_kex_params_dhe(DH *dh, CBB *cbb); |
1452 | int ssl_kex_public_dhe(DH *dh, CBB *cbb); | 1453 | int ssl_kex_public_dhe(DH *dh, CBB *cbb); |
1453 | int ssl_kex_peer_params_dhe(DH *dh, CBS *cbs, int *invalid_params); | 1454 | int ssl_kex_peer_params_dhe(DH *dh, CBS *cbs, int *invalid_params); |