[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#216951: marked as done (Apt-get update fail to check if the http server supports pipelining)



Your message dated Wed, 12 Aug 2015 22:26:01 +0200
with message-id <20150812202601.GA29952@crossbow>
and subject line Re: Apt-get update pipelines abusively
has caused the Debian Bug report #216951,
regarding Apt-get update fail to check if the http server supports pipelining
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
216951: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=216951
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: apt
Version: 0.5.14
Severity: minor

Apt-get update uses HTTP/1.1 pipeling by default, which is pretty
good.  However, it doesn't check whether the server supports
pipelining, which breaks certain proxies (notably WWWOFFLE and
Junkbuster).

In order to reproduce that, run ``nc -l -p 1234'' in one window, and
``http_proxy=http://localhost:1234 apt-get update'' in another.
You'll see a bunch of requests straight away, which is incorrect in
the case of an HTTP/1.0 proxy.

The recommended approach (RFC 2616 8.1.2) is to do a single request
first, and then start pipelining if the proxy or server gave an
HTTP/1.1 (or later) persistent reply.  Whether to pipeline when the
server gave an HTTP/1.0 persistent reply is up to you, old Apache will
work, but old IIS will break.

Please do not disable pipelining altogether, as this would signi-
ficantly slow apt-get down.

Thanks,

                                        Juliusz Chroboczek


--- End Message ---
--- Begin Message ---
Version: 1.1~exp1

On Tue, Oct 21, 2003 at 10:41:28PM +0200, Juliusz Chroboczek wrote:
> Apt-get update uses HTTP/1.1 pipeling by default, which is pretty
> good.  However, it doesn't check whether the server supports
> pipelining, which breaks certain proxies (notably WWWOFFLE and
> Junkbuster).

Pipeling was a problem even for HTTP/1.1 servers as not everyone of
those is supporting it properly… I reworked it now to only pipelining
requests if we have checksums to figure if we got the right result (and
it does reorder if it got the results in the wrong order which happens
with the broken servers). If it detects such a mistake it will disable
pipelining and retry the failed stuff, so we are still optimisticly
using it, but we should recover if misuse is detected, hence closing.


> In order to reproduce that, run ``nc -l -p 1234'' in one window, and
> ``http_proxy=http://localhost:1234 apt-get update'' in another.
> You'll see a bunch of requests straight away, which is incorrect in
> the case of an HTTP/1.0 proxy.

Note that apt is a heavy HTTP/1.1 user, so while HTTP/1.0 might work,
I wouldn't expect it to work very well…


Best regards

David Kalnischkies

Attachment: signature.asc
Description: Digital signature


--- End Message ---

Reply to: