/**/ /***************************************************************************/ /** **/ /** © 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:26:31 by OpenVMS SDL EV3-3 */ /* Source: 19-DEC-1996 15:57:54 $1$DGA7274:[LIB_H.SRC]BRKTDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $BRKTDEF ***/ #ifndef __BRKTDEF_LOADED #define __BRKTDEF_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 /* */ /* + */ /* */ /* Structure of breakthru message descriptor block. */ /* */ /* - */ #define BRK$M_LOCKED 0x1 #define BRK$M_DONE 0x2 #define BRK$M_CHKPRIV 0x4 #define BRK$M_CHKUIC 0x8 #define BRK$C_LENGTH 146 #define BRK$S_BRKTHRU_1 146 /* Old size field (when aggregate had different name) */ #ifdef __cplusplus /* Define structure prototypes */ struct _pcb; struct _ucb; struct _ddb; #endif /* #ifdef __cplusplus */ typedef struct _brk { /* */ /* Common Storage */ /* */ unsigned int brk$l_locpsbid; /* local PSB ID */ unsigned int brk$l_savpsbid; /* saved PSB ID */ unsigned short int brk$w_size; /* block size */ unsigned short int brk$w_outcnt; /* outstanding I/O count */ char brk$t_devname [16]; /* device name for $ASSIGN */ unsigned int brk$l_devuic; /* UIC of the terminal's owner */ struct _pcb *brk$l_pcb; /* Address of PCB */ void *brk$l_iosb; /* Address of return IOSB */ void (*brk$l_astadr)(); /* Address of AST routine */ unsigned int brk$l_astprm; /* Value of AST parameter */ unsigned __int64 brk$q_timeout; /* Timeout value */ unsigned int brk$l_carcon; /* carriage control */ unsigned int brk$l_flags; /* flags */ char brk$t_sendname [16]; /* username/terminal name */ unsigned short int brk$w_sendtype; /* send descriptor type */ unsigned short int brk$w_seconds; /* Timeout in seconds */ unsigned int brk$l_reqid; /* send requestor ID */ /* */ /* miscellaneous context */ /* */ unsigned int brk$l_pidctx; /* Last PID in user search */ struct _ucb *brk$l_ucbctx; /* Last UCB in TTY search */ struct _ddb *brk$l_ddbctx; /* Last DDB in TTY search */ void *brk$l_qioctx; /* per QIO context address */ unsigned short int brk$w_efn; /* user event flag *BYTE***? */ __union { unsigned char brk$b_sts; /* status flags */ __struct { /* status flags bit definition */ unsigned brk$v_locked : 1; /* I/O dataabse locked */ unsigned brk$v_done : 1; /* done looking for terminals */ unsigned brk$v_chkpriv : 1; /* check privilege */ unsigned brk$v_chkuic : 1; /* check UIC of terminal owner */ unsigned brk$v_fill_0_ : 4; } brk$r_sts_bits; } brk$r_sts_overlay; unsigned char brk$b_prvmode; /* previous mode */ unsigned int brk$l_scrmsglen; /* screen message length */ unsigned int brk$l_scrmsg; /* screen message address */ /* */ /* status block */ /* */ unsigned short int brk$w_status; /* status */ unsigned short int brk$w_successcnt; /* Success count */ unsigned short int brk$w_timeoutcnt; /* Timeout count */ unsigned short int brk$w_refusedcnt; /* Refused count */ /* */ /* start of mailbox message */ /* */ unsigned short int brk$w_trmmsg; /* mailbox message code */ unsigned short int brk$w_trmunit; /* tty unit number */ char brk$t_trmname [16]; /* terminal name */ /* */ /* real message starts here */ /* */ unsigned short int brk$w_msglen; /* length of msgbuf */ /* */ /* Length */ /* */ char brk$t_msgbuf; /* start of message (Do not include in the length. This field */ /* marks the begining of the variable length buffer. It has a */ /* real size for C) */ } BRK; #if !defined(__VAXC) #define brk$b_sts brk$r_sts_overlay.brk$b_sts #define brk$v_locked brk$r_sts_overlay.brk$r_sts_bits.brk$v_locked #define brk$v_done brk$r_sts_overlay.brk$r_sts_bits.brk$v_done #define brk$v_chkpriv brk$r_sts_overlay.brk$r_sts_bits.brk$v_chkpriv #define brk$v_chkuic brk$r_sts_overlay.brk$r_sts_bits.brk$v_chkuic #endif /* #if !defined(__VAXC) */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __longword #else #pragma __nomember_alignment #endif typedef struct _brk2 { /* */ /* Per QIO storage */ /* */ #pragma __nomember_alignment struct _brk *brk2$l_common; /* address of common area */ unsigned __int64 brk2$q_iosb; /* iosb for QIO */ unsigned short int brk2$w_chan; /* channel */ unsigned short int brk2$w_fill_1; /* For longword alignment of... */ /* subsequent & adjacent BRK2. */ /* */ /* Length of Per QIO context */ /* */ } BRK2; #define BRK2$C_LENGTH 16 #define BRKTHRU_2$S_LENGTH 16 /* Old size field (when aggregate had different name) */ #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 /* __BRKTDEF_LOADED */