summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjsing <>2022-01-04 10:34:16 +0000
committerjsing <>2022-01-04 10:34:16 +0000
commit5c3d4bb0be60368d72b04cf4d04bd98d27cb2bff (patch)
treef10afa7824a94a0fb7a09c2764b443a8f443a1cf /src/lib
parent8d571f3c4077432b6c240ea494fcb06f58345352 (diff)
downloadopenbsd-5c3d4bb0be60368d72b04cf4d04bd98d27cb2bff.tar.gz
openbsd-5c3d4bb0be60368d72b04cf4d04bd98d27cb2bff.tar.bz2
openbsd-5c3d4bb0be60368d72b04cf4d04bd98d27cb2bff.zip
Only allow zero length key shares when we know we're doing HRR.
ok inoguchi@ tb@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/ssl_tlsext.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_tlsext.c b/src/lib/libssl/ssl_tlsext.c
index 3da8ebc46c..c97ade8bdd 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.101 2021/11/01 16:37:17 jsing Exp $ */ 1/* $OpenBSD: ssl_tlsext.c,v 1.102 2022/01/04 10:34:16 jsing 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>
@@ -1558,8 +1558,10 @@ tlsext_keyshare_client_parse(SSL *s, uint16_t msg_type, CBS *cbs, int *alert)
1558 goto err; 1558 goto err;
1559 1559
1560 if (CBS_len(cbs) == 0) { 1560 if (CBS_len(cbs) == 0) {
1561 /* HRR does not include an actual key share. */ 1561 /* HRR does not include an actual key share, only the group. */
1562 /* XXX - we should know that we are in a HRR... */ 1562 if (msg_type != SSL_TLSEXT_MSG_HRR)
1563 return 0;
1564
1563 S3I(s)->hs.tls13.server_group = group; 1565 S3I(s)->hs.tls13.server_group = group;
1564 return 1; 1566 return 1;
1565 } 1567 }