Provided by: libdpm-dev_1.8.2-1_amd64
rfio_lockf - provide record locking on files
#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);
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.
This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately.
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.
LCG Grid Deployment Team