From aba2dbddc2f7bebd5c6b27cc64bec68a99b2ecd5 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Wed, 9 Sep 2015 00:21:54 +0900 Subject: [PATCH] nghttpx: Don't allow partial PROXY protocol line --- src/shrpx_client_handler.cc | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/src/shrpx_client_handler.cc b/src/shrpx_client_handler.cc index f7602dac..5ccc423e 100644 --- a/src/shrpx_client_handler.cc +++ b/src/shrpx_client_handler.cc @@ -903,17 +903,7 @@ int ClientHandler::proxy_protocol_read() { auto end = std::find_first_of(rb_.pos, bufend, std::begin(chrs), std::end(chrs)); - if (end == bufend) { - if (rb_.rleft() >= MAX_PROXY_LINELEN) { - if (LOG_ENABLED(INFO)) { - CLOG(INFO, this) << "PROXY-protocol-v1: No ending CR LF sequence found"; - } - return -1; - } - return 0; - } - - if (*end == '\0' || end == rb_.pos || *(end - 1) != '\r') { + if (end == bufend || *end == '\0' || end == rb_.pos || *(end - 1) != '\r') { if (LOG_ENABLED(INFO)) { CLOG(INFO, this) << "PROXY-protocol-v1: No ending CR LF sequence found"; }