diff options
author | jsing <> | 2018-01-27 15:30:05 +0000 |
---|---|---|
committer | jsing <> | 2018-01-27 15:30:05 +0000 |
commit | 7e9d176210d3d878a8e83ab3e422f4bf370711e6 (patch) | |
tree | 3d53d5ec7c827462ec31ee3156e980e4c951418a /src/lib/libssl/ssl_tlsext.h | |
parent | cccafe604becdfd2326c3f4d1c5664d824934cb4 (diff) | |
download | openbsd-7e9d176210d3d878a8e83ab3e422f4bf370711e6.tar.gz openbsd-7e9d176210d3d878a8e83ab3e422f4bf370711e6.tar.bz2 openbsd-7e9d176210d3d878a8e83ab3e422f4bf370711e6.zip |
Complete the TLS extension handling rewrite for the server-side.
This removes ssl_parse_clienthello_tlsext() and allows the CBS to be
passed all the way through from ssl3_get_client_hello(). The renegotation
check gets pulled up into ssl3_get_client_hello() which is where other
such checks exist.
The TLS extension parsing now also ensures that we do not get duplicates
of any known extensions (the old pre-rewrite code only did this for some
extensions).
ok inoguchi@
Diffstat (limited to 'src/lib/libssl/ssl_tlsext.h')
-rw-r--r-- | src/lib/libssl/ssl_tlsext.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_tlsext.h b/src/lib/libssl/ssl_tlsext.h index 7c6250a7f7..1af2e6cb3b 100644 --- a/src/lib/libssl/ssl_tlsext.h +++ b/src/lib/libssl/ssl_tlsext.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_tlsext.h,v 1.10 2017/08/27 02:58:04 doug Exp $ */ | 1 | /* $OpenBSD: ssl_tlsext.h,v 1.11 2018/01/27 15:30:05 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2016, 2017 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2016, 2017 Joel Sing <jsing@openbsd.org> |
4 | * Copyright (c) 2017 Doug Hogan <doug@openbsd.org> | 4 | * Copyright (c) 2017 Doug Hogan <doug@openbsd.org> |
@@ -82,8 +82,7 @@ int tlsext_srtp_serverhello_parse(SSL *s, CBS *cbs, int *alert); | |||
82 | #endif | 82 | #endif |
83 | 83 | ||
84 | int tlsext_clienthello_build(SSL *s, CBB *cbb); | 84 | int tlsext_clienthello_build(SSL *s, CBB *cbb); |
85 | int tlsext_clienthello_parse_one(SSL *s, CBS *cbs, uint16_t tlsext_type, | 85 | int tlsext_clienthello_parse(SSL *s, CBS *cbs, int *alert); |
86 | int *alert); | ||
87 | 86 | ||
88 | int tlsext_serverhello_build(SSL *s, CBB *cbb); | 87 | int tlsext_serverhello_build(SSL *s, CBB *cbb); |
89 | int tlsext_serverhello_parse_one(SSL *s, CBS *cbs, uint16_t tlsext_type, | 88 | int tlsext_serverhello_parse_one(SSL *s, CBS *cbs, uint16_t tlsext_type, |