root/include/asm-sparc/fcntl.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /* $Id: fcntl.h,v 1.6 1996/01/28 02:09:23 davem Exp $ */
   2 #ifndef _SPARC_FCNTL_H
   3 #define _SPARC_FCNTL_H
   4 
   5 /* open/fcntl - O_SYNC is only implemented on blocks devices and on files
   6    located on an ext2 file system */
   7 #define O_RDONLY        0x0000
   8 #define O_WRONLY        0x0001
   9 #define O_RDWR          0x0002
  10 #define O_ACCMODE       0x0003
  11 #define O_NDELAY        0x0004
  12 #define O_APPEND        0x0008
  13 #define FASYNC          0x0040  /* fcntl, for BSD compatibility */
  14 #define O_CREAT         0x0200  /* not fcntl */
  15 #define O_TRUNC         0x0400  /* not fcntl */
  16 #define O_EXCL          0x0800  /* not fcntl */
  17 #define O_SYNC          0x2000
  18 #define O_NONBLOCK      0x4000
  19 #define O_NOCTTY        0x8000  /* not fcntl */
  20 
  21 #define F_DUPFD         0       /* dup */
  22 #define F_GETFD         1       /* get f_flags */
  23 #define F_SETFD         2       /* set f_flags */
  24 #define F_GETFL         3       /* more flags (cloexec) */
  25 #define F_SETFL         4
  26 #define F_GETOWN        5       /*  for sockets. */
  27 #define F_SETOWN        6       /*  for sockets. */
  28 #define F_GETLK         7
  29 #define F_SETLK         8
  30 #define F_SETLKW        9
  31 
  32 /* for F_[GET|SET]FL */
  33 #define FD_CLOEXEC      1       /* actually anything with low bit set goes */
  34 
  35 /* for posix fcntl() and lockf() */
  36 #define F_RDLCK         1
  37 #define F_WRLCK         2
  38 #define F_UNLCK         3
  39 
  40 /* for old implementation of bsd flock () */
  41 #define F_EXLCK         4       /* or 3 */
  42 #define F_SHLCK         8       /* or 4 */
  43 
  44 /* operations for bsd flock(), also used by the kernel implementation */
  45 #define LOCK_SH         1       /* shared lock */
  46 #define LOCK_EX         2       /* exclusive lock */
  47 #define LOCK_NB         4       /* or'd with one of the above to prevent
  48                                    blocking */
  49 #define LOCK_UN         8       /* remove lock */
  50 
  51 #ifdef __KERNEL__
  52 #define F_POSIX         1
  53 #define F_FLOCK         2
  54 #define F_BROKEN        4       /* broken flock() emulation */
  55 #endif /* __KERNEL__ */
  56 
  57 struct flock {
  58         short l_type;
  59         short l_whence;
  60         off_t l_start;
  61         off_t l_len;
  62         pid_t l_pid;
  63         short __unused;
  64 };
  65 
  66 #endif

/* [previous][next][first][last][top][bottom][index][help] */