summaryrefslogtreecommitdiffstats
path: root/lib/libssl/t1_lib.c
diff options
context:
space:
mode:
authorbcook <bcook@openbsd.org>2015-08-19 23:34:34 +0000
committerbcook <bcook@openbsd.org>2015-08-19 23:34:34 +0000
commitdb47d9360bb0e6ecdd7e96df1411417690a14135 (patch)
tree6536f453e3b9a95d8d1bb41cbb4a0fc615478b1e /lib/libssl/t1_lib.c
parentBetter compat matching for WinSCP, add compat matching for (diff)
downloadwireguard-openbsd-db47d9360bb0e6ecdd7e96df1411417690a14135.tar.xz
wireguard-openbsd-db47d9360bb0e6ecdd7e96df1411417690a14135.zip
Properly handle missing TLS extensions in client hello as a non-failure.
Noticed by @Ligushka from github. ok miod@, doug@
Diffstat (limited to 'lib/libssl/t1_lib.c')
-rw-r--r--lib/libssl/t1_lib.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libssl/t1_lib.c b/lib/libssl/t1_lib.c
index 9ee495c7908..b892fa9b914 100644
--- a/lib/libssl/t1_lib.c
+++ b/lib/libssl/t1_lib.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: t1_lib.c,v 1.82 2015/07/24 07:57:48 doug Exp $ */
+/* $OpenBSD: t1_lib.c,v 1.83 2015/08/19 23:34:34 bcook Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
@@ -2087,6 +2087,8 @@ tls1_process_ticket(SSL *s, const unsigned char *session, int session_len,
return -1;
/* Now at start of extensions */
+ if (CBS_len(&session_id) == 0)
+ return 0;
if (!CBS_get_u16_length_prefixed(&session_id, &extensions))
return -1;