Package: apt-proxy
Version: 1.9.28
Severity: normal
apt_proxy.py does not correctly split an URI with a password that
contains an '@'.
For example, a netloc of
"username:[EMAIL PROTECTED]@hostname.repository.com"
is parsed to
['username:alias', 'domain.com', 'hostname.repository.com'].
Since this list contains more than the expected two items,
apt-proxy even fails to load.
See the following patch for a fix.
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (990, 'unstable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.11.7
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)
Versions of packages apt-proxy depends on:
ii bzip2 1.0.2-6 high-quality block-sorting file co
ii debconf 1.4.49 Debian configuration management sy
ii logrotate 3.7-2 Log rotation utility
ii python 2.3.5-2 An interactive high-level object-o
ii python-apt 0.5.10 Python interface to libapt-pkg
ii python-bsddb3 3.3.0-6 Python interface to libdb3
ii python-twisted 1.3.0-8 Event-based framework for internet
ii python2.3 2.3.5-3 An interactive high-level object-o
-- debconf information excluded
*** /tmp/apt-proxy_ftppasswd.patch
diff -urN a/apt_proxy.py b/apt_proxy.py
--- a/apt_proxy.py 2005-05-16 09:56:07.000000000 +0200
+++ b/apt_proxy.py 2005-05-16 09:55:51.000000000 +0200
@@ -1275,8 +1275,8 @@
query, fragment = urlparse.urlparse(uri)
if '@' in netloc:
- auth, netloc = netloc.split('@')
- self.username, self.password = auth.split(':')
+ auth = re.split('^([^:]+):(.+)@([EMAIL PROTECTED])$', netloc)
+ self.username, self.password, netloc = auth[1], auth[2], auth[3]
else:
self.username = None
if ':' in netloc:
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]