diff options
author | jsing <> | 2015-08-28 16:31:43 +0000 |
---|---|---|
committer | jsing <> | 2015-08-28 16:31:43 +0000 |
commit | 2724cef8ad23497297b2b76dafd1270d0d4d99cb (patch) | |
tree | bed34bff67413244047a6634f5178066f9268374 | |
parent | 2ec1c3da9abf55961230b22cd96f193eef2ef741 (diff) | |
download | openbsd-2724cef8ad23497297b2b76dafd1270d0d4d99cb.tar.gz openbsd-2724cef8ad23497297b2b76dafd1270d0d4d99cb.tar.bz2 openbsd-2724cef8ad23497297b2b76dafd1270d0d4d99cb.zip |
MFC: Correctly handle a ClientHello that contains no TLS extensions, rather
than treating it as invalid and aborting the handshake.
-rw-r--r-- | src/lib/libssl/src/ssl/t1_lib.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/libssl/src/ssl/t1_lib.c b/src/lib/libssl/src/ssl/t1_lib.c index 9ee495c790..c48b060a1c 100644 --- a/src/lib/libssl/src/ssl/t1_lib.c +++ b/src/lib/libssl/src/ssl/t1_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: t1_lib.c,v 1.82 2015/07/24 07:57:48 doug Exp $ */ | 1 | /* $OpenBSD: t1_lib.c,v 1.82.4.1 2015/08/28 16:31:42 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 | * |
@@ -2087,6 +2087,8 @@ tls1_process_ticket(SSL *s, const unsigned char *session, int session_len, | |||
2087 | return -1; | 2087 | return -1; |
2088 | 2088 | ||
2089 | /* Now at start of extensions */ | 2089 | /* Now at start of extensions */ |
2090 | if (CBS_len(&session_id) == 0) | ||
2091 | return 0; | ||
2090 | if (!CBS_get_u16_length_prefixed(&session_id, &extensions)) | 2092 | if (!CBS_get_u16_length_prefixed(&session_id, &extensions)) |
2091 | return -1; | 2093 | return -1; |
2092 | 2094 | ||