Hi, In <20100321010757.a9eb21f3...@spike.porcupine.org> "Re: [PATCH] support milter protocol 6 and 2 negotiation" on Sat, 20 Mar 2010 21:07:57 -0400 (EDT), Wietse Venema <wie...@porcupine.org> wrote:
> Wietse Venema: >> Kouhei Sutou: >> > Hi, >> > >> > Postfix 2.7.0 supports milter protocol 2, 3, 4 and >> > 6. Postfix with milter_protocol=6 accepts a connection from >> > a milter that uses milter protocol 2. But its milter session >> > is broken because Postfix sends SMFIC_DATA event to the >> > milter. In milter protocol 2, SMFIC_DATA isn't supported. So >> >> As documented, the Postfix Milter protocol version must match the >> application Milter protocol version. >> >> You can patch glitches as you discover them, but that is not the >> same as making sure that different versions will always inter-operate. > > I have looked into this further, and it appears that at least recent > libmilter versions allow this. > > This is, however, a change from documented Postfix behavior, so it > needs some further testing. I have added some extra sanity checks, > for example, the code won't break for future protocol versions > 9, > it warns when it can't figure out what protocol elements to turn > off, and it only executes when the remote application uses a lower > protocol version than Postfix. I tried your patch. It also works well on my environment that uses Postfix (protocol 6) and milter (protocol 2). I'm happy that the patch is applied to the official Postfix release. Thanks, -- kou