/**/ /***************************************************************************/ /** **/ /** © 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:27:01 by OpenVMS SDL EV3-3 */ /* Source: 07-OCT-1999 11:27:53 $1$DGA7274:[LIB_H.SRC]CLURCBDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $CLURCBDEF ***/ #ifndef __CLURCBDEF_LOADED #define __CLURCBDEF_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 /*+ */ /* CLURCB - REMASTER CONTROL BLOCK */ /* */ /*- */ #define CLURCB$M_BUSY 0x1 #define CLURCB$M_FQ 0x2 #define CLURCB$M_EXP_DONE_VLD 0x4 #define CLURCB$M_QUOTA 0x8 #define CLURCB$M_OLDMST 0x10 #define CLURCB$M_EXPMSG 0x20 #define CLURCB$M_TQE 0x40 #define CLURCB$M_CANCEL 0x80 #define CLURCB$M_BXFR 0x100 #define CLURCB$M_BXFR_LAST 0x200 #define CLURCB$M_WVB_ABORT 0x400 #define CLURCB$K_LENGTH 1384 /*LENGTH OF CLURCB */ #define CLURCB$C_LENGTH 1384 /*LENGTH OF CLURCB */ #define CLURCB$S_CLURCBDEF 1384 /*Old size name synonym */ #ifdef __cplusplus /* Define structure prototypes */ struct _lkb; struct _rsb; struct _club; struct _cdrp; #endif /* #ifdef __cplusplus */ typedef struct _clurcb { struct _clurcb *clurcb$l_clurcbfl; /* FORWARD LINK */ struct _clurcb *clurcb$l_clurcbbl; /* BACKWARD LINK */ unsigned short int clurcb$w_size; /* SIZE IN BYTES */ unsigned char clurcb$b_type; /* STRUCTURE TYPE */ unsigned char clurcb$b_subtype; /* STRUCTURE SUBTYPE */ unsigned short int clurcb$w_rseqnum; /* FULL REBUILD SEQ NUM */ unsigned short int clurcb$w_parseqnum; /* PARTIAL REBUILD SEQ NUM */ /* Align the fork block */ char clurcb$b_fork_block [64]; /* FORK BLOCK / TQE TO WAIT IN */ __union { unsigned int clurcb$l_flags; /* STATUS FLAGS */ __struct { unsigned clurcb$v_busy : 1; /* Fork block in use */ unsigned clurcb$v_fq : 1; /* On fork queue */ unsigned clurcb$v_exp_done_vld : 1; /* Expected done count valid */ unsigned clurcb$v_quota : 1; /* Quota charged */ unsigned clurcb$v_oldmst : 1; /* Old master */ unsigned clurcb$v_expmsg : 1; /* Message expected */ unsigned clurcb$v_tqe : 1; /* Queued as TQE */ unsigned clurcb$v_cancel : 1; /* Cancel TQE thread */ unsigned clurcb$v_bxfr : 1; /* can use block transfer */ unsigned clurcb$v_bxfr_last : 1; /* bxfer - last buffer */ unsigned clurcb$v_wvb_abort : 1; /* Block WVB needs to clean up */ unsigned clurcb$v_fill_2_ : 5; } clurcb$r_fill_1_; } clurcb$r_fill_0_; unsigned char clurcb$b_qcnt; /* LOCK QUEUE COUNTER */ char clurcb$b_fill_1 [3]; /* ALIGN */ #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 *clurcb$q_lkb_list; /* ADDRESS OF LKB LIST */ #else unsigned __int64 clurcb$q_lkb_list; #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 _rsb *clurcb$q_rsb_list; /* ADDRESS OF RSB LIST */ #else unsigned __int64 clurcb$q_rsb_list; #endif #pragma __nomember_alignment unsigned __int64 clurcb$q_cntx1; /* CONTEXT STORAGE */ unsigned __int64 clurcb$q_cntx2; /* CONTEXT STORAGE */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif int (*clurcb$l_waitret)(); /* RETURN PC STORAGE */ int (*clurcb$l_errret)(); /* RETURN PC ON ERROR */ unsigned int clurcb$l_exptime; /* Expiration time */ unsigned short int clurcb$w_exp_done; /* RBLD_DONES expected */ unsigned short int clurcb$w_rcv_done; /* RBLD_DONES received */ unsigned int clurcb$l_newmaster; /* NEW MASTER'S CSID */ unsigned int clurcb$l_oldmaster; /* OLD MASTER'S CSID */ #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 _rsb *clurcb$q_rsb; /* ADDRESS OF ROOT RSB */ #else unsigned __int64 clurcb$q_rsb; #endif #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif struct _club *clurcb$l_club; /* ADDRESS OF CLUB */ unsigned short int clurcb$w_respcnt; /* EXPECTED RESPONSE COUNT */ unsigned short int clurcb$w_index; /* MAP INDEX */ int (*clurcb$l_savrtn)(); /* SAVED RETURN ADDRESS */ int (*clurcb$l_msgbld)(); /* MESSAGE BUILD ROUTINE */ char clurcb$b_nodemap [32]; /* NODES TO REBUILD */ char clurcb$b_shutmap [32]; /* NODES WITH TRAFFIC SHUTDOWN */ char clurcb$b_ackmap [32]; /* NODES RETURNING ACKS */ char clurcb$b_resmap [32]; /* NODES NEEDING RESUMPTION */ void *clurcb$l_bptr; /* Bxfer buffer pointer */ unsigned int clurcb$l_bsize; /* Bxfer buffer allocated size */ unsigned int clurcb$l_boff; /* current Offset in buffer */ struct _cdrp *clurcb$l_bxfr_cdrp; /* block transfer CDRP */ int clurcb$l_nrsb; /* number of RSBs written to buffer */ int clurcb$l_nlkb; /* number of LKBs written to buffer */ #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 _rsb *clurcb$q_currsb; /* current RSB during Block XFER */ #else unsigned __int64 clurcb$q_currsb; #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 *clurcb$q_curlkb; /* current LKB during Block XFER */ #else unsigned __int64 clurcb$q_curlkb; #endif __int64 clurcb$q_rmstart; /* timing extensions */ #pragma __nomember_alignment int clurcb$l_totrsb; /* timing extensions */ int clurcb$l_totlkb; /* timing extensions */ int clurcb$l_wvbsent; /* WVB bufs in flight */ char clurcb$b_fill_3_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif int clurcb$l_wvbbuf [256]; /* Write value block buf pointers */ } CLURCB; #if !defined(__VAXC) #define clurcb$l_flags clurcb$r_fill_0_.clurcb$l_flags #define clurcb$v_busy clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_busy #define clurcb$v_fq clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_fq #define clurcb$v_exp_done_vld clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_exp_done_vld #define clurcb$v_quota clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_quota #define clurcb$v_oldmst clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_oldmst #define clurcb$v_expmsg clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_expmsg #define clurcb$v_tqe clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_tqe #define clurcb$v_cancel clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_cancel #define clurcb$v_bxfr clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_bxfr #define clurcb$v_bxfr_last clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_bxfr_last #define clurcb$v_wvb_abort clurcb$r_fill_0_.clurcb$r_fill_1_.clurcb$v_wvb_abort #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 /* __CLURCBDEF_LOADED */