/**/ /***************************************************************************/ /** **/ /** © Copyright 2010, Hewlett-Packard Development Company, L.P. **/ /** **/ /** Confidential computer software. Valid license from HP and/or **/ /** its subsidiaries required for possession, use, or copying. **/ /** **/ /** Consistent with FAR 12.211 and 12.212, Commercial Computer Software, **/ /** Computer Software Documentation, and Technical Data for Commercial **/ /** Items are licensed to the U.S. Government under vendor's standard **/ /** commercial license. **/ /** **/ /** Neither HP nor any of its subsidiaries shall be liable for technical **/ /** or editorial errors or omissions contained herein. The information **/ /** in this document is provided "as is" without warranty of any kind and **/ /** is subject to change without notice. The warranties for HP products **/ /** are set forth in the express limited warranty statements accompanying **/ /** such products. Nothing herein should be construed as constituting an **/ /** additional warranty. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 30-Mar-2010 17:37:36 by OpenVMS SDL EV3-3 */ /* Source: 01-SEP-1997 12:12:00 $1$DGA7274:[LIB_H.SRC]LCKCTXDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $LCKCTXDEF ***/ #ifndef __LCKCTXDEF_LOADED #define __LCKCTXDEF_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 /*+ */ /* LCKCTX - LOCK CONTEXT BLOCK */ /* */ /*- */ #define LCKCTX$M_BUSY 0x1 #define LCKCTX$M_CANCEL 0x2 #define LCKCTX$M_CMP_RQD 0x4 #define LCKCTX$K_LEN 200 /* FIXED LENGTH */ #define LCKCTX$C_LEN 200 /* FIXED LENGTH */ #define LCKCTX$S_LCKCTXDEF 200 #ifdef __cplusplus /* Define structure prototypes */ struct _lkb; #endif /* #ifdef __cplusplus */ typedef struct _lckctx { __struct { void *lckctx$l_fqfl; /* FORWARD LINK */ void *lckctx$l_fqbl; /* BACKWARD LINK */ unsigned short int lckctx$w_size; /* SIZE */ unsigned char lckctx$b_type; /* TYPE */ unsigned char lckctx$b_flck; /* FORK LOCK */ unsigned int lckctx$l_fpc; /* FORK PC */ __int64 lckctx$q_fr3; /* FORK R3 */ __int64 lckctx$q_fr4; /* FORK R4 */ } lckctx$r_fork_block; __union { unsigned int lckctx$l_flags; /* FLAGS */ __struct { /* FLAG BITS */ unsigned lckctx$v_busy : 1; /* BUSY */ unsigned lckctx$v_cancel : 1; /* OPERATION CANCELED */ unsigned lckctx$v_cmp_rqd : 1; /* COMPLETION REQUIRED */ unsigned lckctx$v_fill_0_ : 5; } lckctx$r_status_bits; } lckctx$r_flags_overlay; char lckctx$b_fill_1_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _lkb *lckctx$q_lkb; /* LKB ADDRESS */ #else unsigned __int64 lckctx$q_lkb; #endif #pragma __nomember_alignment __union { __struct { unsigned __int64 lckctx$q_cr3; /* CALLER'S R3 */ unsigned __int64 lckctx$q_cr4; /* CALLER'S R4 */ unsigned __int64 lckctx$q_cr5; /* CALLER'S R5 */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *lckctx$pq_ret1; /* STORAGE FOR SECOND RETURN */ #else unsigned __int64 lckctx$pq_ret1; #endif unsigned __int64 lckctx$q_tmp1; /* TEMPORARY STORAGE */ } lckctx$r_s1; __struct { #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *lckctx$pq_cpladr; /* COMPLETION NOTIFICATION ADDR */ #else unsigned __int64 lckctx$pq_cpladr; #endif unsigned __int64 lckctx$q_cplprm; /* CONTEXT PARAMETER */ } lckctx$r_s2; } lckctx$r_u1; __union { char lckctx$b_args [112]; /* WHOLE ARGUMENT LIST */ __struct { /* INDIVIDUAL ARGUMENTS */ unsigned __int64 lckctx$q_enq_lock_acmode; unsigned __int64 lckctx$q_enq_lkmode; unsigned __int64 lckctx$q_enq_lksb; unsigned __int64 lckctx$q_enq_flags; unsigned __int64 lckctx$q_enq_resnam; unsigned __int64 lckctx$q_enq_parid; unsigned __int64 lckctx$q_enq_cmp_adr; unsigned __int64 lckctx$q_enq_ctx_prm1; unsigned __int64 lckctx$q_enq_ctx_prm2; unsigned __int64 lckctx$q_enq_ctx_prm3; unsigned __int64 lckctx$q_enq_blk_adr; unsigned __int64 lckctx$q_enq_name_acmode; unsigned __int64 lckctx$q_enq_priority; #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *lckctx$pq_enq_req_acpted_adr; #else unsigned __int64 lckctx$pq_enq_req_acpted_adr; #endif } lckctx$r_enq_arguments; __struct { /* INDIVIDUAL ARGUMENTS */ unsigned __int64 lckctx$q_deq_lockid; unsigned __int64 lckctx$q_deq_valblk; unsigned __int64 lckctx$q_deq_flags; unsigned __int64 lckctx$q_deq_ctx_prm1; unsigned __int64 lckctx$q_deq_ctx_prm2; unsigned __int64 lckctx$q_deq_ctx_prm3; #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *lckctx$pq_deq_retadr; /* DEQ arguments must not */ #else unsigned __int64 lckctx$pq_deq_retadr; #endif /* overlap ENQ_CTX_PRM2 or later */ } lckctx$r_deq_arguments; } lckctx$r_u2; } LCKCTX; #if !defined(__VAXC) #define lckctx$l_fqfl lckctx$r_fork_block.lckctx$l_fqfl #define lckctx$l_fqbl lckctx$r_fork_block.lckctx$l_fqbl #define lckctx$w_size lckctx$r_fork_block.lckctx$w_size #define lckctx$b_type lckctx$r_fork_block.lckctx$b_type #define lckctx$b_flck lckctx$r_fork_block.lckctx$b_flck #define lckctx$l_fpc lckctx$r_fork_block.lckctx$l_fpc #define lckctx$q_fr3 lckctx$r_fork_block.lckctx$q_fr3 #define lckctx$q_fr4 lckctx$r_fork_block.lckctx$q_fr4 #define lckctx$l_flags lckctx$r_flags_overlay.lckctx$l_flags #define lckctx$v_busy lckctx$r_flags_overlay.lckctx$r_status_bits.lckctx$v_busy #define lckctx$v_cancel lckctx$r_flags_overlay.lckctx$r_status_bits.lckctx$v_cancel #define lckctx$v_cmp_rqd lckctx$r_flags_overlay.lckctx$r_status_bits.lckctx$v_cmp_rqd #define lckctx$q_cr3 lckctx$r_u1.lckctx$r_s1.lckctx$q_cr3 #define lckctx$q_cr4 lckctx$r_u1.lckctx$r_s1.lckctx$q_cr4 #define lckctx$q_cr5 lckctx$r_u1.lckctx$r_s1.lckctx$q_cr5 #define lckctx$pq_ret1 lckctx$r_u1.lckctx$r_s1.lckctx$pq_ret1 #define lckctx$q_tmp1 lckctx$r_u1.lckctx$r_s1.lckctx$q_tmp1 #define lckctx$pq_cpladr lckctx$r_u1.lckctx$r_s2.lckctx$pq_cpladr #define lckctx$q_cplprm lckctx$r_u1.lckctx$r_s2.lckctx$q_cplprm #define lckctx$b_args lckctx$r_u2.lckctx$b_args #define lckctx$q_enq_lock_acmode lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_lock_acmode #define lckctx$q_enq_lkmode lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_lkmode #define lckctx$q_enq_lksb lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_lksb #define lckctx$q_enq_flags lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_flags #define lckctx$q_enq_resnam lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_resnam #define lckctx$q_enq_parid lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_parid #define lckctx$q_enq_cmp_adr lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_cmp_adr #define lckctx$q_enq_ctx_prm1 lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_ctx_prm1 #define lckctx$q_enq_ctx_prm2 lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_ctx_prm2 #define lckctx$q_enq_ctx_prm3 lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_ctx_prm3 #define lckctx$q_enq_blk_adr lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_blk_adr #define lckctx$q_enq_name_acmode lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_name_acmode #define lckctx$q_enq_priority lckctx$r_u2.lckctx$r_enq_arguments.lckctx$q_enq_priority #define lckctx$pq_enq_req_acpted_adr lckctx$r_u2.lckctx$r_enq_arguments.lckctx$pq_enq_req_acpted_adr #define lckctx$q_deq_lockid lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_lockid #define lckctx$q_deq_valblk lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_valblk #define lckctx$q_deq_flags lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_flags #define lckctx$q_deq_ctx_prm1 lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_ctx_prm1 #define lckctx$q_deq_ctx_prm2 lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_ctx_prm2 #define lckctx$q_deq_ctx_prm3 lckctx$r_u2.lckctx$r_deq_arguments.lckctx$q_deq_ctx_prm3 #define lckctx$pq_deq_retadr lckctx$r_u2.lckctx$r_deq_arguments.lckctx$pq_deq_retadr #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 /* __LCKCTXDEF_LOADED */