From 1c5609b103eb8a5e47488306e9b34ff2021b41fa Mon Sep 17 00:00:00 2001 From: tb <> Date: Wed, 17 Aug 2022 18:45:25 +0000 Subject: Refactor tls1_get_supported_group() This splits tls1_get_supported_group() into a few helper functions to be able to count shared groups and to return the n-th shared group since someone thought it is a great idea to expose that in a single API and some others thought it is useful to add this info to log noise. This is all made a bit more complicated thanks to the security level having its tentacles everywhere and because a user-provided security callback can influence the list of groups shared by the peers. ok jsing --- src/lib/libssl/ssl_locl.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/lib/libssl/ssl_locl.h') diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h index 6e4eb403cd..35fa4c693c 100644 --- a/src/lib/libssl/ssl_locl.h +++ b/src/lib/libssl/ssl_locl.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ssl_locl.h,v 1.420 2022/08/17 18:42:13 tb Exp $ */ +/* $OpenBSD: ssl_locl.h,v 1.421 2022/08/17 18:45:25 tb Exp $ */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -1527,7 +1527,9 @@ int tls1_ec_group_id2nid(uint16_t group_id, int *out_nid); int tls1_ec_group_id2bits(uint16_t group_id, int *out_bits); int tls1_ec_nid2group_id(int nid, uint16_t *out_group_id); int tls1_check_group(SSL *s, uint16_t group_id); -int tls1_get_supported_group(SSL *s, int *group_nid); +int tls1_count_shared_groups(const SSL *ssl, size_t *out_count); +int tls1_get_shared_group_by_index(const SSL *ssl, size_t n, int *out_nid); +int tls1_get_supported_group(const SSL *s, int *out_nid); int ssl_check_clienthello_tlsext_early(SSL *s); int ssl_check_clienthello_tlsext_late(SSL *s); -- cgit v1.2.3-55-g6feb