summaryrefslogtreecommitdiff
path: root/bridges
diff options
context:
space:
mode:
Diffstat (limited to 'bridges')
-rw-r--r--bridges/bridge_holding.c14
-rw-r--r--bridges/bridge_native_rtp.c13
-rw-r--r--bridges/bridge_simple.c14
-rw-r--r--bridges/bridge_softmix.c11
4 files changed, 20 insertions, 32 deletions
diff --git a/bridges/bridge_holding.c b/bridges/bridge_holding.c
index c343cc624..2fd79d09a 100644
--- a/bridges/bridge_holding.c
+++ b/bridges/bridge_holding.c
@@ -428,21 +428,17 @@ static void deferred_action(struct ast_bridge_channel *bridge_channel, const voi
static int unload_module(void)
{
- ao2_cleanup(holding_bridge.format_capabilities);
- holding_bridge.format_capabilities = NULL;
- return ast_bridge_technology_unregister(&holding_bridge);
+ ast_bridge_technology_unregister(&holding_bridge);
+ return 0;
}
static int load_module(void)
{
- if (!(holding_bridge.format_capabilities = ast_format_cap_alloc(AST_FORMAT_CAP_FLAG_DEFAULT))) {
+ if (ast_bridge_technology_register(&holding_bridge)) {
+ unload_module();
return AST_MODULE_LOAD_DECLINE;
}
- ast_format_cap_append_by_type(holding_bridge.format_capabilities, AST_MEDIA_TYPE_AUDIO);
- ast_format_cap_append_by_type(holding_bridge.format_capabilities, AST_MEDIA_TYPE_VIDEO);
- ast_format_cap_append_by_type(holding_bridge.format_capabilities, AST_MEDIA_TYPE_TEXT);
-
- return ast_bridge_technology_register(&holding_bridge);
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Holding bridge module");
diff --git a/bridges/bridge_native_rtp.c b/bridges/bridge_native_rtp.c
index a69a97f63..980f46716 100644
--- a/bridges/bridge_native_rtp.c
+++ b/bridges/bridge_native_rtp.c
@@ -474,20 +474,17 @@ static struct ast_bridge_technology native_rtp_bridge = {
static int unload_module(void)
{
- ao2_t_ref(native_rtp_bridge.format_capabilities, -1, "Dispose of capabilities in module unload");
- return ast_bridge_technology_unregister(&native_rtp_bridge);
+ ast_bridge_technology_unregister(&native_rtp_bridge);
+ return 0;
}
static int load_module(void)
{
- if (!(native_rtp_bridge.format_capabilities = ast_format_cap_alloc(0))) {
+ if (ast_bridge_technology_register(&native_rtp_bridge)) {
+ unload_module();
return AST_MODULE_LOAD_DECLINE;
}
- ast_format_cap_append_by_type(native_rtp_bridge.format_capabilities, AST_MEDIA_TYPE_AUDIO);
- ast_format_cap_append_by_type(native_rtp_bridge.format_capabilities, AST_MEDIA_TYPE_VIDEO);
- ast_format_cap_append_by_type(native_rtp_bridge.format_capabilities, AST_MEDIA_TYPE_TEXT);
-
- return ast_bridge_technology_register(&native_rtp_bridge);
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Native RTP bridging module");
diff --git a/bridges/bridge_simple.c b/bridges/bridge_simple.c
index 1626a3993..570453500 100644
--- a/bridges/bridge_simple.c
+++ b/bridges/bridge_simple.c
@@ -76,21 +76,17 @@ static struct ast_bridge_technology simple_bridge = {
static int unload_module(void)
{
- ao2_cleanup(simple_bridge.format_capabilities);
- simple_bridge.format_capabilities = NULL;
- return ast_bridge_technology_unregister(&simple_bridge);
+ ast_bridge_technology_unregister(&simple_bridge);
+ return 0;
}
static int load_module(void)
{
- if (!(simple_bridge.format_capabilities = ast_format_cap_alloc(AST_FORMAT_CAP_FLAG_DEFAULT))) {
+ if (ast_bridge_technology_register(&simple_bridge)) {
+ unload_module();
return AST_MODULE_LOAD_DECLINE;
}
- ast_format_cap_append_by_type(simple_bridge.format_capabilities, AST_MEDIA_TYPE_AUDIO);
- ast_format_cap_append_by_type(simple_bridge.format_capabilities, AST_MEDIA_TYPE_VIDEO);
- ast_format_cap_append_by_type(simple_bridge.format_capabilities, AST_MEDIA_TYPE_TEXT);
-
- return ast_bridge_technology_register(&simple_bridge);
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Simple two channel bridging module");
diff --git a/bridges/bridge_softmix.c b/bridges/bridge_softmix.c
index 53be7d975..72299209c 100644
--- a/bridges/bridge_softmix.c
+++ b/bridges/bridge_softmix.c
@@ -1194,18 +1194,17 @@ static struct ast_bridge_technology softmix_bridge = {
static int unload_module(void)
{
- ao2_cleanup(softmix_bridge.format_capabilities);
- softmix_bridge.format_capabilities = NULL;
- return ast_bridge_technology_unregister(&softmix_bridge);
+ ast_bridge_technology_unregister(&softmix_bridge);
+ return 0;
}
static int load_module(void)
{
- if (!(softmix_bridge.format_capabilities = ast_format_cap_alloc(AST_FORMAT_CAP_FLAG_DEFAULT))) {
+ if (ast_bridge_technology_register(&softmix_bridge)) {
+ unload_module();
return AST_MODULE_LOAD_DECLINE;
}
- ast_format_cap_append(softmix_bridge.format_capabilities, ast_format_slin, 0);
- return ast_bridge_technology_register(&softmix_bridge);
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Multi-party software based channel mixing");