subfolder delivery with plus addressing, lmtp
Ross Boylan
ross at biostat.ucsf.edu
Mon May 14 16:12:47 EDT 2007
I am delivering mail into subfolders with plus addressing, using lmtp over
Unix domain sockets. I discovered that in order to do this I needed to, e.g.
(in cyradm)
setacl INBOX.comp anyone p
(from a message by Phil Pennock on exim-users 2006-04-22).
Otherwise they end up in the main INBOX.
I thought that delivery by Unix domain sockets was done as an administrator,
and no additional rights would be necessary. Is my understanding of
administrator rights wrong, or is something off about my setup with the
sockets?
The Cyrus IMAP server FAQ says
This submailbox must allow the posting user the 'p' right (generally, this
means 'anyone' must have the 'p' right), otherwise the message will just be
filed into the user's INBOX.
The Overview says
Alternatively you may deliver via LMTP to a unix domain socket, and the
connection will be preauthenticated as an administrative user (and access
control is accomplished by controlling access to the socket).
I'm using exim 4.6.13-7 and cyrus 2.2.13-10 on Debian GNU/Linux; all
operations are on the same machine.
Since I discoverd a few things about how to get this working, this setup info
may be helpful to others with exim + cyrus.
imapd.conf includes
admins: cyrus
exim's config includes the router
imap_user:
debug_print = "R: imap_user for $local_part@$domain"
driver = accept
local_part_suffix_optional = true
local_part_suffix = +*
local_parts = +imap_users
transport = cyrus
with transport
# Deliver to local cyrus IMAP server via LMTP
cyrus:
debug_print = "T: cyrus for $local_part@$domain"
driver = lmtp
delivery_date_add
envelope_to_add
return_path_add
rcpt_include_affixes = yes
user = cyrus
socket = /var/run/cyrus/socket/lmtp
batch_max = 40
When I send a message to ross+comp at localhost the exim log shows
2007-05-14 11:32:31 1HnfLQ-0000GB-Bu => ross+comp <ross+comp at localhost>
R=imap_user T=cyrus
and the cyrus log shows
May 14 11:24:50 corn cyrus/lmtpunix[752]: Delivered:
<200705141124.48089.RossBoylan at stanfordalumni.org> to mailbox: user.ross
I also tried ross+INBOX.comp
When I added the "anyone p" acl shown at the top of the message, this finally
worked.
Ross Boylan
P.S. My original version of the router lacked the suffix options and the
transport lacked the affixes option.
It would be nice if cyradm had a feature allowing recursive setting of acls.
More information about the Info-cyrus
mailing list