file locking

Matthias Andree matthias.andree at stud.uni-dortmund.de
Mon Sep 16 20:37:43 CEST 2002


On Mon, 16 Sep 2002, Adrian Otto wrote:

> Boris,
> 
> I wrote the file-level locking code. Matthias is right. If you want locking
> to work over NFS then you must use the fcntl locking. Currently the right
> way to do this is to edit config.h as he suggested. If you are using a
> system that does not have support for fcntl locks then the system won't lock
> the files at all. Obviously, if this happens, then concurrent file access is
> not safe. If you do have it, then HAVE_FCNTL will already be set to 1 after
> running "configure". If it's set to 0, then you may not be able to lock
> files properly over NFS. Also, make sure that you are running a correct
> lockd configuration. Check your NFS documentation to find out how to do
> this.
> 
> It might be better for me to make the GNU configure script smarter so that
> at compile time a --with-nfs-locks argument will cause the HAVE_FLOCK and
> HAVE_LOCKF to undef'ed and make HAVE_FCNTL defined if the system supports
> it. I can have the configure script fail if you use this option on a system
> that does not support fcntl locking for some reason. I'm putting this into
> the TODO file.

Talking of making configure.in smarter: is there any particular reason
why it's AC_EGREP_HEADER(lockf, [sys/file.h], AC_DEFINE(HAVE_LOCKF)) ...
rather than just AC_CHECK_FUNCS(lockf flock fcntl)?

For summay digest subscription: bogofilter-digest-subscribe at aotto.com



More information about the Bogofilter mailing list