[asterisk-commits] dvossel: trunk r261316 - /trunk/channels/chan_sip.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed May 5 14:14:01 CDT 2010
Author: dvossel
Date: Wed May 5 14:13:57 2010
New Revision: 261316
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=261316
Log:
fixes sip native transfer
The Refer-To header field containing the Replaces header in the URI
was not being decoded properly. This caused invalid parsing between
the caller id field and the domain resulting in a failed transfer.
(closes issue #17284)
Reported by: dvossel
Modified:
trunk/channels/chan_sip.c
Modified: trunk/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/trunk/channels/chan_sip.c?view=diff&rev=261316&r1=261315&r2=261316
==============================================================================
--- trunk/channels/chan_sip.c (original)
+++ trunk/channels/chan_sip.c Wed May 5 14:13:57 2010
@@ -13737,6 +13737,7 @@
/* This is an attended transfer */
referdata->attendedtransfer = 1;
ast_copy_string(referdata->replaces_callid, ptr+9, sizeof(referdata->replaces_callid));
+ ast_uri_decode(referdata->replaces_callid);
if ((ptr = strchr(referdata->replaces_callid, ';'))) /* Find options */ {
*ptr++ = '\0';
}
@@ -13754,7 +13755,6 @@
*to = '\0';
if ((to = strchr(ptr, ';')))
*to = '\0';
- ast_uri_decode(ptr);
ast_copy_string(referdata->replaces_callid_totag, ptr, sizeof(referdata->replaces_callid_totag));
}
@@ -13764,7 +13764,6 @@
*to = '\0';
if ((to = strchr(ptr, ';')))
*to = '\0';
- ast_uri_decode(ptr);
ast_copy_string(referdata->replaces_callid_fromtag, ptr, sizeof(referdata->replaces_callid_fromtag));
}
More information about the asterisk-commits
mailing list