From 3696480b5768bc0a5569800cb7cf5b3a10f064d4 Mon Sep 17 00:00:00 2001 From: Andy Green Date: Thu, 11 Oct 2018 10:20:17 +0800 Subject: [PATCH] ws upgrade hs: require Host hdr --- lib/roles/ws/server-ws.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/roles/ws/server-ws.c b/lib/roles/ws/server-ws.c index 24b0bf0af..b572b9414 100644 --- a/lib/roles/ws/server-ws.c +++ b/lib/roles/ws/server-ws.c @@ -309,12 +309,21 @@ lws_process_ws_upgrade(struct lws *wsi) default: bad_conn_format: - lwsl_err("%s: malformed or absent connection hdr\n", __func__); + lwsl_err("%s: malformed or absent connection hdr\n", + __func__); return 1; } } while (e > 0); + /* let's also confirm that Host at least exists for h1 */ + + if (!lws_hdr_total_length(wsi, WSI_TOKEN_HOST)) { + lwsl_err("%s: missing host: hdr on h1 ws upgrade\n", __func__); + + return 1; + } + #if defined(LWS_WITH_HTTP2) check_protocol: #endif