Sean Reifschneider:
> On 03/19/2010 04:38 AM, Wietse Venema wrote:
> > In the mean time, it would help if you could provide verbose (smtpd
> > AND cleanup) logging for a failed session. Please include information
> 
> We're trying to get the logging information.  Versions we've seen this on
> include:
> 
>    postfix-2.5.9
>    postfix-2.5.1
>    pymilter-0.9.3 (with libmilter 8.14)
>    pymilter-0.8.6 (which I believe was against libmilter 8.13)
>    milter protocols: 2, 3, 4, and 6.

I have only one milter change for Postfix 2.5, and that is below
(and that will also included with Postfix 2.5.10 later today). 

This is for a problem that Stephen Warren reported half a year ago
that he ran into with pymilter-0.9.3, and that gave trouble with
SMFIC_HEADER.

        Wietse

20090918

        Bugfix (introduced Postfix 2.3): with Milter RCPT TO replies
        turned off, there was no automatic flush-before-read on the
        smtpd-to-milter stream, because the read was done on the
        cleanup-to-milter stream. Problem reported by Stephen Warren.
        File: milter/milter8.c.

diff -cr /var/tmp/postfix-2.5.9/src/milter/milter8.c 
postfix-2.5.10/src/milter/milter8.c
*** /var/tmp/postfix-2.5.9/src/milter/milter8.c Sat Jul 11 20:28:52 2009
--- postfix-2.5.10/src/milter/milter8.c Mon Oct  5 16:44:48 2009
***************
*** 2528,2533 ****
--- 2528,2540 ----
      if (msg_verbose)
        msg_info("%s: milter %s", myname, milter->m.name);
  
+     /*
+      * The next read on this Milter socket happens in a different process. It
+      * will not automatically flush the output buffer in this process.
+      */
+     if (milter->fp)
+       vstream_fflush(milter->fp);
+ 
      if (attr_print(stream, ATTR_FLAG_MORE,
                   ATTR_TYPE_STR, MAIL_ATTR_MILT_NAME, milter->m.name,
                   ATTR_TYPE_INT, MAIL_ATTR_MILT_VERS, milter->version,

Reply via email to