!*** MODULE $KGBDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN ! ++ ! Key Grant Block definitions: Format of records in the rights database ! file. These records (1) associate identifier codes with names, and ! (2) list the holders of all identifiers in the system. ! -- ! WARNING : If you add attributes, you must change the following modules: ! ! [AUDSRV]FORMATBL.B32 - add name to id_attr_table ! ! Changing these modules is necessary so that auditing will reflect the new attr name ! ! ! WARNING : If you add any fields, or change the size of the ! NAME, the HOLDER, or the SYS_ID, be sure to update ! the contents at the bottom of this file. ! PARAMETER KGB$M_RESOURCE = '00000001'X PARAMETER KGB$M_DYNAMIC = '00000002'X PARAMETER KGB$M_NOACCESS = '00000004'X PARAMETER KGB$M_SUBSYSTEM = '00000008'X PARAMETER KGB$M_IMPERSONATE = '00000010'X PARAMETER KGB$M_HOLDER_HIDDEN = '00000020'X PARAMETER KGB$M_NAME_HIDDEN = '00000040'X PARAMETER KGB$K_HOLD_RECORD = '00000010'X ! End of holder record PARAMETER KGB$K_IDENT_RECORD = '00000030'X ! End of identifier record PARAMETER KGB$K_LEVEL1 = '00000101'X ! Version 1 structure level PARAMETER KGB$K_MAINT_RECORD = '00000040'X ! End of maintenance record PARAMETER KGB$K_NUMBER_OF_ATTRIBUTES = '00000007'X STRUCTURE /KGBDEF/ INTEGER*4 KGB$L_IDENTIFIER ! Binary identifier code UNION MAP INTEGER*4 KGB$L_ATTRIBUTES ! Attribute bit definitions END MAP MAP PARAMETER KGB$S_RESOURCE = 1 PARAMETER KGB$V_RESOURCE = 0 ! Resource may be charged to identifier PARAMETER KGB$S_DYNAMIC = 1 PARAMETER KGB$V_DYNAMIC = 1 ! Identifier may be enabled or disabled PARAMETER KGB$S_NOACCESS = 1 PARAMETER KGB$V_NOACCESS = 2 ! Identifier will not be used in protection checks PARAMETER KGB$S_SUBSYSTEM = 1 PARAMETER KGB$V_SUBSYSTEM = 3 ! Identifier denotes active protected subsystem PARAMETER KGB$S_IMPERSONATE = 1 PARAMETER KGB$V_IMPERSONATE = 4 ! Identifier can be used for impersonation PARAMETER KGB$S_HOLDER_HIDDEN = 1 PARAMETER KGB$V_HOLDER_HIDDEN = 5 ! Holder records are restricted PARAMETER KGB$S_NAME_HIDDEN = 1 PARAMETER KGB$V_NAME_HIDDEN = 6 ! $IDTOASC or $ASCTOID translation is restricted BYTE %FILL (1) END MAP END UNION INTEGER*4 KGB$Q_HOLDER(2) ! Holder identifier CHARACTER*32 KGB$T_NAME ! Identifier name (blank filled string) INTEGER*2 KGB$W_LEVEL ! File structure level INTEGER*2 %FILL INTEGER*4 KGB$Q_SYS_ID(2) ! System identifier INTEGER*4 KGB$L_NEXT_ID ! Next available identifier END STRUCTURE ! KGBDEF ! ++ ! Define the environmental rights ID values ! -- PARAMETER KGB$K_BATCH_ID = '80000001'X ! Batch ID value PARAMETER KGB$K_DIALUP_ID = '80000002'X ! Dialup ID value PARAMETER KGB$K_INTERACTIVE_ID = '80000003'X ! Interactive ID value PARAMETER KGB$K_LOCAL_ID = '80000004'X ! Local ID value PARAMETER KGB$K_NETWORK_ID = '80000005'X ! Network ID value PARAMETER KGB$K_REMOTE_ID = '80000006'X ! Remote ID value PARAMETER KGB$K_DECWINDOWS_ID = '80000007'X ! Decwindows ID value PARAMETER KGB$K_BOBUSER_ID = '80000008'X ! Buffer Object User ID value PARAMETER KGB$K_MRES_USER_ID = '80000009'X ! Memory Resident Section User ID value PARAMETER KGB$K_SAT_ACCESS_ID = '8000000A'X ! VMS$SATELLITE_ACCESS id value PARAMETER KGB$K_LAST_ENV_ID = '8000000B'X ! NOTE: Add all new ones before this ! ! Define the range of environmental identifiers ! PARAMETER KGB$K_BASE_ENV_ID = '80000001'X PARAMETER KGB$K_NUMBER_OF_ENV_IDS = '0000000A'X ! ! Define the restricted range of system identifiers as lowest id (%x800000000) ! to %x80010000. ! PARAMETER KGB$K_RESTRICTED_RANGE = '80010000'X ! ! Define the various access class ranges. ! PARAMETER KGB$K_SEC_LEVEL_BASE = '800003E8'X PARAMETER KGB$K_INT_LEVEL_BASE = '800004E8'X PARAMETER KGB$K_SEC_CATEGORY_BASE = '800005E8'X PARAMETER KGB$K_INT_CATEGORY_BASE = '80000628'X PARAMETER KGB$K_SEC_ACCESS_CLASS_BASE = '800003E8'X PARAMETER KGB$K_SEC_ACCESS_CLASS_END = '80000668'X ! ! Define the values for the optional $GRANTID/$REVOKID FLAGS argument. ! PARAMETER KGB$K_PROCESS = '00000000'X ! local rights PARAMETER KGB$K_SYSTEM = '00000001'X ! system rights PARAMETER KGB$K_EXTENDED = '00000002'X ! local rights (extended) PARAMETER KGB$K_IMAGE = '00000003'X ! image (protected subsystem) rights PARAMETER KGB$K_MAX_SEG = '00000004'X PARAMETER KGB$K_SUBSYSTEM = '00000003'X ! image (protected subsystem) rights PARAMETER KGB$S_NAME = '00000020'X ! Size of KGB Identifier Name PARAMETER KGB$S_HOLDER = '00000008'X ! Size of KGB Holder ID value PARAMETER KGB$S_SYS_ID = '00000008'X ! Size of KGB System Ident PARAMETER KGB$S_KGBDEF = '00000040'X ! Size of KGB structure !DEC$ END OPTIONS