[asterisk-commits] pcadach: branch pcadach/chan_h323-live r40666 -
/team/pcadach/chan_h323-live/...
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Sun Aug 20 11:53:08 MST 2006
Author: pcadach
Date: Sun Aug 20 13:53:07 2006
New Revision: 40666
URL: http://svn.digium.com/view/asterisk?rev=40666&view=rev
Log:
Handle configuration reloads more carefully
Modified:
team/pcadach/chan_h323-live/channels/chan_h323.c
Modified: team/pcadach/chan_h323-live/channels/chan_h323.c
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/chan_h323.c?rev=40666&r1=40665&r2=40666&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/chan_h323.c (original)
+++ team/pcadach/chan_h323-live/channels/chan_h323.c Sun Aug 20 13:53:07 2006
@@ -1715,12 +1715,13 @@
{
pthread_attr_t attr;
/* If we're supposed to be stopped -- stay stopped */
- if (monitor_thread == AST_PTHREADT_STOP) {
- return 0;
- }
if (ast_mutex_lock(&monlock)) {
ast_log(LOG_WARNING, "Unable to lock monitor\n");
return -1;
+ }
+ if (monitor_thread == AST_PTHREADT_STOP) {
+ ast_mutex_unlock(&monlock);
+ return 0;
}
if (monitor_thread == pthread_self()) {
ast_mutex_unlock(&monlock);
@@ -2103,13 +2104,20 @@
if (!h323_end_point_exist()) {
h323_end_point_create();
}
- h323debug = 0;
memset(&bindaddr, 0, sizeof(bindaddr));
memset(&global_options, 0, sizeof(global_options));
global_options.dtmfcodec = 101;
global_options.dtmfmode = H323_DTMF_RFC2833;
global_options.capability = GLOBAL_CAPABILITY;
global_options.bridge = 1; /* Do native bridging by default */
+ strncpy(default_context, "default", sizeof(default_context) - 1);
+ h323_signalling_port = 1720;
+ gatekeeper_disable = 1;
+ gatekeeper_discover = 0;
+ usingGk = 0;
+ gkroute = 0;
+ userbyalias = 1;
+ tos = 0;
/* Copy the default jb config over global_jbconf */
memcpy(&global_jbconf, &default_jbconf, sizeof(struct ast_jb_conf));
@@ -2231,6 +2239,7 @@
ast_config_destroy(cfg);
/* Register our H.323 aliases if any*/
+ ast_mutex_lock(&aliasl.lock);
while (alias) {
if (h323_set_alias(alias)) {
ast_log(LOG_ERROR, "Alias %s rejected by endpoint\n", alias->name);
@@ -2238,6 +2247,7 @@
}
alias = alias->next;
}
+ ast_mutex_unlock(&aliasl.lock);
return 0;
}
@@ -2322,7 +2332,6 @@
delete_aliases();
prune_peers();
reload_config();
- restart_monitor();
return 0;
}
@@ -2411,6 +2420,7 @@
ast_mutex_init(&userl.lock);
ast_mutex_init(&peerl.lock);
ast_mutex_init(&aliasl.lock);
+ h323debug = 0;
sched = sched_context_create();
if (!sched) {
ast_log(LOG_WARNING, "Unable to create schedule context\n");
More information about the asterisk-commits
mailing list