mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-02 11:19:28 +00:00
<param name="challenge-realm" value="auto_from|auto_to|<hardcoded_val>"/>
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9617 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
dbbe58d4fc
commit
718d783272
src/mod/endpoints/mod_sofia
@ -1291,6 +1291,8 @@ static switch_status_t cmd_status(char **argv, int argc, switch_stream_handle_t
|
||||
stream->write_function(stream, "Pres Hosts \t\t%s\n", switch_str_nil(profile->presence_hosts));
|
||||
stream->write_function(stream, "Dialplan \t\t%s\n", switch_str_nil(profile->dialplan));
|
||||
stream->write_function(stream, "Context \t\t%s\n", switch_str_nil(profile->context));
|
||||
stream->write_function(stream, "Challenge Realm\t\t%s\n",
|
||||
switch_strlen_zero(profile->challenge_realm) ? "auto_to" : profile->challenge_realm);
|
||||
stream->write_function(stream, "RTP-IP \t\t%s\n", switch_str_nil(profile->rtpip));
|
||||
if (profile->extrtpip) {
|
||||
stream->write_function(stream, "Ext-RTP-IP \t\t%s\n", profile->extrtpip);
|
||||
|
@ -336,6 +336,7 @@ struct sofia_profile {
|
||||
char *user_agent;
|
||||
char *record_template;
|
||||
char *presence_hosts;
|
||||
char *challenge_realm;
|
||||
sofia_dtmf_t dtmf_type;
|
||||
int sip_port;
|
||||
int tls_sip_port;
|
||||
|
@ -1240,6 +1240,8 @@ switch_status_t reconfig_sofia(sofia_profile_t *profile)
|
||||
profile->max_calls = atoi(val);
|
||||
} else if (!strcasecmp(var, "codec-prefs")) {
|
||||
profile->codec_string = switch_core_strdup(profile->pool, val);
|
||||
} else if (!strcasecmp(var, "challenge-realm")) {
|
||||
profile->challenge_realm = switch_core_strdup(profile->pool, val);
|
||||
} else if (!strcasecmp(var, "dtmf-duration")) {
|
||||
int dur = atoi(val);
|
||||
if (dur > 10 && dur < 8000) {
|
||||
@ -1726,13 +1728,16 @@ switch_status_t config_sofia(int reload, char *profile_name)
|
||||
profile->max_calls = atoi(val);
|
||||
} else if (!strcasecmp(var, "codec-prefs")) {
|
||||
profile->codec_string = switch_core_strdup(profile->pool, val);
|
||||
} else if (!strcasecmp(var, "challenge-realm")) {
|
||||
profile->challenge_realm = switch_core_strdup(profile->pool, val);
|
||||
} else if (!strcasecmp(var, "dtmf-duration")) {
|
||||
int dur = atoi(val);
|
||||
if (dur > 10 && dur < 8000) {
|
||||
profile->dtmf_duration = dur;
|
||||
} else {
|
||||
profile->dtmf_duration = SWITCH_DEFAULT_DTMF_DURATION;
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Duration out of bounds, using default of %d!\n", SWITCH_DEFAULT_DTMF_DURATION);
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Duration out of bounds, using default of %d!\n",
|
||||
SWITCH_DEFAULT_DTMF_DURATION);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -734,7 +734,14 @@ uint8_t sofia_reg_handle_register(nua_t *nua, sofia_profile_t *profile, nua_hand
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Requesting Registration from: [%s@%s]\n", to_user, to_host);
|
||||
}
|
||||
} else {
|
||||
sofia_reg_auth_challenge(nua, profile, nh, regtype, from_host, stale);
|
||||
const char *realm = profile->challenge_realm;
|
||||
|
||||
if (switch_strlen_zero(realm) || !strcasecmp(realm, "auto_to")) {
|
||||
realm = to_host;
|
||||
} else if (!strcasecmp(realm, "auto_from")) {
|
||||
realm = from_host;
|
||||
}
|
||||
sofia_reg_auth_challenge(nua, profile, nh, regtype, realm, stale);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user