/**/ /***************************************************************************/ /** **/ /** © 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:24 by OpenVMS SDL EV3-3 */ /* Source: 04-APR-2008 00:52:47 $1$DGA7274:[LIB_H.SRC]SCAMGTDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $SCAMGTDEF ***/ #ifndef __SCAMGTDEF_LOADED #define __SCAMGTDEF_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 /* */ /* Some common Response Status Codes. */ /* */ #define PEMGT$K_STS_NO_SUCH_PORT 129 /* No such port (PE_PORT not found) */ #define PEMGT$K_STS_CONT_NOT_VALID 130 /* Continuation data not valid */ #define PEMGT$K_STS_CONT_STALE 131 /* Continuation data stale */ #define PEMGT$K_STS_CONT_WITH_HINT 132 /* Continuation data supplied with non-zero hint */ #define PEMGT$K_STS_CONT_DISALLOWED 133 /* Continuation data disallowed for request */ #define PEMGT$K_STS_CONT_LOST 134 /* Continuation point not found */ #define PEMGT$K_STS_INCOMP_REQ 135 /* Incomplete request (buffer contains partial request) */ #define PEMGT$K_STS_NAME_NOT_FOUND 136 /* Name (VC, CH, BUS) not found */ #define PEMGT$K_STS_INVALID_NAME 137 /* Invalid name (VC, CH, BUS)(partial name given) */ #define PEMGT$K_STS_PAR_REJECTED 138 /* Parameter change rejected */ #define PEMGT$K_STS_PAR_NOT_IMP 139 /* Parameter setting not implemented */ #define PEMGT$K_STS_NO_DATA_FOUND 140 /* No data found */ #define PEMGT$K_STS_IP_NOT_INIT 141 /* IP communication not intialized */ /* */ /* Common SCA driver codes */ /* Here we carve up the SCA object action code space. */ /* We will allow 64 SCA object specific codes and */ /* 64 common SCA codes. So we limit use of the code */ /* space to the first 128 action codes */ /* */ #define SCAMGT$K_PORT_GET 65 /* Get PORT data */ #define SCAMGT$K_CIRC_GET 66 /* Get CIRCUIT data */ #define SCAMGT$K_PORT_SET_PRIORITY 67 /* Set PORT priority */ #define SCAMGT$K_CIRC_SET_PRIORITY 68 /* Set CIRCUIT priority */ /* First SCA common action code */ #define SCAACT$K_SCA_FIRST_SCA_CODE 64 /* Number of SCA common action codes */ #define SCAACT$K_SCA_NUM_SCA_CODES 64 /* */ /* PORTNAM$ -- PORT name - Handle for a PORT structure */ /* */ #define PORTNAM$K_LENGTH 16 /* PORTNAM$ length */ typedef struct _portnam { unsigned char portnam$t_portname [8]; /* ASCIC PORT device name */ unsigned char portnam$b_port_sel; /* Selection value: 0 - Include, 1 - Exclude */ char portnam$t_port_fill [7]; /* Fill to lquadword boundary */ } PORTNAM; /* */ /* CIRCNAM$ -- Circuit name - Handle for a Circuit (Path) structure */ /* */ #define CIRCNAM$K_LENGTH 48 /* CIRCNAM$ length */ typedef struct _circnam { unsigned char circnam$t_nodename [16]; /* ASCIC remote system name */ unsigned char circnam$t_portname [16]; /* Handle for circuit port */ __union { unsigned __int64 circnam$q_rstation_num; /* Remote station ID disambiguator */ unsigned char circnam$t_rstation_char [8]; } circnam$r_rstation_overlay; unsigned char circnam$b_circ_sel; /* Selection value: 0 - Include, 1 - Exclude */ unsigned char circnam$b_rstation_set; /* Flag: 0 - Rstation_num is not valid, */ /* 1 - RSTATION_NUM is valid. */ /* Needed because 0 is a valid remote station */ /* number. */ char circnam$t_circ_fill [6]; /* Fill to quadword boundary */ } CIRCNAM; #if !defined(__VAXC) #define circnam$q_rstation_num circnam$r_rstation_overlay.circnam$q_rstation_num #define circnam$t_rstation_char circnam$r_rstation_overlay.circnam$t_rstation_char #endif /* #if !defined(__VAXC) */ /* */ /* CIRCACT$ -- Circuit Management action structure */ /* */ #define CIRCACT$K_MAJOR 1 /* CIRCACT$ minor version */ #define CIRCACT$K_MINOR 1 /* CIRCACT$ major version */ #define CIRCACT$K_ACT_PARAMS_V1_1_LEN 8 /* V1.1 CIRC ACT_PARAMS size */ #define CIRCACT$K_MIN_LEN 8 /* CIRCACT$ length */ /* */ #define CIRCACT$R_SELCIRCS 8 /* Start of the CIRC names */ typedef struct _circact { __struct { /* Parameters describing action to be performed */ unsigned char circact$b_act_par_len; /* Length of ACT_PARAMS record */ char circact$t_act_par_fill [3]; /* Fill to longword boundary */ /* */ /* CIRC parameters. */ /* */ __union { unsigned int circact$l_params; /* Force longword minimum size */ unsigned char circact$b_new_mgt_priority; /* Priority value to be assigned */ } circact$r_act_par_overlay; } circact$r_act_params; /* CIRC selection array. */ /* */ } CIRCACT; #if !defined(__VAXC) #define circact$b_act_par_len circact$r_act_params.circact$b_act_par_len #define circact$l_params circact$r_act_params.circact$r_act_par_overlay.circact$l_params #define circact$b_new_mgt_priority circact$r_act_params.circact$r_act_par_overlay.circact$b_new_mgt_priority #endif /* #if !defined(__VAXC) */ /* */ /* PORTACT$ -- Port management action structure */ /* */ #define PORTACT$K_MAJOR 1 /* PORTACT$ minor version */ #define PORTACT$K_MINOR 1 /* PORTACT$ major version */ #define PORTACT$K_ACT_PARAMS_V1_1_LEN 8 /* V1.1 PORT ACT_PARAMS size */ #define PORTACT$K_MIN_LEN 8 /* PORTACT$ length */ /* */ #define PORTACT$R_SELPORTS 8 /* Start of the PORT identifier */ typedef struct _portact { __struct { /* Parameters describing action to be performed */ unsigned char portact$b_act_par_len; /* Length of ACT_PARAMS record */ char portact$t_act_par_fill [3]; /* Fill to longword boundary */ /* */ /* PORT parameters. */ /* */ __union { unsigned int portact$l_params; /* Force longword minimum size */ unsigned char portact$b_new_mgt_priority; /* Priority value to be assigned */ } portact$r_act_par_overlay; } portact$r_act_params; /* PORT selection array. */ /* */ } PORTACT; #if !defined(__VAXC) #define portact$b_act_par_len portact$r_act_params.portact$b_act_par_len #define portact$l_params portact$r_act_params.portact$r_act_par_overlay.portact$l_params #define portact$b_new_mgt_priority portact$r_act_params.portact$r_act_par_overlay.portact$b_new_mgt_priority #endif /* #if !defined(__VAXC) */ /* *********************************************************************** */ /* */ /* Responses to actions on port/path Circuits */ /* */ /* *********************************************************************** */ #define PORTDAT$K_MAJOR 1 /* PORTDAT$ major version */ #define PORTDAT$K_MINOR 1 /* PORTDAT$ minor version */ #define PORTDAT$K_V1_1_LEN 72 /* PORTDAT$ length for: */ /* major version = 1 */ #define PORTDAT$K_LENGTH 72 typedef struct _portdat { unsigned char portdat$r_port_handle [16]; int portdat$l_mgt_priority; /* Current management priority setting */ unsigned int portdat$l_dg_xmt; unsigned int portdat$l_dg_rcv; unsigned int portdat$l_msg_xmt; unsigned int portdat$l_msg_rcv; unsigned int portdat$l_num_map; unsigned int portdat$l_bytes_mapped; unsigned int portdat$l_pdt; unsigned int portdat$l_load_class; /* Port's Load Class */ unsigned int portdat$l_bytes_dg_xmt_peak; /* Peak value of total bytes xmitted */ /* by port for DG only */ unsigned int portdat$l_bytes_dg_rcv_peak; /* Peak value of total bytes rcv'd */ /* by port for DG only */ unsigned int portdat$l_bytes_msg_xmt_peak; /* Peak value of total bytes xmitted */ /* by port for MSG only */ unsigned int portdat$l_bytes_msg_rcv_peak; /* Peak value of total bytes rcv'd */ /* by port for MSG only */ unsigned int portdat$l_bytes_mapped_peak; /* Peak value of total bytes mapped */ /* by port for BT only */ /* minor version = 1 */ /* NOTE: When making additions to this structure you must do the following to ensure */ /* interoperability with prior AM & SCACP versions: */ /* - Additional cells must only be added at the end of the currently defined cells. */ /* ie: After the most recent 'constant Vn_n_LEN...' declaration, and */ /* immediately preceding this note. The VCDAT$K_MINOR must be */ /* incremented. Otherwise, the major version (VCDAT$K_MAJOR) must be */ /* incremented, and the minor version reset to 0. */ /* A constant defining the end of the cells contained in the new version must */ /* also be added. The constant's name must be defined using this template: */ /* VCDAT$K_V#major_#minor_LEN */ } PORTDAT; #define CIRCDAT$K_MAJOR 1 /* CIRCDAT$ minor version */ #define CIRCDAT$K_MINOR 1 /* CIRCDAT$ major version */ /* */ #define CIRCDAT$K_V1_1_LEN 64 /* CIRCDAT$ length for: */ /* major version = 1 */ #define CIRCDAT$K_LENGTH 64 typedef struct _circdat { /* CIRCUIT name. */ /* */ unsigned char circdat$t_nodename [16]; /* ASCIC remote system name */ unsigned char circdat$t_portname [16]; /* Handle for circuit port */ unsigned char circdat$b_rstation [6]; char circdat$t_circ_fill1 [2]; /* Fill to longword boundary */ unsigned short int circdat$w_state; char circdat$t_circ_fill2 [2]; /* Fill to longword boundary */ unsigned int circdat$l_remote_type; int circdat$l_priority; int circdat$l_mgt_priority; /* Current management priority setting */ unsigned int circdat$l_load_class; /* Circuit's current load class. */ unsigned int circdat$l_rstate; /* Remote port's current state. */ /* minor version = 1 */ /* NOTE: When making additions to this structure you must do the following to ensure */ /* interoperability with prior AM & SCACP versions: */ /* - Additional cells must only be added at the end of the currently defined cells. */ /* ie: After the most recent 'constant Vn_n_LEN...' declaration, and */ /* immediately preceding this note. The VCDAT$K_MINOR must be */ /* incremented. Otherwise, the major version (VCDAT$K_MAJOR) must be */ /* incremented, and the minor version reset to 0. */ /* A constant defining the end of the cells contained in the new version must */ /* also be added. The constant's name must be defined using this template: */ /* VCDAT$K_V#major_#minor_LEN */ } CIRCDAT; #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 /* __SCAMGTDEF_LOADED */