/usr/local/etc/rc.d/spamass-milter.sh is wrong: "${DAEMON}" -p "${SOCKET}" -f & echo $! > "${PIDFILE}" $! is the PID of the last command that /bin/sh put into background. But since spamass-milter forks itself (-f option) this is *not* the PID of the running spamass-milter process. Hence the PID file contains the PID of a nonexistant process and cannot be used to stop spamass-milter. Fix: Use the ./spamass-milter.sh script that is included already in the distribtution. Alternatively, apply the following patch, which will not create a PID file:
State Changed From-To: open->closed Committed, thanks!