home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / gnu / gccdist / gcc / include / atrdef.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-02-27  |  7.8 KB  |  114 lines

  1. /*** MODULE ATRDEF ***/
  2. /* Attribute list description. The attribute control list is used to read and */
  3. /* write file attributes. It consists of concatenated attribute control blocks */
  4. /* terminated by a single zero longword.                                    */
  5. /*                                                                          */
  6. #define ATR$C_UCHAR         0x003    /* 4 byte user file characteristics  */
  7. #define ATR$C_RECATTR         0x004    /* 32 bytes record attributes       */
  8. #define ATR$C_FILNAM         0x005   /* 6 byte rad-50 file name          */
  9. #define ATR$C_FILTYP         0x006   /* 2 byte rad-50 file type          */
  10. #define ATR$C_FILVER         0x007   /* 2 byte binary file version       */
  11. #define ATR$C_EXPDAT         0x008   /* 7 byte ascii expiration date     */
  12. #define ATR$C_STATBLK         0x009   /* 32 byte statistics block         */
  13. #define ATR$C_HEADER         0x00A    /* 512 byte file header             */
  14. #define ATR$C_BLOCKSIZE     0x00B    /* magtape block size               */
  15. #define ATR$C_USERLABEL     0x00C    /* user file label                  */
  16. #define ATR$C_ASCDATES         0x00D    /* revision count thru exp date in ascii  */
  17. #define ATR$C_ALCONTROL     0x00E    /* compatibility mode allocation data  */
  18. #define ATR$C_ENDLBLAST     0x00F    /* end of magtape label processing and supply ast control block  */
  19. #define ATR$C_ASCNAME         0x010    /* file name, type & version in ascii  */
  20. #define ATR$C_CREDATE         0x011    /* 64 bit creation date             */
  21. #define ATR$C_REVDATE         0x012    /* 64 bit revision date             */
  22. #define ATR$C_EXPDATE         0x013    /* 64 bit expiration date           */
  23. #define ATR$C_BAKDATE         0x014    /* 64 bit backup date               */
  24. #define ATR$C_UIC         0x015    /* 4 byte file owner uic            */
  25. #define ATR$C_FPRO         0x016    /* 2 byte file protection           */
  26. #define ATR$C_RPRO         0x017    /* 2 byte record protection         */
  27. #define ATR$C_ACLEVEL         0x018    /* 1 byte file access level         */
  28. #define ATR$C_SEMASK         0x019    /* file security mask and limit     */
  29. #define ATR$C_UIC_RO         0x01A    /* read only uic                    */
  30. #define ATR$C_DIRSEQ         0x01B    /* directory update sequence count  */
  31. #define ATR$C_BACKLINK         0x01C    /* file back link pointer           */
  32. #define ATR$C_JOURNAL         0x01D    /* journal control flags            */
  33. #define ATR$C_HDR1_ACC         0x01E    /* ansi tape header 1 accessibility  */
  34. /*  character                                                               */
  35. #define ATR$C_ADDACLENT     0x01F    /* add an access control entry      */
  36. #define ATR$C_DELACLENT     0x020    /* remove an access control entry   */
  37. #define ATR$C_MODACLENT     0x021    /* modify an acl entry              */
  38. #define ATR$C_FNDACLENT     0x022    /* locate an acl entry              */
  39. #define ATR$C_FNDACLTYP     0x023    /* find a specific type of ace      */
  40. #define ATR$C_DELETEACL     0x024    /* delete the entire acl            */
  41. #define ATR$C_READACL         0x025    /* read the entire acl              */
  42. #define ATR$C_ACLLENGTH     0x026    /* return the length of the acl     */
  43. #define ATR$C_READACE         0x027    /* read a single ace                */
  44. #define ATR$C_RESERVED         0x028    /* modify reserved area             */
  45. #define ATR$C_HIGHWATER     0x029    /* highwater mark (user read only)     */
  46. #define ATR$C_DUMMY_0         0x02A    /* *** available code               */
  47. #define ATR$C_PRIVS_USED     0x02B    /* privileges used to gain access   */
  48. #define ATR$C_MATCHING_ACE     0x02C    /* ace used to gain access (if any) */
  49. #define ATR$C_ACCESS_MODE     0x02D    /* access mode for following attribute descriptors */
  50. #define ATR$C_FILE_SPEC     0x02E    /* convert fid to file-spec         */
  51. #define ATR$C_CLASS_MASK     0x02F    /* Non-discretionary classification mask */
  52. #define ATR$C_BUFFER_OFFSET     0x030    /* For magnetic tape only length of buffer offset of block in file */
  53. /* All new attributes should be                                             */
  54. /*  added here before MAX_PLUS1                                             */
  55. #define ATR$C_MAX_PLUS1     0x031    /* Maximum code plus one            */
  56. #define ATR$C_MAX_CODE         0x030
  57. #define ATR$C_FNDACETYP     0x023
  58. /* attribute maximum lengths                                                */
  59. #define ATR$S_UCHAR         0x004    /* 4 byte user file characteristics  */
  60. #define ATR$S_RECATTR         0x020    /* 32 bytes record attributes       */
  61. #define ATR$S_FILNAM            0x006   /* 6 byte rad-50 file name          */
  62. #define ATR$S_FILTYP            0x002    /* 2 byte rad-50 file type          */
  63. #define ATR$S_FILVER            0x002    /* 2 byte binary file version       */
  64. #define ATR$S_EXPDAT            0x007   /* 7 byte ascii expiration date     */
  65. #define ATR$S_STATBLK         0x020    /* 32 byte statistics block         */
  66. #define ATR$S_HEADER         0x0200    /* 512 byte file header             */
  67. #define ATR$S_BLOCKSIZE     0x002    /* magtape block size               */
  68. #define ATR$S_USERLABEL     0x050    /* user file label                  */
  69. #define ATR$S_ASCDATES         0x023    /* revision count thru exp date in ascii  */
  70. #define ATR$S_ALCONTROL     0x00E    /* compatibility mode allocation data  */
  71. #define ATR$S_ENDLBLAST     0x004    /* end of magtape label processing and supply ast control block  */
  72. #define ATR$S_ASCNAME           0x056   /* file name, type & version in ascii  */
  73. #define ATR$S_CREDATE         0x008    /* 64 bit creation date             */
  74. #define ATR$S_REVDATE         0x008    /* 64 bit revision date             */
  75. #define ATR$S_EXPDATE         0x008    /* 64 bit expiration date           */
  76. #define ATR$S_BAKDATE         0x008    /* 64 bit backup date               */
  77. #define ATR$S_UIC         0x004    /* 4 byte file owner uic            */
  78. #define ATR$S_FPRO         0x002    /* 2 byte file protection           */
  79. #define ATR$S_RPRO         0x002    /* 2 byte record protection         */
  80. #define ATR$S_ACLEVEL         0x001    /* 1 byte file access level         */
  81. #define ATR$S_SEMASK            0x008   /* file security mask and limit     */
  82. #define ATR$S_UIC_RO         0x004    /* read only uic                    */
  83. #define ATR$S_DIRSEQ         0x002    /* directory update sequence count  */
  84. #define ATR$S_BACKLINK          0x006    /* file back link pointer           */
  85. #define ATR$S_JOURNAL           0x002    /* journal control flags            */
  86. #define ATR$S_HDR1_ACC          0x001    /* ansi tape header 1 accessibility  */
  87. /*  character                                                               */
  88. #define ATR$S_ADDACLENT     0x0FF     /* add an access control entry      */
  89. #define ATR$S_DELACLENT     0x0FF   /* remove an access control entry   */
  90. #define ATR$S_MODACLENT     0x0FF   /* modify an acl entry              */
  91. #define ATR$S_FNDACLENT     0x0FF   /* locate an acl entry              */
  92. #define ATR$S_FNDACLTYP     0x0FF   /* find a specific type of ace      */
  93. #define ATR$S_FNDACETYP     0x0FF   /* find a specific type of ace      */
  94. #define ATR$S_DELETEACL     0x0FF   /* delete the entire acl            */
  95. #define ATR$S_READACL         0x200    /* read the entire acl              */
  96. #define ATR$S_ACLLENGTH     0x004    /* return the length of the acl     */
  97. #define ATR$S_READACE         0x0FF   /* read a single ace                */
  98. #define ATR$S_RESERVED         0x17C    /* modify reserved area             */
  99. #define ATR$S_HIGHWATER     0x004    /* file high water mark (user read only)     */
  100. #define ATR$S_DUMMY_0         0x004     /* *** available code               */
  101. #define ATR$S_PRIVS_USED     0x004   /* privs used to gain access        */
  102. #define ATR$S_MATCHING_ACE     0x0FF   /* ace used to gain access          */
  103. #define ATR$S_ACCESS_MODE     0x001   /* access mode for following attribute descriptors */
  104. #define ATR$S_FILE_SPEC     0x200    /* convert fid to file-spec         */
  105. #define ATR$S_CLASS_MASK     0x014    /* Non-discretionary classification mask */
  106. #define ATR$S_BUFFER_OFFSET     0x002    /* Buffer offset length field       */
  107. struct atrdef {
  108.     unsigned short int atr$w_size;      /* size of attribute in bytes       */
  109.     unsigned short int atr$w_type;      /* attribute type code              */
  110.     unsigned long int atr$l_addr;       /* address of attribute text        */
  111. /* attribute codes                                                          */
  112.     } ;
  113.  
  114.