Subject: bug#19840: closed (Re: bug#19840: "Bad uri header component" when downloading from gitorious.org)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 19 Feb 2015 08:43:02 +0000

Your bug report

#19840: "Bad uri header component" when downloading from gitorious.org

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
19840: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19840
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#19840: "Bad uri header component" when downloading from gitorious.org
From: Mark H Weaver <[email-masked]>
To: Ricardo Wurmus <[email-masked]>
Cc: [email-masked]
Date: Thu, 19 Feb 2015 03:42:24 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

Ricardo Wurmus <[email-masked]> writes:

> Downloading archives from gitorious fails:
>
>     ~/dev/guix $ ./pre-inst-env guix download https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz
>     starting download of `/tmp/guix-file.gqYdZs' from `https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz'...
>     ERROR: Bad uri header component: /lv2-synths/lv2-mdametapiano/archive/ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz

Guile's parsing and validation of HTTP "Location" headers was based on
the now obsolete RFC 2616 section 14.30, which required it to be an
absolute URI.  However, RFC 7231 section 7.1.2 allows it to be any URI
reference, which can include relative URIs.

This will be fixed in Guile 2.0.12.

Additionally, the possibility of HTTP redirects to relative URIs
requires us to determine the target URI based on a relative URI and base
URI, using the algorithm described in RFC 3986 section 5.2.2.

I just pushed commit 04dec194d8 to master which resolves both of these
issues.  I'm closing this bug now.

     Thanks!
       Mark

Subject: "Bad uri header component" when downloading from gitorious.org
From: Ricardo Wurmus <[email-masked]>
To: [email-masked]
Date: Wed, 11 Feb 2015 20:53:10 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Downloading archives from gitorious fails:

    ~/dev/guix $ ./pre-inst-env guix download https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz
    starting download of `/tmp/guix-file.gqYdZs' from `https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz'...
    ERROR: Bad uri header component: /lv2-synths/lv2-mdametapiano/archive/ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz
    
    failed to download "/tmp/guix-file.gqYdZs" from "https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz"
    guix download: error: https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz: download failed

Here the same with wget -S:

    ~/dev/guix $ wget -S https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz
    --2015-02-11 20:48:30--  https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/0.0.1.tar.gz
    Resolving gitorious.org (gitorious.org)... 87.238.52.168, 2a02:c0:1014::1
    Connecting to gitorious.org (gitorious.org)|87.238.52.168|:443... connected.
    HTTP request sent, awaiting response... 
      HTTP/1.1 302 Found
      Server: nginx
      Date: Wed, 11 Feb 2015 19:48:30 GMT
      Content-Type: text/html;charset=utf-8
      Content-Length: 211
      Connection: keep-alive
      Status: 302 Found
      Location: /lv2-synths/lv2-mdametapiano/archive/ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz
      X-XSS-Protection: 1; mode=block
      X-Content-Type-Options: nosniff
      X-Frame-Options: SAMEORIGIN
      X-UA-Compatible: IE=Edge,chrome=1
      Cache-Control: no-cache
      Set-Cookie: _gitorious_session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiJTJhOTEzZTJmZTVjZjZhZDRkMDU2NTA1ZWQ1NDhhZDY1BjsAVA%3D%3D--dde27a4488e6aef56d25db1dbf58ee75f36fd1bf; domain=.gitorious.org; path=/; expires=Wed, 04-Mar-2015 19:48:30 GMT; secure; HttpOnly
      X-Request-Id: 55889cfebab9c8dc6e1745825510ae13
      X-Runtime: 0.015907
      Strict-Transport-Security: max-age=31536000
    Location: /lv2-synths/lv2-mdametapiano/archive/ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz [following]
    --2015-02-11 20:48:30--  https://gitorious.org/lv2-synths/lv2-mdametapiano/archive/ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz
    Reusing existing connection to gitorious.org:443.
    HTTP request sent, awaiting response... 
      HTTP/1.1 200 OK
      Server: nginx
      Date: Wed, 11 Feb 2015 19:48:30 GMT
      Content-Type: application/x-gzip; charset=utf-8
      Content-Length: 1938720
      Connection: keep-alive
      Cache-Control: no-cache
      Set-Cookie: _gitorious_session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiJTJhOTEzZTJmZTVjZjZhZDRkMDU2NTA1ZWQ1NDhhZDY1BjsAVA%3D%3D--dde27a4488e6aef56d25db1dbf58ee75f36fd1bf; domain=.gitorious.org; path=/; expires=Wed, 04-Mar-2015 19:48:30 GMT; secure; HttpOnly
      Accept-Ranges: bytes
      Content-Disposition: attachment; filename=lv2-synths-lv2-mdametapiano-ceb5345396425ad526be34c79eae2b4dfe886d5b.tar.gz
      Last-Modified: Wed, 11 Feb 2015 19:34:43 GMT
      Strict-Transport-Security: max-age=31536000
    Length: 1938720 (1.8M) [application/x-gzip]
    Saving to: ‘0.0.1.tar.gz’
    
    0.0.1.tar.gz        100%[=====================>]   1.85M  1.36MB/s   in 1.4s   
    
    2015-02-11 20:48:32 (1.36 MB/s) - ‘0.0.1.tar.gz’ saved [1938720/1938720]