Loading ccsrc/Protocols/Http/http_codec.cc +22 −0 Original line number Diff line number Diff line Loading @@ -94,6 +94,23 @@ int http_codec::decode(const OCTETSTRING &data, LibHttp__TypesAndValues::HttpMes } else { response.body() = OPTIONAL<LibHttp__MessageBodyTypes::HttpMessageBody>(body); } // Add lower layers parameters loggers::get_instance().log("http_codec::decode: Add lower layers parameters"); params->log(); params::const_iterator it = params->find(params::use_ssl); if (it != params->cend()) { loggers::get_instance().log("http_codec::receive_data: tls=%s", it->second.c_str()); response.tls() = (it->second.compare("1") == 0) ? true : false; } else { response.tls().set_to_omit(); } it = params->find(params::mutual_auth); if (it != params->cend()) { loggers::get_instance().log("http_codec::receive_data: mutual_tls=%s", it->second.c_str()); response.mutual__tls() = (it->second.compare("1") == 0) ? true : false; } else { response.mutual__tls().set_to_omit(); } msg.response() = response; } else { // HTTP request LibHttp__TypesAndValues::Request request; Loading Loading @@ -660,3 +677,8 @@ void http_codec::set_payload_codecs(const std::string &p_codecs) { _codecs.clear(); } } bool http_codec::decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params) { p_html_body = CHARSTRING(p_data.lengthof(), (char*)static_cast<const unsigned char*>(p_data)); return true; } ccsrc/Protocols/Http/http_codec.hh +1 −1 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ protected: //! \protectedsection virtual bool decode_body_xml(const OCTETSTRING &p_data, LibHttp__XmlMessageBodyTypes::XmlBody &p_body, const std::string &p_content_type, params* p_params) {return false;}; virtual bool encode_body_html(const CHARSTRING &p_html_body, OCTETSTRING &p_encoding_buffer, const std::string &p_content_type) {return false;}; virtual bool decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params) {return false;}; virtual bool decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params); virtual bool encode_body_json(const LibHttp__JsonMessageBodyTypes::JsonBody &p_json_body, OCTETSTRING &p_encoding_buffer, const std::string &p_content_type) {return false;}; virtual bool decode_body_json(const OCTETSTRING &p_data, LibHttp__JsonMessageBodyTypes::JsonBody &p_json_body, const std::string &p_content_type, params* p_params) {return false;}; Loading ccsrc/Protocols/Http/http_layer.cc +1 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,7 @@ void http_layer::receive_data(OCTETSTRING &data, params ¶ms) { // Decode HTTP message LibHttp__TypesAndValues::HttpMessage http_message; if (_codec->decode(data, http_message) == -1) { if (_codec->decode(data, http_message, ¶ms) == -1) { loggers::get_instance().warning("http_layer::receive_data: Failed to decode data"); return; } Loading Loading
ccsrc/Protocols/Http/http_codec.cc +22 −0 Original line number Diff line number Diff line Loading @@ -94,6 +94,23 @@ int http_codec::decode(const OCTETSTRING &data, LibHttp__TypesAndValues::HttpMes } else { response.body() = OPTIONAL<LibHttp__MessageBodyTypes::HttpMessageBody>(body); } // Add lower layers parameters loggers::get_instance().log("http_codec::decode: Add lower layers parameters"); params->log(); params::const_iterator it = params->find(params::use_ssl); if (it != params->cend()) { loggers::get_instance().log("http_codec::receive_data: tls=%s", it->second.c_str()); response.tls() = (it->second.compare("1") == 0) ? true : false; } else { response.tls().set_to_omit(); } it = params->find(params::mutual_auth); if (it != params->cend()) { loggers::get_instance().log("http_codec::receive_data: mutual_tls=%s", it->second.c_str()); response.mutual__tls() = (it->second.compare("1") == 0) ? true : false; } else { response.mutual__tls().set_to_omit(); } msg.response() = response; } else { // HTTP request LibHttp__TypesAndValues::Request request; Loading Loading @@ -660,3 +677,8 @@ void http_codec::set_payload_codecs(const std::string &p_codecs) { _codecs.clear(); } } bool http_codec::decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params) { p_html_body = CHARSTRING(p_data.lengthof(), (char*)static_cast<const unsigned char*>(p_data)); return true; }
ccsrc/Protocols/Http/http_codec.hh +1 −1 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ protected: //! \protectedsection virtual bool decode_body_xml(const OCTETSTRING &p_data, LibHttp__XmlMessageBodyTypes::XmlBody &p_body, const std::string &p_content_type, params* p_params) {return false;}; virtual bool encode_body_html(const CHARSTRING &p_html_body, OCTETSTRING &p_encoding_buffer, const std::string &p_content_type) {return false;}; virtual bool decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params) {return false;}; virtual bool decode_body_html(const OCTETSTRING &p_data, CHARSTRING &p_html_body, const std::string &p_content_type, params* p_params); virtual bool encode_body_json(const LibHttp__JsonMessageBodyTypes::JsonBody &p_json_body, OCTETSTRING &p_encoding_buffer, const std::string &p_content_type) {return false;}; virtual bool decode_body_json(const OCTETSTRING &p_data, LibHttp__JsonMessageBodyTypes::JsonBody &p_json_body, const std::string &p_content_type, params* p_params) {return false;}; Loading
ccsrc/Protocols/Http/http_layer.cc +1 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,7 @@ void http_layer::receive_data(OCTETSTRING &data, params ¶ms) { // Decode HTTP message LibHttp__TypesAndValues::HttpMessage http_message; if (_codec->decode(data, http_message) == -1) { if (_codec->decode(data, http_message, ¶ms) == -1) { loggers::get_instance().warning("http_layer::receive_data: Failed to decode data"); return; } Loading