Loading ccsrc/Protocols/Http/http_codec.cc +16 −3 Original line number Original line Diff line number Diff line Loading @@ -131,8 +131,18 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ const LibItsHttp__MessageBodyTypes::HttpMessageBody& body = static_cast<const LibItsHttp__MessageBodyTypes::HttpMessageBody&>(*v.get_opt_value()); const LibItsHttp__MessageBodyTypes::HttpMessageBody& body = static_cast<const LibItsHttp__MessageBodyTypes::HttpMessageBody&>(*v.get_opt_value()); loggers::get_instance().log_msg("http_codec::encode_request: body: ", body); loggers::get_instance().log_msg("http_codec::encode_request: body: ", body); if (encode_body(body, os) == -1) { if (encode_body(body, os) == -1) { loggers::get_instance().warning("http_codec::encode_request: Failed to encode HTTP body"); _ec.length = 0; _ec.length = 0; _ec.is_content_length_present = 0x00; } else { _ec.length = os.lengthof(); _ec.is_content_length_present = 0x01; } } loggers::get_instance().log("http_codec::encode_request: length=%d", _ec.length); } else { loggers::get_instance().log("http_codec::encode_request: HTTP body field not present"); _ec.length = 0; _ec.is_content_length_present = 0x00; } } // Encode generic part // Encode generic part Loading @@ -151,13 +161,15 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ loggers::get_instance().log_msg("http_codec::encode_request: Processing header ", header.header__name()); loggers::get_instance().log_msg("http_codec::encode_request: Processing header ", header.header__name()); p_encoding_buffer.put_cs(header.header__name()); p_encoding_buffer.put_cs(header.header__name()); p_encoding_buffer.put_cs(": "); p_encoding_buffer.put_cs(": "); if (std::string(static_cast<const char*>(header.header__name())).compare("Content-Length") == 0) { if (std::string(static_cast<const char*>(header.header__name())).compare("Content-length") == 0) { if (_ec.length != 0) { if (_ec.length != 0) { p_encoding_buffer.put_cs(int2str(_ec.length + 2/*Stand for the last CRLF*/)); p_encoding_buffer.put_cs(int2str(_ec.length + 2/*Stand for the last CRLF*/)); _ec.is_content_length_present = 0x01; } else { } else { p_encoding_buffer.put_cs("0"); p_encoding_buffer.put_cs("0"); _ec.is_content_length_present = 0x00; } } _ec.is_content_length_present = 0x01; loggers::get_instance().log("http_codec::encode_request: Content-length: %d - %x", _ec.length, _ec.is_content_length_present); } else { } else { const OPTIONAL<LibItsHttp__TypesAndValues::charstring__list>& o = header.header__value(); const OPTIONAL<LibItsHttp__TypesAndValues::charstring__list>& o = header.header__value(); if (o.ispresent()) { if (o.ispresent()) { Loading @@ -179,7 +191,8 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ } // End of 'for' statement } // End of 'for' statement p_encoding_buffer.put_cs("\r\n"); p_encoding_buffer.put_cs("\r\n"); if (_ec.length != 0) { if (_ec.is_content_length_present == 0x01) { loggers::get_instance().log_msg("http_codec::encode_request: Add body ", os); p_encoding_buffer.put_os(os); p_encoding_buffer.put_os(os); p_encoding_buffer.put_cs("\r\n"); p_encoding_buffer.put_cs("\r\n"); } } Loading Loading
ccsrc/Protocols/Http/http_codec.cc +16 −3 Original line number Original line Diff line number Diff line Loading @@ -131,8 +131,18 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ const LibItsHttp__MessageBodyTypes::HttpMessageBody& body = static_cast<const LibItsHttp__MessageBodyTypes::HttpMessageBody&>(*v.get_opt_value()); const LibItsHttp__MessageBodyTypes::HttpMessageBody& body = static_cast<const LibItsHttp__MessageBodyTypes::HttpMessageBody&>(*v.get_opt_value()); loggers::get_instance().log_msg("http_codec::encode_request: body: ", body); loggers::get_instance().log_msg("http_codec::encode_request: body: ", body); if (encode_body(body, os) == -1) { if (encode_body(body, os) == -1) { loggers::get_instance().warning("http_codec::encode_request: Failed to encode HTTP body"); _ec.length = 0; _ec.length = 0; _ec.is_content_length_present = 0x00; } else { _ec.length = os.lengthof(); _ec.is_content_length_present = 0x01; } } loggers::get_instance().log("http_codec::encode_request: length=%d", _ec.length); } else { loggers::get_instance().log("http_codec::encode_request: HTTP body field not present"); _ec.length = 0; _ec.is_content_length_present = 0x00; } } // Encode generic part // Encode generic part Loading @@ -151,13 +161,15 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ loggers::get_instance().log_msg("http_codec::encode_request: Processing header ", header.header__name()); loggers::get_instance().log_msg("http_codec::encode_request: Processing header ", header.header__name()); p_encoding_buffer.put_cs(header.header__name()); p_encoding_buffer.put_cs(header.header__name()); p_encoding_buffer.put_cs(": "); p_encoding_buffer.put_cs(": "); if (std::string(static_cast<const char*>(header.header__name())).compare("Content-Length") == 0) { if (std::string(static_cast<const char*>(header.header__name())).compare("Content-length") == 0) { if (_ec.length != 0) { if (_ec.length != 0) { p_encoding_buffer.put_cs(int2str(_ec.length + 2/*Stand for the last CRLF*/)); p_encoding_buffer.put_cs(int2str(_ec.length + 2/*Stand for the last CRLF*/)); _ec.is_content_length_present = 0x01; } else { } else { p_encoding_buffer.put_cs("0"); p_encoding_buffer.put_cs("0"); _ec.is_content_length_present = 0x00; } } _ec.is_content_length_present = 0x01; loggers::get_instance().log("http_codec::encode_request: Content-length: %d - %x", _ec.length, _ec.is_content_length_present); } else { } else { const OPTIONAL<LibItsHttp__TypesAndValues::charstring__list>& o = header.header__value(); const OPTIONAL<LibItsHttp__TypesAndValues::charstring__list>& o = header.header__value(); if (o.ispresent()) { if (o.ispresent()) { Loading @@ -179,7 +191,8 @@ int http_codec::encode_request(const LibItsHttp__TypesAndValues::Request& p_requ } // End of 'for' statement } // End of 'for' statement p_encoding_buffer.put_cs("\r\n"); p_encoding_buffer.put_cs("\r\n"); if (_ec.length != 0) { if (_ec.is_content_length_present == 0x01) { loggers::get_instance().log_msg("http_codec::encode_request: Add body ", os); p_encoding_buffer.put_os(os); p_encoding_buffer.put_os(os); p_encoding_buffer.put_cs("\r\n"); p_encoding_buffer.put_cs("\r\n"); } } Loading