! *** PREDECLARED TYPES %IF %DECLARED ( %BASIC$QUADWORD_DECLARED ) = 0 %THEN RECORD BASIC$QUADWORD LONG FILL ( 2 ) END RECORD %LET %BASIC$QUADWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$OCTAWORD_DECLARED ) = 0 %THEN RECORD BASIC$OCTAWORD LONG FILL ( 4 ) END RECORD %LET %BASIC$OCTAWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$HFLOAT_AXP_DECLARED ) = 0 %THEN RECORD BASIC$HFLOAT_AXP LONG FILL ( 4 ) END RECORD %LET %BASIC$HFLOAT_AXP_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$F_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$F_FLOATING_COMPLEX SINGLE REAL_PART SINGLE IMAGINARY_PART END RECORD %LET %BASIC$F_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$D_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$D_FLOATING_COMPLEX DOUBLE REAL_PART DOUBLE IMAGINARY_PART END RECORD %LET %BASIC$D_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$G_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$G_FLOATING_COMPLEX GFLOAT REAL_PART GFLOAT IMAGINARY_PART END RECORD %LET %BASIC$G_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$H_FLOAT_AXP_CMPLX_DCL ) = 0 %THEN RECORD BASIC$H_FLOATING_COMPLEX_AXP BASIC$HFLOAT_AXP REAL_PART BASIC$HFLOAT_AXP IMAGINARY_PART END RECORD %LET %BASIC$H_FLOAT_AXP_CMPLX_DCL = 1 %END %IF ! ! name block field definitions ! ! the nam block is used to communicate optional ! filename-related information ! DECLARE LONG CONSTANT NAM$C_BID = 2 ! code for nam block DECLARE LONG CONSTANT NAM$C_MAXRSS = 255 ! maximum resultant name string size (network) DECLARE LONG CONSTANT NAM$C_MAXRSSLCL = 255 ! maximum resultant name string size (local) DECLARE LONG CONSTANT NAM$M_PWD = x'00000001' DECLARE LONG CONSTANT NAM$M_FILL_1 = x'00000002' DECLARE LONG CONSTANT NAM$M_FILL_2 = x'00000004' DECLARE LONG CONSTANT NAM$M_SYNCHK = x'00000008' DECLARE LONG CONSTANT NAM$M_NOCONCEAL = x'00000010' DECLARE LONG CONSTANT NAM$M_SLPARSE = x'00000020' DECLARE LONG CONSTANT NAM$M_SRCHXABS = x'00000040' DECLARE LONG CONSTANT NAM$M_NO_SHORT_UPCASE = x'00000080' DECLARE LONG CONSTANT NAM$C_UFS = 0 ! Unknown file system for remote file access or ! not applicable for local file access or DECLARE LONG CONSTANT NAM$C_NO_RFS = 0 ! task-to-task operation DECLARE LONG CONSTANT NAM$C_RMS11 = 1 ! RMS-11 DECLARE LONG CONSTANT NAM$C_RMS20 = 2 ! RMS-20 DECLARE LONG CONSTANT NAM$C_RMS32 = 3 ! RMS-32 DECLARE LONG CONSTANT NAM$C_FCS11 = 4 ! FCS-11 DECLARE LONG CONSTANT NAM$C_RT11FS = 5 ! RT-11 file system DECLARE LONG CONSTANT NAM$C_TOPS20FS = 7 ! TOPS-20 file system DECLARE LONG CONSTANT NAM$C_TOPS10FS = 8 ! TOPS-10 file system DECLARE LONG CONSTANT NAM$C_RMS32S = 10 ! RMS-32 subset (e.g., VAXELAN) DECLARE LONG CONSTANT NAM$C_CPMFS = 11 ! CP/M file system DECLARE LONG CONSTANT NAM$C_MS_DOSFS = 12 ! MS/DOS file system DECLARE LONG CONSTANT NAM$C_ULTRIX32_FS = 13 ! Ultrix-32 file system DECLARE LONG CONSTANT NAM$C_ULTRIX11_FS = 14 ! Ultrix-11 file system DECLARE LONG CONSTANT DAP$K_SNADTF_FS = 15 ! SNADTF compatable FS ! +++++++++++++++++++++++ DECLARE LONG CONSTANT NAM$C_DVI = 16 ! length of dvi field ! +++++***** DECLARE LONG CONSTANT NAM$M_IFI = x'00010000' DECLARE LONG CONSTANT NAM$M_SRCHNMF = x'40000000' DECLARE LONG CONSTANT NAM$M_SVCTX = x'80000000' DECLARE LONG CONSTANT NAM$K_BLN_V2 = 56 ! Version 2 name block length DECLARE LONG CONSTANT NAM$C_BLN_V2 = 56 ! Version 2 name block length DECLARE LONG CONSTANT NAM$M_EXP_VER = x'00000001' DECLARE LONG CONSTANT NAM$M_EXP_TYPE = x'00000002' DECLARE LONG CONSTANT NAM$M_EXP_NAME = x'00000004' DECLARE LONG CONSTANT NAM$M_WILD_VER = x'00000008' DECLARE LONG CONSTANT NAM$M_WILD_TYPE = x'00000010' DECLARE LONG CONSTANT NAM$M_WILD_NAME = x'00000020' DECLARE LONG CONSTANT NAM$M_EXP_DIR = x'00000040' DECLARE LONG CONSTANT NAM$M_EXP_DEV = x'00000080' DECLARE LONG CONSTANT NAM$M_WILDCARD = x'00000100' DECLARE LONG CONSTANT NAM$M_DIR_LVLS_G7 = x'00000200' DECLARE LONG CONSTANT NAM$M_WILD_SFDG7 = x'00000400' DECLARE LONG CONSTANT NAM$M_SEARCH_LIST = x'00000800' DECLARE LONG CONSTANT NAM$M_CNCL_DEV = x'00001000' DECLARE LONG CONSTANT NAM$M_ROOT_DIR = x'00002000' DECLARE LONG CONSTANT NAM$M_LOWVER = x'00004000' DECLARE LONG CONSTANT NAM$M_HIGHVER = x'00008000' DECLARE LONG CONSTANT NAM$M_PPF = x'00010000' DECLARE LONG CONSTANT NAM$M_NODE = x'00020000' DECLARE LONG CONSTANT NAM$M_QUOTED = x'00040000' DECLARE LONG CONSTANT NAM$M_GRP_MBR = x'00080000' DECLARE LONG CONSTANT NAM$M_WILD_DIR = x'00100000' DECLARE LONG CONSTANT NAM$M_DIR_LVLS = x'00E00000' DECLARE LONG CONSTANT NAM$M_WILD_UFD = x'01000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD1 = x'02000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD2 = x'04000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD3 = x'08000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD4 = x'10000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD5 = x'20000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD6 = x'40000000' DECLARE LONG CONSTANT NAM$M_WILD_SFD7 = x'80000000' DECLARE LONG CONSTANT NAM$M_WILD_GRP = x'01000000' DECLARE LONG CONSTANT NAM$M_WILD_MBR = x'02000000' DECLARE LONG CONSTANT NAM$M_DID = x'00000001' DECLARE LONG CONSTANT NAM$M_FID = x'00000002' DECLARE LONG CONSTANT NAM$M_RES_DID = x'00000004' DECLARE LONG CONSTANT NAM$M_RES_FID = x'00000008' DECLARE LONG CONSTANT NAM$M_RES_ESCAPE = x'00000010' DECLARE LONG CONSTANT NAM$M_RES_UNICODE = x'00000020' DECLARE LONG CONSTANT NAM$S_NAMDEF = 96 record NAMDEF BYTE NAM$B_BID ! block id BYTE NAM$B_BLN ! block length ! +++++++++++++++++++++++ ! the following 3 fields must not be rearranged relative to each other ! BYTE NAM$B_RSS ! resultant string area size BYTE NAM$B_RSL ! resultant string length LONG NAM$L_RSA ! resultant string area address ! ----------------------- group NAM$R_NOP_OVERLAY variant case BYTE NAM$B_NOP ! Name options case group NAM$R_NOP_BITS ! Return password if present in nodespec string and any ! other task-specific data of the form /netacp_data" ! (default is to mask out password from expanded and ! resultant name strings and to create a logical name ! whose equivalence string is the unaltered nodespec) ! unused. (used to be undocumented ROD) ! unused. (used to be undocumented SOD) ! Only do syntax check on $parse operation ! Do not conceal device/root directory ! Parse search list (not documented) -- used by BACKUP. ! Fill in attached XABS on $SEARCH operations over the ! network (not documented) -- used by directory. ! Don't upcase the ESA BYTE PWD_bits ! COMMENT ADDED BY SDL - PWD_bits contains bits PWD through NO_SHORT_UPCASE end group NAM$R_NOP_BITS end variant end group NAM$R_NOP_OVERLAY BYTE NAM$B_RFS ! Remote file system type (currently not documented) ! Note: This field is reserved for use by Digital ! the following 3 fields must not be rearranged relative to each other ! BYTE NAM$B_ESS ! expanded string area size BYTE NAM$B_ESL ! expanded string length LONG NAM$L_ESA ! expanded string area address ! ----------------------- group NAM$R_RLF_OVERLAY variant case LONG NAM$L_RLF ! related file nam block addr case LONG NAM$L_RLF_NAML ! related file naml block addr end variant end group NAM$R_RLF_OVERLAY STRING NAM$T_DVI = 16 ! device id ! the location of the following fields must not ! be changed due to their commonality with the fib group NAM$R_FID_OVERLAY variant case WORD NAM$W_FID ( 1 to 3 ) ! file id case group NAM$R_FID_FIELDS WORD NAM$W_FID_NUM ! file number WORD NAM$W_FID_SEQ ! sequence number group NAM$R_FID_RVN_OVERLAY variant case WORD NAM$W_FID_RVN ! relative volume number case group NAM$R_FID_RVN_FIELDS BYTE NAM$B_FID_RVN ! alternate format RVN BYTE NAM$B_FID_NMX ! alternate format file number extension end group NAM$R_FID_RVN_FIELDS end variant end group NAM$R_FID_RVN_OVERLAY end group NAM$R_FID_FIELDS end variant end group NAM$R_FID_OVERLAY group NAM$R_DID_OVERLAY variant case WORD NAM$W_DID ( 1 to 3 ) ! directory id case group NAM$R_DID_FIELDS WORD NAM$W_DID_NUM ! file number WORD NAM$W_DID_SEQ ! sequence number group NAM$R_DID_RVN_OVERLAY variant case WORD NAM$W_DID_RVN ! relative volume number case group NAM$R_DID_RVN_FIELDS BYTE NAM$B_DID_RVN ! alternate format RVN BYTE NAM$B_DID_NMX ! alternate format file number extension end group NAM$R_DID_RVN_FIELDS end variant end group NAM$R_DID_RVN_OVERLAY end group NAM$R_DID_FIELDS end variant end group NAM$R_DID_OVERLAY group NAM$R_WCC_OVERLAY variant case LONG NAM$L_WCC ! wild card context case group NAM$R_WCC_BITS ! the first word is reserved for IFI/ACP context ! the first word contains an IFI ! grow from top down, start at top bit ! no-more-files has been encountered on a search ! save context across search calls LONG FILL_1_bits ! COMMENT ADDED BY SDL - FILL_1_bits contains bits FILL_1 through SVCTX end group NAM$R_WCC_BITS end variant end group NAM$R_WCC_OVERLAY group NAM$R_FNB_OVERLAY variant case LONG NAM$L_FNB ! file name status bits case group NAM$R_FNB_BITS0 ! version was explicit ! type was explicit ! name was explicit ! version contained a wild card ! type contained a wild card ! name contained a wild card ! directory was explicit ! device was explicit ! filename string included a wild card ! (inclusive or of other wild card bits) ! Dir levels greater than 7 ! A subdir greater than 7 has a wildcard ! search list present ! concealed device present ! root directory present ! lower numbered version(s) of file exist(s) ! higher " ! ! process-permanent file referenced indirectly ! filename specification included a nodename ! filename spec included a quoted string ! directory spec was of group-member format ! directory spec included a wild card ! number of directory levels (0=ufd only) LONG EXP_VER_bits ! COMMENT ADDED BY SDL - EXP_VER_bits contains bits EXP_VER through DIR_LVLS end group NAM$R_FNB_BITS0 case group NAM$R_FNB_BITS1 ! separate byte for wild card directory flags ! ufd included a wild card ! sfd1 included a wild card ! sfd2 included a wild card ! sfd3 included a wild card ! sfd4 included a wild card ! sfd5 included a wild card ! sfd6 included a wild card ! sfd7 included a wild card LONG FILL_4_bits ! COMMENT ADDED BY SDL - FILL_4_bits contains bits FILL_4 through WILD_SFD7 end group NAM$R_FNB_BITS1 case group NAM$R_FNB_BITS2 ! alternate definitions for wild_ufd and wild_sfd1 ! group contained a wild card ! member contained a wild card LONG FILL_5_bits ! COMMENT ADDED BY SDL - FILL_5_bits contains bits FILL_5 through FILL_5_ end group NAM$R_FNB_BITS2 ! -----***** ! (prior to 40 byte extension) ! ! Extend the NAM block by 40 bytes. ! end variant end group NAM$R_FNB_OVERLAY BYTE NAM$B_NODE ! Nodespec length BYTE NAM$B_DEV ! Device length BYTE NAM$B_DIR ! Directory length BYTE NAM$B_NAME ! Filename length BYTE NAM$B_TYPE ! Filetype length BYTE NAM$B_VER ! Version number length group NAM$R_NMC_OVERLAY ! Name characteristics variant case BYTE NAM$B_NMC case group NAM$R_NMC_BITS ! Input file spec DIDed ! Input file spec FIDed ! Result or Exp string spec DIDed ! Result or Exp string spec FIDed ! Result or Exp string spec has "^" ! Result or Exp string spec contains ^U BYTE DID_bits ! COMMENT ADDED BY SDL - DID_bits contains bits DID through FILL_3 end group NAM$R_NMC_BITS end variant end group NAM$R_NMC_OVERLAY BYTE NAMDEF$$_FILL_6 ( 1 to 1 ) ! Currently unused LONG NAM$L_NODE ! Nodespec address LONG NAM$L_DEV ! Device address LONG NAM$L_DIR ! Directory address LONG NAM$L_NAME ! Filename address LONG NAM$L_TYPE ! Filetype address LONG NAM$L_VER ! Version number address WORD NAM$W_FIRST_WILD_DIR ! First wild directory in related nam WORD NAM$W_LONG_DIR_LEVELS ! Total number of directories LONG NAMDEF$$_FILL_7 ( 1 to 1 ) ! Currently unused end record NAMDEF ! basealign on aggregate NAMDEF operates after aggregate end DECLARE LONG CONSTANT NAM$K_BLN_DIRWC = 96 ! Not documented optional length DECLARE LONG CONSTANT NAM$C_BLN_DIRWC = 96 ! Not documented optional length DECLARE LONG CONSTANT NAM$K_BLN = 96 ! Name block length DECLARE LONG CONSTANT NAM$C_BLN = 96 ! Name block length ! Start NAML here ! ! name block field definitions ! ! The naml block is an extended version of the NAM ! block used to communicate optional filename-related ! information. It differs from the NAM in that it ! includes a default name and a file name field and that ! these as well as the result and expanded file names ! have 32-bit length fields (though the top 16 bits is ! required to be 0, limiting the length to 65535). There ! are also some additional flags available. ! ! In order for RMS to recognize this block as a NAML, it must ! have NAML$B_BLN set to NAML$C_BLN, and must have ! NAML$B_BID set to NAML$C_BID. ! DECLARE LONG CONSTANT NAML$C_BID = 4 ! code for naml block ! (Same as nam) DECLARE LONG CONSTANT NAML$C_MAXRSS = 4095 ! maximum resultant name string size DECLARE LONG CONSTANT NAML$M_PWD = x'00000001' DECLARE LONG CONSTANT NAML$M_FILL_1 = x'00000002' DECLARE LONG CONSTANT NAML$M_FILL_2 = x'00000004' DECLARE LONG CONSTANT NAML$M_SYNCHK = x'00000008' DECLARE LONG CONSTANT NAML$M_NOCONCEAL = x'00000010' DECLARE LONG CONSTANT NAML$M_SLPARSE = x'00000020' DECLARE LONG CONSTANT NAML$M_SRCHXABS = x'00000040' DECLARE LONG CONSTANT NAML$M_NO_SHORT_UPCASE = x'00000080' DECLARE LONG CONSTANT NAML$C_UFS = 0 ! Unknown file system for remote file access or ! not applicable for local file access or DECLARE LONG CONSTANT NAML$C_NO_RFS = 0 ! task-to-task operation DECLARE LONG CONSTANT NAML$C_RMS11 = 1 ! RMS-11 DECLARE LONG CONSTANT NAML$C_RMS20 = 2 ! RMS-20 DECLARE LONG CONSTANT NAML$C_RMS32 = 3 ! RMS-32 DECLARE LONG CONSTANT NAML$C_FCS11 = 4 ! FCS-11 DECLARE LONG CONSTANT NAML$C_RT11FS = 5 ! RT-11 file system DECLARE LONG CONSTANT NAML$C_TOPS20FS = 7 ! TOPS-20 file system DECLARE LONG CONSTANT NAML$C_TOPS10FS = 8 ! TOPS-10 file system DECLARE LONG CONSTANT NAML$C_RMS32S = 10 ! RMS-32 subset (e.g., VAXELAN) DECLARE LONG CONSTANT NAML$C_CPMFS = 11 ! CP/M file system DECLARE LONG CONSTANT NAML$C_MS_DOSFS = 12 ! MS/DOS file system DECLARE LONG CONSTANT NAML$C_ULTRIX32_FS = 13 ! Ultrix-32 file system DECLARE LONG CONSTANT NAML$C_ULTRIX11_FS = 14 ! Ultrix-11 file system ! +++++++++++++++++++++++ DECLARE LONG CONSTANT NAML$C_DVI = 16 ! length of dvi field ! +++++***** DECLARE LONG CONSTANT NAML$M_IFI = x'00010000' DECLARE LONG CONSTANT NAML$M_SRCHNMF = x'40000000' DECLARE LONG CONSTANT NAML$M_SVCTX = x'80000000' DECLARE LONG CONSTANT NAML$K_BLN_V2 = 56 ! Version 2 name block length DECLARE LONG CONSTANT NAML$C_BLN_V2 = 56 ! Version 2 name block length DECLARE LONG CONSTANT NAML$M_EXP_VER = x'00000001' DECLARE LONG CONSTANT NAML$M_EXP_TYPE = x'00000002' DECLARE LONG CONSTANT NAML$M_EXP_NAME = x'00000004' DECLARE LONG CONSTANT NAML$M_WILD_VER = x'00000008' DECLARE LONG CONSTANT NAML$M_WILD_TYPE = x'00000010' DECLARE LONG CONSTANT NAML$M_WILD_NAME = x'00000020' DECLARE LONG CONSTANT NAML$M_EXP_DIR = x'00000040' DECLARE LONG CONSTANT NAML$M_EXP_DEV = x'00000080' DECLARE LONG CONSTANT NAML$M_WILDCARD = x'00000100' DECLARE LONG CONSTANT NAML$M_DIR_LVLS_G7 = x'00000200' DECLARE LONG CONSTANT NAML$M_WILD_SFDG7 = x'00000400' DECLARE LONG CONSTANT NAML$M_SEARCH_LIST = x'00000800' DECLARE LONG CONSTANT NAML$M_CNCL_DEV = x'00001000' DECLARE LONG CONSTANT NAML$M_ROOT_DIR = x'00002000' DECLARE LONG CONSTANT NAML$M_LOWVER = x'00004000' DECLARE LONG CONSTANT NAML$M_HIGHVER = x'00008000' DECLARE LONG CONSTANT NAML$M_PPF = x'00010000' DECLARE LONG CONSTANT NAML$M_NODE = x'00020000' DECLARE LONG CONSTANT NAML$M_QUOTED = x'00040000' DECLARE LONG CONSTANT NAML$M_GRP_MBR = x'00080000' DECLARE LONG CONSTANT NAML$M_WILD_DIR = x'00100000' DECLARE LONG CONSTANT NAML$M_DIR_LVLS = x'00E00000' DECLARE LONG CONSTANT NAML$M_WILD_UFD = x'01000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD1 = x'02000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD2 = x'04000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD3 = x'08000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD4 = x'10000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD5 = x'20000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD6 = x'40000000' DECLARE LONG CONSTANT NAML$M_WILD_SFD7 = x'80000000' DECLARE LONG CONSTANT NAML$M_WILD_GRP = x'01000000' DECLARE LONG CONSTANT NAML$M_WILD_MBR = x'02000000' DECLARE LONG CONSTANT NAML$M_DID = x'00000001' DECLARE LONG CONSTANT NAML$M_FID = x'00000002' DECLARE LONG CONSTANT NAML$M_RES_DID = x'00000004' DECLARE LONG CONSTANT NAML$M_RES_FID = x'00000008' DECLARE LONG CONSTANT NAML$M_RES_ESCAPE = x'00000010' DECLARE LONG CONSTANT NAML$M_RES_UNICODE = x'00000020' DECLARE LONG CONSTANT NAML$M_LONG_RESULT_ESCAPE = x'00000001' DECLARE LONG CONSTANT NAML$M_FILESYS_NAME_UCS2 = x'00000002' DECLARE LONG CONSTANT NAML$M_LONG_RESULT_DID = x'00000004' DECLARE LONG CONSTANT NAML$M_LONG_RESULT_FID = x'00000008' DECLARE LONG CONSTANT NAML$M_LONG_RESULT_UNICODE = x'00000010' DECLARE LONG CONSTANT NAML$M_MP_IN_PATH = x'00000020' DECLARE LONG CONSTANT NAML$M_SYMLNK_IN_PATH = x'00000040' DECLARE LONG CONSTANT NAML$M_OBJECT_SYMLINK = x'00000080' DECLARE LONG CONSTANT NAML$M_IS_DIRECTORY = x'00000100' DECLARE LONG CONSTANT NAML$M_NO_SHORT_OUTPUT = x'00000001' DECLARE LONG CONSTANT NAML$C_CASE_LOOKUP_BLIND = 2 ! case blind DECLARE LONG CONSTANT NAML$C_CASE_LOOKUP_SENSITIVE = 3 ! case sensitive DECLARE LONG CONSTANT NAML$M_OPEN_SPECIAL = x'00000008' DECLARE LONG CONSTANT NAML$C_SEARCH_SYMLINK_DEFAULT = 0 ! use process default DECLARE LONG CONSTANT NAML$C_SEARCH_SYMLINK_NONE = 1 ! use no symlinks DECLARE LONG CONSTANT NAML$C_SEARCH_SYMLINK_ALL = 2 ! use symlinks always DECLARE LONG CONSTANT NAML$C_SEARCH_SYMLINK_NOELLIPS = 3 ! use symlinks except in ellipsis DECLARE LONG CONSTANT NAML$S_NAMLDEF = 248 record NAMLDEF BYTE NAML$B_BID ! block id BYTE NAML$B_BLN ! block length ! +++++++++++++++++++++++ ! the following 3 fields must not be rearranged relative to each other ! BYTE NAML$B_RSS ! resultant string area size BYTE NAML$B_RSL ! resultant string length LONG NAML$L_RSA ! resultant string area address ! ----------------------- group NAML$R_NOP_OVERLAY variant case BYTE NAML$B_NOP ! Name options case group NAML$R_NOP_BITS ! Return password if present in nodespec string and any ! other task-specific data of the form /netacp_data" ! (default is to mask out password from expanded and ! resultant name strings and to create a logical name ! whose equivalence string is the unaltered nodespec) ! unused. (used to be undocumented ROD) ! unused. (used to be undocumented SOD) ! Only do syntax check on $parse operation ! Do not conceal device/root directory ! Parse search list (not documented) -- used by BACKUP. ! Fill in attached XABS on $SEARCH operations over the ! network (not documented) -- used by directory. ! Don't upcase the ESA BYTE PWD_bits ! COMMENT ADDED BY SDL - PWD_bits contains bits PWD through NO_SHORT_UPCASE end group NAML$R_NOP_BITS end variant end group NAML$R_NOP_OVERLAY BYTE NAML$B_RFS ! Remote file system type (currently not documented) ! Note: This field is reserved for use by Digital ! the following 3 fields must not be rearranged relative to each other ! BYTE NAML$B_ESS ! espanded string area size BYTE NAML$B_ESL ! expanded string length LONG NAML$L_ESA ! expanded string area address ! ----------------------- group NAML$R_RLF_OVERLAY variant case LONG NAML$L_RLF ! related file nam block addr case LONG NAML$L_RLF_NAML ! related file naml block addr end variant end group NAML$R_RLF_OVERLAY STRING NAML$T_DVI = 16 ! device id ! the location of the following fields must not ! be changed due to their commonality with the fib group NAML$R_FID_OVERLAY variant case WORD NAML$W_FID ( 1 to 3 ) ! file id case group NAML$R_FID_FIELDS WORD NAML$W_FID_NUM ! file number WORD NAML$W_FID_SEQ ! sequence number group NAML$R_FID_RVN_OVERLAY variant case WORD NAML$W_FID_RVN ! relative volume number case group NAML$R_FID_RVN_FIELDS BYTE NAML$B_FID_RVN ! alternate format RVN BYTE NAML$B_FID_NMX ! alternate format file number extension end group NAML$R_FID_RVN_FIELDS end variant end group NAML$R_FID_RVN_OVERLAY end group NAML$R_FID_FIELDS end variant end group NAML$R_FID_OVERLAY group NAML$R_DID_OVERLAY variant case WORD NAML$W_DID ( 1 to 3 ) ! directory id case group NAML$R_DID_FIELDS WORD NAML$W_DID_NUM ! file number WORD NAML$W_DID_SEQ ! sequence number group NAML$R_DID_RVN_OVERLAY variant case WORD NAML$W_DID_RVN ! relative volume number case group NAML$R_DID_RVN_FIELDS BYTE NAML$B_DID_RVN ! alternate format RVN BYTE NAML$B_DID_NMX ! alternate format file number extension end group NAML$R_DID_RVN_FIELDS end variant end group NAML$R_DID_RVN_OVERLAY end group NAML$R_DID_FIELDS end variant end group NAML$R_DID_OVERLAY group NAML$R_WCC_OVERLAY variant case LONG NAML$L_WCC ! wild card context case group NAML$R_WCC_BITS ! the first word is reserved for IFI/ACP context ! the first word contains an IFI ! grow from top down, start at top bit ! no-more-files has been encountered on a search ! save context across search calls LONG FILL_1_bits ! COMMENT ADDED BY SDL - FILL_1_bits contains bits FILL_1 through SVCTX end group NAML$R_WCC_BITS end variant end group NAML$R_WCC_OVERLAY group NAML$R_FNB_OVERLAY variant case LONG NAML$L_FNB ! file name status bits case group NAML$R_FNB_BITS0 ! version was explicit ! type was explicit ! name was explicit ! version contained a wild card ! type contained a wild card ! name contained a wild card ! directory was explicit ! device was explicit ! filename string included a wild card ! (inclusive or of other wild card bits) ! Dir levels greater than 7 ! A subdir greater than 7 has a wildcard ! search list present ! concealed device present ! root directory present ! lower numbered version(s) of file exist(s) ! higher " ! ! process-permanent file referenced indirectly ! filename specification included a nodename ! filename spec included a quoted string ! directory spec was of group-member format ! directory spec included a wild card ! number of directory levels (0=ufd only) LONG EXP_VER_bits ! COMMENT ADDED BY SDL - EXP_VER_bits contains bits EXP_VER through DIR_LVLS end group NAML$R_FNB_BITS0 case group NAML$R_FNB_BITS1 ! separate byte for wild card directory flags ! ufd included a wild card ! sfd1 included a wild card ! sfd2 included a wild card ! sfd3 included a wild card ! sfd4 included a wild card ! sfd5 included a wild card ! sfd6 included a wild card ! sfd7 included a wild card LONG FILL_4_bits ! COMMENT ADDED BY SDL - FILL_4_bits contains bits FILL_4 through WILD_SFD7 end group NAML$R_FNB_BITS1 case group NAML$R_FNB_BITS2 ! alternate definitions for wild_ufd and wild_sfd1 ! group contained a wild card ! member contained a wild card LONG FILL_5_bits ! COMMENT ADDED BY SDL - FILL_5_bits contains bits FILL_5 through FILL_6_ end group NAML$R_FNB_BITS2 end variant end group NAML$R_FNB_OVERLAY BYTE NAML$B_NODE ! Nodespec length BYTE NAML$B_DEV ! Device length BYTE NAML$B_DIR ! Directory length BYTE NAML$B_NAME ! Filename length BYTE NAML$B_TYPE ! Filetype length BYTE NAML$B_VER ! Version number length group NAML$R_NMC_OVERLAY ! Name characteristics variant case BYTE NAML$B_NMC case group NAML$R_NMC_BITS ! Input file spec DIDed ! Input file spec FIDed ! Result or Exp string spec DIDed ! Result or Exp string spec FIDed ! Result or Exp string spec has "^" ! Result or Exp string spec contains ^U BYTE DID_bits ! COMMENT ADDED BY SDL - DID_bits contains bits DID through FILL_3 end group NAML$R_NMC_BITS end variant end group NAML$R_NMC_OVERLAY BYTE NAMLDEF$$_FILL_6 ( 1 to 1 ) ! Currently unused LONG NAML$L_NODE ! Nodespec address LONG NAML$L_DEV ! Device address LONG NAML$L_DIR ! Directory address LONG NAML$L_NAME ! Filename address LONG NAML$L_TYPE ! Filetype address LONG NAML$L_VER ! Version number address WORD NAML$W_FIRST_WILD_DIR ! First wild directory in related nam WORD NAML$W_LONG_DIR_LEVELS ! Total number of directories LONG NAMLDEF$$_FILL_7 ( 1 to 1 ) ! Currently unused ! New NAML-only items: LONG NAML$L_LONG_DEFNAME_SIZE ! Analogous to FAB$B_DNS LONG NAML$L_LONG_DEFNAME ! Analogous to FAB$L_DNS LONG NAML$L_LONG_FILENAME_SIZE ! Analogous to FAB$B_FNS LONG NAML$L_LONG_FILENAME ! Analogous to FAB$L_FNS LONG NAML$L_LONG_NODE_SIZE ! Analogous to NAM$B_NODE LONG NAML$L_LONG_NODE ! Analogous to NAM$L_NODE LONG NAML$L_LONG_DEV_SIZE ! Analogous to NAM$B_DEV LONG NAML$L_LONG_DEV ! Analogous to NAM$L_DEV LONG NAML$L_LONG_DIR_SIZE ! Analogous to NAM$B_DIR LONG NAML$L_LONG_DIR ! Analogous to NAM$L_DIR LONG NAML$L_LONG_NAME_SIZE ! Analogous to NAM$B_NAME LONG NAML$L_LONG_NAME ! Analogous to NAM$L_NAME LONG NAML$L_LONG_TYPE_SIZE ! Analogous to NAM$B_TYPE LONG NAML$L_LONG_TYPE ! Analogous to NAM$L_TYPE LONG NAML$L_LONG_VER_SIZE ! Analogous to NAM$B_VER LONG NAML$L_LONG_VER ! Analogous to NAM$L_VER ! The following three "LONG_EXPAND" fields must be fixed relative to each other LONG NAML$L_LONG_EXPAND_SIZE ! Analogous to NAM$B_ESL LONG NAML$L_LONG_EXPAND ! Analogous to NAM$L_ESA LONG NAML$L_LONG_EXPAND_ALLOC ! Analogous to NAM$B_ESS LONG NAML$L_RESERVED_MBZ_9 ! The following three "LONG_RESULT" fields must be fixed relative to each other LONG NAML$L_LONG_RESULT_SIZE ! Analogous to NAM$B_RSL LONG NAML$L_LONG_RESULT ! Analogous to NAM$L_RSA LONG NAML$L_LONG_RESULT_ALLOC ! Analogous to NAM$B_RSS LONG NAML$L_RESERVED_MBZ_8 ! Reserved to Digital for future use. Must be zero. ! The following three "FILESYS_NAME" fields must be fixed relative to each other LONG NAML$L_FILESYS_NAME_SIZE LONG NAML$L_FILESYS_NAME LONG NAML$L_FILESYS_NAME_ALLOC group NAML$R_OUTPUT_FLAGS_OVERLAY ! Flags set or cleared by RMS variant case LONG NAML$L_OUTPUT_FLAGS case group NAML$R_OUTPUT_FLAGS_BITS ! There is an escape character in the long output ! The filesys name output is 2-byte Unicode ! There is DIDding in the long output ! There is FIDding in the long output ! Long Result or Exp string spec contains ^U ! mount point encountered in directory path ! symlink encountered in directory path ! The specified object is a symlink ($OPEN, $SEARCH) ! The specified object is a directory ($OPEN, $SEARCH) WORD LONG_RESULT_ESCAPE_bits ! COMMENT ADDED BY SDL - LONG_RESULT_ESCAPE_bits contains bits & ! LONG_RESULT_ESCAPE through FILL_7_ end group NAML$R_OUTPUT_FLAGS_BITS ! The rest of the longword also reserved. end variant end group NAML$R_OUTPUT_FLAGS_OVERLAY group NAML$R_INPUT_FLAGS_OVERLAY ! Flags specified by user to RMS variant case LONG NAML$L_INPUT_FLAGS case group NAML$R_INPUT_FLAGS_BITS ! Don't write to RSA and ESA ! name case lookup mode ! $OPEN a special file, rather than the ! object referred to by the special file. ! Controls whether $SEARCH follows ! symlinks in directory paths ! NOTE: Symlink search mode encodings are coordinated across $JPIDEF, $LIBCQDEF, ! $LIBFILDEF, $PPROPDEF, and $NAMLDEF. BYTE NO_SHORT_OUTPUT_bits ! COMMENT ADDED BY SDL - NO_SHORT_OUTPUT_bits contains bits NO_SHORT_OUTPUT & ! through FILL_8_ end group NAML$R_INPUT_FLAGS_BITS ! The rest of the longword also reserved and must be zero. end variant end group NAML$R_INPUT_FLAGS_OVERLAY LONG NAML$L_RESERVED_MBZ_7 ! Reserved to Digital for future use. Must be zero. BASIC$QUADWORD NAML$Q_USER_CONTEXT LONG NAML$L_RESERVED_MBZ_6 ! Reserved to Digital for future use. Must be zero. LONG NAML$L_RESERVED_MBZ_5 ! Reserved to Digital for future use. Must be zero. LONG NAML$L_RESERVED_MBZ_4 ! Reserved to Digital for future use. Must be zero. LONG NAML$L_RESERVED_MBZ_3 ! Reserved to Digital for future use. Must be zero. LONG NAML$L_RESERVED_MBZ_2 ! Reserved to Digital for future use. Must be zero. LONG NAML$L_RESERVED_MBZ_1 ! Reserved to Digital for future use. Must be zero. end record NAMLDEF ! basealign on aggregate NAMLDEF operates after aggregate end DECLARE LONG CONSTANT NAML$K_BLN = 248 ! Name block length DECLARE LONG CONSTANT NAML$C_BLN = 248 ! Name block length