--******************************************************************************************************************** -- Created: 9-Mar-2021 22:28:30 by OpenVMS SDL EV3-3 -- Source: 17-MAY-1993 17:08:13 $1$DGA8085:[LIB_ADA.LIS]NSAARGDEF.SDL;1 --******************************************************************************************************************** with SYSTEM; use SYSTEM; with STARLET; use STARLET; with CONDITION_HANDLING; use CONDITION_HANDLING; package NSAARGDEF is -- module $NSAARGDEF --+ -- Security Auditing argument list definitions --- --+ -- Argument list header offset definitions --- NSA_M_ARG_FLAG_ALARM : constant := 16#00000001#; NSA_M_ARG_FLAG_JOURN : constant := 16#00000002#; NSA_M_ARG_FLAG_MANDY : constant := 16#00000004#; NSA_C_ARGHDR_LENGTH : constant := 12; NSA_K_ARGHDR_LENGTH : constant := 12; NSA_S_NSAARGHDRDEF : constant := 12; -- Old size name - synonym type NSA_ARG_ID_TYPE is -- Record identification longword record ARG_TYPE : UNSIGNED_WORD; -- Record type ARG_SUBTYPE : UNSIGNED_WORD; -- Record subtype end record; for NSA_ARG_ID_TYPE use record ARG_TYPE at 0 range 0 .. 15; ARG_SUBTYPE at 2 range 0 .. 15; end record; for NSA_ARG_ID_TYPE'SIZE use 32; NSA_ARG_ID_TYPE_INIT : constant NSA_ARG_ID_TYPE := (ARG_TYPE => 0, ARG_SUBTYPE => 0); type NSA_ARG_FLAG_TYPE is -- Flags byte record ARG_FLAG_ALARM : BOOLEAN; -- Generate alarm for this record ARG_FLAG_JOURN : BOOLEAN; -- Journal this record ARG_FLAG_MANDY : BOOLEAN; -- Mandatory auditing FILLER_1 : UNSIGNED_5; end record; for NSA_ARG_FLAG_TYPE use record ARG_FLAG_ALARM at 0 range 0 .. 0; ARG_FLAG_JOURN at 0 range 1 .. 1; ARG_FLAG_MANDY at 0 range 2 .. 2; FILLER_1 at 0 range 3 .. 7; end record; for NSA_ARG_FLAG_TYPE'SIZE use 8; NSA_ARG_FLAG_TYPE_INIT : constant NSA_ARG_FLAG_TYPE := (ARG_FLAG_ALARM => FALSE, ARG_FLAG_JOURN => FALSE, ARG_FLAG_MANDY => FALSE, FILLER_1 => 0); type NSAARGHDR_TYPE is record ARG_COUNT : UNSIGNED_LONGWORD; -- Argument list count ARG_ID : NSA_ARG_ID_TYPE; -- Record identification longword ARG_FLAG : NSA_ARG_FLAG_TYPE; -- Flags byte ARG_PKTNUM : UNSIGNED_BYTE; -- Number of packets ARG_SPARE : STRING(1 .. 2); -- Spare bytes ARG_LIST : STRING(1 .. 0); end record; for NSAARGHDR_TYPE use record ARG_COUNT at 0 range 0 .. 31; ARG_ID at 4 range 0 .. 31; ARG_FLAG at 8 range 0 .. 7; ARG_PKTNUM at 9 range 0 .. 7; ARG_SPARE at 10 range 0 .. 15; ARG_LIST at 12 range 0 .. -1; end record; for NSAARGHDR_TYPE'SIZE use 96; NSAARGHDR_TYPE_INIT : constant NSAARGHDR_TYPE := (ARG_COUNT => 0, ARG_ID => NSA_ARG_ID_TYPE_INIT, ARG_FLAG => NSA_ARG_FLAG_TYPE_INIT, ARG_PKTNUM => 0, ARG_SPARE => (others => ASCII.NUL), ARG_LIST => (others => ASCII.NUL)); --+ -- Data packet argument passing mechanism definitions --- NSA_K_ARG_MECH_BYTE : constant := 0; -- Byte value NSA_K_ARG_MECH_WORD : constant := 1; -- Word value NSA_K_ARG_MECH_LONG : constant := 2; -- Longword value NSA_K_ARG_MECH_QUAD : constant := 3; -- Quadword value NSA_K_ARG_MECH_DESCR : constant := 4; -- Descriptor NSA_K_ARG_MECH_ADESCR : constant := 5; -- Address of descriptor NSA_K_ARG_MECHNUM : constant := 6; --+ -- Argument list definitions --- -- File access NSA_C_ARG1_LENGTH : constant := 52; NSA_K_ARG1_LENGTH : constant := 52; NSA_S_NSAARG1DEF : constant := 52; -- Old size name - synonym type NSAARG1_TYPE is record NSAARGHDR : NSAARGHDR_TYPE; ARG1_FACMOD_TM : UNSIGNED_LONGWORD; -- FACMOD type and mechanism ARG1_FACMOD : UNSIGNED_LONGWORD; -- File access mode ARG1_FILNAM_TM : UNSIGNED_LONGWORD; -- FILNAM type and mechanism ARG1_FILNAM_SIZ : UNSIGNED_LONGWORD; -- File name size ARG1_FILNAM_PTR : UNSIGNED_LONGWORD; -- File name address ARG1_IMGNAM_TM : UNSIGNED_LONGWORD; -- IMGNAM type and mechanism ARG1_IMGNAM : UNSIGNED_QUADWORD; -- Image name ARG1_PRIVUSED_TM : UNSIGNED_LONGWORD; -- PRIVUSED type and mechanism ARG1_PRIVUSED : UNSIGNED_LONGWORD; -- Privileges used for access end record; for NSAARG1_TYPE use record NSAARGHDR at 0 range 0 .. 95; ARG1_FACMOD_TM at 12 range 0 .. 31; ARG1_FACMOD at 16 range 0 .. 31; ARG1_FILNAM_TM at 20 range 0 .. 31; ARG1_FILNAM_SIZ at 24 range 0 .. 31; ARG1_FILNAM_PTR at 28 range 0 .. 31; ARG1_IMGNAM_TM at 32 range 0 .. 31; ARG1_IMGNAM at 36 range 0 .. 63; ARG1_PRIVUSED_TM at 44 range 0 .. 31; ARG1_PRIVUSED at 48 range 0 .. 31; end record; for NSAARG1_TYPE'SIZE use 416; NSAARG1_TYPE_INIT : constant NSAARG1_TYPE := (NSAARGHDR => NSAARGHDR_TYPE_INIT, ARG1_FACMOD_TM => 0, ARG1_FACMOD => 0, ARG1_FILNAM_TM => 0, ARG1_FILNAM_SIZ => 0, ARG1_FILNAM_PTR => 0, ARG1_IMGNAM_TM => 0, ARG1_IMGNAM => (0, 0), ARG1_PRIVUSED_TM => 0, ARG1_PRIVUSED => 0); -- Volume mount NSA_C_ARG2_LENGTH : constant := 96; NSA_K_ARG2_LENGTH : constant := 96; NSA_S_NSAARG2DEF : constant := 96; -- Old size name - synonym type NSAARG2_TYPE is record NSAARGHDR : NSAARGHDR_TYPE; ARG2_UIC_TM : UNSIGNED_LONGWORD; -- UIC type and mechanism ARG2_UIC : UNSIGNED_LONGWORD; -- Volume UIC ARG2_VOLPRO_TM : UNSIGNED_LONGWORD; -- VOLPRO type and mechanism ARG2_VOLPRO : UNSIGNED_LONGWORD; -- Volume protection ARG2_MOUFLG_TM : UNSIGNED_LONGWORD; -- MOUFLG type and mechanism ARG2_MOUFLG : UNSIGNED_LONGWORD; -- Mount flags ARG2_IMGNAM_TM : UNSIGNED_LONGWORD; -- IMGNAM type and mechanism ARG2_IMGNAM : UNSIGNED_QUADWORD; -- Image name ARG2_DEVNAM_TM : UNSIGNED_LONGWORD; -- DEVNAM type and mechanism ARG2_DEVNAM_SIZ : UNSIGNED_LONGWORD; -- Device name size ARG2_DEVNAM_PTR : UNSIGNED_LONGWORD; -- Device name address ARG2_LOGNAM_TM : UNSIGNED_LONGWORD; -- LOGNAM type and mechanism ARG2_LOGNAM_SIZ : UNSIGNED_LONGWORD; -- Logical name size ARG2_LOGNAM_PTR : UNSIGNED_LONGWORD; -- Logical name address ARG2_VOLNAM_TM : UNSIGNED_LONGWORD; -- VOLNAM type and mechanism ARG2_VOLNAM_SIZ : UNSIGNED_LONGWORD; -- Volume name size ARG2_VOLNAM_PTR : UNSIGNED_LONGWORD; -- Volume name address ARG2_VOLSNAM_TM : UNSIGNED_LONGWORD; -- VOLSNAM type and mechanism ARG2_VOLSNAM_SIZ : UNSIGNED_LONGWORD; -- Volume set name size ARG2_VOLSNAM_PTR : UNSIGNED_LONGWORD; -- Volume set name address end record; for NSAARG2_TYPE use record NSAARGHDR at 0 range 0 .. 95; ARG2_UIC_TM at 12 range 0 .. 31; ARG2_UIC at 16 range 0 .. 31; ARG2_VOLPRO_TM at 20 range 0 .. 31; ARG2_VOLPRO at 24 range 0 .. 31; ARG2_MOUFLG_TM at 28 range 0 .. 31; ARG2_MOUFLG at 32 range 0 .. 31; ARG2_IMGNAM_TM at 36 range 0 .. 31; ARG2_IMGNAM at 40 range 0 .. 63; ARG2_DEVNAM_TM at 48 range 0 .. 31; ARG2_DEVNAM_SIZ at 52 range 0 .. 31; ARG2_DEVNAM_PTR at 56 range 0 .. 31; ARG2_LOGNAM_TM at 60 range 0 .. 31; ARG2_LOGNAM_SIZ at 64 range 0 .. 31; ARG2_LOGNAM_PTR at 68 range 0 .. 31; ARG2_VOLNAM_TM at 72 range 0 .. 31; ARG2_VOLNAM_SIZ at 76 range 0 .. 31; ARG2_VOLNAM_PTR at 80 range 0 .. 31; ARG2_VOLSNAM_TM at 84 range 0 .. 31; ARG2_VOLSNAM_SIZ at 88 range 0 .. 31; ARG2_VOLSNAM_PTR at 92 range 0 .. 31; end record; for NSAARG2_TYPE'SIZE use 768; NSAARG2_TYPE_INIT : constant NSAARG2_TYPE := (NSAARGHDR => NSAARGHDR_TYPE_INIT, ARG2_UIC_TM => 0, ARG2_UIC => 0, ARG2_VOLPRO_TM => 0, ARG2_VOLPRO => 0, ARG2_MOUFLG_TM => 0, ARG2_MOUFLG => 0, ARG2_IMGNAM_TM => 0, ARG2_IMGNAM => (0, 0), ARG2_DEVNAM_TM => 0, ARG2_DEVNAM_SIZ => 0, ARG2_DEVNAM_PTR => 0, ARG2_LOGNAM_TM => 0, ARG2_LOGNAM_SIZ => 0, ARG2_LOGNAM_PTR => 0, ARG2_VOLNAM_TM => 0, ARG2_VOLNAM_SIZ => 0, ARG2_VOLNAM_PTR => 0, ARG2_VOLSNAM_TM => 0, ARG2_VOLSNAM_SIZ => 0, ARG2_VOLSNAM_PTR => 0); -- Volume dismount NSA_C_ARG3_LENGTH : constant := 80; NSA_K_ARG3_LENGTH : constant := 80; NSA_S_NSAARG3DEF : constant := 80; -- Old size name - synonym type NSAARG3_TYPE is record NSAARGHDR : NSAARGHDR_TYPE; ARG3_DMOUFLG_TM : UNSIGNED_LONGWORD; -- DMOUFLG type and mechanism ARG3_DMOUFLG : UNSIGNED_LONGWORD; -- Dismount flags ARG3_IMGNAM_TM : UNSIGNED_LONGWORD; -- IMGNAM type and mechanism ARG3_IMGNAM : UNSIGNED_QUADWORD; -- Image name ARG3_DEVNAM_TM : UNSIGNED_LONGWORD; -- DEVNAM type and mechanism ARG3_DEVNAM_SIZ : UNSIGNED_LONGWORD; -- Device name size ARG3_DEVNAM_PTR : UNSIGNED_LONGWORD; -- Device name address ARG3_LOGNAM_TM : UNSIGNED_LONGWORD; -- LOGNAM type and mechanism ARG3_LOGNAM_SIZ : UNSIGNED_LONGWORD; -- Logical name size ARG3_LOGNAM_PTR : UNSIGNED_LONGWORD; -- Logical name address ARG3_VOLNAM_TM : UNSIGNED_LONGWORD; -- VOLNAM type and mechanism ARG3_VOLNAM_SIZ : UNSIGNED_LONGWORD; -- Volume name size ARG3_VOLNAM_PTR : UNSIGNED_LONGWORD; -- Volume name address ARG3_VOLSNAM_TM : UNSIGNED_LONGWORD; -- VOLSNAM type and mechanism ARG3_VOLSNAM_SIZ : UNSIGNED_LONGWORD; -- Volume set name size ARG3_VOLSNAM_PTR : UNSIGNED_LONGWORD; -- Volume set name address end record; for NSAARG3_TYPE use record NSAARGHDR at 0 range 0 .. 95; ARG3_DMOUFLG_TM at 12 range 0 .. 31; ARG3_DMOUFLG at 16 range 0 .. 31; ARG3_IMGNAM_TM at 20 range 0 .. 31; ARG3_IMGNAM at 24 range 0 .. 63; ARG3_DEVNAM_TM at 32 range 0 .. 31; ARG3_DEVNAM_SIZ at 36 range 0 .. 31; ARG3_DEVNAM_PTR at 40 range 0 .. 31; ARG3_LOGNAM_TM at 44 range 0 .. 31; ARG3_LOGNAM_SIZ at 48 range 0 .. 31; ARG3_LOGNAM_PTR at 52 range 0 .. 31; ARG3_VOLNAM_TM at 56 range 0 .. 31; ARG3_VOLNAM_SIZ at 60 range 0 .. 31; ARG3_VOLNAM_PTR at 64 range 0 .. 31; ARG3_VOLSNAM_TM at 68 range 0 .. 31; ARG3_VOLSNAM_SIZ at 72 range 0 .. 31; ARG3_VOLSNAM_PTR at 76 range 0 .. 31; end record; for NSAARG3_TYPE'SIZE use 640; NSAARG3_TYPE_INIT : constant NSAARG3_TYPE := (NSAARGHDR => NSAARGHDR_TYPE_INIT, ARG3_DMOUFLG_TM => 0, ARG3_DMOUFLG => 0, ARG3_IMGNAM_TM => 0, ARG3_IMGNAM => (0, 0), ARG3_DEVNAM_TM => 0, ARG3_DEVNAM_SIZ => 0, ARG3_DEVNAM_PTR => 0, ARG3_LOGNAM_TM => 0, ARG3_LOGNAM_SIZ => 0, ARG3_LOGNAM_PTR => 0, ARG3_VOLNAM_TM => 0, ARG3_VOLNAM_SIZ => 0, ARG3_VOLNAM_PTR => 0, ARG3_VOLSNAM_TM => 0, ARG3_VOLSNAM_SIZ => 0, ARG3_VOLSNAM_PTR => 0); -- Global section access NSA_C_ARG4_LENGTH : constant := 64; NSA_K_ARG4_LENGTH : constant := 64; NSA_S_NSAARG4DEF : constant := 64; -- Old size name - synonym type NSAARG4_TYPE is record NSAARGHDR : NSAARGHDR_TYPE; ARG4_FACMOD_TM : UNSIGNED_LONGWORD; -- FACMOD type and mechanism ARG4_FACMOD : UNSIGNED_LONGWORD; -- File access mode ARG4_FILNAM_TM : UNSIGNED_LONGWORD; -- FILNAM type and mechanism ARG4_FILNAM_SIZ : UNSIGNED_LONGWORD; -- File name size ARG4_FILNAM_PTR : UNSIGNED_LONGWORD; -- File name address ARG4_IMGNAM_TM : UNSIGNED_LONGWORD; -- IMGNAM type and mechanism ARG4_IMGNAM : UNSIGNED_QUADWORD; -- Image name ARG4_SECNAM_TM : UNSIGNED_LONGWORD; -- SECNAM type and mechanism ARG4_SECNAM_SIZ : UNSIGNED_LONGWORD; -- File name size ARG4_SECNAM_PTR : UNSIGNED_LONGWORD; -- File name address ARG4_PRIVUSED_TM : UNSIGNED_LONGWORD; -- PRIVUSED type and mechanism ARG4_PRIVUSED : UNSIGNED_LONGWORD; -- Privileges used for access end record; for NSAARG4_TYPE use record NSAARGHDR at 0 range 0 .. 95; ARG4_FACMOD_TM at 12 range 0 .. 31; ARG4_FACMOD at 16 range 0 .. 31; ARG4_FILNAM_TM at 20 range 0 .. 31; ARG4_FILNAM_SIZ at 24 range 0 .. 31; ARG4_FILNAM_PTR at 28 range 0 .. 31; ARG4_IMGNAM_TM at 32 range 0 .. 31; ARG4_IMGNAM at 36 range 0 .. 63; ARG4_SECNAM_TM at 44 range 0 .. 31; ARG4_SECNAM_SIZ at 48 range 0 .. 31; ARG4_SECNAM_PTR at 52 range 0 .. 31; ARG4_PRIVUSED_TM at 56 range 0 .. 31; ARG4_PRIVUSED at 60 range 0 .. 31; end record; for NSAARG4_TYPE'SIZE use 512; NSAARG4_TYPE_INIT : constant NSAARG4_TYPE := (NSAARGHDR => NSAARGHDR_TYPE_INIT, ARG4_FACMOD_TM => 0, ARG4_FACMOD => 0, ARG4_FILNAM_TM => 0, ARG4_FILNAM_SIZ => 0, ARG4_FILNAM_PTR => 0, ARG4_IMGNAM_TM => 0, ARG4_IMGNAM => (0, 0), ARG4_SECNAM_TM => 0, ARG4_SECNAM_SIZ => 0, ARG4_SECNAM_PTR => 0, ARG4_PRIVUSED_TM => 0, ARG4_PRIVUSED => 0); end NSAARGDEF;