summaryrefslogtreecommitdiff
path: root/src/mitm.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/mitm.cc')
-rw-r--r--src/mitm.cc11
1 files 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;