RFIO_LOCKF
Section: Rfio Library Functions (3)
Updated: $Date: 2005/03/31 13:13:03 $
Index
Return to Main Contents
 
NAME
rfio_lockf - provide record locking on files
 
SYNOPSIS
#include <sys/types.h>
#include "rfio_api.h"
int rfio_lockf (int sd, int op, long siz);
Under Linux, for large files:
#define _LARGEFILE64_SOURCE
#include <sys/types.h>
#include "rfio_api.h"
int rfio_lockf64 (int sd, int op, off64_t siz);
For large files, under other systems:
#include <sys/types.h>
#include "rfio_api.h"
int rfio_lockf64 (int sd, int op, off64_t siz);
 
DESCRIPTION
rfio_lockf
restricts access to regions of files to the calling process.
sd
is the file descriptor returned by a previous
rfio_open.
op
specifies the action to be taken:
- 
- F_ULOCK
- 
unlock a region.
- F_LOCK
- 
lock a region.
- F_TLOCK
- 
test and lock a region.
- F_TEST
- 
test a region for other locks.
 
siz
gives the size of the region to be locked, starting at the current file offset.
rfio_lockf64 
must be used for large files and uses an off64_t
instead of a long to specify the size of the region to be locked.
 
RETURN VALUE
This routine returns 0 if the operation was successful or -1 if the operation
failed. In the latter case,
serrno
is set appropriately.
 
ERRORS
- EBADF
- 
sd
is not a valid descriptor.
- EACCES
- 
The file region is locked and F_TEST or F_TLOCK was specified.
- EINVAL
- 
incorrect value for
op
or
siz.
- SENOSHOST
- 
Host unknown.
- SENOSSERV
- 
Service unknown.
- SETIMEDOUT
- 
Timed out.
- SECONNDROP
- 
Connection closed by remote end.
- SECOMERR
- 
Communication error.
SEE ALSO
rfio_open(3)
 
AUTHOR
LCG Grid Deployment Team