in wangle/acceptor/Acceptor.cpp [189:216]
void Acceptor::resetSSLContextConfigs(
std::shared_ptr<fizz::server::CertManager> certManager,
std::shared_ptr<SSLContextManager> ctxManager,
std::shared_ptr<const fizz::server::FizzServerContext> fizzContext) {
try {
if (accConfig_.fizzConfig.enableFizz) {
auto manager = certManager ? certManager : createFizzCertManager();
if (manager) {
fizzCertManager_ = std::move(manager);
auto context = fizzContext ? fizzContext : recreateFizzContext();
getFizzPeeker()->setContext(std::move(context));
}
}
if (ctxManager) {
sslCtxManager_ = ctxManager;
} else if (sslCtxManager_) {
sslCtxManager_->resetSSLContextConfigs(
accConfig_.sslContextConfigs,
accConfig_.sslCacheOptions,
nullptr,
accConfig_.bindAddress,
cacheProvider_);
}
} catch (const std::runtime_error& ex) {
LOG(ERROR) << "Failed to re-configure TLS: " << ex.what()
<< "will keep old config";
}
}