From 7901b9853e8f60e1d2dce44ce81dec6f7f866ccc Mon Sep 17 00:00:00 2001 From: George Joseph Date: Tue, 13 Jun 2017 10:33:34 -0600 Subject: res_ari: Add "module loaded" check to ari stubs The recent change to make the use of LOAD_DECLINE more consistent caused res_ari to unload itself before declining if the ari.conf file wasn't found. The ari stubs though still tried to use the configuration resulting in segfaults. This patch creates a new CHECK_ARI_MODULE_LOADED macro which tests to see if res_ari is actually loaded and causes the stubs to also decline if it isn't. The macro was then added to the mustache template's "load_module" function. ASTERISK-27026 #close Reported-by: Ronald Raikes Change-Id: I263d56efa628ee3c411bdcd16d49af6260c6c91d --- include/asterisk/ari.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'include/asterisk/ari.h') diff --git a/include/asterisk/ari.h b/include/asterisk/ari.h index cad9b32c5..f83df0469 100644 --- a/include/asterisk/ari.h +++ b/include/asterisk/ari.h @@ -266,4 +266,14 @@ void ast_ari_response_created(struct ast_ari_response *response, */ void ast_ari_response_alloc_failed(struct ast_ari_response *response); +/*! \brief Determines whether the res_ari module is loaded */ +#define CHECK_ARI_MODULE_LOADED() \ + do { \ + if (!ast_module_check("res_ari.so") \ + || !ast_ari_oom_json()) { \ + return AST_MODULE_LOAD_DECLINE; \ + } \ + } while(0) + + #endif /* _ASTERISK_ARI_H */ -- cgit v1.2.3