"Bad uri header component" when downloading from gitorious.org

  • Done
  • quality assurance status badge
Details
2 participants
  • Mark H Weaver
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Ricardo Wurmus
Severity
normal
R
R
Ricardo Wurmus wrote on 11 Feb 2015 20:53
(address . bug-guix@gnu.org)
874mqsns2h.fsf@mango.localdomain
Downloading archives from gitorious fails:

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"

Here the same with wget -S:

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]
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]
M
M
Mark H Weaver wrote on 19 Feb 2015 09:42
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 19840-done@debbugs.gnu.org)
87ioeygumn.fsf@netris.org
Ricardo Wurmus <rekado@elephly.net> writes:

Toggle quote (6 lines)
> 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
Closed
?