apt-cacher-ng can not deliver package, caused by (maybe) special characters in filename
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
apt-cacher-ng (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Hi,
I have the following entry in my sources.list:
#
deb [arch=amd64] http://
#
When I try to install a package, hosted by this repo, apt-cacher is not able to deliver the file to apt.
#
apt-get dist-upgrade
[...]Die folgenden Pakete werden aktualisiert (Upgrade):
tvheadend
1 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 19,5 MB an Archiven heruntergeladen werden.
Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] J
Fehl:1 http://
403 Forbidden
E: Fehlschlag beim Holen von http://
#
My apt conf:
#
cat /etc/apt/
// This file is managed by Puppet. DO NOT EDIT.
Acquire:
#
I increased the debug level to 6 and made a tail on /var/log/
#
==> /var/log/
Wed Sep 21 07:43:14 2016|Detected incoming connection from the TCP socket
Wed Sep 21 07:43:14 2016|Client name: 127.0.0.1
Wed Sep 21 07:43:14 2016|Decoded request URI: http://
Wed Sep 21 07:43:14 2016|Processing new job, GET http://
Wed Sep 21 07:43:14 2016|Download started, storeHeader for dl.bintray.
Wed Sep 21 07:43:14 2016|Response header to be sent in the next cycle:
HTTP/1.1 403 Forbidden
Content-Length: 0
Date: Wed Sep 21 05:43:14 2016
Server: Debian Apt-Cacher NG/0.9.1
X-Original-Source: http://
Connection: Keep-Alive
Wed Sep 21 07:43:14 2016|Returning to last state, 6
==> /var/log/
1474436594|
1474436594|
1474436595|I|390
1474436595|O|696
#
My version:
#
dpkg -l | grep apt-cacher-ng
ii apt-cacher-ng 0.9.1-1ubuntu1
#
And the other standard stuff:
#
lsb_release -rd
Description: Ubuntu 16.04.1 LTS
Release: 16.04
#
Thanks for helping!
Best regards.
summary: |
- Apt-Cacher can not deliver package, caused by (maybe) special characters - in filename + apt-cacher-ng can not deliver package, caused by (maybe) special + characters in filename |
I think it's a bug of Akamai. ACNG does reeencode the URL which was sent back in the intermediate redirect response - however, this is basically legal URL encoding, no magic done there. Simple HTTP clients would use the URL from redirect response as-is and therefore never trigger that condition.
Maybe they do some (broken?) verification against the uber-clever pseudo signature that they append there, maybe without considering URL encoding, I am not sure. Needs closer investigation.
Or I could a special mode (to be enabled with a switch) which would disable any sanity checks on that URLs.