Re: [PATCH] Support PROXY protocol

2014-09-02 Thread Amos Jeffries
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/09/2014 2:48 a.m., Amos Jeffries wrote: > On 19/08/2014 10:12 p.m., Amos Jeffries wrote: >> Updated patch. I believe this covers everything so far, >> including the 16-bit alignment and segmented TCP packet issues. > >> Amos > > > If there are

Re: [PATCH] Support PROXY protocol

2014-08-31 Thread Amos Jeffries
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 19/08/2014 10:12 p.m., Amos Jeffries wrote: > Updated patch. I believe this covers everything so far, including > the 16-bit alignment and segmented TCP packet issues. > > Amos > If there are no objections I will apply this soon. Amos -BEGI

Re: [PATCH] Support PROXY protocol

2014-08-19 Thread Amos Jeffries
Updated patch. I believe this covers everything so far, including the 16-bit alignment and segmented TCP packet issues. Amos === modified file 'doc/release-notes/release-3.5.sgml' --- doc/release-notes/release-3.5.sgml 2014-08-11 16:09:06 + +++ doc/release-notes/release-3.5.sgml 2014-08-12

Re: [PATCH] Support PROXY protocol

2014-08-13 Thread Alex Rousskov
On 08/12/2014 06:18 PM, Alex Rousskov wrote: > On 08/12/2014 10:17 AM, Amos Jeffries wrote: >> On 11/08/2014 4:32 p.m., Alex Rousskov wrote: >>> On 08/05/2014 08:31 PM, Amos Jeffries wrote: +const char *clen = in.buf.rawContent() + Proxy2p0magic.length() + 2; +const uint16_t len =

Re: [PATCH] Support PROXY protocol

2014-08-12 Thread Alex Rousskov
On 08/12/2014 10:17 AM, Amos Jeffries wrote: > On 11/08/2014 4:32 p.m., Alex Rousskov wrote: >> On 08/05/2014 08:31 PM, Amos Jeffries wrote: >>> +tok.skip(Proxy1p0magic); >> >> We already know the magic is there. If you want to optimize this, then >> skip() in ConnStateData::parseProxyProtocolH

Re: [PATCH] Support PROXY protocol

