-- --**************************************************************************** --* * --* Copyright (c) 2001 * --* by DIGITAL Equipment Corporation, Maynard, Mass. * --* * --* This software is furnished under a license and may be used and copied * --* only in accordance with the terms of such license and with the * --* inclusion of the above copyright notice. This software or any other * --* copies thereof may not be provided or otherwise made available to any * --* other person. No title to and ownership of the software is hereby * --* transferred. * --* * --* The information in this software is subject to change without notice * --* and should not be construed as a commitment by DIGITAL Equipment * --* Corporation. * --* * --* DIGITAL assumes no responsibility for the use or reliability of its * --* software on equipment which is not supplied by DIGITAL. * --* * --**************************************************************************** --******************************************************************************************************************** -- Created: 15-MAR-2001 22:50:28 by OpenVMS SDL EV1-33 -- Source: 18-DEC-1991 18:48:42 $11$DUA933:[LIB_ADA.LIS]CHPRETDEF.SDL;1 --******************************************************************************************************************** with SYSTEM; use SYSTEM; with STARLET; use STARLET; with CONDITION_HANDLING; use CONDITION_HANDLING; package CHPRETDEF is -- module $CHPRETDEF --+ -- -- CHeck Protection ConTroL RETurn argument block. This block contains -- the information needed to return arguments from the protection check. -- --- CHPRET_M_ACMODE : constant := 16#00000001#; CHPRET_M_MAC : constant := 16#00000002#; CHPRET_M_DAC : constant := 16#00000004#; CHPRET_M_MATCHED_ACE : constant := 16#00000008#; CHPRET_M_SOGW : constant := 16#00000010#; CHPRET_K_LENGTH : constant := 40; CHPRET_C_LENGTH : constant := 40; type CHPRET_PROGRESS_TYPE is -- Protection check progress flags record ACMODE : BOOLEAN; -- Access mode check failed MAC : BOOLEAN; -- MAC check failed DAC : BOOLEAN; -- DAC check failed MATCHED_ACE : BOOLEAN; -- matching ACE was located SOGW : BOOLEAN; -- SOGW check was performed FILLER_1 : UNSIGNED_3; end record; for CHPRET_PROGRESS_TYPE use record ACMODE at 0 range 0 .. 0; MAC at 0 range 1 .. 1; DAC at 0 range 2 .. 2; MATCHED_ACE at 0 range 3 .. 3; SOGW at 0 range 4 .. 4; FILLER_1 at 0 range 5 .. 7; end record; for CHPRET_PROGRESS_TYPE'SIZE use 8; CHPRET_PROGRESS_TYPE_INIT : constant CHPRET_PROGRESS_TYPE := (ACMODE => FALSE, MAC => FALSE, DAC => FALSE, MATCHED_ACE => FALSE, SOGW => FALSE, FILLER_1 => 0); type CHPRET_TYPE is record AUDITLEN : UNSIGNED_WORD; -- Size of the audit ACE buffer FILLER_1 : UNSIGNED_WORD; AUDIT : UNSIGNED_LONGWORD; -- Address of the audit ACE buffer AUDITRET : UNSIGNED_LONGWORD; -- Address of word to get ACE length ALARMLEN : UNSIGNED_WORD; -- Size of the alarm ACE buffer FILLER_2 : UNSIGNED_WORD; ALARM : UNSIGNED_LONGWORD; -- Address of the alarm ACE buffer ALARMRET : UNSIGNED_LONGWORD; -- Address of word to get ACE length MATCHED_ACELEN : UNSIGNED_WORD; -- Size of the matched ACE buffer PROGRESS : CHPRET_PROGRESS_TYPE; -- Protection check progress flags FILLER_3 : UNSIGNED_BYTE; MATCHED_ACE : UNSIGNED_LONGWORD; -- Address of the matched ACE buffer MATCHED_ACERET : UNSIGNED_LONGWORD; -- Address of word to get ACE length PRIVS_USED : UNSIGNED_LONGWORD; -- Address of longword to get privileges used end record; for CHPRET_TYPE use record AUDITLEN at 0 range 0 .. 15; FILLER_1 at 2 range 0 .. 15; AUDIT at 4 range 0 .. 31; AUDITRET at 8 range 0 .. 31; ALARMLEN at 12 range 0 .. 15; FILLER_2 at 14 range 0 .. 15; ALARM at 16 range 0 .. 31; ALARMRET at 20 range 0 .. 31; MATCHED_ACELEN at 24 range 0 .. 15; PROGRESS at 26 range 0 .. 7; FILLER_3 at 27 range 0 .. 7; MATCHED_ACE at 28 range 0 .. 31; MATCHED_ACERET at 32 range 0 .. 31; PRIVS_USED at 36 range 0 .. 31; end record; for CHPRET_TYPE'SIZE use 320; CHPRET_TYPE_INIT : constant CHPRET_TYPE := (AUDITLEN => 0, FILLER_1 => 0, AUDIT => 0, AUDITRET => 0, ALARMLEN => 0, FILLER_2 => 0, ALARM => 0, ALARMRET => 0, MATCHED_ACELEN => 0, PROGRESS => CHPRET_PROGRESS_TYPE_INIT, FILLER_3 => 0, MATCHED_ACE => 0, MATCHED_ACERET => 0, PRIVS_USED => 0); end CHPRETDEF;