From 0f0ce429a4e73dd07cad61c8e06a8d4d2e746629 Mon Sep 17 00:00:00 2001 From: Joel Klinghed Date: Tue, 25 Apr 2017 23:03:29 +0200 Subject: Make SSL interception behave as per config documentation --- src/mitm.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/mitm.cc b/src/mitm.cc index 7e0fd19..f809afd 100644 --- a/src/mitm.cc +++ b/src/mitm.cc @@ -134,14 +134,17 @@ public: } bool load(Config* config, std::string const& cwd) { + auto bundle_file = config->get("ssl_cert_bundle", nullptr); + auto ca_cert_file = config->get("ssl_ca_cert", nullptr); + auto ca_key_file = config->get("ssl_ca_key", nullptr); + if (!bundle_file || !ca_cert_file || !ca_key_file) return false; entropy_.reset(SSLEntropy::create(logger_)); if (!entropy_) return false; - store_.reset(SSLCertStore::create( - logger_, config->get("ssl_cert_bundle", ""))); + store_.reset(SSLCertStore::create(logger_, bundle_file)); if (!store_) return false; std::string ca_cert, ca_key; - if (!load_file(config->get("ssl_ca_cert", ""), cwd, &ca_cert)) return false; - if (!load_file(config->get("ssl_ca_key", ""), cwd, &ca_key)) return false; + if (!load_file(ca_cert_file, cwd, &ca_cert)) return false; + if (!load_file(ca_key_file, cwd, &ca_key)) return false; unsecure_ = config->get("ssl_unsecure", false); issuer_cert_.reset(SSLCert::load(logger_, ca_cert)); if (!issuer_cert_) return false; -- cgit v1.2.3-70-g09d2