summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorAlexandr Anikin <may@telecom-service.ru>2014-06-10 09:28:55 +0000
committerAlexandr Anikin <may@telecom-service.ru>2014-06-10 09:28:55 +0000
commitc63bf80c384729157d4b8650379fda381f451b41 (patch)
treefbc8c3cd34d14a86607ede9376e0c7eeb53272ba /addons
parent45db91dd980d2dceac2dbde1cc6ab647ffbb078e (diff)
chan_ooh323: fix loading module failure if there no accessible h323_log or ooh323 config file
change return 1 to return AST_MODULE_LOAD_FAILURE on module load routine few cosmetic changes ASTERISK-23814 #close (closes issue ASTERISK-23814) Reported by: Igor Goncharovsky Patches: ASTERISK-23814-ast11.patch ........ Merged revisions 415599 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 415602 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@415630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'addons')
-rw-r--r--addons/chan_ooh323.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/addons/chan_ooh323.c b/addons/chan_ooh323.c
index fd22cd497..8f1ae76bc 100644
--- a/addons/chan_ooh323.c
+++ b/addons/chan_ooh323.c
@@ -739,10 +739,8 @@ static struct ast_channel *ooh323_request(const char *type, struct ast_format_ca
return NULL;
}
- ast_mutex_unlock(&p->lock);
ast_cond_init(&p->rtpcond, NULL);
ooMakeCall(data, p->callToken, AST_MAX_EXTENSION, NULL);
- ast_mutex_lock(&p->lock);
if (!p->rtp) {
ast_cond_wait(&p->rtpcond, &p->lock);
}
@@ -3756,10 +3754,10 @@ static int load_module(void)
.onMediaChanged = (cb_OnMediaChanged) setup_rtp_remote,
};
if (!(gCap = ast_format_cap_alloc(0))) {
- return 1;
+ return AST_MODULE_LOAD_FAILURE;
}
if (!(ooh323_tech.capabilities = ast_format_cap_alloc(0))) {
- return 1;
+ return AST_MODULE_LOAD_FAILURE;
}
ast_format_cap_add(gCap, ast_format_set(&tmpfmt, AST_FORMAT_ULAW, 0));
ast_format_cap_add_all(ooh323_tech.capabilities);
@@ -3786,21 +3784,22 @@ static int load_module(void)
if (!reload_config(0)) {
+
+ /* fire up the H.323 Endpoint */
+ if (OO_OK != ooH323EpInitialize(OO_CALLMODE_AUDIOCALL, gLogFile)) {
+ ast_log(LOG_ERROR, "Failed to initialize OOH323 endpoint-"
+ "OOH323 Disabled\n");
+ return AST_MODULE_LOAD_FAILURE;
+ }
+
/* Make sure we can register our OOH323 channel type */
if (ast_channel_register(&ooh323_tech)) {
ast_log(LOG_ERROR, "Unable to register channel class %s\n", type);
- return 0;
+ return AST_MODULE_LOAD_FAILURE;
}
ast_rtp_glue_register(&ooh323_rtp);
ast_cli_register_multiple(cli_ooh323, sizeof(cli_ooh323) / sizeof(struct ast_cli_entry));
- /* fire up the H.323 Endpoint */
- if (OO_OK != ooH323EpInitialize(OO_CALLMODE_AUDIOCALL, gLogFile)) {
- ast_log(LOG_ERROR, "Failed to initialize OOH323 endpoint-"
- "OOH323 Disabled\n");
- return 1;
- }
-
if (gIsGateway)
ooH323EpSetAsGateway();
@@ -3815,10 +3814,9 @@ static int load_module(void)
}
ooH323EpSetCallerID(gCallerID);
- if(ooH323EpSetTCPPortRange(ooconfig.mTCPPortStart,
- ooconfig.mTCPPortEnd) == OO_FAILED) {
- ast_log(LOG_ERROR, "h225portrange: Failed to set range\n");
- }
+ if(ooH323EpSetTCPPortRange(ooconfig.mTCPPortStart, ooconfig.mTCPPortEnd) == OO_FAILED) {
+ ast_log(LOG_ERROR, "h225portrange: Failed to set range\n");
+ }
/* Set aliases if any */
for (pNewAlias = gAliasList; pNewAlias; pNewAlias = pNewAlias->next) {
@@ -3832,8 +3830,8 @@ static int load_module(void)
case T_H225AliasAddress_email_ID:
ooH323EpAddAliasEmailID(pNewAlias->value);
break;
- default:
- ;
+ default:
+ ;
}
}
@@ -3900,6 +3898,9 @@ static int load_module(void)
}
/* And start the monitor for the first time */
restart_monitor();
+ } else {
+ ast_log(LOG_ERROR, "Can't load ooh323 config file, OOH323 Disabled\n");
+ return AST_MODULE_LOAD_FAILURE;
}
return 0;