Alban Deniz:
> Hi Wietse,
> 
> Yes, the problem does go away when I run a version of SNFMilter that never 
> invokes smfi_quarantine().  I sent 1230 emails to postfix integrated with my 
> milter with no problem.
> 
> Also, when I did invoke smfi_quarantine(), the problem occurred after 12 
> messages.
> 
> What can I do to help fix this?

Try this patch. It applies to Postfix 2.5 and later.

        Wietse

*** ./milter8.c-        Wed May  6 15:01:43 2009
--- ./milter8.c Fri Jul 10 16:10:24 2009
***************
*** 1296,1302 ****
            /*
             * Decision: quarantine. In Sendmail 8.13 this does not imply a
             * transition in the receiver state (reply, reject, tempfail,
!            * accept, discard).
             */
        case SMFIR_QUARANTINE:
            /* XXX What to do with the "reason" text? */
--- 1296,1303 ----
            /*
             * Decision: quarantine. In Sendmail 8.13 this does not imply a
             * transition in the receiver state (reply, reject, tempfail,
!            * accept, discard). We should not transition, either, otherwise
!            * we get out of sync with multi-message deliveries.
             */
        case SMFIR_QUARANTINE:
            /* XXX What to do with the "reason" text? */
***************
*** 1304,1310 ****
                                  MILTER8_DATA_BUFFER, milter->buf,
                                  MILTER8_DATA_END) != 0)
                MILTER8_EVENT_BREAK(milter->def_reply);
!           MILTER8_EVENT_BREAK("H");
  
            /*
             * Decision: skip further events of this type.
--- 1305,1312 ----
                                  MILTER8_DATA_BUFFER, milter->buf,
                                  MILTER8_DATA_END) != 0)
                MILTER8_EVENT_BREAK(milter->def_reply);
!           milter8_def_reply(milter, "H");
!           continue;
  
            /*
             * Decision: skip further events of this type.

Reply via email to