Re: [exim] dealing with LMTP errors

Top Page
Delete this message
Reply to this message
Author: Phil Pennock
Date:  
To: Ross Boylan
CC: exim
Subject: Re: [exim] dealing with LMTP errors
On 2011-09-19 at 17:32 -0700, Ross Boylan wrote:
> I am getting non-spam emails that fail delivery over LMTP to Cyrus IMAP.
> Most likely the cause is lines that are too long (though it could also
> be embedded NULLs).
>
> I would appreciate suggestions about how to handle this, assuming I'm
> stuck with Cyrus's behavior.*


Cyrus imapd.conf:
  reject8bit:             no
  munge8bit:              no


Those should be sufficient.

Other advice on integration:

If you're using +addressing with Exim's:
local_part_suffix = +*
local_part_suffix_optional
then put "rcpt_include_affixes" on the LMTP-invoking Transport (whether
smtp or lmtp driver) to pass the +address on to Cyrus; then the
"imapmagicplus: yes" imapd.conf setting will let you grant "anyone" the
"p" permission on "foobar" (as a child of INBOX) and you can have
auto-delivery into that folder for mail going to you+foobar.

I actually use these options on the Transport, besides driver & socket:

envelope_to_add
user = cyrus
group = cyrus
rcpt_include_affixes
headers_remove = "lines"
headers_add = "Lines: $body_linecount"

The Lines: header makes mutt's index view able to show how large a mail
is without first needing to retrieve the body.

(And, personally, I tell cyrus to use "skiplist" or "flat" for all DB
types, because I got fed up with debugging yet more bdb
self-incompatibilities with upgrades and whether or not db_upgrade
would actually work).

-Phil