You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2017/01/19 21:13:34 UTC
[trafficserver] 01/02: TS-5022: nullptr check
This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch 7.1.x
in repository https://git-dual.apache.org/repos/asf/trafficserver.git
commit 200742563ba8328914e3d29e7df6fca41f60bc98
Author: Syeda Persia Aziz <pe...@yahoo.com>
AuthorDate: Wed Jan 18 23:36:35 2017 -0600
TS-5022: nullptr check
(cherry picked from commit 9b8b25c760067761307e9fdaf677c64900f5ab17)
---
iocore/net/SSLConfig.cc | 8 +++++---
proxy/http/HttpSM.cc | 18 +++++++++++-------
2 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/iocore/net/SSLConfig.cc b/iocore/net/SSLConfig.cc
index 18b9a14..4cd5f76 100644
--- a/iocore/net/SSLConfig.cc
+++ b/iocore/net/SSLConfig.cc
@@ -307,7 +307,9 @@ SSLConfigParams::initialize()
ssl_client_cert_path = nullptr;
REC_ReadConfigStringAlloc(ssl_client_cert_filename, "proxy.config.ssl.client.cert.filename");
REC_ReadConfigStringAlloc(ssl_client_cert_path, "proxy.config.ssl.client.cert.path");
- set_paths_helper(ssl_client_cert_path, ssl_client_cert_filename, nullptr, &clientCertPath);
+ if (ssl_client_cert_filename && ssl_client_cert_path) {
+ set_paths_helper(ssl_client_cert_path, ssl_client_cert_filename, nullptr, &clientCertPath);
+ }
ats_free_null(ssl_client_cert_filename);
ats_free_null(ssl_client_cert_path);
@@ -351,9 +353,9 @@ SSLConfigParams::initialize()
client_ctx = SSLInitClientContext(this);
if (!client_ctx) {
SSLError("Can't initialize the SSL client, HTTPS in remap rules will not function");
+ } else {
+ InsertCTX(this->clientCertPath, this->client_ctx);
}
-
- InsertCTX(this->clientCertPath, this->client_ctx);
}
// getCTX: returns the context attached to the given certificate
diff --git a/proxy/http/HttpSM.cc b/proxy/http/HttpSM.cc
index 7d0d067..0c211d5 100644
--- a/proxy/http/HttpSM.cc
+++ b/proxy/http/HttpSM.cc
@@ -4062,13 +4062,17 @@ HttpSM::do_remap_request(bool run_inline)
}
// check if the overridden client cert filename is already attached to an existing ssl context
- ats_scoped_str clientCert(Layout::relative_to(t_state.txn_conf->client_cert_filepath, t_state.txn_conf->client_cert_filename));
- auto tCTX = params->getCTX(clientCert);
-
- if (tCTX == nullptr) {
- // make new client ctx and add it to the ctx list
- auto tctx = params->getNewCTX(clientCert);
- params->InsertCTX(clientCert, tctx);
+ if (t_state.txn_conf->client_cert_filepath && t_state.txn_conf->client_cert_filename) {
+ ats_scoped_str clientCert(Layout::relative_to(t_state.txn_conf->client_cert_filepath, t_state.txn_conf->client_cert_filename));
+ if (clientCert != nullptr) {
+ auto tCTX = params->getCTX(clientCert);
+
+ if (tCTX == nullptr) {
+ // make new client ctx and add it to the ctx list
+ auto tctx = params->getNewCTX(clientCert);
+ params->InsertCTX(clientCert, tctx);
+ }
+ }
}
return;
--
To stop receiving notification emails like this one, please contact
"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>.