/***************************************************************************/ /** **/ /** HPE CONFIDENTIAL. This software is confidential proprietary software **/ /** licensed by Hewlett-Packard Enterprise Development, LP, and is not **/ /** authorized to be used, duplicated OR disclosed to anyone without the **/ /** prior written permission of HPE. **/ /** © 2023 Copyright Hewlett-Packard Enterprise Development, LP **/ /** **/ /** 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. **/ /** © 2023 Copyright VMS Software, Inc. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 9-Nov-2023 12:06:42 by OpenVMS SDL V3.7 */ /* Source: 17-MAR-1995 07:57:57 $1$DGA8345:[LIB_H.SRC]ARBDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $ARBDEF ***/ #ifndef __ARBDEF_LOADED #define __ARBDEF_LOADED 1 #pragma __nostandard /* This file uses non-ANSI-Standard features */ #pragma __member_alignment __save #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __save /* Save the previously-defined required ptr size */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif #ifdef __cplusplus extern "C" { #define __unknown_params ... #define __optional_params ... #else #define __unknown_params #define __optional_params ... #endif #ifndef __struct #if !defined(__VAXC) #define __struct struct #else #define __struct variant_struct #endif #endif #ifndef __union #if !defined(__VAXC) #define __union union #else #define __union variant_union #endif #endif /*+ */ /* */ /* Access Rights Block - structure defining process access rights and */ /* privileges. Currently part of the PCB (meaning that the size of the */ /* ARB declared here must track in the PCB). */ /* */ /*- */ #define ARB$C_HEADER 52 /* Length of header */ #define ARB$K_HEADER 52 /* Length of header */ #define ARB$K_LENGTH 124 /* Structure length */ #define ARB$C_LENGTH 124 /* Structure length */ #define ARB$S_ARBDEF 124 typedef struct _arb { unsigned __int64 arb$q_priv; /* Privilege mask */ unsigned short int arb$w_size; /* Structure size */ unsigned char arb$b_type; /* Structure type */ unsigned char arb$b_flags; /* ARB flags (unused) */ __struct { /* Security classification mask */ int arb$$$_fill_2 [5]; } arb$r_class; __union { int arb$l_rightslist [5]; /* Rights list descriptors */ __struct { void *arb$l_process; /* process rights */ void *arb$l_system; /* system rights */ void *arb$l_extended; /* extended process rights */ void *arb$l_image; /* image rights */ void *arb$l_reserved; /* reserved */ } arb$r_fill_1_; } arb$r_fill_0_; __struct { /* Descriptor for local rights list */ int arb$$$_fill_3 [2]; } arb$r_rightsdesc; __struct { /* Process local rights list */ __union { unsigned int arb$l_uic; /* Process UID */ __struct { unsigned short int arb$w_mem; /* Member number */ unsigned short int arb$w_grp; /* Group number */ } arb$r_fill_3_; } arb$r_fill_2_; int arb$$$_fill_4 [15]; } arb$r_localrights; } ARB; #if !defined(__VAXC) #define arb$l_rightslist arb$r_fill_0_.arb$l_rightslist #define arb$l_process arb$r_fill_0_.arb$r_fill_1_.arb$l_process #define arb$l_system arb$r_fill_0_.arb$r_fill_1_.arb$l_system #define arb$l_extended arb$r_fill_0_.arb$r_fill_1_.arb$l_extended #define arb$l_image arb$r_fill_0_.arb$r_fill_1_.arb$l_image #define arb$l_reserved arb$r_fill_0_.arb$r_fill_1_.arb$l_reserved #define arb$l_uic arb$r_localrights.arb$r_fill_2_.arb$l_uic #define arb$w_mem arb$r_localrights.arb$r_fill_2_.arb$r_fill_3_.arb$w_mem #define arb$w_grp arb$r_localrights.arb$r_fill_2_.arb$r_fill_3_.arb$w_grp #endif /* #if !defined(__VAXC) */ #pragma __member_alignment __restore #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __restore /* Restore the previously-defined required ptr size */ #endif #ifdef __cplusplus } #endif #pragma __standard #endif /* __ARBDEF_LOADED */