%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$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_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$H_FLOATING_COMPLEX HFLOAT REAL_PART HFLOAT IMAGINARY_PART END RECORD %LET %BASIC$H_FLOATING_COMPLEX_DECL = 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$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_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$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 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. BYTE PWD_bits ! COMMENT ADDED BY SDL - PWD_bits contains bits PWD through fill_4 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 ! espanded string area size BYTE NAM$B_ESL ! expanded string length LONG NAM$L_ESA ! expanded string area address ! ----------------------- LONG NAM$L_RLF ! related file nam block addr 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) ! (spares) ! 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 BYTE NAMDEF$$_FILL_6 ( 1 to 2 ) ! 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 LONG NAMDEF$$_FILL_7 ( 1 to 2 ) ! Currently unused end record NAMDEF