summaryrefslogtreecommitdiff
path: root/res/res_statsd.c
diff options
context:
space:
mode:
authorCorey Farrell <git@cfware.com>2017-11-01 20:46:11 -0400
committerCorey Farrell <git@cfware.com>2017-11-01 20:46:11 -0400
commit79f111e1f317fffd3222b70c31a0fac65c40234e (patch)
treeaa1f51880780200956e46e1be7757be30a423963 /res/res_statsd.c
parent64f1294ef2c799cda27ee83258fc5567a274bb34 (diff)
Prevent unload of modules which implement an Optional API.
Once an Optional API module is loaded it should stay loaded. Unloading an optional API module runs the risk of a crash if something else is using it. This patch causes all optional API providers to tell the module loader not to unload except at shutdown. ASTERISK-27389 Change-Id: Ia07786fe655681aec49cc8d3d96e06483b11f5e6
Diffstat (limited to 'res/res_statsd.c')
-rw-r--r--res/res_statsd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/res/res_statsd.c b/res/res_statsd.c
index 3d7dd1684..aee0bcd5a 100644
--- a/res/res_statsd.c
+++ b/res/res_statsd.c
@@ -353,6 +353,9 @@ static int load_module(void)
return AST_MODULE_LOAD_DECLINE;
}
+ /* For Optional API. */
+ ast_module_shutdown_ref(AST_MODULE_SELF);
+
return AST_MODULE_LOAD_SUCCESS;
}