diff options
author | Luigi Rizzo <rizzo@icir.org> | 2007-07-24 14:49:49 +0000 |
---|---|---|
committer | Luigi Rizzo <rizzo@icir.org> | 2007-07-24 14:49:49 +0000 |
commit | 961165519ef4d1cc8c8ad68a58721dc5886fac13 (patch) | |
tree | 6780ddd70db228b55ee14a7e30088f26ae40e4d0 /channels/chan_sip.c | |
parent | 5305d61e8557072155d4195ccea652644c3b00f9 (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.c | 17 |
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 */ |