fix some oversights from earlier sip patch

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5047 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2007-05-01 00:26:41 +00:00
parent 5d09c438ac
commit d79d33c72d
3 changed files with 13 additions and 3 deletions

View File

@ -953,7 +953,11 @@ static switch_status_t cmd_profile(char **argv, int argc, switch_stream_handle_t
if (!strcasecmp(argv[1], "stop")) {
sofia_clear_pflag_locked(profile, PFLAG_RUNNING);
stream->write_function(stream, "stopping: %s", profile->name);
}
} else if (!strcasecmp(argv[1], "restart")) {
sofia_set_pflag_locked(profile, PFLAG_RESPAWN);
sofia_clear_pflag_locked(profile, PFLAG_RUNNING);
stream->write_function(stream, "restarting: %s", profile->name);
}
if (profile) {
switch_thread_rwlock_unlock(profile->rwlock);

View File

@ -110,7 +110,8 @@ typedef enum {
PFLAG_PASS_RFC2833 = (1 << 5),
PFLAG_DISABLE_TRANSCODING = (1 << 6),
PFLAG_REWRITE_TIMESTAMPS = (1 << 7),
PFLAG_RUNNING = (1 << 8)
PFLAG_RUNNING = (1 << 8),
PFLAG_RESPAWN = (1 << 9)
} PFLAGS;
typedef enum {

View File

@ -252,7 +252,7 @@ void *SWITCH_THREAD_FUNC sofia_profile_thread_run(switch_thread_t *thread, void
uint32_t ireg_loops = 0;
uint32_t gateway_loops = 0;
switch_event_t *s_event;
switch_mutex_lock(mod_sofia_globals.mutex);
mod_sofia_globals.threads++;
switch_mutex_unlock(mod_sofia_globals.mutex);
@ -384,6 +384,10 @@ void *SWITCH_THREAD_FUNC sofia_profile_thread_run(switch_thread_t *thread, void
sofia_glue_del_profile(profile);
switch_thread_rwlock_unlock(profile->rwlock);
if (sofia_test_pflag(profile, PFLAG_RESPAWN)) {
config_sofia(1, profile->name);
}
switch_core_destroy_memory_pool(&pool);
@ -869,6 +873,7 @@ switch_status_t config_sofia(int reload, char *profile_name)
parse_gateways(profile, gateways_tag);
}
}
switch_xml_free(droot);
}
}
sofia_glue_add_profile(switch_core_strdup(profile->pool, dname), profile);