2014-08-12 Thread Amos Jeffries
On 11/08/2014 4:32 p.m., Alex Rousskov wrote: > On 08/05/2014 08:31 PM, Amos Jeffries wrote: > >> I am adding proxy_protocol_access as the first access control, reverting >> follow_x_forwarded_for for the second. > > Great. I think this is a much simpler/cleaner design. > > >> +} else if (

Re: [PATCH] Support PROXY protocol

2014-08-10 Thread Alex Rousskov
On 08/05/2014 08:31 PM, Amos Jeffries wrote: > I am adding proxy_protocol_access as the first access control, reverting > follow_x_forwarded_for for the second. Great. I think this is a much simpler/cleaner design. > +} else if (strcmp(token, "require-proxy-header") == 0) { > +s->f

Re: [PATCH] Support PROXY protocol

2014-08-05 Thread Amos Jeffries
On 5/08/2014 2:47 a.m., Alex Rousskov wrote: > On 07/30/2014 09:02 AM, Amos Jeffries wrote: > >> +NAME: proxy_forwarded_access follow_x_forwarded_for > >> Requests may pass through a chain of several other proxies >> +before reaching us. The original source details may by sent in: >> +

Re: [PATCH] Support PROXY protocol

2014-08-04 Thread Alex Rousskov
On 07/30/2014 09:02 AM, Amos Jeffries wrote: > +NAME: proxy_forwarded_access follow_x_forwarded_for > Requests may pass through a chain of several other proxies > + before reaching us. The original source details may by sent in: > + * HTTP message Forwarded header, or > +

Re: [PATCH] Support PROXY protocol

2014-07-30 Thread Amos Jeffries
On 27/07/2014 6:18 a.m., Alex Rousskov wrote: > On 07/25/2014 08:27 PM, Amos Jeffries wrote: > >> +// detect and parse PROXY protocol version 1 header >> +if (in.buf.length() > Proxy10magic.length() && >> in.buf.startsWith(Proxy10magic)) { >> + return parseProxy10(); >> + >> +

Re: [PATCH] Support PROXY protocol

2014-07-26 Thread Alex Rousskov
On 07/25/2014 08:27 PM, Amos Jeffries wrote: > +// detect and parse PROXY protocol version 1 header > +if (in.buf.length() > Proxy10magic.length() && > in.buf.startsWith(Proxy10magic)) { > + return parseProxy10(); > + > +// detect and parse PROXY protocol version 2 header

Re: [PATCH] Support PROXY protocol

2014-07-26 Thread Amos Jeffries
On 22/06/2014 5:15 p.m., Amos Jeffries wrote: > Support receiving PROXY protocol version 1 and 2. > > PROXY protocol has been developed by Willy Tarreau of HAProxy for > communicating original src and dst IP:port details between proxies and > load balancers in a protocol-agnostic way. > > stunnel

Re: [PATCH] Support PROXY protocol

2014-07-25 Thread Amos Jeffries
On 15/07/2014 4:25 a.m., Alex Rousskov wrote: > On 07/12/2014 10:45 PM, Amos Jeffries wrote: > >> +bool >> +ConnStateData::findProxyProtocolMagic() >> +{ >> +// http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt >> + >> +// detect and parse PROXY protocol version 1 header >> +i

Re: [PATCH] Support PROXY protocol

2014-07-14 Thread Alex Rousskov
On 07/12/2014 10:45 PM, Amos Jeffries wrote: > +bool > +ConnStateData::findProxyProtocolMagic() > +{ > +// http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt > + > +// detect and parse PROXY protocol version 1 header > +if (in.buf.length() > Proxy10magic.length() && > in.buf.s

Re: [PATCH] Support PROXY protocol

2014-07-13 Thread Alex Rousskov
On 07/13/2014 02:38 PM, Kinkie wrote: >> In all seriousness "haproxy-protocol" is probably the most correct >> descriptive right now. But I am trying hard to avoid naming a competitor >> in our most visible documentations. > > How so? We are not a commercial product; I have no issues with naming >

Re: [PATCH] Support PROXY protocol

2014-07-13 Thread Kinkie
> In all seriousness "haproxy-protocol" is probably the most correct > descriptive right now. But I am trying hard to avoid naming a competitor > in our most visible documentations. How so? We are not a commercial product; I have no issues with naming a competitor.

Re: [PATCH] Support PROXY protocol

2014-07-12 Thread Amos Jeffries
Attaced patch contains all updated except the config option renaming, which remains to be sorted out. On 26/06/2014 7:41 a.m., Alex Rousskov wrote: > On 06/21/2014 11:15 PM, Amos Jeffries wrote: >> Support receiving PROXY protocol version 1 and 2. > > >> + proxy-surrogate >> +

Re: [PATCH] Support PROXY protocol

2014-07-11 Thread Amos Jeffries
On 12/07/2014 3:04 a.m., Alex Rousskov wrote: > On 07/11/2014 02:27 AM, Amos Jeffries wrote: >> - supports non-TCP protocols. >> - security section says it could be full of lies. So the A[ctually] is >> incorrect. > > IMHO, you are being too literate with the words in the protocol name > while

Re: [PATCH] Support PROXY protocol

2014-07-11 Thread Alex Rousskov
On 07/11/2014 02:27 AM, Amos Jeffries wrote: > - supports non-TCP protocols. > - security section says it could be full of lies. So the A[ctually] is > incorrect. IMHO, you are being too literate with the words in the protocol name while being very permissive with the protocol specs. Most of th

Re: [PATCH] Support PROXY protocol

2014-07-11 Thread Kinkie
> I was thinking you had something funny along the lines of: > > * Traffic Envelope Annex protocol (TEA p'ot) > > We could also reply with HTTP 418 and close the connection on protocol > failures. iLike. Willy, what do you think? Kinkie

Re: [PATCH] Support PROXY protocol

2014-07-11 Thread Amos Jeffries
cc'ing Willy so he can get in on this. On 11/07/2014 5:03 p.m., Alex Rousskov wrote: > On 06/25/2014 01:41 PM, Alex Rousskov wrote: >> On 06/21/2014 11:15 PM, Amos Jeffries wrote: Support receiving PROXY protocol version 1 and 2. > >> sounds like nothing-on-top-of-nothing to me in Squid cont

Re: [PATCH] Support PROXY protocol

2014-07-10 Thread Alex Rousskov
On 06/25/2014 01:41 PM, Alex Rousskov wrote: > On 06/21/2014 11:15 PM, Amos Jeffries wrote: >> > Support receiving PROXY protocol version 1 and 2. > sounds like nothing-on-top-of-nothing to me in Squid context? The > terrible name for the PROXY protocol itself is clearly not your fault Per Amos

Re: [PATCH] Support PROXY protocol

2014-06-25 Thread Amos Jeffries
On 26/06/2014 4:53 a.m., Eliezer Croitoru wrote: > I was not expecting this patch due to old emails about the proxy > protocol implementation. > I understand from the email that after this patch we can use STUNNEL and > HAPROXY in-front of squid. right? Right. stunnel, HAProxy and any other gatewa

Re: [PATCH] Support PROXY protocol

2014-06-25 Thread Alex Rousskov
On 06/21/2014 11:15 PM, Amos Jeffries wrote: > Support receiving PROXY protocol version 1 and 2. > +proxy-surrogate > + Support for PROXY protocol version 1 or 2 connections. > + The proxy_forwarded_access is required to whitelist > +

Re: [PATCH] Support PROXY protocol

2014-06-25 Thread Eliezer Croitoru
I was not expecting this patch due to old emails about the proxy protocol implementation. I understand from the email that after this patch we can use STUNNEL and HAPROXY in-front of squid. right? +1 (for the idea and looked a bit at the code itself) Eliezer On 06/22/2014 08:15 AM, Amos Jeffri

[PATCH] Support PROXY protocol

2014-06-21 Thread Amos Jeffries
Support receiving PROXY protocol version 1 and 2. PROXY protocol has been developed by Willy Tarreau of HAProxy for communicating original src and dst IP:port details between proxies and load balancers in a protocol-agnostic way. stunnel, HAProxy and some other HTTP proxying software are already