From 0fa40bb373550bd29a486b6930f3a938ec99a1a4 Mon Sep 17 00:00:00 2001 From: Thulinma Date: Sun, 4 May 2014 01:25:21 +0200 Subject: [PATCH] Fixed HTTP parser to no longer require "HTTP*" as protocol when creating requests/responses. --- lib/http_parser.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/http_parser.cpp b/lib/http_parser.cpp index c1d9e8e5..3423f76e 100644 --- a/lib/http_parser.cpp +++ b/lib/http_parser.cpp @@ -33,7 +33,7 @@ void HTTP::Parser::Clean(){ std::string & HTTP::Parser::BuildRequest(){ /// \todo Include GET/POST variable parsing? std::map::iterator it; - if (protocol.size() < 5 || protocol.substr(0, 4) != "HTTP"){ + if (protocol.size() < 5 || protocol[4] != '/'){ protocol = "HTTP/1.0"; } builder = method + " " + url + " " + protocol + "\r\n"; @@ -52,7 +52,7 @@ std::string & HTTP::Parser::BuildRequest(){ void HTTP::Parser::SendRequest(Socket::Connection & conn){ /// \todo Include GET/POST variable parsing? std::map::iterator it; - if (protocol.size() < 5 || protocol.substr(0, 4) != "HTTP"){ + if (protocol.size() < 5 || protocol[4] != '/'){ protocol = "HTTP/1.0"; } builder = method + " " + url + " " + protocol + "\r\n"; @@ -76,7 +76,7 @@ void HTTP::Parser::SendRequest(Socket::Connection & conn){ std::string & HTTP::Parser::BuildResponse(std::string code, std::string message){ /// \todo Include GET/POST variable parsing? std::map::iterator it; - if (protocol.size() < 5 || protocol.substr(0, 4) != "HTTP"){ + if (protocol.size() < 5 || protocol[4] != '/'){ protocol = "HTTP/1.0"; } builder = protocol + " " + code + " " + message + "\r\n"; @@ -102,7 +102,7 @@ std::string & HTTP::Parser::BuildResponse(std::string code, std::string message) void HTTP::Parser::SendResponse(std::string code, std::string message, Socket::Connection & conn){ /// \todo Include GET/POST variable parsing? std::map::iterator it; - if (protocol.size() < 5 || protocol.substr(0, 4) != "HTTP"){ + if (protocol.size() < 5 || protocol[4] != '/'){ protocol = "HTTP/1.0"; } builder = protocol + " " + code + " " + message + "\r\n";