Package: twinkle
Severity: normal
Tags: patch

There are typos in the list of unescaped characters in user, password and 
headers of URIs.

"...XYX..."

should be

"...XYZ..."

The result is, 'Z' characters are converted to %5a in the user part or URIs. 
This can lead to failed calls. If for example a Record-Route header contains a 
'Z', then Twinkle will replace this 'Z' with %5a in the Route header it inserts 
into dialog requests. This might be a problem for the SIP proxy which inserted 
the Record-Route header and may not recognize its URI in the Route header.

Thanks to Mikael Magnusson for the original report and patch in Ubuntu (LP: 
#521161)

-- System Information:
Debian Release: squeeze/sid
  APT prefers lucid-updates
  APT policy: (500, 'lucid-updates'), (500, 'lucid-security'), (500, 'lucid')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-22-generic (SMP w/2 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
--- twinkle-1.4.2.orig/src/sockets/url.cpp	2009-01-18 15:30:41.000000000 +0100
+++ twinkle-1.4.2/src/sockets/url.cpp	2010-02-12 19:29:06.033763864 +0100
@@ -396,7 +396,7 @@
 	// mark             =  "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")"
 
 	return escape_hex(user_value,
-		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYX0123456789"\
+		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"\
 		"-_.!~*'()&=+$,;?/");
 }
 
@@ -407,7 +407,7 @@
 	// mark             =  "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")"
 	
 	return escape_hex(passwd_value,
-		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYX0123456789"\
+		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"\
 		"-_.!~*'()&=+$,");
 }
 
@@ -420,7 +420,7 @@
 	// mark             =  "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")"
 	
 	return escape_hex(hnv,
-		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYX0123456789"\
+		"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"\
 		"-_.!~*'()[]/?:+$");
 }
 

Reply via email to