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 <[EMAIL PROTECTED]> 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@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"]
["[EMAIL PROTECTED]","[EMAIL PROTECTED]"] {
fileinto "INBOX.Discussions.Cyrus";
        stop;
}

vacation
        :addresses "[EMAIL PROTECTED]"
        :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  [EMAIL PROTECTED]




Reply via email to