home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / file.h < prev    next >
C/C++ Source or Header  |  2004-01-30  |  2KB  |  55 lines

  1. /* This is file FILE.H */
  2. /*
  3. ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
  4. **
  5. ** This file is distributed under the terms listed in the document
  6. ** "copying.dj", available from DJ Delorie at the address above.
  7. ** A copy of "copying.dj" should accompany this file; if not, a copy
  8. ** should be available from where this file was obtained.  This file
  9. ** may not be distributed without a verbatim copy of "copying.dj".
  10. **
  11. ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
  12. ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  13. */
  14. /*
  15.  * 2003-11-27  Nicholas Wourms  <nwourms@netscape.net>:
  16.  *
  17.  *   Include sys/cdefs.h. Add function prototype for flock().
  18.  *   Add some comments from BSD's header for further clarity.
  19.  *   (L_SET, L_CURR, L_INCR, L_XTND): Redefine as the macros
  20.  *   SEEK_SET, SEEK_CUR, SEEK_CUR, & SEEK_END respectively.
  21.  *   (LOCK_SH,LOCK_EX,LOCK_NB,LOCK_UN): New macros for flock().
  22. */
  23. #ifndef _FILE_H_
  24. #define _FILE_H_
  25.  
  26. #include <sys/cdefs.h>
  27. #include <fcntl.h>
  28.  
  29. /* Whence values for lseek(); renamed by POSIX 1003.1 */
  30. #define L_SET        SEEK_SET
  31. #define L_CURR        SEEK_CUR
  32. #define L_INCR        SEEK_CUR
  33. #define L_XTND        SEEK_END
  34.  
  35. /* Operations for flock() function */
  36. #define    LOCK_SH        1    /* Shared lock. */
  37. #define    LOCK_EX        2    /* Exclusive lock. */
  38. #define    LOCK_NB        4    /* Don't block when locking. */
  39. #define    LOCK_UN        8    /* Unlock. */
  40.  
  41. /* Operations for access function */
  42. #define    F_OK        0    /* does file exist */
  43. #define X_OK        1    /* is it executable or searchable by caller */
  44. #define    W_OK        2    /* is it writable by caller */
  45. #define    R_OK        4    /* is it readable by caller */
  46.  
  47. /* Apply or remove an advisory lock on the file fd refers to. */
  48. __BEGIN_DECLS
  49.  
  50. int    _EXFUN(flock, (int, int));
  51.  
  52. __END_DECLS
  53.  
  54. #endif
  55.