diff options
author | Brent Cook <bcook@cvs.openbsd.org> | 2015-08-19 23:34:35 +0000 |
---|---|---|
committer | Brent Cook <bcook@cvs.openbsd.org> | 2015-08-19 23:34:35 +0000 |
commit | d6f3d07fccaa2bd455f9f4bbf73d871b8426ba7e (patch) | |
tree | 8eb35234ef05ae7355cf9e8e4e02477152c49928 /lib | |
parent | d48358f488260da665bedf744d3dcd6bb679d08a (diff) |
Properly handle missing TLS extensions in client hello as a non-failure.
Noticed by @Ligushka from github.
ok miod@, doug@
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libssl/t1_lib.c | 4 |
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; |