Hello Willy,
> Hativ, if I send you a patch to test next week, is it possible to
> give
> it a try on your side ? I'm interested in knowing if a clean "LOCAL"
> connection works fine with Dovecot. If so then in parallel we can
> file
> a report on Dovecot to make their parser more robust but at least
> we'd
> have a longterm solution that doesn't affect deployed servers.

I didn't get a patch so far.
Am Samstag, den 04.04.2020, 14:17 +0200 schrieb Willy Tarreau:
> On Sat, Apr 04, 2020 at 01:49:06PM +0200, Tim Düsterhus wrote:
> > > Do you think we ought to refrain from sending any address at all
> > > ?I preferred to avoid possibly visible changes and apparently it
> > > didn'tgo that well :-/
> > 
> > Based on a strict reading of the proxy protocol definition Dovecot
> > iswrong here:
> > > The receiver must accept this connection as valid and must use
> > > thereal connection endpoints and discard the protocol block
> > > including thefamily which is ignored.
> 
> Sure but one component being wrong doesn't deserve being broken by
> aunilateral change :-/
> > To my understanding the TLV are part of the protocol block, because
> > theywere bolted onto the proxy protocol v2 after the fact in
> > commitafb768340c9d7e50d8e7372051c8a9c3b3f2151c(
> > https://github.com/haproxy/haproxy/commit/afb768340c9d7e50d8e7372051c8a9c3b3f2151c).I
> > also notice that this commit made an incompatible change to
> > proxyprotocol v2 1.5 years after the initial specification (however
> > bothduring the 1.5 development cycle).
> 
> Yes TLVs were added after the initial v2 spec.
> > However HAProxy violates a should:
> > > When a sender presents aLOCAL connection, it should not present
> > > any address so it sets this field tozero.
> 
> So that fuels the fact that we should definitely get rid of
> theseaddresses and we should possibly expect less breakage by doing
> so.
> > My conclusion is that the proxy protocol v2 definition is not
> > superclear with regards to TLV. I assume that is because they were
> > notinitially part of the specification. Not sending an explicit
> > length forthe address and instead only a length for address + TLV
> > is non-ideal.Another case in point: My bugfix for the TLV parsing
> > that ignored thelength of the proxy header, because each TLV had
> > its own length.
> 
> So I think that I'll revert the fix from stable branches, becauseit
> was meant to address bug #511 which is not that important. And
> inmaster we'd instead send a real, naked LOCAL request that
> complieswith the rule above.
> Hativ, if I send you a patch to test next week, is it possible to
> giveit a try on your side ? I'm interested in knowing if a clean
> "LOCAL"connection works fine with Dovecot. If so then in parallel we
> can filea report on Dovecot to make their parser more robust but at
> least we'dhave a longterm solution that doesn't affect deployed
> servers.
> Thanks!Willy
-- 
Greetings

Hativ

Reply via email to