summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjsing <>2021-09-03 13:18:01 +0000
committerjsing <>2021-09-03 13:18:01 +0000
commit0e1b29b0b5ebb370785e5e69e3b74e9affb817c2 (patch)
tree931c107c8b3ca572f49af8146550687df69d905b /src/lib
parent7e1d01d5a6ced7d28ff98425050886b037b07c9f (diff)
downloadopenbsd-0e1b29b0b5ebb370785e5e69e3b74e9affb817c2.tar.gz
openbsd-0e1b29b0b5ebb370785e5e69e3b74e9affb817c2.tar.bz2
openbsd-0e1b29b0b5ebb370785e5e69e3b74e9affb817c2.zip
Ensure that a client hello does not have trailing data.
Found by tlsfuzzer. ok beck@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/ssl_srvr.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/libssl/ssl_srvr.c b/src/lib/libssl/ssl_srvr.c
index a473d5af05..3a37fc7e09 100644
--- a/src/lib/libssl/ssl_srvr.c
+++ b/src/lib/libssl/ssl_srvr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_srvr.c,v 1.118 2021/08/30 19:25:43 jsing Exp $ */ 1/* $OpenBSD: ssl_srvr.c,v 1.119 2021/09/03 13:18:01 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 *
@@ -1017,6 +1017,9 @@ ssl3_get_client_hello(SSL *s)
1017 goto fatal_err; 1017 goto fatal_err;
1018 } 1018 }
1019 1019
1020 if (CBS_len(&cbs) != 0)
1021 goto decode_err;
1022
1020 if (!S3I(s)->renegotiate_seen && s->internal->renegotiate) { 1023 if (!S3I(s)->renegotiate_seen && s->internal->renegotiate) {
1021 al = SSL_AD_HANDSHAKE_FAILURE; 1024 al = SSL_AD_HANDSHAKE_FAILURE;
1022 SSLerror(s, SSL_R_UNSAFE_LEGACY_RENEGOTIATION_DISABLED); 1025 SSLerror(s, SSL_R_UNSAFE_LEGACY_RENEGOTIATION_DISABLED);