! ************************************************************************* ! * * ! * HP CONFIDENTIAL. This software is confidential proprietary software * ! * licensed by Hewlett-Packard Development Company, L.P., and is not * ! * authorized to be used, duplicated OR disclosed to anyone without the * ! * prior written permission of HP. * ! * © 2021 Copyright Hewlett-Packard Development Company, L.P. * ! * * ! * VMS SOFTWARE, INC. CONFIDENTIAL. This software is confidential * ! * proprietary software licensed by VMS Software, Inc., and is not * ! * authorized to be used, duplicated or disclosed to anyone without * ! * the prior written permission of VMS Software, Inc. * ! * © 2021 Copyright VMS Software, Inc. * ! * * ! ************************************************************************* ! ******************************************************************************************************************************** ! Created: 9-Mar-2021 22:27:19 by OpenVMS SDL EV3-3 ! Source: 29-JUL-2019 12:06:46 $1$DGA8085:[BACKUP.SRC]BACKDEF.SDL;1 ! ******************************************************************************************************************************** !*** MODULE $BBHDEF *** literal BBH$K_COMMON = 32; ! end of common header literal BBH$C_COMMON = 32; ! end of common header literal BBH$K_LEVEL1 = 257; ! level 1, version 1 literal BBH$K_LEVEL5 = 1281; ! level 5, version 1 literal BBH$M_NOCRC = %X'1'; literal BBH$M_COMPRESSED_SS = %X'2'; literal BBH$M_COMPRESSED_BUFFER = %X'4'; literal BBH$K_LENGTH = 256; ! length of block header literal BBH$C_LENGTH = 256; ! length of block header macro BBH$W_SIZE = 0,0,16,0 %; ! size in bytes of block header macro BBH$W_OPSYS = 2,0,16,0 %; ! operating system ID macro BBH$W_SUBSYS = 4,0,16,0 %; ! subsystem ID macro BBH$W_APPLIC = 6,0,16,0 %; ! application ID macro BBH$L_NUMBER = 8,0,32,0 %; ! block sequence number macro BBH$W_STRUCLEV = 32,0,16,0 %; ! block structure level macro BBH$B_STRUCVER = 32,0,8,0 %; ! structure version number macro BBH$B_STRUCLEV = 33,0,8,0 %; ! major structure level macro BBH$W_VOLNUM = 34,0,16,0 %; ! media volume number macro BBH$L_CRC = 36,0,32,0 %; ! block CRC macro BBH$L_BLOCKSIZE = 40,0,32,0 %; ! block size in bytes macro BBH$L_FLAGS = 44,0,32,0 %; ! block flags macro BBH$V_NOCRC = 44,0,1,0 %; ! no CRC computed for block macro BBH$V_COMPRESSED_SS = 44,1,1,0 %; ! compressed saveset macro BBH$V_COMPRESSED_BUFFER = 44,2,1,0 %; ! compressed block macro BBH$V_COMPRESS_ALGO = 44,3,4,0 %; literal BBH$S_COMPRESS_ALGO = 4; ! compression algorithm used - for future macro BBH$T_SSNAME = 48,0,0,0 %; literal BBH$S_SSNAME = 32; ! save set name (counted ASCII) ! for compatibility sake don't change ! *** Note: Old overlay form must be used in FID & DID due to SDL bug ! *** that omits the field size symbol in a structured field. macro BBH$W_FID = 80,0,0,0 %; literal BBH$S_FID = 6; ! current file ID macro BBH$W_FID_NUM = 80,0,16,0 %; ! file number macro BBH$W_FID_SEQ = 82,0,16,0 %; ! file sequence number macro BBH$W_FID_RVN = 84,0,16,0 %; ! relative volume number macro BBH$B_FID_RVN = 84,0,8,0 %; ! alternate format RVN macro BBH$B_FID_NMX = 85,0,8,0 %; ! alternate format file number extension macro BBH$W_DID = 86,0,0,0 %; literal BBH$S_DID = 6; ! current directory ID macro BBH$W_DID_NUM = 86,0,16,0 %; ! file number macro BBH$W_DID_SEQ = 88,0,16,0 %; ! file sequence number macro BBH$W_DID_RVN = 90,0,16,0 %; ! relative volume number macro BBH$B_DID_RVN = 90,0,8,0 %; ! alternate format RVN macro BBH$B_DID_NMX = 91,0,8,0 %; ! alternate format file number extension macro BBH$T_FILENAME = 92,0,0,0 %; literal BBH$S_FILENAME = 128; ! current file name macro BBH$B_RTYPE = 220,0,8,0 %; ! record type of current file macro BBH$B_RATTRIB = 221,0,8,0 %; ! record attributes of current file macro BBH$W_RSIZE = 222,0,16,0 %; ! record size of current file macro BBH$B_BKTSIZE = 224,0,8,0 %; ! bucket size of current file macro BBH$B_VFCSIZE = 225,0,8,0 %; ! VFC area size of current file macro BBH$W_MAXREC = 226,0,16,0 %; ! maximum record size of current file macro BBH$L_FILESIZE = 228,0,32,0 %; ! allocation of current file macro BBH$L_CMPRSBLKSIZ = 232,0,32,0 %; ! compressed block size macro BBH$T_RESERVED2 = 236,0,0,0 %; literal BBH$S_RESERVED2 = 18; ! reserved macro BBH$W_CHECKSUM = 254,0,16,0 %; ! header checksum !*** MODULE $BRHDEF *** ! + ! ! BRH - backup record header. This structure prefixes each record ! within a data block. It identifies the type and use of the record. ! ! - literal BRH$K_NULL = 0; ! null record literal BRH$K_SUMMARY = 1; ! BACKUP summary record literal BRH$K_VOLUME = 2; ! volume summary record literal BRH$K_FILE = 3; ! file attribute record literal BRH$K_VBN = 4; ! file virtual block record literal BRH$K_PHYSVOL = 5; ! physical volume attribute record literal BRH$K_LBN = 6; ! physical volume logical block record literal BRH$K_FID = 7; ! file ID record literal BRH$K_FILE_EXT = 8; ! file attribute extension record literal BRH$K_LBN_576 = 9; ! 576 byte LBN record literal BRH$K_RS_DIRATTR = 10; ! RSTS directory attribute record literal BRH$K_ALIAS = 11; literal BRH$K_MAX_RTYPE = 12; ! max record type literal BRH$M_BADDATA = %X'1'; literal BRH$M_DIRECTORY = %X'2'; literal BRH$M_NONSEQUENTIAL = %X'4'; literal BRH$M_BLOCKERRS = %X'8'; literal BRH$M_ALIAS_ENTRY = %X'10'; literal BRH$M_HEADONLY = %X'20'; literal BRH$K_LENGTH = 16; literal BRH$C_LENGTH = 16; macro BRH$W_RSIZE = 0,0,16,0 %; ! record size in bytes macro BRH$W_RTYPE = 2,0,16,0 %; ! record type macro BRH$L_FLAGS = 4,0,32,0 %; ! record flags macro BRH$V_BADDATA = 4,0,1,0 %; ! data error occurred in record macro BRH$V_DIRECTORY = 4,1,1,0 %; ! record belongs to a directory file macro BRH$V_NONSEQUENTIAL = 4,2,1,0 %; ! data record is not in LBN / VBN sequence macro BRH$V_BLOCKERRS = 4,3,1,0 %; ! per block error mask present macro BRH$V_ALIAS_ENTRY = 4,4,1,0 %; ! file saved via alias entry macro BRH$V_HEADONLY = 4,5,1,0 %; ! File's data isn't copied macro BRH$L_ADDRESS = 8,0,32,0 %; ! address of data (e.g., VBN or LBN) macro BRH$W_BLOCKFLAGS = 12,0,16,0 %; ! per block error mask macro BRH$W_RESERVED = 14,0,16,0 %; ! reserved !*** MODULE $BSADEF *** ! + ! ! BACKUP attribute codes. These attributes appear in various records ! in a save set. ! ! - ! ! Definition for file ID record ! (Structure level definition shared with other attribute records) ! macro BSA$W_STRUCLEV = 0,0,16,0 %; ! save set structure level macro BSA$W_FID_NUM = 2,0,16,0 %; ! NUM word of file ID macro BSA$W_FID_RVN = 4,0,16,0 %; ! RVN word of file ID macro BSA$B_FID_RVN = 4,0,8,0 %; ! alternate format RVN word macro BSA$B_FID_NMX = 5,0,8,0 %; ! alternate format RVN word macro BSA$W_FID_COUNT = 6,0,16,0 %; ! count of SEQ words following macro BSA$W_FID_SEQ = 8,0,16,0 %; ! SEQ word of file ID, repeated ! BSA$W_FID_COUNT times ! ! Attribute entry header ! literal BSA$K_LENGTH = 4; ! length of attribute descriptor literal BSA$C_LENGTH = 4; ! length of attribute descriptor ! macro BSA$W_SIZE = 0,0,16,0 %; ! size of attribute value macro BSA$W_TYPE = 2,0,16,0 %; ! attribute code ! Data item within placement attribute record ! macro BSA$W_PLC_PTR = 0,0,16,0 %; ! placement pointer macro BSA$L_PLC_COUNT = 2,0,32,0 %; ! count of placed blocks macro BSA$L_PLC_LBN = 6,0,32,0 %; ! LBN of placed blocks macro BSA$W_PLC_LOLBN = 6,0,16,0 %; ! macro BSA$W_PLC_HILBN = 8,0,16,0 %; ! ! ALIAS record structure ! literal BSA$M_IGNORED_ALIAS = %X'1'; literal BSA_ALIAS$K_LENGTH = 32; ! Length of fixed portion of ALIAS record literal BSA_ALIAS$C_LENGTH = 32; ! Length of fixed portion of ALIAS record ! macro BSA$W_ALIAS_STRUCLEV = 0,0,16,0 %; ! save set structure level ! *** Note: Old overlay form must be used in FID & DID due to SDL bug ! *** that omits the field size symbol in a structured field. macro BSA$W_ALIAS_DID = 2,0,0,0 %; literal BSA$S_ALIAS_DID = 6; ! ALIAS directory ID macro BSA$W_ALIAS_DID_NUM = 2,0,16,0 %; ! ALIAS Dir. file number macro BSA$W_ALIAS_DID_SEQ = 4,0,16,0 %; ! ALIAS Dir. file sequence number macro BSA$W_ALIAS_DID_RVN = 6,0,16,0 %; ! ALIAS Dir. relative volume number macro BSA$B_ALIAS_DID_RVN = 6,0,8,0 %; ! alternate format RVN macro BSA$B_ALIAS_DID_NMX = 7,0,8,0 %; ! alternate format file number extension macro BSA$W_ALIAS_ENTRY_DIR_RSS = 8,0,16,0 %; ! alias entry Dir. filename size macro BSA$W_ALIAS_ENTRY_RSS = 10,0,16,0 %; ! alias entry filename size macro BSA$W_PRIM_DID = 12,0,0,0 %; literal BSA$S_PRIM_DID = 6; ! Primary File directory ID macro BSA$W_PRIM_DID_NUM = 12,0,16,0 %; ! Primary File Dir. file number macro BSA$W_PRIM_DID_SEQ = 14,0,16,0 %; ! Primary File Dir. file sequence number macro BSA$W_PRIM_DID_RVN = 16,0,16,0 %; ! Primary File Dir. relative volume number macro BSA$B_PRIM_DID_RVN = 16,0,8,0 %; ! alternate format RVN macro BSA$B_PRIM_DID_NMX = 17,0,8,0 %; ! alternate format file number extension macro BSA$W_PRIM_FID = 18,0,0,0 %; literal BSA$S_PRIM_FID = 6; ! Primary file ID macro BSA$W_PRIM_FID_NUM = 18,0,16,0 %; ! Primary File file number macro BSA$W_PRIM_FID_SEQ = 20,0,16,0 %; ! Primary File file sequence number macro BSA$W_PRIM_FID_RVN = 22,0,16,0 %; ! Primary File relative volume number macro BSA$B_PRIM_FID_RVN = 22,0,8,0 %; ! alternate format RVN macro BSA$B_PRIM_FID_NMX = 23,0,8,0 %; ! alternate format file number extension macro BSA$W_ALIAS_PRIM_DIR_RSS = 24,0,16,0 %; ! Primary file entry Dir. filename size macro BSA$W_ALIAS_PRIM_RSS = 26,0,16,0 %; ! Primary file entry filename size macro BSA$L_ALIAS_FLAGS = 28,0,32,0 %; ! Alias Record Flags macro BSA$V_IGNORED_ALIAS = 28,0,1,0 %; ! 1 = alias entry ignored ! Variable length strings follow the fixed portion of the ALIAS Record. ! These strings are: ! the alias entry directory name string, (includes brackets), ! the alias entry name string, (NTV), ! the primary file directory name string, (includes brackets), ! and the primary file name string, (NTV). ! ! ! Attribute type codes ! ! ! BACKUP summary record ! literal BSA$K_SSNAME = 1; ! save set name literal BSA$K_COMMAND = 2; ! command line literal BSA$K_COMMENT = 3; ! user comment literal BSA$K_USERNAME = 4; ! name of user who wrote the set literal BSA$K_USERUIC = 5; ! UIC of user literal BSA$K_DATE = 6; ! date backup was done literal BSA$K_OPSYS = 7; ! operating system literal BSA$K_SYSVER = 8; ! operating system version literal BSA$K_NODENAME = 9; ! operating system node name literal BSA$K_SIR = 10; ! CPU system ID register literal BSA$K_DRIVEID = 11; ! ID of drive writing backup literal BSA$K_BACKVER = 12; ! version number of BACKUP literal BSA$K_BLOCKSIZE = 13; ! block size of save set literal BSA$K_XORSIZE = 14; ! size of each XOR group literal BSA$K_BUFFERS = 15; ! number of buffers literal BSA$K_VOLSETNAM = 16; ! volume set name literal BSA$K_NVOLS = 17; ! number of volumes in set literal BSA$K_BACKSIZE = 18; ! total file space in save set literal BSA$K_BACKFILES = 19; ! total number of files in save set ! ! Volume summary record ! literal BSA$K_VOLSTRUCT = 20; ! volume structure level literal BSA$K_VOLNAME = 21; ! volume label literal BSA$K_OWNERNAME = 22; ! volume owner name literal BSA$K_FORMAT = 23; ! volume file format name literal BSA$K_RVN = 24; ! relative volume number literal BSA$K_VOLOWNER = 25; ! volume owner UIC literal BSA$K_PROTECT = 26; ! volume protection mask literal BSA$K_FILEPROT = 27; ! volume default file protection literal BSA$K_RECPROT = 28; ! volume default record protection literal BSA$K_VOLCHAR = 29; ! volume characteristics bits literal BSA$K_VOLDATE = 30; ! volume creation date literal BSA$K_WINDOW = 31; ! default file window size literal BSA$K_LRU_LIM = 32; ! default directory LRU limit literal BSA$K_EXTEND = 33; ! default file extend size literal BSA$K_CLUSTER = 34; ! storage map cluster factor literal BSA$K_RESFILES = 35; ! number of reserved files literal BSA$K_VOLSIZE = 36; ! original volume size in blocks literal BSA$K_TOTSIZE = 37; ! total file space in volume set literal BSA$K_TOTFILES = 38; ! total number of files in volume set literal BSA$K_MAXFILES = 39; ! maximum number of files allowed literal BSA$K_MAXFILNUM = 40; ! highest file number literal BSA$K_SERIALNUM = 41; ! pack serial number ! ! File attribute record ! literal BSA$K_FILENAME = 42; ! file name literal BSA$K_STRUCLEV = 43; ! file structure level literal BSA$K_FID = 44; ! file ID literal BSA$K_BACKLINK = 45; ! directory ID back link literal BSA$K_FILESIZE = 46; ! file size in blocks literal BSA$K_UIC = 47; ! file owner UIC literal BSA$K_FPRO = 48; ! file protection mask literal BSA$K_RPRO = 49; ! record protection mask literal BSA$K_ACLEVEL = 50; ! access level literal BSA$K_UCHAR = 51; ! file characteristics literal BSA$K_RECATTR = 52; ! record attributes area literal BSA$K_REVISION = 53; ! revision number literal BSA$K_CREDATE = 54; ! creation date literal BSA$K_REVDATE = 55; ! revision date literal BSA$K_EXPDATE = 56; ! expiration date literal BSA$K_BAKDATE = 57; ! backup date ! ! Physical volume attribute record ! literal BSA$K_SECTORS = 58; ! sectors per track literal BSA$K_TRACKS = 59; ! tracks per cylinder literal BSA$K_CYLINDERS = 60; ! cylinders per volume literal BSA$K_MAXBLOCK = 61; ! number of logical blocks per volume literal BSA$K_DEVTYP = 62; ! device type literal BSA$K_SERIAL = 63; ! serial number literal BSA$K_DEVNAM = 64; ! device name literal BSA$K_LABEL = 65; ! label literal BSA$K_BADBLOCK = 66; ! bad block descriptor, a sequence of ! pairs of longwords where the first ! is an LBN, the second is a count ! ! Additions ! literal BSA$K_INDEXLBN = 67; ! (VS) Index file bitmap starting LBN literal BSA$K_BOOTBLOCK = 68; ! (VS) Boot block image literal BSA$K_BOOTVBN = 69; ! (FA) VBN within file for 1st boot image literal BSA$K_PLACEMENT = 70; ! (FA) Placement data literal BSA$K_DIR_UIC = 71; ! (FA) UIC of directory literal BSA$K_DIR_FPRO = 72; ! (FA) Protection of directory literal BSA$K_DIR_STATUS = 73; ! (FA) Status of directory literal BSA$K_DIR_VERLIM = 74; ! (FA) Version limit of directory literal BSA$K_VERLIMIT = 75; ! (FA) File version limit literal BSA$K_RETAINMIN = 76; ! (VS) Minimum file retention period literal BSA$K_RETAINMAX = 77; ! (VS) Maximum file retention period literal BSA$K_ACLSEGMENT = 78; ! (FA) ACL segment for the file literal BSA$K_HIGHWATER = 79; ! (FA) Highwater mark literal BSA$K_JNL_FLAGS = 80; ! (FA) Journal control flags literal BSA$K_CRYPDATKEY = 81; ! (BS) File encryption attribute literal BSA$K_LBNSIZE = 82; ! (PS) Disk block size in bytes literal BSA$K_RS_DIRCRE = 83; ! (DA) RSTS directory creation attribute literal BSA$K_RS_DIRATTR = 84; ! (DA) RSTS directory attributes literal BSA$K_RS_FILECHAR = 85; ! (FA) RSTS specific file attributes literal BSA$K_RS_VOLCHAR = 86; ! (VS) RSTS specific volume characteristics literal BSA$K_RU_ACTIVE = 87; ! (FA) Active recovery units recoverable facility id (if non-zero) literal BSA$K_BACKREV = 88; ! (VS) Backup revision count. literal BSA$K_MIN_CLASS = 89; ! (VS) Volume min security class literal BSA$K_MAX_CLASS = 90; ! (VS) Volume max security class literal BSA$K_CLASS_PROT = 91; ! (FA) File security class literal BSA$K_BOOTVBN2 = 92; ! (FA) VBN within file for 2nd boot image literal BSA$K_ACCDATE = 93; ! (FA) File access date, (ODS5) literal BSA$K_ATTDATE = 94; ! (FA) File attribute revision date, (ODS5) literal BSA$K_EX_RECATTR = 95; ! (FA) Extended RMS record attributes, (ODS5) literal BSA$K_LENGTH_HINT = 96; ! (FA) File length hint, (ODS5) literal BSA$K_LINKCOUNT = 97; ! (FA) (hard) link count (ODS5) literal BSA$K_GPT_VBN = 98; ! (FA) VBN within file for EFI/GPT partition image literal BSA$K_GPT_TYPE = 99; ! (FA) Type of EFI/GPT partition image (see GPT_TYPE codes below) literal BSA$K_CRYPAESDATKEY = 100; ! (BS) File encryption attribute for AES literal BSA$K_EXPSIZE = 101; ! (VS) Volume Expansion Size literal BSA$K_COMPRESSALGO = 102; ! (BS) File compressed with deflate algorithm literal BSA$K_NUM_ATRS = 103; ! number of attribute codes ! ! Placement data type codes ! literal BSA$K_PLC_FID = 1; ! file ID literal BSA$K_PLC_COUNT = 2; ! count of unplaced blocks literal BSA$K_PLC_PLACE = 3; ! placement pointer, count of placed blocks literal BSA$K_PLC_PLLBN = 4; ! placement pointer, count, LBN of placed blocks ! ! GPT_TYPE codes ! literal BSA$K_GPT_BOOT = 1; ! boot partition for IA64 literal BSA$K_GPT_DIAG = 2; ! diagnostic partition for IA64 literal BSA$K_GPT_X86_EFI = 3; ! EFI boot partition for X86 literal BSA$K_GPT_X86_NTDATA = 4; ! Windows data partition for X86 literal BSA$K_GPT_MDISK = 5; ! Memory disk container file ! ! Lengths of above attributes ! ! ! BACKUP summary record ! literal BSA$S_SSNAME = 79; ! save set name literal BSA$S_COMMAND = 1024; ! command line literal BSA$S_COMMENT = 255; ! user comment literal BSA$S_USERNAME = 32; ! name of user who wrote the set literal BSA$S_USERUIC = 4; ! UIC of user literal BSA$S_DATE = 8; ! date backup was done literal BSA$S_OPSYS = 2; ! operating system literal BSA$S_SYSVER = 4; ! operating system version literal BSA$S_NODENAME = 12; ! operating system node name literal BSA$S_SIR = 4; ! CPU system ID register literal BSA$S_DRIVEID = 16; ! ID of drive writing backup literal BSA$S_BACKVER = 32; ! version number of BACKUP literal BSA$S_BLOCKSIZE = 4; ! block size of save set literal BSA$S_XORSIZE = 2; ! size of each XOR group literal BSA$S_BUFFERS = 2; ! number of buffers literal BSA$S_VOLSETNAM = 12; ! volume set name literal BSA$S_NVOLS = 2; ! number of volumes in set literal BSA$S_BACKSIZE = 8; ! total file space in save set literal BSA$S_BACKFILES = 4; ! total number of files in save set ! ! Volume summary record ! literal BSA$S_VOLSTRUCT = 2; ! volume structure level literal BSA$S_VOLNAME = 12; ! volume label literal BSA$S_OWNERNAME = 12; ! volume owner name literal BSA$S_FORMAT = 12; ! volume file format name literal BSA$S_RVN = 2; ! relative volume number literal BSA$S_VOLOWNER = 4; ! volume owner UIC literal BSA$S_PROTECT = 2; ! volume protection mask literal BSA$S_FILEPROT = 2; ! volume default file protection literal BSA$S_RECPROT = 2; ! volume default record protection literal BSA$S_VOLCHAR = 2; ! volume characteristics bits literal BSA$S_VOLDATE = 8; ! volume creation date literal BSA$S_WINDOW = 1; ! default file window size literal BSA$S_LRU_LIM = 1; ! default directory LRU limit literal BSA$S_EXTEND = 2; ! default file extend size literal BSA$S_CLUSTER = 2; ! storage map cluster factor literal BSA$S_RESFILES = 2; ! number of reserved files literal BSA$S_VOLSIZE = 4; ! original volume size in blocks literal BSA$S_TOTSIZE = 8; ! total file space in volume literal BSA$S_TOTFILES = 4; ! total number of files in volume literal BSA$S_MAXFILES = 4; ! maximum number of files allowed literal BSA$S_MAXFILNUM = 4; ! highest file number literal BSA$S_SERIALNUM = 4; ! pack serial number ! ! File attribute record ! literal BSA$S_FILENAME = 128; ! file name literal BSA$S_STRUCLEV = 2; ! file structure level literal BSA$S_FID = 6; ! file ID literal BSA$S_BACKLINK = 6; ! directory ID back link literal BSA$S_FILESIZE = 4; ! file size in blocks literal BSA$S_UIC = 4; ! file owner UIC literal BSA$S_FPRO = 2; ! file protection mask literal BSA$S_RPRO = 2; ! record protection mask literal BSA$S_ACLEVEL = 1; ! access level literal BSA$S_UCHAR = 4; ! file characteristics literal BSA$S_RECATTR = 32; ! record attributes area literal BSA$S_REVISION = 2; ! revision number literal BSA$S_CREDATE = 8; ! creation date literal BSA$S_REVDATE = 8; ! revision date literal BSA$S_EXPDATE = 8; ! expiration date literal BSA$S_BAKDATE = 8; ! backup date ! ! Physical volume attribute record ! literal BSA$S_SECTORS = 1; ! sectors per track literal BSA$S_TRACKS = 1; ! tracks per cylinder literal BSA$S_CYLINDERS = 2; ! cylinders per volume literal BSA$S_MAXBLOCK = 4; ! number of logical blocks per volume literal BSA$S_DEVTYP = 4; ! device type literal BSA$S_SERIAL = 4; ! serial number literal BSA$S_DEVNAM = 64; ! device name literal BSA$S_LABEL = 12; ! label literal BSA$S_BADBLOCK = 8; ! bad block descriptor (one pair) ! ! Additions ! literal BSA$S_INDEXLBN = 4; ! (VS) Index file bitmap starting LBN literal BSA$S_BOOTBLOCK = 512; ! (VS) Boot block image literal BSA$S_BOOTVBN = 4; ! (FA) VBN within file for boot block literal BSA$S_BOOTVBN2 = 4; ! (FA) VBN within file for boot image literal BSA$S_GPT_VBN = 4; ! (FA) VBN within EFI/GPT partition file literal BSA$S_GPT_TYPE = 4; ! (FA) type of EFI/GPT partition file literal BSA$S_PLACEMENT = 2048; ! (FA) Placement data literal BSA$S_DIR_UIC = 4; ! (FA) UIC of directory literal BSA$S_DIR_FPRO = 2; ! (FA) Protection of directory literal BSA$S_DIR_STATUS = 1; ! (FA) Status of directory literal BSA$S_DIR_VERLIM = 2; ! (FA) Version limit of directory literal BSA$S_VERLIMIT = 2; ! (FA) File version limit literal BSA$S_RETAINMIN = 8; ! (VS) Minimum file retention period literal BSA$S_RETAINMAX = 8; ! (VS) Maximum file retention period literal BSA$S_ACLSEGMENT = 380; ! (FA) ACL segment for the file literal BSA$S_HIGHWATER = 4; ! (FA) Highwater mark literal BSA$S_JNL_FLAGS = 1; ! (FA) Journal control flags literal BSA$S_CRYPDATKEY = 24; ! (BS) Saveset encryption key literal BSA$S_CRYPAESDATKEY = 64; ! (BS) Saveset encryption key AES literal BSA$S_LBNSIZE = 2; ! (PS) Disk block size in bytes literal BSA$S_RS_DIRCRE = 4; ! (FA) RSTS directory creation attribute literal BSA$S_RS_DIRATTR = 14; ! (FA) RSTS directory attributes literal BSA$S_RS_FILECHAR = 12; ! (FA) RSTS specific file attributes literal BSA$S_RS_VOLCHAR = 4; ! (VS) RSTS specific volume characteristics literal BSA$S_RU_ACTIVE = 1; ! (FA) Active recovery units recoverable facility id (if non-zero) literal BSA$S_BACKREV = 2; ! (VS) Backup revision count. literal BSA$S_MIN_CLASS = 20; ! (VS) Volume min security class literal BSA$S_MAX_CLASS = 20; ! (VS) Volume max security class literal BSA$S_CLASS_PROT = 20; ! (FA) File security class literal BSA$S_ACCDATE = 8; ! (FA) File access date, (ODS5) literal BSA$S_ATTDATE = 8; ! (FA) File attribute revision date, (ODS5) literal BSA$S_EX_RECATTR = 8; ! (FA) Extended RMS record attributes, (ODS5) literal BSA$S_LENGTH_HINT = 16; ! (FA) File length hint, (ODS5 / FAT) literal BSA$S_LINKCOUNT = 2; ! (FA) (hard) link count (ODS5) literal BSA$S_EXPSIZE = 4; ! (VS) Dynamic Volume Expansion Size literal BSA$S_COMPRESSALGO = 8; ! (BS) File compressed with deflate algorithm ! ! Placement data type codes ! literal BSA$S_PLC_FID = 6; ! file ID literal BSA$S_PLC_COUNT = 4; ! count of unplaced blocks literal BSA$S_PLC_PLACE = 6; ! placement pointer, count of placed blocks literal BSA$S_PLC_PLLBN = 10; ! placement pointer, count, LBN of placed blocks literal BSA$K_CRYP_DESCBC = 1; ! Code for DES Cypher Block Chaining literal BSA$K_CRYP_DESECB = 2; ! Code for DES Electronic Code Book. macro BSA$B_CRYPTYP = 0,0,8,0 %; ! Byte code describing saveset encr alg macro BSA$Q_CRYPKEY = 4,0,0,0 %; literal BSA$S_CRYPKEY = 8; ! DES key used to encrypt saveset macro BSA$Q_CRYPIV = 12,0,0,0 %; literal BSA$S_CRYPIV = 8; ! DES initialize vector prototype macro BSA$L_CRYPCKSM = 20,0,32,0 %; ! Checksum for attribute record literal BSA$K_CRYP_AESCBC128 = 1; ! Code for AES Cypher Block Chaining literal BSA$K_CRYP_AESCBC192 = 2; ! Code for AES Cypher Block Chaining literal BSA$K_CRYP_AESCBC256 = 3; ! Code for AES Cypher Block Chaining literal BSA$K_CRYP_AESECB128 = 4; ! Code for AES Electronic Code Book. literal BSA$K_CRYP_AESECB192 = 5; ! Code for AES Electronic Code Book. literal BSA$K_CRYP_AESECB256 = 6; ! Code for AES Electronic Code Book. literal BSA$K_CRYP_AESCFB128 = 7; literal BSA$K_CRYP_AESCFB192 = 8; literal BSA$K_CRYP_AESCFB256 = 9; literal BSA$K_CRYP_AESOFB128 = 10; literal BSA$K_CRYP_AESOFB192 = 11; literal BSA$K_CRYP_AESOFB256 = 12; macro BSA$W_CRYPAES_TYP = 0,0,16,0 %; ! Word code describing saveset encr alg macro BSA$L_CRYPAES_CKSM = 50,0,32,0 %; ! Checksum for attribute record !*** MODULE $BJLDEF *** ! + ! ! BACKUP journal file. ! ! - literal BJL$S_SIZE_LEN = 1; ! length of size literal BJL$K_STRUCLEV = 0; ! structure level literal BJL$K_SSNAME = 1; ! save set name literal BJL$K_VOLUME = 2; ! volume identification literal BJL$K_DIRECTORY = 3; ! directory name literal BJL$K_FILE = 4; ! file name macro BJL$B_SIZE = 0,0,8,0 %; ! record length (XOR format) macro BJL$B_TYPE = 1,0,8,0 %; ! record type macro BJL$B_DATA = 2,0,8,0 %; ! beginning of data portion of record ! ! Following definitions are all relative to data portion of record. ! ! Structure level record. ! literal BJL$K_LEVEL1 = 257; ! level 1, version 1 literal BJL$K_LEVEL2 = 258; ! level 1, version 2 literal BJL$K_LEVEL5 = 1281; ! level 5, version 1 literal BJL$K_STRUC_LEN = 2; ! length of record literal BJL$C_STRUC_LEN = 2; ! length of record ! macro BJL$W_STRUCLEV = 0,0,16,0 %; ! structure level macro BJL$B_STRUCVER = 0,0,8,0 %; ! structure version number macro BJL$B_STRUCLEV = 1,0,8,0 %; ! major structure level ! Save set name record. ! literal BJL$K_SSNAME_LEN = 257; ! maximum length of record literal BJL$C_SSNAME_LEN = 257; ! maximum length of record macro BJL$Q_CREDATE = 0,0,0,0 %; literal BJL$S_CREDATE = 8; ! creation date and time macro BJL$T_SSNAME = 8,0,0,0 %; literal BJL$S_SSNAME = 247; ! save set name (variable length) macro BJL$W_SSNAME_FLAGS = 255,0,16,0 %; ! flags, (Ref. NAMESTR_SEG_FLAGS, etc.) ! The following masks define flag bits for file/directory name string ! segmentation. The structure is being defined in this way because the ! name string segment flag may be used in several journal file record flag fields. ! By defining the structure in this manner the flags are relative to the ! start of the record's flag field(s) and are not position dependant. ! literal BJL$M_MORE_SEGMENTS = %X'2'; macro BJL$v_namestrseg_fill1 = 0,0,1,0 %; ! reserve space for filename flags ! i.e. BJL$V_HEADONLY compatibility macro BJL$V_MORE_SEGMENTS = 0,1,1,0 %; ! 0 = last segment, ! 1 = more segments to follow ! ! Add any new flags here. ! ! ! Volume identification record. ! literal BJL$K_VOLUME_LEN = 14; ! length of record literal BJL$C_VOLUME_LEN = 14; ! length of record macro BJL$T_VOLNAME = 0,0,0,0 %; literal BJL$S_VOLNAME = 12; ! volume label macro BJL$W_VOLNUMBER = 12,0,16,0 %; ! volume sequence number ! ! Directory record. ! literal BJL$K_DIR_LEN = 254; ! maximum length of record literal BJL$C_DIR_LEN = 254; ! maximum length of record ! stored in XOR format macro BJL$T_DIRNAME = 0,0,0,0 %; literal BJL$S_DIRNAME = 252; ! directory name (variable length) macro BJL$W_DIRNAME_FLAGS = 252,0,16,0 %; ! flags, (Ref. NAMESTR_SEG_FLAGS, etc.) ! ! File record. ! ! The following masks define flag bits. The structure is being defined ! in this way because the flags do not have a set position in the record ! defined by BJLDEF5 but simply follow directly after the file name. ! By defining the structures in this manner there is a full longword ! reserved but is not position dependant literal BJL$M_HEADONLY = %X'1'; macro BJL$V_HEADONLY = 0,0,1,0 %; ! NOBACKUP was set when file was saved literal BJL$K_FILE_LEN = 254; ! maximum length of record literal BJL$C_FILE_LEN = 254; ! maximum length of record macro BJL$T_FILENAME = 0,0,0,0 %; literal BJL$S_FILENAME = 250; ! file name (variable length) ! Ref. FLAG_BITS and NAMESTR_SEG_FLAGS literal BCK_DEF_JOURBUFF_SIZE = 512; ! default journal buffer size