Hello,
I just noticed a problem on our servers .. If I send myself a bounce, like this:
| [en@mailserver ~]$ telnet localhost 25 | Trying 127.0.0.1... | Connected to localhost.localdomain (127.0.0.1). | Escape character is '^]'. | 220 mailserver ESMTP Postfix | helo foo | 250 mailserver | mail from: <> | 250 2.1.0 Ok | rcpt to: my@mail.address.tld | 250 2.1.5 Ok | data | 354 End data with <CR><LF>.<CR><LF> | testing | . | 250 2.0.0 Ok: queued as 673072767C | quit | 221 2.0.0 Bye | Connection closed by foreign host.
Then the resulting mail message I get, has this header:
| Return-Path: <MAILER-DAEMON> | Delivered-To: my@mail.address.tld | Received: from foo (localhost.localdomain [127.0.0.1]) | by mailserver (Postfix) with SMTP id 673072767C | for <my@mail.address.tld>; Wed, 11 Jul 2007 13:36:07 +0200 (CEST) | Message-Id: <20070711113611.673072767C@mailserver> | Date: Wed, 11 Jul 2007 13:36:07 +0200 (CEST) | From: MAILER-DAEMON | To: undisclosed-recipients:;
It seems that postfix changes the return-path, and I dont see why it would do something like that.
The bounce is not a bounce anymore, and if a user fetches the mail with e.g. fetchmail, and it cannot be delivered, then the bounce will be bounced, to MAILER-DAEMON ..
My master.cf entry looks like this:
dovecot unix - n n - - pipe flags=DRhu user=atmail:atmail argv=/usr/local/dovecot/libexec/dovecot/deliver -d ${recipient}
If I add null_sender= , then that resolves it:
dovecot unix - n n - - pipe flags=DRhu user=atmail:atmail null_sender= argv=/usr/local/dovecot/libexec/dovecot/deliver -d ${recipient}
What do other postfix/dovecot-users do? Will this change break anything? I cannot see why empty null_sender isn't default .. so I'm wondering if there is something I've missed.
Should we update the examples on http://wiki.dovecot.org/LDA/Postfix to include empty null_sender?
-- Erland Nylend