/**/ /***************************************************************************/ /** **/ /** © 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:04 by OpenVMS SDL EV3-3 */ /* Source: 23-APR-1993 14:31:40 $1$DGA7274:[LIB_H.SRC]PSXFCBDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $PSXFCBDEF ***/ #ifndef __PSXFCBDEF_LOADED #define __PSXFCBDEF_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 /* amount of space reserved to save kernel stack */ /* during callbacks */ /* and the exec stack */ /* */ /* The following structure contains data about the process's use of fork */ /* callbacks. There is at most one of these per process and it is */ /* referenced through the P1 space cell CTL$GL_FORK_CONTROL_BLOCK */ /* */ #define PSXFCB$M_DISABLED 0x1 #define PSXFCB$C_KERN_SAVE_SIZE 384 #define PSXFCB$K_KERN_SAVE_SIZE 384 #define PSXFCB$C_EXEC_STACK_SAVE 1280 #define PSXFCB$K_EXEC_STACK_SAVE 1280 typedef struct _psxfcb { struct _psxfcb *psxfcb$l_flink; /* forward link (unused) */ struct _psxfcb *psxfcb$l_blink; /* backeard link (unused) */ unsigned short int psxfcb$w_size; /* size allocated */ unsigned char psxfcb$b_type; /* block type */ unsigned char psxfcb$b_subtype; /* sub type */ __struct { /* flags longword */ unsigned psxfcb$v_disabled : 1; /* callbacks are diabled */ unsigned psxfcb$v_spare : 31; } psxfcb$r_flags; int psxfcb$l_block_count [4]; /* per-mode block counters */ int psxfcb$l_handler_count [4]; /* count of handlers */ int psxfcb$l_wait [4]; /* wait counters (unused */ int psxfcb$l_when; /* when callbacks are being call */ int psxfcb$l_failed_when; /* state of when bits on failure */ int psxfcb$l_cancel_state; /* mode (+1) of failure */ int psxfcb$l_callback_state; /* mode (+1) of current callbacks */ unsigned int psxfcb$l_pid; /* pid of 'other' process */ unsigned int psxfcb$l_failing_disp; /* psxdisp address of failing cb */ void *psxfcb$l_image_list; /* pointer to first image fdb */ void *psxfcb$l_process_list; /* pointer to first process fdb */ unsigned int psxfcb$l_outer_stack; /* saved outer mode stack for cbs */ unsigned int psxfcb$l_save_ap; /* saved AP during callbacks */ unsigned int psxfcb$l_save_fp; /* saved FP during cbs */ unsigned int psxfcb$l_save_sp; /* saved sp during cbs */ unsigned int psxfcb$l_save_psl; /* saved psl during cbs */ unsigned int psxfcb$l_save_exec_sp; /* saved exec stack pointer */ /* */ /* The area below is used to save the kernel mode stack contents while */ /* callbacks are being made */ /* */ unsigned int psxfcb$l_stack_save_area [384]; unsigned int psxfcb$l_exec_stack_area [1280]; } PSXFCB; #if !defined(__VAXC) #define psxfcb$v_disabled psxfcb$r_flags.psxfcb$v_disabled #define psxfcb$v_spare psxfcb$r_flags.psxfcb$v_spare #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 /* __PSXFCBDEF_LOADED */