You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Noah <ad...@enabled.com> on 2008/01/08 08:29:00 UTC

auto-whitelist file failed: locker: safe_lock: cannot create tmp lockfile

Hi there list,

I installed the following spamassasin proggies on my FreeBSD machine and 
receiving an error "auto-whitelist file failed: locker: safe_lock: 
cannot create tmp lockfile"

Any clues what I am doing wrong?


# pkg_info | grep Spam
p5-Mail-SpamAssassin-3.2.3 A highly efficient mail filter for 
identifying spam
spamass-milter-0.3.1_3 Sendmail Milter (mail filter) plugin for SpamAssassin



Jan  7 23:25:42 blah spamd[62451]: auto-whitelist: open of 
auto-whitelist file failed: locker: safe_lock: cannot create tmp 
lockfile 
/nonexistent/.spamassassin/auto-whitelist.lock.blah.domain.com.62451 for 
/nonexistent/.spamassassin/auto-whitelist.lock: No such file or directory

Cheers,
Noah

Re: auto-whitelist file failed: locker: safe_lock: cannot create tmp lockfile

Posted by Matt Kettler <mk...@verizon.net>.
Noah wrote:
> Hi there list,
>
> I installed the following spamassasin proggies on my FreeBSD machine 
> and receiving an error "auto-whitelist file failed: locker: safe_lock: 
> cannot create tmp lockfile"
>
> Any clues what I am doing wrong?
>
>
> # pkg_info | grep Spam
> p5-Mail-SpamAssassin-3.2.3 A highly efficient mail filter for 
> identifying spam
> spamass-milter-0.3.1_3 Sendmail Milter (mail filter) plugin for 
> SpamAssassin
>
>
>
> Jan  7 23:25:42 blah spamd[62451]: auto-whitelist: open of 
> auto-whitelist file failed: locker: safe_lock: cannot create tmp 
> lockfile 
> /nonexistent/.spamassassin/auto-whitelist.lock.blah.domain.com.62451 
> for /nonexistent/.spamassassin/auto-whitelist.lock: No such file or 
> directory

My guess is you're using spamd, and spamc is being called as root with 
no -u parameter by spamasss-milter.. This tells spamd to scan mail on 
behalf of the user root, but for safety, spamd will never do that. So, 
it setuid's itself to nobody, which probably has a home directory of 
/nonexistent/. (and the user nobody should not have a writable home 
directory, so don't try to fix this by giving it one. You'll degrade 
your system security if you do)

Alternatively, you're explicitly specifying a user like nobody which has 
/nonexistent/ as a home directory. (you can check /etc/passwd to see who 
has this home directory).

To fix it, check your spamass-milter config and pass a user id after -u 
to spamass-milter that has a real home directory. From what I know of 
spamass-milter, it should pass this userid on to spamd.