From: Luigi Rizzo Date: Tue, 24 Jul 2007 14:49:49 +0000 (+0000) Subject: two small fixes when using stun (reported by Marta Carbone): X-Git-Tag: 1.6.0-beta1~3^2~1938 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=961165519ef4d1cc8c8ad68a58721dc5886fac13;p=thirdparty%2Fasterisk.git 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 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index eddc11c187..d3756577a1 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 */