


      FCNTL(5)                    (UNIX 5.0)                   FCNTL(5)



      NAME
           fcntl - file control options

      SYNTAX
           #include <fcntl.h>

      DESCRIPTION
           The fcntl(2) function provides for control over open files.
           This include file describes requests and arguments to fcntl
           and open(2).

           /* Flag values accessible to open(2) and fcntl(2) */
           /*  (The first three can only be set by open) */
           #define  O_RDONLY 0
           #define  O_WRONLY 1
           #define  O_RDWR   2
           #define  O_NDELAY 04     /* Non-blocking I/O */
           #define  O_APPEND 010    /* append (writes guaranteed at the end) */
           #define  O_ASYNC  020    /* send SIGIO to pgrp when input is available */

           /* Flag values accessible only to open(2) */
           #define  O_CREAT  00400  /* open with file create (uses third open arg)*/
           #define  O_TRUNC  01000  /* open with truncation */
           #define  O_EXCL   02000  /* exclusive open */

           /* fcntl(2) requests */
           #define   F_DUPFD   0    /* Duplicate fildes */
           #define   F_GETFD   1    /* Get fildes flags */
           #define   F_SETFD   2    /* Set fildes flags */
           #define   F_GETFL   3    /* Get file flags */
           #define   F_SETFL   4    /* Set file flags */
           #define   F_GETLK   5    /* Get blocking file locks */
           #define   F_SETLK   6    /* Set or clear file locks and fail on busy */
           #define   F_SETLKW  7    /* Set or clear file locks and wait on busy */

           /* file segment locking control structure */
           struct flock {
                short     l_type;        /* F_RDLCK, F_WRLCK, F_UNLCK */
                short     l_whence; /* 0: beginning of file, 1: current pointer, */
                               /* 2: end of file */
                long 1_start;       /* offset (neg. value is an address */
                               /* ex: -2 means FFFFFFFE address) */
                long l_len;         /* if 0 then until present or future EOF */
                               /* if < 0 preceding bytes up to, not including */
                               /* current offset */
                long l_pid;         /* returned with F_GETLK */

           /* file segment locking types */
           #define   F_RDLCK   01   /* Read lock */
           #define   F_WRLCK   02   /* Write lock */
           #define   F_UNLCK   03   /* Remove locks */




      Page 1                                         (73 A2 02MTA REV1)






      FCNTL(5)                    (UNIX 5.0)                   FCNTL(5)



      SEE ALSO
           fcntl(2), open(2).





















































      Page 2                                         (73 A2 02MTA REV1)



