Commit 90752c934b for asterisk.org
commit 90752c934bddaa6d9b1d9ab69dbb9126658fdcfc
Author: Naveen Albert <asterisk@phreaknet.org>
Date: Sat Oct 10 17:06:15 2026 -0400
res_pjsip_publish_asterisk: Add explicit dependency on res_pjsip_session.
Whenever res_pjsip_publish_asterisk generates a device state or MWI
update to send to another Asterisk system using SIP, pjproject triggers
an assertion if res_pjsip_session is not loaded. The assertion occurs
in pjsip_get_sdp_info, which is called in res/res_pjsip/pjsip_message_filter.c.
If res_pjsip_session isn't running, that call triggers an assertion.
To avoid the assertion, add an explicit dependency on res_pjsip_session,
which ensures that pjsip_get_sdp_info is registered in pjproject if
we're calling it.
As res_pjsip_exten_state has the same pubsub dependencies, we add
the same dependency there as well.
Resolves: #2209
diff --git a/res/res_pjsip_exten_state.c b/res/res_pjsip_exten_state.c
index 9b555c9a72..b526036a9f 100644
--- a/res/res_pjsip_exten_state.c
+++ b/res/res_pjsip_exten_state.c
@@ -1063,5 +1063,5 @@ AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "PJSIP Extension State
.load = load_module,
.unload = unload_module,
.load_pri = AST_MODPRI_CHANNEL_DEPEND + 5,
- .requires = "res_pjsip,res_pjsip_pubsub,res_pjsip_outbound_publish",
+ .requires = "res_pjsip,res_pjsip_session,res_pjsip_pubsub,res_pjsip_outbound_publish",
);
diff --git a/res/res_pjsip_publish_asterisk.c b/res/res_pjsip_publish_asterisk.c
index e3e83beee6..f887a9a4e0 100644
--- a/res/res_pjsip_publish_asterisk.c
+++ b/res/res_pjsip_publish_asterisk.c
@@ -960,5 +960,5 @@ AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "PJSIP Asterisk Event
.reload = reload_module,
.unload = unload_module,
.load_pri = AST_MODPRI_CHANNEL_DEPEND + 5,
- .requires = "res_pjsip,res_pjsip_outbound_publish,res_pjsip_pubsub",
+ .requires = "res_pjsip,res_pjsip_session,res_pjsip_outbound_publish,res_pjsip_pubsub",
);