lockf - apply, test or remove a POSIX lock on an open file
SYNOPSIS
#include <sys/file.h>
int lockf(int fd, int cmd, off_t len);
DESCRIPTION
Apply, test or remove a POSIX lock on an open file. The
file is specified by fd. This call is just an interface
for fcntl(2). Valid operations are given below:
F_LOCK Set an exclusive lock to the file. Only
one process may hold an exclusive lock
for a given file at a given time. If the
file is already locked it blocks until
the previous lock is released.
F_TLOCK Same as F_LOCK but never blocks and
return error instead if the file is
already locked.
F_ULOCK Unlock the file.
F_TEST Test the lock: return 0 if fd is unlocked
or locked by this process; return -1, set
errno to EACCES, if another process holds
the lock.
RETURN VALUE
On success, zero is returned. On error, -1 is returned,
and errno is set appropriately.
ERRORS
EAGAIN The file is locked and the LOCK_NB flag was
selected, or operation is prohibited because the
file has been memory-mapped by another process.
EBADF fd is not an open file descriptor.
EDEADLK
Specified lock operation would cause a deadlock.
EINVAL An invalid operation was specified in fd.
ENOLCK Too many segment locks open, lock table is full.
CONFORMING TO
SYSV
fcntl(2), flock(2). There are also locks.txt and manda
tory.txt in /usr/src/linux/Documentation.
Man(1) output converted with
man2html