Parcourir la source

Added procedure to fix the postfix multi-message bug. Included patch

file to patch the postfix sources (version > 2.5).

Created and added version 1.0.0 user tarball.


git-svn-id: https://svn.microneil.com/svn/PKG-SNF-Milter-NIX/trunk@29 1fbf5b0a-5ce9-48cb-b39d-5e57bc359dc0
master
adeniz il y a 15 ans
Parent
révision
f1bca9e401

+ 9
- 0
SNF_Milter_Developer_Package/ChangeLog Voir le fichier

@@ -1,3 +1,12 @@
2009-07-11 Alban Deniz <adeniz@skidmark.localdomain>

* Makefile.am (EXTRA_DIST): Added postfix-multi-message.patch.

* INSTALL: Updated with workaround for the postfix multi-message
bug ("unexpected filter response" when quarantining messages and
when there is more than one message sent over one SMTP
connection).

2009-06-30 Alban Deniz <adeniz@skidmark.localdomain>

* Scripts/snf-milter.openbsd: Removed "$" characters from

+ 35
- 0
SNF_Milter_Developer_Package/INSTALL Voir le fichier

@@ -456,6 +456,41 @@ configured to do what you want.
Integration with postfix
------------------------

**********************************************************************

NOTE--postfix version 2.6.2 and earlier has a bug that causes problems
under the following circumstances:

1) More than one message is received by postfix in one SMTP
connection.

2) One or more of the messages is quarantined.

When this happens, postfix erroneously reports an "unexpected filter
response SMFIR_ADDHEADER after event SMFIC_MAIL" in the mail log, and
then sends a "Service unavailable - try again later" response to the
next MAIL command.

This bug can be fixed by patching the sources for posfix version 2.5
or later. The procedure is:

1) Unpack the postfix sources.

2) Change to src directory in the postfix distribution.

3) Apply the patch:

patch -p0 < patchFile

where patchFile is the file postfix-multi-message.patch in this
directory.

4) Build and install postfix as usual.

**********************************************************************

To integrate SNFMilter with postfix:

1) Edit the postfix configuration file 'main.cf':

a) Specify the communication between SNFMilter and postfix:

+ 2
- 1
SNF_Milter_Developer_Package/Makefile.am Voir le fichier

@@ -32,6 +32,7 @@ EXTRA_DIST = \
$(doc_DATA) \
@PACKAGE_NAME@.spec.in \
Makefile.am \
configure.ac
configure.ac \
postfix-multi-message.patch

DISTCHECK_CONFIGURE_FLAGS=--enable-os-type=OpenBSD

+ 22
- 0
SNF_Milter_Developer_Package/postfix-multi-message.patch Voir le fichier

@@ -0,0 +1,22 @@
--- milter/milter8.c 2009-07-11 07:16:48.000000000 -0400
+++ milter_new/milter8.c 2009-07-11 07:10:06.000000000 -0400
@@ -1292,7 +1292,8 @@
/*
* Decision: quarantine. In Sendmail 8.13 this does not imply a
* transition in the receiver state (reply, reject, tempfail,
- * accept, discard).
+ * 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? */
@@ -1300,7 +1301,8 @@
MILTER8_DATA_BUFFER, milter->buf,
MILTER8_DATA_END) != 0)
MILTER8_EVENT_BREAK(milter->def_reply);
- MILTER8_EVENT_BREAK("H");
+ milter8_def_reply(milter, "H");
+ continue;
/*
* Decision: skip further events of this type.

BIN
snf-milter-1.0.0.tar.gz Voir le fichier


Chargement…
Annuler
Enregistrer