Hello everybody,
First of all. I am using Procmail v3.11pre4, which I just
recently updated from v3.10. I'm running it on Unixware v2.03.
My company has several accounts setup for customer requests,
which are then automatically forwarded to one account. Thus, saving
time going through all the seperate accounts, but still showing the
original account the mail was addressed to. So far very simple.
Last year when I started setting up procmail, I didn't know much
about the configuration of it and just used whatever example I came
across. Here begins my problem. Whatever I did then, I can't get rid
off now. Somehow one forwarding script is overruling my other procmail
sripts, and won't allow any changes. Even after changing all the
.procmailrc scripts in all accounts, it has no effect, and the mail
is forwarded to the previous set destination. I turned verbose on in
the new scripts, but to no effect. No logs are generated. It looks
like the .procmailrc isn't even executed. And yes, I tried several
.forward sripts as suggested in the filtering-faq. Another weird effect is,
that when I checked the incoming mail directory some user account
mail files were missing, or the existing ones didn't show any recent
activity, meaning they had an old date, even though those accounts
just recently received mail, which then was processed and forwarded
to the old designated account.
I must add, this problem doesn't occur with all accounts. Some
accept changes, some don't. I use the same script in all of them. I
don't know if this is a Unix or procmail problem. One cause I came up
with is there might be a problem with the lockfile mechanism. But I
don't know how to check that out. As I said above, when I installed
procmail, I put the same script in every account, only modifying the
proper home directory, but I didn't change the location of the
lockfile. Maybe because the lockfile location was the same, things
got messed up.
-------------------------------------------------------------------------------
Following is the old .procmailrc script:
# Please check if all the paths in PATH are reachable, remove the ones
# that are not.
PATH=$HOME:/usr/bin:/usr/ucb:/bin:/usr/local/bin:./
MAILDIR=/var/mail # You'd better make sure it exists
DEFAULT=/var/mail/develop
LOGFILE=/Mail/from
LOCKFILE=/.lockmail
:0
* ^From.*
{
:0
! xxx(_at_)xxx(_dot_)com
}
# Anything that has not been delivered by now will go to $DEFAULT
# using LOCKFILE=$DEFAULT$LOCKEXT
LOCKFILE # removes any preexisting lockfile
LOG='lockfile $DEFAULT$LOCKEXT'
TRAP="rm -f $DEFAULT$LOCKEXT"
:0
$DEFAULT
----------------------------------------------------------------------------
Following is the new much simplified.procmailrc script:
#Set on when debugging
VERBOSE=on
#Replace 'mail' with your mail directory (Pine uses mail, Elm uses
#Mail)
MAILDIR=/var/mail/
#Dirctory for storing procmail log and rc files
PMDIR=$HOME/.procmail
LOGFILE=$PMDIR/log
INCLUDERC=$PMDIR/rc.maillists
This is the called rc.maillists file:
:0
* ^Subject:.*test
! xxx(_at_)xxx(_dot_)com
-------------------------------------------------------------------------
I welcome any suggestions that can help me solve this problem. I'm at
the end of my wisdom.
TIA,
Stefan