diff --git a/main/http.c b/main/http.c index 15c6da29b7708325e06a1cb739255a5e32d87c1f..136c916814d0c472a20e22c6aff8af9c393a6f8b 100644 --- a/main/http.c +++ b/main/http.c @@ -2107,7 +2107,15 @@ static int __ast_http_load(int reload) int http_tls_was_enabled = 0; cfg = ast_config_load2("http.conf", "http", config_flags); - if (!cfg || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID) { + if (!cfg || cfg == CONFIG_STATUS_FILEINVALID) { + return 0; + } + + /* Even if the http.conf hasn't been updated, the TLS certs/keys may have been */ + if (cfg == CONFIG_STATUS_FILEUNCHANGED) { + if (http_tls_cfg.enabled && ast_ssl_setup(https_desc.tls_cfg)) { + ast_tcptls_server_start(&https_desc); + } return 0; }