Back to index

courier  0.68.2
Functions
lockfcntl.c File Reference
#include <sys/types.h>
#include "liblock.h"

Go to the source code of this file.

Functions

int ll_lockfd (int fd, int ltype, LL_OFFSET_TYPE start, LL_OFFSET_TYPE len)

Function Documentation

int ll_lockfd ( int  fd,
int  ltype,
LL_OFFSET_TYPE  start,
LL_OFFSET_TYPE  len 
)

Definition at line 18 of file lockfcntl.c.

{
#if HAS_FLOCK_T
flock_t       ft;
#else
struct flock ft;
#endif

       ft.l_type=ltype & ll_unlock ? F_UNLCK:
              ltype & ll_writelock ? F_WRLCK:F_RDLCK;
       ft.l_whence=ltype & ll_whence_curpos ? 1:
                     ltype & ll_whence_end ? 2:0;
       ft.l_start=start;
       ft.l_len=len;

       return (fcntl(fd, (ltype & ll_unlock) == 0 && (ltype & ll_wait)
                     ? F_SETLKW:F_SETLK, &ft));
}

Here is the call graph for this function: