Commit 93968200 authored by YannGarcia's avatar YannGarcia
Browse files

Bug fixed in TCP layer

parent 1a1ebb5d
......@@ -33,13 +33,15 @@ tcp_layer::tcp_layer(const std::string & p_type, const std::string & param) : la
if (!parameter_set(params::server.c_str(), _params[params::server].c_str())) {
loggers::get_instance().warning("tcp_layer::set_parameter: Unprocessed parameter: %s", params::server.c_str());
}
set_ssl_use_ssl(false);
bool ssl_mode = false;
it = _params.find(params::use_ssl);
if (it == _params.cend()) {
_params.insert(std::pair<std::string, std::string>(std::string("use_ssl"), "0"));
} else if (it->second.compare("1") == 0) {
set_ssl_use_ssl(true);
_params.insert(std::pair<std::string, std::string>(std::string("use_ssl"), "1"));
ssl_mode = true;
}
set_ssl_use_ssl(ssl_mode);
it = _params.find(params::port);
if (it == _params.cend()) {
if (_params[params::use_ssl].compare("0") == 0) { // Use standard HTTP port
......@@ -48,7 +50,7 @@ tcp_layer::tcp_layer(const std::string & p_type, const std::string & param) : la
_params.insert(std::pair<std::string, std::string>(std::string("port"), "443"));
}
}
if (!parameter_set(params::port.c_str(), _params[params::port].c_str())) {
if (!parameter_set(remote_port_name(), _params[params::port].c_str())) {
loggers::get_instance().warning("tcp_layer::set_parameter: Unprocessed parameter: %s", params::port.c_str());
}
it = _params.find(params::local_port);
......@@ -59,7 +61,7 @@ tcp_layer::tcp_layer(const std::string & p_type, const std::string & param) : la
_params.insert(std::pair<std::string, std::string>(std::string("local_port"), "443"));
}
}
if (!parameter_set(params::local_port.c_str(), _params[params::local_port].c_str())) {
if (!parameter_set(local_port_name(), _params[params::local_port].c_str())) {
loggers::get_instance().warning("tcp_layer::set_parameter: Unprocessed parameter: %s", params::local_port.c_str());
}
......@@ -69,14 +71,22 @@ tcp_layer::tcp_layer(const std::string & p_type, const std::string & param) : la
set_server_mode(server_mode);
if (server_mode) {
parameter_set("serverPort", _params[params::local_port].c_str());
if (ssl_mode) { // Add certificate bundle
parameter_set(ssl_verifycertificate_name(), "yes");
parameter_set(ssl_private_key_file_name(), "/etc/ssl/certs/ca-certificates.crt");
parameter_set(ssl_certificate_file_name(), "/etc/ssl/certs/ca-certificates.crt");
parameter_set(ssl_trustedCAlist_file_name(), "/etc/ssl/certs/ca-certificates.crt"); // FIXME Use a parameter
}
}
set_ttcn_buffer_usercontrol(false);
set_handle_half_close(true);
map_user();
if (!_reconnect_on_send) {
open_client_connection(_params[params::server].c_str(), _params[params::port].c_str(), NULL, NULL);
if (!server_mode) {
if (!_reconnect_on_send) {
open_client_connection(_params[params::server].c_str(), _params[params::port].c_str(), NULL, NULL);
}
}
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment