diff options
author | Benjamin Kaduk <bkaduk@akamai.com> | 2017-01-23 16:59:23 -0600 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2017-02-23 19:24:36 +0100 |
commit | 26f426846ec3798a27f19600f05e4e41446d5b4f (patch) | |
tree | 0e11b64054497a2f4d73c611edb650f83f493df5 /ssl | |
parent | fc5ece2ee4c7ef41759c2267eccbe08df3245721 (diff) | |
download | openssl-26f426846ec3798a27f19600f05e4e41446d5b4f.tar.gz |
Store the number of extensions in CLIENTHELLO_MSG
Keep track of the length of the pre_proc_exts array.
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2279)
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/ssl_locl.h | 1 | ||||
-rw-r--r-- | ssl/statem/statem_srvr.c | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 6557834265..f671860fa3 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -1797,6 +1797,7 @@ typedef struct { size_t compressions_len; unsigned char compressions[MAX_COMPRESSIONS_SIZE]; PACKET extensions; + size_t pre_proc_exts_len; RAW_EXTENSION *pre_proc_exts; } CLIENTHELLO_MSG; diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 28f3b24cd6..ca020c5511 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -1423,7 +1423,8 @@ MSG_PROCESS_RETURN tls_process_client_hello(SSL *s, PACKET *pkt) /* Preserve the raw extensions PACKET for later use */ extensions = clienthello.extensions; if (!tls_collect_extensions(s, &extensions, EXT_CLIENT_HELLO, - &clienthello.pre_proc_exts, &al, NULL)) { + &clienthello.pre_proc_exts, &al, + &clienthello.pre_proc_exts_len)) { /* SSLerr already been called */ goto f_err; } |