From 10a4439ac93e1610cd138ec080f3230de0ae58fc Mon Sep 17 00:00:00 2001 From: Joshua Elson Date: Thu, 4 May 2017 18:28:55 -0400 Subject: Prevent Undefined Capath Crash It is possible to initialize a valid config without a capath or cafile definition. This will cause a crash on a reload. This fix ensures capath is always allocated. ASTERISK-26983 #close Change-Id: I63ff715d9d9023427543a5b8a4ba7b0d82533c12 --- main/manager.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'main/manager.c') diff --git a/main/manager.c b/main/manager.c index c1d73dce7..c592fbd37 100644 --- a/main/manager.c +++ b/main/manager.c @@ -8736,6 +8736,10 @@ static void manager_shutdown(void) ami_tls_cfg.pvtfile = NULL; ast_free(ami_tls_cfg.cipher); ami_tls_cfg.cipher = NULL; + ast_free(ami_tls_cfg.cafile); + ami_tls_cfg.cafile = NULL; + ast_free(ami_tls_cfg.capath); + ami_tls_cfg.capath = NULL; ao2_global_obj_release(mgr_sessions); @@ -8836,6 +8840,10 @@ static void manager_set_defaults(void) ami_tls_cfg.pvtfile = ast_strdup(""); ast_free(ami_tls_cfg.cipher); ami_tls_cfg.cipher = ast_strdup(""); + ast_free(ami_tls_cfg.cafile); + ami_tls_cfg.cafile = ast_strdup(""); + ast_free(ami_tls_cfg.capath); + ami_tls_cfg.capath = ast_strdup(""); } static int __init_manager(int reload, int by_external_config) -- cgit v1.2.3