Sieve Vacation not working
Michael Bacon
baconm at oit.duke.edu
Wed Oct 23 13:28:40 EDT 2002
The problem is that vacation absolutely has to have the envelope sender, or
it won't know who to send it to. If you're using LMTP, this isn't a
problem, but if you're going through procmail, it is. You have to tell
sendmail to add a command line option in that instance. For us, it goes
something like this:
Mcyrus, P=/usr/procmail/procmail, F=lsDFMnqA5@, S=10, R=20/40,
T=X-Unix,
U=cyrus:mail,
A=procmail -Y -m /usr/procmail/procmailrc $u $h $g
And then at the end of the procmail file, we deliver as follows:
TRAP="/var/cyrus/bin/deliver -r \"$3\" -m $2 -- $1"
You have to figure out how to get the envelope sender ($g in your
delivering rule in the sendmail.cf) to the -r flag to deliver. If you get
there, vacation should work.
Michael
--On Wednesday, October 23, 2002 12:10:05 -0500 Eric Minto
<eric at studiesabroad.com> wrote:
> I know this has been discussed several times on this list, but I have an
> additional wrench to add to the problem:
>
> Sieve works perfectly for all functions except for vacation. We are
> using sendmail as the MTA, Cyrus as the IMAP server, and procmail to
> process some advanced SPAM filtering. Many would ask: "Why not use the
> vacation functionality in procmail?" We already use our own web-based
> interface to generate the sieve scripts, and for various security
> reasons, we want the vacation function to be handled by sieve, not
> procmail.
>
> At one time, the vacation reply *did* execute, but it tried to send the
> reply to root at unspecified-domain. But now, using the config below,
> nothing happens.
>
> Here are the relevant lines from config files:
>
> from sendmail.cf
>##################################################
>### Cyrus Mailer specification ###
>##################################################
>
>##### $Id: cyrus.m4,v 8.23 2001/11/12 23:11:34 ca Exp $ (Carnegie Mellon)
>##### #####
>
> Mcyrus, P=/usr/bin/procmail, F=lsDFMnPqSA5@|:/w, S=EnvFromL,
> R=EnvToL/HdrToL, M=50000000, U=cyrus:mail,
> T=DNS/RFC822/X-Unix,
> A=procmail -Y -m /etc/mail/procmailrules/procmail.global
> $u $h
>
> Mcyrusbb, P=/usr/bin/procmail, F=lsDFMnPS, S=EnvFromL,
> R=EnvToL/HdrToL, M=50000000, U=cyrus:mail,
> T=DNS/RFC822/X-Unix,
> A=procmail -Y -m /etc/procmailrules/procmail.global $u $h
>
>
> from sendmail.mc
> include(`/usr/share/sendmail-cf/m4/cf.m4')
> VERSIONID(`Red Hat Linux with cyrus')dnl
> OSTYPE(`linux')
> define(`confTRUSTED_USER', `cyrus')
> define(`confLOCAL_MAILER', `cyrus')
> define(`confDOMAIN_NAME',`studiesabroad.com')dnl
> define(`confDEF_USER_ID',``cyrus:mail'')dnl
> define(`confNO_RCPT_ACTION', `add-to-undisclosed')
> define(`CYRUS_MAILER_FLAGS',`SA5@|:/w')
> define(`CYRUS_MAILER_PATH',`/usr/bin/procmail')
> define(`CYRUS_MAILER_USER',`cyrus:mail')
> define(`CYRUS_MAILER_ARGS',`procmail -Y -m
> /etc/mail/procmailrules/procmail.global $u $h')
> define(`CYRUS_MAILER_MAX',`50000000')
> define(`CYRUS_BB_MAILER_FLAGS',`S')
> define(`CYRUS_BB_MAILER_ARGS',`procmail -Y -m
> /etc/procmailrules/procmail.global $u $h')
> define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl
> FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
> MAILER(`local')
> MAILER(`smtp')dnl
> MAILER(`cyrus')
> dnl MAILER(procmail)dnl
> dnl MAILER_DEFINITIONS
> dnl Mcyrus, P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n,
> dnl S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
> dnl A=FILE /var/imap/socket/lmtp
>
>
> from default (sieve script)
> require ["fileinto", "reject", "vacation", "envelope", "imapflags",
> "subaddress"];
>
> if header :contains ["to","cc"]
> ["info-cyrus at lists.andrew.cmu.edu","info-cyrus at andrew.cmu.edu"] {
> fileinto "INBOX.Discussions.Cyrus";
> stop;
> }
>
> vacation
> :addresses "eric at studiesabroad.com"
> :days 1
> :subject "Thank You for your email"
> "Thank you for your email. I will respond as soon as I can.";
>
>
> Any help is greatly appreaciated.
>
> --
> Eric Minto
> International Studies Abroad eric at studiesabroad.com
>
>
>
More information about the Info-cyrus
mailing list