"Monique Y. Herman" <[EMAIL PROTECTED]> writes:

> This seems to happen to any message with a return-path of <> ... bug
> or feature?

Bug, and one that will probably only surface under Exim 3.x.  I've
attached a patch that fixes this.  I will probably release 1.0.3
within a couple days with this fix.  Thanks.

Index: Util.py
===================================================================
RCS file: /cvsroot/tmda/tmda/TMDA/Util.py,v
retrieving revision 1.110.2.2
retrieving revision 1.110.2.4
diff -u -r1.110.2.2 -r1.110.2.4
--- Util.py	25 Jan 2004 18:25:31 -0000	1.110.2.2
+++ Util.py	18 Feb 2004 21:05:56 -0000	1.110.2.4
@@ -565,6 +565,26 @@
     envsender is the envelope sender address.
     """
     import Defaults
+    # Sending mail with a null envelope sender address <> is not done
+    # the same way across the different supported MTAs, nor across the
+    # two mail transports (SMTP and /usr/sbin/sendmail).
+    #
+    # The most common method is to use the string '<>'.  There are two
+    # exceptions where an empty string must be used instead.
+    #
+    # 1) When running qmail/courier and using the sendmail transport.
+    # qmail munges the envelope sender address into <"<>"@domain.dom
+    # if "sendmail -f <>" is used.
+    #
+    # 2) When running Postfix and using the sendmail transport.
+    # Old versions of Postfix apparently also have trouble with
+    # "sendmail -f <>", though Postfix 2.0.x does not.
+    if envsender == '':
+        envsender = '<>'
+    if envsender == '<>' and \
+           Defaults.MAIL_TRANSFER_AGENT in ('postfix', 'qmail') and \
+           Defaults.MAIL_TRANSPORT == 'sendmail':
+        envsender = ''
     if Defaults.MAIL_TRANSPORT == 'sendmail':
         # You can avoid the shell by passing a tuple of arguments as
         # the command instead of a string.  This will cause the
Index: Defaults.py
===================================================================
RCS file: /cvsroot/tmda/tmda/TMDA/Defaults.py,v
retrieving revision 1.188
retrieving revision 1.188.2.1
diff -u -r1.188 -r1.188.2.1
--- Defaults.py	13 Oct 2003 19:33:24 -0000	1.188
+++ Defaults.py	18 Feb 2004 19:09:35 -0000	1.188.2.1
@@ -315,14 +315,9 @@
 # Example:
 # BOUNCE_ENV_SENDER = "[EMAIL PROTECTED]"
 #
-# Default is an empty envelope sender <>.
+# Default is "<>", a null envelope sender.
 if not vars().has_key('BOUNCE_ENV_SENDER'):
-    if MAIL_TRANSPORT == 'sendmail' and \
-           MAIL_TRANSFER_AGENT in ('qmail', 'postfix'):
-        # qmail/Postfix's /usr/sbin/sendmail doesn't like -f '<>'
-        BOUNCE_ENV_SENDER = ''
-    else:
-        BOUNCE_ENV_SENDER = '<>'
+    BOUNCE_ENV_SENDER = '<>'
 
 # BOUNCE_TEXT_FILTER_INCOMING
 # Text for the failure notice returned to the sender when a 'bounce'
_____________________________________________
tmda-users mailing list ([EMAIL PROTECTED])
http://tmda.net/lists/listinfo/tmda-users

Reply via email to