STAT.DEF 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. (* Release 3.10 *)
  2. (*-------------------------------------------------------------------------*
  3. * *
  4. * STAT.DEF - Modula-2 interface to STAT.H *
  5. * *
  6. * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
  7. * All Rights Reserved *
  8. * *
  9. *--------------------------------------------------------------------------*)
  10. (*# project("#set tsc='on'") *)
  11. (*# call(o_a_size=>off, o_a_copy=>off, c_conv=>on, result_optional=>on) *)
  12. (*# module(implementation=>off, init_code=>off) *)
  13. (*# name(prefix=>c) *)
  14. DEFINITION MODULE stat;
  15. CONST
  16. S_IFMT = 0170000; (* file type mask *)
  17. S_IFDIR = 4000H; (* directory *)
  18. S_IFCHR = 2000H; (* character device *)
  19. S_IFREG = 8000H; (* regular file *)
  20. S_IREAD = 100H; (* owner may read *)
  21. S_IWRITE = 80H; (* owner may write *)
  22. S_IEXEC = 40H; (* owner may execute <directory search> *)
  23. TYPE
  24. stat_t = RECORD
  25. st_dev,
  26. st_ino,
  27. st_mode,
  28. st_nlink: SHORTCARD;
  29. st_uid,
  30. st_gid: CARDINAL;
  31. st_rdev: SHORTCARD;
  32. st_size,
  33. st_atime,
  34. st_mtime,
  35. st_ctime: LONGCARD;
  36. END;
  37. PROCEDURE fstat(_handle: CARDINAL; VAR _statbuf: stat_t): INTEGER;
  38. PROCEDURE stat(_path: ARRAY OF CHAR; VAR _statbuf: stat_t): INTEGER;
  39. END stat.
  40.