📄 pimcopr.h
字号:
#ifndef _PIMCOPR_H_
#define _PIMCOPR_H_
#ifdef HEADERVERSIONS
static char *_pimcopr_h_ = "@(#)pimCOPR.h 1.3 !R2";
#endif
/*************************************************************************
NAME:
pimCOPR.h
DESCRIPTION:
Defines and Data Structure for PIM Control Operator.
The majority of these defines are based on definitions in IBM
document "Transaction Programmer's Reference Manual for LU Type 6.2.
Copyright 1985 - 1991 by Rabbit Software Corporation
*************************************************************************/
/*
Include "rabbit.h" to obtain various port-specific types and constants.
*/
#include "rabbit.h"
/* defines for maximum COPR PIM values: */
#define RMAXPU 32 /* maximum number of local LUs */
#define MAXFILENAME 65 /* maximum length for a file name */
#define MAXUSERCODE 10 /* maximum size of user code */
#define MAXSESSID 50 /* maximum number of session IDs */
#define MAXBUFFER 1024 /* maximum size of COPR PIM Buffer */
#define MAXLLU 32 /* maximum number of local LUs */
#define MAXRLU 32 /* maximum number of remote LUs */
#define MAXTPS 32 /* maximum number of TPs */
#define MAXMODE 32 /* maximum number of Mode List entries */
/* define for standard IBM name (used for PU, LU, TP, Mode Names, etc.) */
#ifndef MAXIBMNAME
#define MAXIBMNAME 9
typedef char IBMName[MAXIBMNAME];
#endif
/************************************************************************/
/* SHARED RETURN CODES and RETURN SUBCODES */
/* */
/* The following Return codes and subcodes are shared by pimCOPR.h and */
/* pimLU62.h. They are defined under different names from those in */
/* pimLU62.h. Although the assigned values on both copies are not */
/* necessary to be identical, it is recommended to keep the same */
/* assigned values on both copies. */
/************************************************************************/
/************************************************************************/
/************************** Shared Return Codes *************************/
/************************************************************************/
/* */
/* Most LU 6.2 PIM verbs return a successful/unsuccessful status in the */
/* Return Code. All return codes are IBM defined (see Chapter 4, */
/* Return Codes, of the SNA Transaction Programmer's Reference Manual */
/* for LU Type 6.2, for the shared return codes). */
/* */
/************************************************************************/
#define rcOK 0 /* OK. */
#define rcALLOC_ERR 1 /* ALLOCATION_ERROR */
#define rcPARM_ERR 6 /* PARAMETER_ERROR */
#define rcNR_RES_FAIL 10 /* RESOURCE_FAILURE_NO_RETRY */
#define rcR_RES_FAIL 11 /* RESOURCE_FAILURE_RETRY */
/* Abend Return Codes - These are return codes returned to */
/* the caller instead of abending as specified by LU6.2 */
/* The decision as to whether or not to abend is up to the application.*/
#define rcINV_VERB 104 /* Invalid verb or not supported*/
#define rcINV_SNASVCMG 106 /* Invalid ModeName 'SNASVCMG' */
#define rcPRIV_VIOL 108 /* TP Priviledge violation */
/* Implementation specific return code */
#define rcNORES 150 /* LU62Mgr does not have enough */
/* resources to process verb. */
#define rcTPNOTACT 151 /* The TP is not active. */
/* Did not issue AttachCOPR(). */
#define rcTPACTIVE 152 /* TP already active. */
#define rcSYSERR 154 /* Internal System Error - see */
/* System Administrator. */
#define rcNULLCB 156 /* NULL control block is passed */
/* in the ATTACHCOPR(). */
#define rcNOATTACH 157 /* Not allowed to Attach and */
/* Detach more than once. */
#define rcBADFORMAT 159 /* Bad format parameter in */
/* ATTACHCOPR() call. */
/************************************************************************/
/************************ Shared Return SubCodes **********************/
/************************************************************************/
/* */
/* When the Return Code field indicates unsuccessful verb execution, */
/* more detailed error information may be returned in the Return SubCode*/
/* field. All return subcodes are IBM defined (see Chapter 4, Return */
/* Codes, in the SNA Transaction Programmer's Reference Manual for LU */
/* Type 6.2, for the shared return subcodes). */
/* */
/************************************************************************/
#define rscNULL 0 /* No return subcode */
/* rcALLOC_ERR -- ALLOCATION_ERROR */
#define rscNR_ALLOCFAIL 1 /* ALLOCATION_FAILURE_NORETRY */
#define rscR_ALLOCFAIL 2 /* ALLOCATION_FAILURE_RETRY */
#define rscL_SYNCLNOTSUP 5 /* SYNC_LEVEL_NOT_SUPPORTED_BY_LU*/
#define rscTPNNOTREC 6 /* TPN_NOT_RECOGNIZED */
#define rscLLU_NOTAVAIL 15 /* Local LU not available */
/* rcPARM_ERR -- PARAMETER_ERROR */
#define rscINV_MODENAME 10 /* Invalid Mode name. */
#define rscINV_CONVTYPE 12 /* Invalid conversation type. */
#define rscINV_SYNCLEV 13 /* Invalid sync level. */
#define rscINV_TPN 14 /* Invalid TPN. */
#define rscINVTPTYPE 50 /* Invalid TP type. */
#define rscINV_NAMELEN 51 /* Invalid Length of Name. */
/************************************************************************/
/* END OF SHARED RETURN CODES and RETURN SUBCODES */
/************************************************************************/
/************************************************************************/
/************************** Return Codes *******************************/
/************************************************************************/
/* */
/* Most LU 6.2 PIM verbs return a successful/unsuccessful status in the */
/* Return Code. All return codes are IBM defined (see Chapter 4, */
/* Return Codes, of the SNA Transaction Programmer's Reference Manual */
/* for LU Type 6.2, for the return codes). */
/* */
/************************************************************************/
#define rcACKED 200 /* CNOS request ACKed. */
#define rcACTFNR 201 /* ACTIVATION_FAILURE_NO_RETRY. */
#define rcACTFR 202 /* ACTIVATION_FAILURE_RETRY. */
#define rcCOMRACE 204 /* COMMAND_RACE_REJECT. */
#define rcMSLCLOSE 205 /* LU_MODE_SESSION_LIMIT_CLOSED.*/
#define rcMSLEXCEED 206 /* LU_MODE_SESSION_LIMIT_EXCEEDED.*/
#define rcMSLNZERO 207 /* LU_MODE_SESSION_LIMIT_NOT_ZERO.*/
#define rcMSLZERO 208 /* LU_MODE_SESSION_LIMIT_ZERO. */
#define rcSLEXCEED 209 /* LU_SESSION_LIMIT_EXCEEDED. */
#define rcRQEXCMAX 211 /* REQUEST_EXCEEDS_MAX_ALLOWED. */
#define rcURMODE 214 /* UNRECOGNIZED_MODE_NAME. */
#define rcVERBNS 215 /* Verb not supported. */
#define rcVERBNA 216 /* Verb not allowed. */
#define rcSECERR 217 /* Security Violation. */
#define rcLLUNACT 218 /* Local LU not active */
/* Abend Return Codes - These are return codes return to */
/* the caller instead of abending as specified by LU6.2 TPRM. */
/* The decision as to whether or not to abend is up to the application.*/
/* CHANGE_SESSION_LIMIT */
/* INITIALIZE_SESSION_LIMIT */
#define rcINV_CWSUM 220 /* minCw + minCl > SLIM */
#define rcPARM_SNASVCMG 221 /* Parameter Error on SNASVCMG */
/* RESET_SESSION_LIMIT */
#define rcM_NOT_RESET 222 /* Other Modename Not Reset */
/* Implementation specific Return Codes */
#define rcBUFTOOSMALL 223 /* Buffer size is too small */
#define rcRETRY 224 /* Retry CNOS exchange without */
/* informing the COPR TP */
/************************************************************************/
/*************************** Return SubCodes **************************/
/************************************************************************/
/* */
/* When the Return Code field indicates unsuccessful verb execution, */
/* more detailed error information may be returned in the Return SubCode*/
/* field. All return subcodes are IBM defined (see Chapter 4, Return */
/* Codes, in the SNA Transaction Programmer's Reference Manual for LU */
/* Type 6.2, for the return subcodes). */
/* */
/************************************************************************/
#define rscASPEC 100 /* AS_SPECIFIED. */
#define rscANEGO 101 /* AS_NEGOTIATED. */
#define rscINACTSESS 102 /* Session not active. */
#define rscINV_LLUNAME 103 /* INVALID LOCAL LU NAME */
#define rscINV_RLUNAME 104 /* Invalid Remote LU Name */
/* Non-architected Return Subcodes */
/* rcPARM_ERR - PARAMETER_ERROR */
#define rscINV_SID 150 /* Invalid Session Id */
#define rscINVLUPR 151 /* Invalid LUpair. */
#define rscINVTYPE 152 /* Invalid display rq type. */
#define rscINV_PUNAME 153 /* Invalid PU Name */
#define rscINVSESSLIM 155 /* Invalid Session Limit. */
#define rscINVSRCMINCON 156 /* Invalid source minimum cont */
/* winner. */
#define rscINVTRGMINCON 157 /* Invalid target minimum cont */
/* winner. */
#define rscINVRESPON 158 /* Invalid Responsible. */
#define rscINVMODETYPE 159 /* Invalid Mode Type. */
#define rscINVDRAIN 160 /* Invalid Drain. */
#define rscINVFORCE 161 /* Invalid Force. */
#define rscINVDACTTYPE 162 /* Invalid Deactivation Type. */
#define rscINVKEY 164 /* Invalid DispMlist LU Key */
#define rscSCBNF 165 /* SCB Not Found. */
#define rscTPNF 154 /* TP Not Found. */
#define rscLLUNACT 166 /* local LU not active */
#define rscINV_SVNAME 167 /* Invalid Server Name */
/************************************************************************/
/* */
/* PARAMETER to VERBS */
/* */
/************************************************************************/
/* define SINGLE SESSION GROUP LU name for the following verbs: */
/* CHANGE_SESSION_LIMIT */
/* INITIALIZE_SESSION_LIMIT */
/* RESET_SESSION_LIMIT */
/* ACTIVATE_SESSION */
#define glSSESSGRP "SSESSGRP"
/* define RESPONSIBLE parameter for the following verbs: */
/* CHANGE_SESSION_LIMIT */
/* RESET_SESSION_LIMIT */
#define cnSOURCE 1 /* source is responsible */
#define cnTARGET 2 /* target is responsible */
/* define Mode Type for the following verb: */
/* RESET_SESSION_LIMIT */
#define mtONE 0 /* reset for specific mode name */
#define mtALL 1 /* reset for all mode names */
/* define FORCE parameter for the following verb: */
/* RESET_SESSION_LIMIT */
#define rlNOFORCE 0 /* do not force */
#define rlFORCE 1 /* do force */
/* define DRAIN parameters for the following verb: */
/* RESET_SESSION_LIMIT */
#define dNO 1 /* do not drain */
#define dYES 2 /* do drain */
/* define Type parameter for the following verb: */
/* DEACTIVATE_SESSION */
#define dsCLEANUP 0 /* clean-up session deactivate */
#define dsNORMAL 1 /* normal session deactivation */
/* define value for Key parameter of the following verb: */
/* DISPLAY_MODE_LIST */
#define kyLOCAL 0 /* Local LU as key */
#define kyREMOTE 1 /* Remote LU as key */
/* define types of TPs for the following return structure: */
/* tTPlist */
#define ttUSER 0x40 /* User TP */
#define ttDIA 0x20 /* DIA */
#define ttSNADS 0x21 /* SNADS */
#define ttLUSVC 0x06 /* LU SVC TP */
/* define types of local LU or Mode for the following return structures */
/* tLLU, tLLUlist, tMode */
#define luSINGLE 0 /* Single sessions LU */
#define luPARAL 1 /* Parallel sessions LU */
#define luSSG 2 /* Single Session Group LU */
/* define local LU states for the following return structure: */
/* tLLU */
#define luRESET 0 /* LU is Inactive */
#define luACTIVE 1 /* LU is Active */
/* define local LU states for the following return structure: */
/* tSV */
#define svINACTIVE 0 /* Server is Inactive */
#define svACTIVE 1 /* Server is Active */
/* define type of remote Node for the following return structure: */
/* tRLU */
#define nodeHOST 0 /* Host Node */
#define nodePEER 1 /* Peer-to-Peer 2.1 Node */
/* define type of sessions a remote LU currently has */
/* tRLU */
#define tcSINGLE 0 /* Single session */
#define tcPARAL 1 /* Parallel sessions */
#define tcNONE 2 /* No session */
/* define Highest Sync Level Supported by Mode and TP */
/* tMode */
/* tTP */
#define synNONE 0 /* no Sync Level */
#define synCONFIRM 1 /* Confirm */
#define synSYNCPT 2 /* Sync Point */
/* define Single Session ReInitialization Responsibility */
/* tMode */
#define riRESERVED 0 /* Mode Name supports parallel */
#define riCOPR 1 /* Operator controlled */
#define riPHS 2 /* Primary HS reinitiate */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -