diff options
author | Joshua Elson <joshelson@gmail.com> | 2017-05-04 18:28:55 -0400 |
---|---|---|
committer | Joshua Elson <joshelson@gmail.com> | 2017-05-09 09:22:00 -0500 |
commit | 10a4439ac93e1610cd138ec080f3230de0ae58fc (patch) | |
tree | cd5424f9fe882fb582c08f9f19fe3857cf2369fa /main/manager.c | |
parent | 3dae4279be4f61f16473d3e5ea9d45d1f8462eda (diff) |
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
Diffstat (limited to 'main/manager.c')
-rw-r--r-- | main/manager.c | 8 |
1 files changed, 8 insertions, 0 deletions
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) |