Determining deliverability

Pat Lashley patl+cyrus at volant.org
Sat Jul 12 05:49:14 EDT 2003


I've been using Cyrus with Exim for several years now; and am, in
general quite happy with the combination.  I'm currently upgrading
a couple of systems to more current versions; and would really like
to clean up a few of the kluges I've been using.

In particular, is there any clean method for an MTA like exim to
determine whether a given local part is deliverable via the Cyrus
lmtpd?  (Or, more accurately, would it be deliverable if sieve
were turned off and there are no problems with quotas, etc.)
I am particularly interested in being able to do so with local
parts which contain detail notation for submailboxes.  (E.g.,
'patl+cyrus.users')

My emphasis here is on 'clean'.  I'm currently using two routers
which convert the local part to a file path.  (One to try the full
detailed local part, one with only the user part.)  It has two
problems.  One is that as implemented, it only works with a single
partition.  (Not an issue for me.)  The other is that it requires
far too much knowlege of Cyrus' implementation details.

I've seen the example that uses a lookup to directly access the
mailboxes.db file.  It also requires knowlege of Cyrus' implementation
details; and it doesn't work with skiplists (no support in exim).



The easiest generic solution would probably be a utility that
took a local part (including optional detail) as a command-line
parameter and returned success if it is a deliverable address;
and failure if not.

Possibly also an option to print to stdout the portion of the
address that matched.  If the whole address matched, it would be
returned; if trailing  from the detail weren't matched.  (E.g.,
If I have the  user.patl.cyrus, but not user.patl.cyrus.users;
and pass the utility 'patl+cyrus.users'; it would return success
and the string 'patl+cyrus'.)

It might also be useful to have an option that would make the printed
output be the translated mailbox name.  (E.g., Instead of 'patl+cyrus'
it would return 'users.patl.cyrus' or 'users/patl/cyrus' depending
on the heirarchy separator.)



Thanks,
-Pat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : https://lists.andrew.cmu.edu/mailman/private/info-cyrus/attachments/20030712/fd172025/attachment.bin


More information about the Info-cyrus mailing list