Package: release.debian.org
Severity: normal
Tags: patch
User: release.debian....@packages.debian.org
Usertags: unblock

Hello!

urlgrabber contains a bug which causes connection problems when
using https. This bug is particularly annoying since it completely
breaks the 'yum' package and renders it unusuable.

Upstream has fixed the bug over three years ago [1], however the
urlgrabber package in Debian hasn't been updated for a long time.

I have therefore prepared and uploaded an NMU for urlgrabber which
fixes the problem and makes yum usuable again. Having a working
version of yum in Jessie is particularly interesting since it
ships systemd-nspawn which allows one to boot into a Fedora (or
any other distribution that supports yum) change root with
minimal effort.

Attaching the debdiff.

Cheers,
Adrian

unblock urlgrabber/3.9.1-4.1

> [1] 
> http://yum.baseurl.org/gitweb?p=urlgrabber.git;a=commitdiff;h=b6bfd59c4393ea8ba5165aabb249c37d6d2a9931

-- System Information:
Debian Release: 8.0
  APT prefers testing
  APT policy: (500, 'testing'), (99, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru urlgrabber-3.9.1/debian/changelog urlgrabber-3.9.1/debian/changelog
--- urlgrabber-3.9.1/debian/changelog	2010-07-08 20:19:42.000000000 +0200
+++ urlgrabber-3.9.1/debian/changelog	2014-12-30 13:23:04.000000000 +0100
@@ -1,3 +1,11 @@
+urlgrabber (3.9.1-4.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add debian/patches/https-verifyhost-fix.diff taken from upstream
+    to fix https connection issues (Closes: #715416, #722191).
+
+ -- John Paul Adrian Glaubitz <glaub...@physik.fu-berlin.de>  Tue, 30 Dec 2014 13:13:08 +0100
+
 urlgrabber (3.9.1-4) unstable; urgency=low
 
   * Add two patches created from upstream development version. Closes: #587575. 
diff -Nru urlgrabber-3.9.1/debian/patches/https-verifyhost-fix.diff urlgrabber-3.9.1/debian/patches/https-verifyhost-fix.diff
--- urlgrabber-3.9.1/debian/patches/https-verifyhost-fix.diff	1970-01-01 01:00:00.000000000 +0100
+++ urlgrabber-3.9.1/debian/patches/https-verifyhost-fix.diff	2014-12-30 13:12:38.000000000 +0100
@@ -0,0 +1,22 @@
+--- a/urlgrabber/grabber.py
++++ b/urlgrabber/grabber.py
+@@ -1193,6 +1193,9 @@ class PyCurlFileObject(object):
+         if not opts:
+             opts = self.opts
+ 
++        # keepalives
++        if not opts.keepalive:
++            self.curl_obj.setopt(pycurl.FORBID_REUSE, 1)
+ 
+         # defaults we're always going to set
+         self.curl_obj.setopt(pycurl.NOPROGRESS, False)
+@@ -1236,7 +1239,8 @@ class PyCurlFileObject(object):
+                 self.curl_obj.setopt(pycurl.CAPATH, opts.ssl_ca_cert)
+                 self.curl_obj.setopt(pycurl.CAINFO, opts.ssl_ca_cert)
+             self.curl_obj.setopt(pycurl.SSL_VERIFYPEER, opts.ssl_verify_peer)
+-            self.curl_obj.setopt(pycurl.SSL_VERIFYHOST, opts.ssl_verify_host)
++            if opts.ssl_verify_host: # 1 is meaningless to curl
++                self.curl_obj.setopt(pycurl.SSL_VERIFYHOST, 2)
+             if opts.ssl_key:
+                 self.curl_obj.setopt(pycurl.SSLKEY, opts.ssl_key)
+             if opts.ssl_key_type:
diff -Nru urlgrabber-3.9.1/debian/patches/series urlgrabber-3.9.1/debian/patches/series
--- urlgrabber-3.9.1/debian/patches/series	2010-07-08 20:05:55.000000000 +0200
+++ urlgrabber-3.9.1/debian/patches/series	2014-12-30 13:13:01.000000000 +0100
@@ -1,2 +1,3 @@
 grabber_fix.diff
 progress_fix.diff
+https-verifyhost-fix.diff

Reply via email to