Skip to content
Snippets Groups Projects
Commit dc63377c authored by Richard Mudgett's avatar Richard Mudgett
Browse files

res_pjsip_outbound_registration.c: Use ast_sorcery_object_unregister() API

The sorcery pjsip 'registration' config object needs to be destroyed on
module unload.  Otherwise, a reload of res_pjsip could try to use
callbacks for a previously unloaded instance of the module provided by
ast_sorcery_object_register() or one of the variants.  Also, if
res_pjsip_outbound_registration were subsequently reloaded, the sorcery
config field objects would be registered in sorcery twice.

ASTERISK-24907
Reported by: Kevin Harwell

Change-Id: I304fad13dece2604af48353f6c6d9d5c7b064697
parent 9ec8a0f3
Branches
Tags
No related merge requests found
...@@ -1775,6 +1775,8 @@ static int unload_module(void) ...@@ -1775,6 +1775,8 @@ static int unload_module(void)
ast_sorcery_observer_remove(ast_sip_get_sorcery(), "auth", &observer_callbacks_auth); ast_sorcery_observer_remove(ast_sip_get_sorcery(), "auth", &observer_callbacks_auth);
ast_sorcery_instance_observer_remove(ast_sip_get_sorcery(), &observer_callbacks_registrations); ast_sorcery_instance_observer_remove(ast_sip_get_sorcery(), &observer_callbacks_registrations);
ast_sorcery_object_unregister(ast_sip_get_sorcery(), "registration");
ao2_global_obj_release(current_states); ao2_global_obj_release(current_states);
return 0; return 0;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment