Hello community,

here is the log from the commit of package yum for openSUSE:Factory checked in 
at 2014-09-20 15:49:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yum (Old)
 and      /work/SRC/openSUSE:Factory/.yum.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yum"

Changes:
--------
--- /work/SRC/openSUSE:Factory/yum/yum.changes  2014-04-26 11:44:54.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.yum.new/yum.changes     2014-09-20 
15:49:57.000000000 +0200
@@ -1,0 +2,6 @@
+Tue Sep 16 12:31:29 UTC 2014 - [email protected]
+
+- Add yum-3.4.3-preserve-queryparams-in-urls.patch
+  (bnc#896844)
+
+-------------------------------------------------------------------

New:
----
  yum-3.4.3-preserve-queryparams-in-urls.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ yum.spec ++++++
--- /var/tmp/diff_new_pack.bzW5s6/_old  2014-09-20 15:49:58.000000000 +0200
+++ /var/tmp/diff_new_pack.bzW5s6/_new  2014-09-20 15:49:58.000000000 +0200
@@ -40,6 +40,8 @@
 Patch8:         %{name}-3.4.3-speedup-bnc810074.patch
 # PATCH-FIX-OPENSUSE
 Patch9:         %{name}-3.4.3-fix-repo-tag.patch
+# PATCH-FIX-UPSTREAM bnc#896844
+Patch10:        %{name}-3.4.3-preserve-queryparams-in-urls.patch
 BuildRequires:  dbus-1
 BuildRequires:  intltool
 BuildRequires:  python-devel
@@ -100,6 +102,7 @@
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
+%patch10 -p1
 
 # Fix non-executable scripts rpmlint issue:
 sed -i "s|#!.*/usr/bin/python.*||" 
rpmUtils/{arch,__init__,miscutils,oldUtils,transaction,updates}.py

++++++ yum-3.4.3-preserve-queryparams-in-urls.patch ++++++
>From 964f75c66170d7d5aa860f2dd37d5a079f900bde Mon Sep 17 00:00:00 2001
From: Michael Calmer <[email protected]>
Date: Fri, 12 Sep 2014 13:05:04 +0200
Subject: [PATCH] preserve queryparams in urls

Some CDN do token authentication by appending a token to the URL
as query parameter. So the baseurl could be something like:

https://host.domain.top/path/?abcdef1234567890

Simply appending the relative part to it will result in an invalid URL.
---
 yum/yumRepo.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Index: yum-3.4.3/yum/yumRepo.py
===================================================================
--- yum-3.4.3.orig/yum/yumRepo.py
+++ yum-3.4.3/yum/yumRepo.py
@@ -677,11 +677,11 @@ class YumRepository(Repository, config.R
             if url in ['', None]:
                 continue
             url = parser.varReplace(url, self.yumvar)
-            if url[-1] != '/':
-                url= url + '/'
             try:
                 # This started throwing ValueErrors, BZ 666826
                 (s,b,p,q,f,o) = urlparse.urlparse(url)
+                if p[-1] != '/':
+                    p = p + '/'
             except (ValueError, IndexError, KeyError), e:
                 s = 'blah'
 
@@ -689,7 +689,7 @@ class YumRepository(Repository, config.R
                 skipped = url
                 continue
             else:
-                goodurls.append(url)
+                goodurls.append(urlparse.urlunparse((s,b,p,q,f,o)))
 
         if skipped is not None:
             # Caller cleans up for us.
@@ -807,7 +807,7 @@ class YumRepository(Repository, config.R
                             size=size,
                             **ugopts)
 
-            remote = url + '/' + relative
+            remote = urlparse.urlunsplit((scheme, netloc, path + '/' + 
relative, query, fragid))
 
             try:
                 result = ug.urlgrab(misc.to_utf8(remote), local,
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to