/********************************************************************************************************************************/ /* Created: 30-Mar-2010 17:29:51 by OpenVMS SDL EV3-3 */ /* Source: 30-MAR-2010 17:29:22 $1$DGA7274:[STARLET_H.SRC]STARDEFMP.SDI;1 */ /********************************************************************************************************************************/ /*** MODULE $MACIDDEF ***/ #ifndef __MACIDDEF_LOADED #define __MACIDDEF_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 /*+ */ /* */ /* Module $UICDEF defines the rightslist identifier space from %XA0000000 */ /* thru %XA3FFFFFF as being reserved for use by SEVMS. */ /* */ /* This space has been segmented as: */ /* */ /* %XA0000000 thru %XA000FFFF for MAC secrecy level identifiers */ /* %XA0010000 thru %XA001FFFF for MAC secrecy category identifiers */ /* %XA0020000 thru %XA002FFFF for MAC integrity level identifiers */ /* %XA0030000 thru %XA003FFFF for MAC integrity category identifiers */ /* */ /* to provide 64K identifiers within each grouping. This allows for growth */ /* consistent with variable format (i.e. type DYN_CAT) class blocks. */ /* */ /*- */ #define MACID$M_ID_NUM 0xFFFF #define MACID$M_LVL_CAT_SEL 0x10000 #define MACID$K_LVL 0 /* Level ID sub-group */ #define MACID$K_CAT 1 /* Category ID sub-group */ #define MACID$M_SEC_INT_SEL 0x20000 #define MACID$K_SEC 0 /* Secrecy ID group */ #define MACID$K_INT 1 /* Integrity ID group */ #define MACID$M_MBZ 0x3FC0000 #define MACID$M_FMT_SEL 0xFC000000 #define MACID$K_SEVMS_ID 40 /* Format specifier for SEVMS */ /* identifiers as defined by $UICDEF */ #ifdef __NEW_STARLET typedef union _fill_0_ { unsigned int macid$l_maciddef; __struct { unsigned macid$v_id_num : 16; /* Group relative ID number */ unsigned macid$v_lvl_cat_sel : 1; /* Level/Category ID sub-group selector */ unsigned macid$v_sec_int_sel : 1; /* Secrecy/Integrity ID group selector */ unsigned macid$v_mbz : 8; unsigned macid$v_fmt_sel : 6; /* Composite overlay of $UICDEF */ /* ID_TYPE + ASSIGN_CODE fields */ } macid$r_fill_1_; } FILL_0_; #if !defined(__VAXC) #define macid$v_id_num macid$r_fill_1_.macid$v_id_num #define macid$v_lvl_cat_sel macid$r_fill_1_.macid$v_lvl_cat_sel #define macid$v_sec_int_sel macid$r_fill_1_.macid$v_sec_int_sel #define macid$v_mbz macid$r_fill_1_.macid$v_mbz #define macid$v_fmt_sel macid$r_fill_1_.macid$v_fmt_sel #endif /* #if !defined(__VAXC) */ #else /* __OLD_STARLET */ typedef union _fill_0_ { unsigned int macid$l_maciddef; __struct { unsigned macid$v_id_num : 16; /* Group relative ID number */ unsigned macid$v_lvl_cat_sel : 1; /* Level/Category ID sub-group selector */ unsigned macid$v_sec_int_sel : 1; /* Secrecy/Integrity ID group selector */ unsigned macid$v_mbz : 8; unsigned macid$v_fmt_sel : 6; /* Composite overlay of $UICDEF */ /* ID_TYPE + ASSIGN_CODE fields */ } macid$r_fill_1_; } fill_0_; #if !defined(__VAXC) #define macid$v_id_num macid$r_fill_1_.macid$v_id_num #define macid$v_lvl_cat_sel macid$r_fill_1_.macid$v_lvl_cat_sel #define macid$v_sec_int_sel macid$r_fill_1_.macid$v_sec_int_sel #define macid$v_mbz macid$r_fill_1_.macid$v_mbz #define macid$v_fmt_sel macid$r_fill_1_.macid$v_fmt_sel #endif /* #if !defined(__VAXC) */ #endif /* #ifdef __NEW_STARLET */ #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 /* __MACIDDEF_LOADED */