From: Francesco Castellano Date: Fri, 20 Nov 2015 14:02:48 +0000 (+0100) Subject: chan_sip.c: Space after port causes unnecessary resolution attempt X-Git-Tag: 11.23.0-rc1~40 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fchanges%2F48%2F2448%2F1;p=thirdparty%2Fasterisk.git chan_sip.c: Space after port causes unnecessary resolution attempt check_via() already skips leading blanks where the sent-by address (with the optional port) should be placed. Since RFC 3261 allows for blanks between the port ant the Via parameters: > https://tools.ietf.org/html/rfc3261#section-20.42 (actually it allows a lot of blanks more ;-)). I just switched from ast_skip_blanks() to ast_strip() on the local copy of the string. ASTERISK-21301 #close Change-Id: Ie5b8fe5a07067b7c0dc9bcdd1707e99b23b02b06 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 3eb750ace9..5173fc2ce5 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -18189,7 +18189,7 @@ static void check_via(struct sip_pvt *p, const struct sip_request *req) c = strchr(via, ' '); if (c) { *c = '\0'; - c = ast_skip_blanks(c+1); + c = ast_strip(c+1); if (strcasecmp(via, "SIP/2.0/UDP") && strcasecmp(via, "SIP/2.0/TCP") && strcasecmp(via, "SIP/2.0/TLS")) { ast_log(LOG_WARNING, "Don't know how to respond via '%s'\n", via); return;