procmail
[Top] [All Lists]

Global mail filtering turned off after latest version installed

1999-04-07 10:08:37
I just upgraded from the FreeBSD "port" of procmail, which was back at something like 3.11pre7, to 3.13.1. Immediately, global mail filtering stopped working. I need to know why, and how to fix this. My problem may reflect a need for a new variable option in the Makefile.

The target system is running FreeBSD 2.2.8. Before I installed 3.13.1, I had configured Sendmail to use procmail 3.11pre7 as the local delivery agent. The global mail filtering recipes were invoked by /usr/local/etc/procmailrc, and I used John Hardin's security scripts to trap mail that might contain Trojan horses or viruses. /usr/local/etc/procmailrc looked like this:

DROPPRIVS=YES
LOGFILE=/dev/null
PATH="/usr/bin:$PATH"
SHELL=/bin/sh
POISONED_EXECUTABLES=/etc/procmail/poisoned
SECURITY_NOTIFY=
SECURITY_NOTIFY_VERBOSE="brett"
SECURITY_QUARANTINE=/dev/null
INCLUDERC=/etc/procmail/html-trap.procmail
SECURITY_NOTIFY=
SECURITY_NOTIFY_VERBOSE=
SECURITY_QUARANTINE=

This worked properly, filtering out Trojans before they reached users.

When I heard about the potential buffer overflow problems in the version I was using, I downloaded and compiled procmail 3.13.1 using the process described in the README, changing the variable BASENAME in the original Makefile from /usr to /usr/local. (FreeBSD's convention is to put executables which aren't part of the original OS distribution in /usr/local/bin, man pages in /usr/local/man, etc.)

I then installed in the default manner, using make suid-install to set the default permissions.

After the install, global mail filtering stopped working, as if /usr/local/etc/procmailrc no longer existed. I copied the same configuration file to /etc/procmailrc; still no global filtering. (Filtering from users' $HOME/.procmailrc files does seem to work, though.)

What went wrong? Did changing BASENAME cause procmail to look somewhere else for the global procmailrc file (maybe a weird path such as /usr/local/usr/local/etc/procmailrc)?

Please let me know if you can spot the problem from this information. Also, it might be a good idea to create a variable in the Makefile that lets one choose the location of the global procmailrc file. That way, one could be sure that one was placing it in the right spot, and adapt it to different operating system conventions.

--Brett Glass