Bug#262011: asterisk: SIP cancels fail due to Request-URI mismatch
Jan Niehusmann
Jan Niehusmann <jan@debian.org>, 262011@bugs.debian.org
Thu, 29 Jul 2004 15:05:04 +0200
Package: asterisk
Severity: normal
Tags: patch
This bug is known to and fixed by upstream (http://bugs.digium.com/bug_view_page.php?bug_id=0002134).
Could you consider applying the following patch (from upstream CVS)? Of
course, upgrading to a current CVS checkout would do the trick as well.
Index: channels/chan_sip.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channels/chan_sip.c,v
retrieving revision 1.460
retrieving revision 1.461
diff -u -1 -b -p -r1.460 -r1.461
--- channels/chan_sip.c 22 Jul 2004 23:16:40 -0000 1.460
+++ channels/chan_sip.c 27 Jul 2004 04:04:45 -0000 1.461
@@ -3107,4 +3107,6 @@ static int reqprep(struct sip_request *r
}
-
- if (!ast_strlen_zero(p->uri)) {
+ if (!strcasecmp(msg, "CANCEL")) {
+ /* MUST use original URI */
+ c = p->initreq.rlPart2;
+ } else if (!ast_strlen_zero(p->uri)) {
c = p->uri;
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.4.22
Locale: LANG=C, LC_CTYPE=de_DE@euro