/***************************************************************************/ /** **/ /** 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:46 by OpenVMS SDL V3.7 */ /* Source: 26-JUL-2000 12:42:51 $1$DGA8345:[LIB_H.SRC]OCBDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $OCBDEF ***/ #ifndef __OCBDEF_LOADED #define __OCBDEF_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 /*+ */ /* OCB - Object Class Block */ /* */ /* This structures contains information about a security Object */ /* Class Block. */ /* */ /*- */ #define OCB$M_ACC_BITS_ALLOC 0x1 #define OCB$M_IMP_GRP_NAMING 0x2 #define OCB$M_CREATE 0x4 #define OCB$M_DEACCESS 0x8 #define OCB$M_DELETE 0x10 #define OCB$K_LENGTH 203 /* Length of structure */ #define OCB$S_OCBDEF 203 /* Old size name - synonym */ #ifdef __cplusplus /* Define structure prototypes */ struct _ocb; #endif /* #ifdef __cplusplus */ typedef struct _ocb$r_ocb { struct _ocb *ocb$l_flink; /* Forward link */ struct _ocb *ocb$l_blink; /* Backward link */ unsigned short int ocb$w_size; /* Allocation size */ unsigned char ocb$b_type; /* Structure type */ unsigned char ocb$b_subtype; /* Subtype */ __int64 ocb$q_reserved; /* TYPE/SUBTYPE longwords from X-1 */ __union { unsigned int ocb$l_flags; /* Processing flags */ __struct { unsigned ocb$v_acc_bits_alloc : 1; /* Bitname XLATE allocated */ unsigned ocb$v_imp_grp_naming : 1; /* Implicit group namespace */ unsigned ocb$v_create : 1; /* Object class supports creation auditing */ unsigned ocb$v_deaccess : 1; /* Object class supports deaccess auditing */ unsigned ocb$v_delete : 1; /* Object class supports deletion auditing (devices) */ unsigned ocb$v_fill_0_ : 3; } ocb$r_flags_bits; } ocb$r_flags_overlay; unsigned int ocb$l_object_type; /* Object type value */ unsigned int ocb$l_class_orb; /* Class rights block */ unsigned int ocb$l_default_orb; /* Default rights block */ void *ocb$l_access_bitnames; /* Ptr to access bitnames */ int (*ocb$l_support_rtns)(); /* Ptr to support rtns dispatch */ void *ocb$ar_acc_audits; /* Ptr to access audits */ void *ocb$ar_acc_alarms; /* Ptr to access alarms */ unsigned int ocb$l_access_modes; /* Mask of valid access modes */ unsigned int ocb$l_resv_2; /* Reserved for future use */ unsigned int ocb$l_acc_bitname_size; /* Size of pool for bitname table */ unsigned int ocb$l_acc_bitname_length; /* Length of access bitname table */ /* */ char ocb$t_access_audits [48]; /* Access audits */ char ocb$t_access_alarms [48]; /* Access alarms */ /* */ unsigned int ocb$l_name_length; /* Length of class name */ unsigned int ocb$l_resv_6; /* to quadword */ void *ocb$ar_class_prot_alarms; /* Ptr to class alarms */ void *ocb$ar_class_prot_audits; /* Ptr to class audits */ char ocb$t_name [23]; /* Class name string */ } OCB$R_OCB; #if !defined(__VAXC) #define ocb$l_flags ocb$r_flags_overlay.ocb$l_flags #define ocb$v_acc_bits_alloc ocb$r_flags_overlay.ocb$r_flags_bits.ocb$v_acc_bits_alloc #define ocb$v_imp_grp_naming ocb$r_flags_overlay.ocb$r_flags_bits.ocb$v_imp_grp_naming #define ocb$v_create ocb$r_flags_overlay.ocb$r_flags_bits.ocb$v_create #define ocb$v_deaccess ocb$r_flags_overlay.ocb$r_flags_bits.ocb$v_deaccess #define ocb$v_delete ocb$r_flags_overlay.ocb$r_flags_bits.ocb$v_delete #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 /* __OCBDEF_LOADED */