00001 /* 00002 MODULE NAME CTGCLIENT_ECI.H 00003 00004 DESCRIPTIVE NAME CICS Transaction Gateway ECI Version 2 00005 Application Programming Interface, ECI Parts 00006 00007 V7.2.0.1 00008 00009 Licensed Materials - Property of IBM 00010 00011 "Restricted Materials of IBM" 00012 00013 5724-I81 5655-R25 00014 00015 (c) Copyright IBM Corp. 2008 All Rights Reserved. 00016 00017 US Government Users Restricted Rights - Use, duplication or 00018 disclosure restricted by GSA ADP Schedule Contract with 00019 IBM Corp. 00020 00021 Status: Version 7 Release 2 00022 00023 00024 NOTES :- 00025 00026 This header file is provided with the CICS Transaction Gateway. These 00027 products are available for a number of different operating environments 00028 and to ensure the correct sections of this header are included, one of 00029 the following constants must be defined prior to inclusion: 00030 00031 CICS_W32 - if building a Windows application 00032 CICS_AIX - if building an AIX application 00033 CICS_SOL - if building a Solaris application 00034 CICS_HPUX - if building an HPUX application 00035 CICS_LNX if building a Linux application 00036 CICS_HPIT and CICS_HPUX - 00037 if building an HPUX application on Itanium 00038 */ 00039 00040 #include "ctgclient.h" 00041 00042 #ifndef _CTG_ECI_H 00043 #define _CTG_ECI_H 00044 00045 #if defined (CICS_W32) || defined(CICS_WNT) 00046 #define CICSCALL __cdecl 00047 #else 00048 #define CICSCALL 00049 #endif 00050 00051 #if defined(CICS_AIX) 00052 #pragma options align=packed 00053 #elif defined(CICS_HPUX) 00054 #pragma pack 1 00055 #else 00056 #pragma pack(1) 00057 #endif 00058 00059 /*****************************************************************************/ 00081 typedef struct 00082 { 00083 /* Values used with eci_call_type, for detailed information refer to 00084 * Field Docuementation eci_call_type */ 00085 #define ECI_SYNC 1 00086 00091 signed short eci_call_type; 00092 00093 #define ECI_PROGRAM_NAME_LENGTH 8 00094 00105 char eci_program_name[ECI_PROGRAM_NAME_LENGTH]; 00106 00107 #define ECI_USERID_LENGTH 16 00108 00110 char eci_userid[ECI_USERID_LENGTH]; 00111 00112 #define ECI_PASSWORD_LENGTH 16 00113 00115 char eci_password[ECI_PASSWORD_LENGTH]; 00116 00117 #define ECI_TRANSID_LENGTH 4 00118 00137 char eci_transid[ECI_TRANSID_LENGTH]; 00138 00139 #define ECI_ABEND_CODE_LENGTH 4 00140 00145 char eci_abend_code[ECI_ABEND_CODE_LENGTH]; 00146 00157 void * eci_commarea; 00158 00170 signed short eci_commarea_length; 00171 00178 signed short eci_timeout; 00179 00180 /* Values used with eci_extend_mode, for detailed information refer to 00181 * Field Docuementation eci_extend_mode */ 00182 #define ECI_NO_EXTEND 0 00183 #define ECI_EXTENDED 1 00184 #define ECI_COMMIT 2 00185 #define ECI_BACKOUT 4 00186 00240 signed short eci_extend_mode; 00241 00242 /* Used with eci_luw_token to request a new logical unit of work */ 00243 #define ECI_LUW_NEW 0 00244 00266 signed int eci_luw_token; 00267 00268 /* ECI_VERSION_2 must be used */ 00269 #define ECI_VERSION_2 3 00270 00274 signed short eci_version; 00275 00276 #define ECI_SYSTEM_NAME_LENGTH 8 00277 00295 char eci_system_name[ECI_SYSTEM_NAME_LENGTH]; 00296 00297 #define ECI_TPN_LENGTH 4 00298 00312 char eci_tpn[ECI_TPN_LENGTH]; 00313 00318 signed short commarea_outbound_length; 00319 00324 signed short commarea_inbound_length; 00325 00327 void * reserved1; 00328 } CTG_ECI_PARMS; 00329 00330 00331 /*****************************************************************************/ 00335 typedef CTG_ECI_PARMS *PCTG_ECI_PARMS; 00336 00337 00338 /*****************************************************************************/ 00365 int CICSCALL CTG_ECI_Execute(CTG_ConnToken_t gwTok, 00366 CTG_ECI_PARMS *EciParms); 00367 00368 00369 /*********************************************************************/ 00370 /* CICS TG ECI Return Code constants */ 00371 /*********************************************************************/ 00373 #define ECI_NO_ERROR 0 00374 00376 #define ECI_ERR_INVALID_DATA_LENGTH -1 00377 00379 #define ECI_ERR_INVALID_EXTEND_MODE -2 00380 00382 #define ECI_ERR_NO_CICS -3 00383 00386 #define ECI_ERR_CICS_DIED -4 00387 00390 #define ECI_ERR_REQUEST_TIMEOUT -5 00391 00393 #define ECI_ERR_RESPONSE_TIMEOUT -6 00394 00396 #define ECI_ERR_TRANSACTION_ABEND -7 00397 00399 #define ECI_ERR_LUW_TOKEN -8 00400 00402 #define ECI_ERR_SYSTEM_ERROR -9 00403 00405 #define ECI_ERR_INVALID_CALL_TYPE -14 00406 00409 #define ECI_ERR_RESOURCE_SHORTAGE -16 00410 00413 #define ECI_ERR_NO_SESSIONS -17 00414 00416 #define ECI_ERR_INVALID_DATA_AREA -19 00417 00419 #define ECI_ERR_INVALID_VERSION -21 00420 00422 #define ECI_ERR_UNKNOWN_SERVER -22 00423 00426 #define ECI_ERR_SECURITY_ERROR -27 00427 00430 #define ECI_ERR_MAX_SYSTEMS -28 00431 00434 #define ECI_ERR_MAX_SESSIONS -29 00435 00439 #define ECI_ERR_ROLLEDBACK -30 00440 00441 #if defined(CICS_AIX) 00442 #pragma options align=reset 00443 #elif defined(CICS_HPUX) && defined(__cplusplus) 00444 #pragma pack 00445 #elif defined(CICS_HPUX) && defined(CICS_HPIT) 00446 #pragma pack 00447 #elif defined(CICS_HPUX) 00448 #pragma HP_ALIGN HPUX_NATURAL 00449 #else 00450 #pragma pack() 00451 #endif 00452 00453 #endif /* _CTG_ECI_H */ 00454
© Copyright IBM Corporation 2006, 2009. All rights reserved.
For legal information, see http://www.ibm.com/legal/copytrade.shtml