One of the problems I see below is that the FROMSIG has embedded quotes,
which may cause problems with its subsequent usage _within_ quotes.
Also, it is difficult to tell from your mail how your file actually
exists, but since the input had all leading blanks removed, the
continuations look bad.
From your text below:
| formail -rI"From: $FROMSIG"\
-I"Reply-To: $MY_ADDR"\
-I"Subject: Re: $SUBJ"\
-I"Precedence: junk"\
-I"X-Loop: $MY_ADDR"
which is *not* the same as:
| formail -rI"From: $FROMSIG" \
-I"Reply-To: $MY_ADDR" \
-I"Subject: Re: $SUBJ" \
-I"Precedence: junk" \
-I"X-Loop: $MY_ADDR"
*BE SURE* to have blanks between the command arguments of "formail".
Examine the LOG output for the "formail" invocation. Look at the
arguments, which are separated with commas. Notice that formail has
exactly _one_ argument, when it should have five.
> procmail: Executing "formail,-rIFrom: FROMSIG"The Mailer-Daemon of
blgroup" <blgroup>}-IReply-To: <blgroup>}-ISubject: Re: -IP
recedence: junk-IX-Loop: <blgroup>}"
G'luck.
+--------------------------+-------------------------------+
| Alan Stebbens | Silicon Graphics, Inc. (SGI) |
| Email: stebbens(_at_)sgi(_dot_)com | M/S: 9L991 |
| Voice: (415) 933-6437 | 2011 N. Shoreline Blvd. |
| Fax: (415) 933-0785 | Mountain View, CA, 94043-1389 |
+--------------------------+-------------------------------+
Andy and others:
BTW, who is "Andy"?
I retreived a copy of your procmail library to learn how to send
autoreply files. My attempt isn't working perfectly, so I'd appreciate
some help from more experienced users. It is suppose to send a file back
as a reply if it receives a message with "send coupon" as the subject.
Currently, it executes, but it is winding up in dead.letter about 30 tries.
I have attached a copy of the command file and a copy of the log file:
Your help is greatly appreciated,
Patty Buchanan
reply-file.rc
:0
* ? test -f commands.rc.log
{OLDCMDLOGFILE=$LOGFILE
LOGFILE=/$HOME/commands.rc.log
LOGABSTRACT=all
VERBOSE=yes}
:0
* ^Subject: .*['"]?\/\
(send|get) + (coupon)
* ! ^FROM_DAEMON
* $ ! ^X-Loop: $MY_ADDR
COMSAT=off
DELIVERED=yes
:0 c:
* LOGFILE ?? commands\.rc\.log
commands.requests
SUBJ=$MATCH
:0
* ! ^Reply-to: *\/[^ ].*
* ! ^From: *\/[^ ].*
* ! ^Sender: *\/[^ ].*
* ! ^From *\/[^ ]+
{ FROM=nobody }
:0E
{ FROM=$MATCH }
FROMSIG="${FROMSIG-\"The Mailer-Daemon of $USER\" <$USER>}"
MY_ADDR="${MY_ADDR:-<$USER>}"
COMMANDLOG=${COMMANDLOG:-commands.log}
:0 fhw
| formail -rI"From: $FROMSIG"\
-I"Reply-To: $MY_ADDR"\
-I"Subject: Re: $SUBJ"\
-I"Precedence: junk"\
-I"X-Loop: $MY_ADDR"
:0 fbw
| echo "This message was sent automatically in response to your recent" ; \
echo "mail with the subject: \"$SUBJ\"." ; \
echo ""
:0
* SUBJ ?? coupon
{
REPLYFILE=$HOME/coupon/coupon-list
INCLUDERC=$HOME/.procmail/comm-reply-file.rc
}
:0 cw
* > 1
! -oi -t
LOGABSTRACT=off
:0 hw: $COMMANDLOG$LOCKEXT
| echo "`date` : $FROM : $SUBJ" >> $COMMANDLOG
HOST=end_of_processing
}
:0
* LOGFILE ?? commands\.rc\.log
{ LOGFILE=$OLDCMDLOGFILE
LOGABSTRACT=yes
VERBOSE=no
}
SHAR_EOF
The log file commands.rc.log
procmail: Assigning "LOGABSTRACT=all"
procmail: Assigning "VERBOSE=yes}"
procmail: No match on "^Subject: .*['"]?\/(send|get) + (coupon)"
procmail: Assigning "DELIVERED=yes"
procmail: No match on "LOGFILE ?? commands\.rc\.log"
procmail: Assigning "SUBJ="
procmail: Match on ! "^Reply-to: *\/[^ ].*"
procmail: Match on ! "^From: *\/[^ ].*"
procmail: Match on ! "^Sender: *\/[^ ].*"
procmail: Match on ! "^From *\/[^ ]+"
procmail: Assigning "FROM=nobody"
procmail: Skipped "E"
procmail: Assigning "FROM="
procmail: Assigning "FROMSIG=FROMSIG"The Mailer-Daemon of blgroup" <blgroup>}"
procmail: Assigning "MY_ADDR=<blgroup>}"
procmail: Assigning "COMMANDLOG=LOGcommands.log}"
procmail: Executing "formail,-rIFrom: FROMSIG"The Mailer-Daemon of blgroup"
<blgroup>}-IReply-To: <blgroup>}-ISubject: Re: -IP
recedence: junk-IX-Loop: <blgroup>}"
formail: formail: No such file or directory
procmail: Program failure (1) of "formail"
procmail: Rescue of unfiltered data succeeded
procmail: Executing " echo "This message was sent automatically in response
to your recent" ; \
echo "mail with the subject: \"$SUBJ\"." ; \
echo """
Unmatched ".
procmail: Program failure (1) of " echo "This message was sent automatically
in response to your recent" ; \
echo "mail with the subject: \"$SUBJ\"." ; \
echo """
procmail: Rescue of unfiltered data succeeded
procmail: No match on "SUBJ ?? coupon"
procmail: Match on "> 1"
procmail: Executing "/usr/lib/sendmail,-oi,-t"
procmail: Assigning "LASTFOLDER=/usr/lib/sendmail -oi -t"
procmail: Assigning "LOGABSTRACT=off"
procmail: Locking "LOGcommands.log}.lock"
procmail: Executing " echo "`date` : $FROM : $SUBJ" >> $COMMANDLOG"
LOGcommands.log}: No such file or directory
procmail: [15770] Thu Apr 25 10:46:52 1996
procmail: Program failure (1) of " echo "`date` : $FROM : $SUBJ" >>
$COMMANDLOG"
procmail: Assigning "LASTFOLDER= echo "`date` : $FROM : $SUBJ" >> $COMMANDLOG"
procmail: Unlocking "LOGcommands.log}.lock"
procmail: Assigning "HOST=end_of_processing"
procmail: HOST mismatched "mail6"
procmail: Notified comsat: "blgroup@: echo "`date` : $FROM : $SUBJ" >>
$COMMANDLOG"
procmail: Assigning "LOGABSTRACT=all"
procmail: Assigning "VERBOSE=yes}"
procmail: No match on "^Subject: .*['"]?\/(send|get) + (coupon)"
procmail: Assigning "DELIVERED=yes"
procmail: No match on "LOGFILE ?? commands\.rc\.log"
procmail: Assigning "SUBJ="
procmail: Match on ! "^Reply-to: *\/[^ ].*"
procmail: Match on ! "^From: *\/[^ ].*"
procmail: Match on ! "^Sender: *\/[^ ].*"
procmail: Match on ! "^From *\/[^ ]+"
procmail: Assigning "FROM=nobody"
procmail: Skipped "E"
procmail: Assigning "FROM="
procmail: Assigning "FROMSIG=FROMSIG"The Mailer-Daemon of blgroup" <blgroup>}"
procmail: Assigning "MY_ADDR=<blgroup>}"
procmail: Assigning "COMMANDLOG=LOGcommands.log}"
procmail: Executing "formail,-rIFrom: FROMSIG"The Mailer-Daemon of blgroup"
<blgroup>}-IReply-To: <blgroup>}-ISubject: Re: -IP
recedence: junk-IX-Loop: <blgroup>}"
formail: formail: No such file or directory
procmail: Program failure (1) of "formail"
procmail: Rescue of unfiltered data succeeded
procmail: Executing " echo "This message was sent automatically in response
to your recent" ; \
echo "mail with the subject: \"$SUBJ\"." ; \
echo """
Unmatched ".
procmail: Program failure (1) of " echo "This message was sent automatically
in response to your recent" ; \
echo "mail with the subject: \"$SUBJ\"." ; \
echo """
procmail: Rescue of unfiltered data succeeded
procmail: No match on "SUBJ ?? coupon"
procmail: Match on "> 1"
procmail: Executing "/usr/lib/sendmail,-oi,-t"
procmail: Assigning "LASTFOLDER=/usr/lib/sendmail -oi -t"
procmail: Assigning "LOGABSTRACT=off"
procmail: Locking "LOGcommands.log}.lock"
repeated 30 more times for each attempt.