From d05d2975e87da8799ebda99876ce576529fdacd9 Mon Sep 17 00:00:00 2001 From: Wiebe Cazemier Date: Wed, 10 Mar 2021 21:48:30 +0100 Subject: [PATCH] Fix HTTP parsing invalid data --- utils.cpp | 6 ++++++ 1 file changed, 6 insertions(+), 0 deletions(-) diff --git a/utils.cpp b/utils.cpp index 6064457..b41e58e 100644 --- a/utils.cpp +++ b/utils.cpp @@ -280,6 +280,12 @@ bool parseHttpHeader(CirBuf &buf, std::string &websocket_key, int &websocket_ver } std::list fields = split(line, ':', 1); + + if (fields.size() != 2) + { + throw BadHttpRequest("This does not look like a HTTP request."); + } + const std::vector fields2(fields.begin(), fields.end()); std::string name = str_tolower(fields2[0]); trim(name); -- libgit2 0.21.4