summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsthen <>2024-04-02 22:50:54 +0000
committersthen <>2024-04-02 22:50:54 +0000
commite8f02dfdf1f039627bc23fe657b3c87398ba6866 (patch)
treeabfc9b018b3236ccba1d25f6f521a8758fcd8525 /src
parent6e4fce38635495665b3ef6675c39f0b9901e12c6 (diff)
downloadopenbsd-e8f02dfdf1f039627bc23fe657b3c87398ba6866.tar.gz
openbsd-e8f02dfdf1f039627bc23fe657b3c87398ba6866.tar.bz2
openbsd-e8f02dfdf1f039627bc23fe657b3c87398ba6866.zip
Backout previous commit (intending that libressl client rejects a supported
groups extension from the server). It triggers 'CONNECT_CR_SRVR_HELLO:tlsv1 alert decode error' when connecting to a (modern) java server (tomcat 10.1.18 on openjdk 17.0.10). "please revert" tb@
Diffstat (limited to 'src')
-rw-r--r--src/lib/libssl/ssl_tlsext.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_tlsext.c b/src/lib/libssl/ssl_tlsext.c
index 6649baf291..90734457e5 100644
--- a/src/lib/libssl/ssl_tlsext.c
+++ b/src/lib/libssl/ssl_tlsext.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_tlsext.c,v 1.146 2024/03/28 00:22:35 beck Exp $ */ 1/* $OpenBSD: ssl_tlsext.c,v 1.147 2024/04/02 22:50:54 sthen Exp $ */
2/* 2/*
3 * Copyright (c) 2016, 2017, 2019 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2016, 2017, 2019 Joel Sing <jsing@openbsd.org>
4 * Copyright (c) 2017 Doug Hogan <doug@openbsd.org> 4 * Copyright (c) 2017 Doug Hogan <doug@openbsd.org>
@@ -324,8 +324,22 @@ static int
324tlsext_supportedgroups_client_process(SSL *s, uint16_t msg_type, CBS *cbs, 324tlsext_supportedgroups_client_process(SSL *s, uint16_t msg_type, CBS *cbs,
325 int *alert) 325 int *alert)
326{ 326{
327 /* Servers should not send this extension per the RFC. */ 327 /*
328 return 0; 328 * Servers should not send this extension per the RFC.
329 *
330 * However, certain F5 BIG-IP systems incorrectly send it. This bug is
331 * from at least 2014 but as of 2017, there are still large sites with
332 * this unpatched in production. As a result, we need to currently skip
333 * over the extension and ignore its content:
334 *
335 * https://support.f5.com/csp/article/K37345003
336 */
337 if (!CBS_skip(cbs, CBS_len(cbs))) {
338 *alert = SSL_AD_INTERNAL_ERROR;
339 return 0;
340 }
341
342 return 1;
329} 343}
330 344
331/* 345/*