From: Boris P. Korzun Date: Thu, 9 Jun 2022 07:10:19 +0000 (+0300) Subject: res_prometheus: Optional load res_pjsip_outbound_registration.so X-Git-Tag: 19.6.0-rc1~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cd9b332118f8133202671ca76ec4d4308486b901;p=thirdparty%2Fasterisk.git res_prometheus: Optional load res_pjsip_outbound_registration.so Switched res_pjsip_outbound_registration.so dep to optional. Added module loaded check before using it. ASTERISK-30101 #close Change-Id: Ia34f1684d984e821fbdd4de8911f930337703666 --- diff --git a/res/res_prometheus.c b/res/res_prometheus.c index 4aacf6e85c..5d277f1e11 100644 --- a/res/res_prometheus.c +++ b/res/res_prometheus.c @@ -974,8 +974,13 @@ static int load_module(void) if (cli_init() || channel_metrics_init() || endpoint_metrics_init() - || bridge_metrics_init() - || pjsip_outbound_registration_metrics_init()) { + || bridge_metrics_init()) { + goto cleanup; + } + + if(ast_module_check("res_pjsip_outbound_registration.so")) { + /* Call a local function, used in the core prometheus code only */ + if (pjsip_outbound_registration_metrics_init()) goto cleanup; } @@ -1004,6 +1009,7 @@ AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_GLOBAL_SYMBOLS | AST_MODFLAG_LOAD_ .load_pri = AST_MODPRI_DEFAULT, #ifdef HAVE_PJPROJECT /* This module explicitly calls into res_pjsip if Asterisk is built with PJSIP support, so they are required. */ - .requires = "res_pjsip,res_pjsip_outbound_registration", + .requires = "res_pjsip", + .optional_modules = "res_pjsip_outbound_registration", #endif );