diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-04 16:52:45 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-18 19:20:58 +0200 |
commit | 8965e5089efea4fdfc27241967098833f56de060 (patch) | |
tree | 0d2b19eac9b203981c95ac244d994acf84450fa5 | |
parent | e916d48e5a3a033469d34f5646b8c12963975d99 (diff) | |
download | busybox-w32-8965e5089efea4fdfc27241967098833f56de060.tar.gz busybox-w32-8965e5089efea4fdfc27241967098833f56de060.tar.bz2 busybox-w32-8965e5089efea4fdfc27241967098833f56de060.zip |
tls: use capped SNI len everywhere
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | networking/tls.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/networking/tls.c b/networking/tls.c index db518bf90..fd3cb0dba 100644 --- a/networking/tls.c +++ b/networking/tls.c | |||
@@ -1199,11 +1199,11 @@ static void send_client_hello_and_alloc_hsd(tls_state_t *tls, const char *sni) | |||
1199 | }; | 1199 | }; |
1200 | struct client_hello *record; | 1200 | struct client_hello *record; |
1201 | int len; | 1201 | int len; |
1202 | int sni_len = sni ? strnlen(sni, 127) : 0; | 1202 | int sni_len = sni ? strnlen(sni, 127 - 9) : 0; |
1203 | 1203 | ||
1204 | len = sizeof(*record); | 1204 | len = sizeof(*record); |
1205 | if (sni_len) | 1205 | if (sni_len) |
1206 | len += 11 + strlen(sni); | 1206 | len += 11 + sni_len; |
1207 | record = tls_get_outbuf(tls, len); | 1207 | record = tls_get_outbuf(tls, len); |
1208 | memset(record, 0, len); | 1208 | memset(record, 0, len); |
1209 | 1209 | ||