Re: [PATCH] HTTP/2.0 initial support

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Thu, 22 Aug 2013 17:20:07 +1200

Ping Alex.

If there are no objections (or wait requests) I will apply this tomorrow.

Amos

On 2/08/2013 10:30 p.m., Amos Jeffries wrote:
> This patch lays the groundwork for HTTP/2.0 support in Squid:
>
> * registers PRI method for detection of the HTTP/2.0 "magic"
> connection header when expecting HTTP/1.1 traffic
>
> * extend the request line HTTP-version's accepted by the parser to
> include "HTTP/2.0".
>
> * reject 2.0 traffic received by reverse- or forward-proxy ports and
> log "error:http-2.0-not-supported" in access.log.
>
> * reject "HTTP/2.0" version label or "PRI" method in any use other
> than a complete HTTP/2.0 magic connection header.
>
> * change delivered error page to the "Method Not Allowed" response,
> indicating the PRI magic "method" is rejected by this HTTP/1.1 proxy.
>
> * intercepted HTTP/2.0 traffic is relayed to ORIGINAL_DST or a
> cache_peer transparently.
>
> Note that HTTP/2.0 traffic relaying can be prevented by defining an
> ACL for method PRI and limited by http_access controls in the same way
> as method CONNECT. cache_peer_access selection can also make use of
> the PRI method in ACLs to control tunneling to peers.
>
> Also, fix bug 3371 (CONNECT payload data sent in the first packet
> being dropped by Squid) as a necessary step towards relaying the
> HTTP/2.0 frames which are expected to be pushed in by the client
> immediately after the HTTP/2.0 magic header.
>
> Also, add URL parsing and generation support for "*" URL in
> request-lines of PRI, OPTIONS and TRACE methods. This is only updating
> the URL internal code for OPTIONS and TRACE, the remainder of support
> necessary to cope with that URL special case according to HTTP/1.1
> requirements is still missing and outside the scope of this patch.
>
> Amos
Received on Thu Aug 22 2013 - 05:20:15 MDT

This archive was generated by hypermail 2.2.0 : Thu Aug 22 2013 - 12:00:18 MDT