summaryrefslogtreecommitdiff
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
authorLuigi Rizzo <rizzo@icir.org>2007-07-24 14:49:49 +0000
committerLuigi Rizzo <rizzo@icir.org>2007-07-24 14:49:49 +0000
commit961165519ef4d1cc8c8ad68a58721dc5886fac13 (patch)
tree6780ddd70db228b55ee14a7e30088f26ae40e4d0 /channels/chan_sip.c
parent5305d61e8557072155d4195ccea652644c3b00f9 (diff)
two small fixes when using stun (reported by Marta Carbone):
+ externexpire was not initialized properly; + stunaddr was not handled properly on a sip reload git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76770 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index eddc11c18..d3756577a 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -17623,6 +17623,7 @@ static int reload_config(enum channelreloadreason reason)
stunaddr.sin_port = htons(3478);
if (ast_parse_arg(v->value, PARSE_INADDR, &stunaddr))
ast_log(LOG_WARNING, "Invalid STUN server address: %s\n", v->value);
+ externexpire = time(NULL);
} else if (!strcasecmp(v->name, "bindaddr")) {
if (ast_parse_arg(v->value, PARSE_INADDR, &bindaddr))
ast_log(LOG_WARNING, "Invalid address: %s\n", v->value);
@@ -17868,18 +17869,18 @@ static int reload_config(enum channelreloadreason reason)
if (option_verbose > 1)
ast_verbose(VERBOSE_PREFIX_2 "SIP Listening on %s:%d\n",
ast_inet_ntoa(bindaddr.sin_addr), ntohs(bindaddr.sin_port));
- if (stunaddr.sin_addr.s_addr != 0) {
- ast_debug(1, "stun to %s:%d\n",
- ast_inet_ntoa(stunaddr.sin_addr) , ntohs(stunaddr.sin_port));
- ast_stun_request(sipsock, &stunaddr,
- NULL, &externip);
- ast_debug(1, "STUN sees us at %s:%d\n",
- ast_inet_ntoa(externip.sin_addr) , ntohs(externip.sin_port));
- }
ast_netsock_set_qos(sipsock, global_tos_sip, global_cos_sip);
}
}
}
+ if (stunaddr.sin_addr.s_addr != 0) {
+ ast_debug(1, "stun to %s:%d\n",
+ ast_inet_ntoa(stunaddr.sin_addr) , ntohs(stunaddr.sin_port));
+ ast_stun_request(sipsock, &stunaddr,
+ NULL, &externip);
+ ast_debug(1, "STUN sees us at %s:%d\n",
+ ast_inet_ntoa(externip.sin_addr) , ntohs(externip.sin_port));
+ }
ast_mutex_unlock(&netlock);
/* Add default domains - host name, IP address and IP:port */