Loading src/http.cpp +8 −4 Original line number Diff line number Diff line Loading @@ -224,6 +224,7 @@ libhttppp::HttpHeader::HeaderData::HeaderData(const char *key){ } libhttppp::HttpHeader::HeaderData::~HeaderData(){ _nextHeaderData=nullptr; } libhttppp::HttpHeader::~HttpHeader(){ Loading Loading @@ -758,7 +759,8 @@ void libhttppp::HttpForm::parse(libhttppp::HttpRequest* request){ if(ctype && strncmp(request->getData(ctype),"multipart/form-data",17)==0){ _parseBoundary(request->getData(ctype)); _parseMulitpart(request->RecvData); }else if(ctype && strncmp(request->getData(ctype),"application/x-www-form-urlencoded",34)==0){ } if(ctype && strncmp(request->getData(ctype),"application/x-www-form-urlencoded",34)==0){ _parseUrlDecode(request->RecvData,request->getContentLength()); } } Loading Loading @@ -850,8 +852,9 @@ void libhttppp::HttpForm::_parseBoundary(const char* contenttype){ _Boundary.push_back('\0'); } void libhttppp::HttpForm::_parseMulitpart(const netplus::condata<char> &data){ netplus::condata<char> realboundary; std::vector<char> realboundary; realboundary.resize(_Boundary.size()+2); std::copy(_Boundary.begin(),_Boundary.end(),realboundary.begin()+2); realboundary[0]='-'; Loading Loading @@ -890,9 +893,9 @@ void libhttppp::HttpForm::_parseMulitpart(const netplus::condata<char> &data){ void libhttppp::HttpForm::_parseMultiSection(netplus::condata<char> &data,size_t start, size_t end){ size_t findel=data.search("\r\n\r\n"); size_t findel=data.search("\r\n\r\n",start); if(findel==std::string::npos) if(++findel==std::string::npos) return; size_t ctl=std::string::npos,ctlt=std::string::npos; Loading Loading @@ -920,6 +923,7 @@ void libhttppp::HttpForm::_parseMultiSection(netplus::condata<char> &data,size_t content._Key.push_back('\0'); for(size_t tl=0; tl<content._Key.size(); ++tl){ content._Key[tl]=tolower(content._Key[tl]); } Loading Loading
src/http.cpp +8 −4 Original line number Diff line number Diff line Loading @@ -224,6 +224,7 @@ libhttppp::HttpHeader::HeaderData::HeaderData(const char *key){ } libhttppp::HttpHeader::HeaderData::~HeaderData(){ _nextHeaderData=nullptr; } libhttppp::HttpHeader::~HttpHeader(){ Loading Loading @@ -758,7 +759,8 @@ void libhttppp::HttpForm::parse(libhttppp::HttpRequest* request){ if(ctype && strncmp(request->getData(ctype),"multipart/form-data",17)==0){ _parseBoundary(request->getData(ctype)); _parseMulitpart(request->RecvData); }else if(ctype && strncmp(request->getData(ctype),"application/x-www-form-urlencoded",34)==0){ } if(ctype && strncmp(request->getData(ctype),"application/x-www-form-urlencoded",34)==0){ _parseUrlDecode(request->RecvData,request->getContentLength()); } } Loading Loading @@ -850,8 +852,9 @@ void libhttppp::HttpForm::_parseBoundary(const char* contenttype){ _Boundary.push_back('\0'); } void libhttppp::HttpForm::_parseMulitpart(const netplus::condata<char> &data){ netplus::condata<char> realboundary; std::vector<char> realboundary; realboundary.resize(_Boundary.size()+2); std::copy(_Boundary.begin(),_Boundary.end(),realboundary.begin()+2); realboundary[0]='-'; Loading Loading @@ -890,9 +893,9 @@ void libhttppp::HttpForm::_parseMulitpart(const netplus::condata<char> &data){ void libhttppp::HttpForm::_parseMultiSection(netplus::condata<char> &data,size_t start, size_t end){ size_t findel=data.search("\r\n\r\n"); size_t findel=data.search("\r\n\r\n",start); if(findel==std::string::npos) if(++findel==std::string::npos) return; size_t ctl=std::string::npos,ctlt=std::string::npos; Loading Loading @@ -920,6 +923,7 @@ void libhttppp::HttpForm::_parseMultiSection(netplus::condata<char> &data,size_t content._Key.push_back('\0'); for(size_t tl=0; tl<content._Key.size(); ++tl){ content._Key[tl]=tolower(content._Key[tl]); } Loading