z/OS MVS Programming: Callable Services for High-Level Languages
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


CEAYTSOR header file

z/OS MVS Programming: Callable Services for High-Level Languages
SA23-1377-02

For the C programmer, include file ceaytsor.h defines the structures, functions, and macros used for the CEATsoRequest API. The header file is stored in partitioned data set SYS1.SIEAHDRV, and contains the following information.

 
 
#ifndef __ceaytsor__
#define __ceaytsor__
 
/****** START OF SPECIFICATIONS **************************************
*
* DESCRIPTIVE NAME:  CEA TsoRequest structures
*
* ACRONYM:  CEAYTSOR
*
* STRUCT NAME:  None
*
* LABEL PREFIX:  None
*
* COMPONENT ID:  Common Event Adpater (CEA)
*
****** END OF SPECIFICATIONS *****************************************/
 
/***PROPRIETARY_STATEMENT********************************************/ 
/*                                                                  */ 
/*                                                                  */ 
/* LICENSED MATERIALS - PROPERTY OF IBM                             */ 
/* COPYRIGHT IBM CORP. 2011, 2012                                   */ 
/*                                                                  */ 
/* STATUS= HBB7770                                                  */ 
/*                                                                  */ 
/***END_OF_PROPRIETARY_STATEMENT*************************************/ 
/*                                                                  */ 
/*01* EXTERNAL CLASSIFICATION: PI                                   */ 
/*01* END OF EXTERNAL CLASSIFICATION:                               */ 
/*                                                                  */ 
/*********************************************************************/
 
/* $Id: ieac1as2.ide, ieapr, osnp_v1r13.5 1.9 12/01/24 17:16:48 $ */
 
/**********************************************************************
 * FUNCTION:
 *
 *
 * This header file defines the structures, functions
 * and macros used for CEATsoRequest() API.                 
 *
 * This support requires the setting of _XOPEN_SOURCE_EXTENDED
 *
 * RESTRICTIONS:
 *   None
 *
 * CHANGE-ACTIVITY:
 *
****END OF SPECIFICATIONS*********************************************/
 
/**********************************************************************
                  Constants
**********************************************************************/
#define     CEATSOREQUEST_CURRENTVERSION    1
#define     CEATSOQUERY_CURRENTVERSION      1
#define     CEATSOERROR_CURRENTVERSION      1
#define     CEATSODIAG_CURRENTVERSION       1
#define     CEATSOREQUEST_EYECATCHER   "CEAYTSOR"
#define     CEATSOQUERY_EYECATCHER     "CEAYTSOQ"
#define     CEATSOERROR_EYECATCHER     "CEAIERRO"
 
/**********************************************************************
                  CONSTANTS ceatso_requesttype;
       These are the request types used in the CEATsoRequest structure
**********************************************************************/
#define  CeaTsoStart       1
#define  CeaTsoEnd         2
#define  CeaTsoQuery       3
#define  CeaTsoAttn        4
#define  CeaTsoPing        5
#define  CeaTsoQueryApp    6
 
/**********************************************************************
                  CONSTANTS ceatso_flags
       These are the flag values used in the CEATsoRequest structure
**********************************************************************/
#define CEATSO_ABLOGOFF 0x8000  // Use Cancel to end the TSO session
#define CEATSO_NOREUSE  0x4000  // Do not reconnect an existing session
 
/**********************************************************************
 CEATsoRequestStruct_t
 
 eyeCatcher - "CEAYTSOR"
 version    - CEATSOQUERY_CURRENTVERSION
 request    - request - uses CeaTso* constants
 
**********************************************************************/
 
struct CEATsoRequestStruct_s {
  char             ceatso_eyecatcher[8];  /* eye catcher: CEAYTSOR   */
  uint32_t         ceatso_version;        /* version number          */
  uint32_t         ceatso_requesttype;    /* which type request      */
  char             ceatso_userid[8];      /* tso id                  */
  uint32_t         ceatso_asid;           /* tso asid                */
  char             ceatso_logonproc[8];   /* logon proc name         */
  char             ceatso_command[80];    /* unused                  */
  uint16_t         ceatso_numqueryreq;    /* caller num max query    */
  uint16_t         ceatso_numqueryrslt;   /* actual num query        */
  uint32_t         ceatso_duration;       /* unused                  */
  uint32_t         ceatso_msgqueueid;     /* msg queue id            */
  uint16_t         ceatso_charset;        /* callers character set   */
  uint16_t         ceatso_codepage;       /* callers code page       */
  uint16_t         ceatso_screenrows;     /* screen rows             */
  uint16_t         ceatso_screencols;     /* screen cols             */
  char             ceatso_account[40];    /* tso account number      */
  char             ceatso_group[8];       /* tso group name          */
  char             ceatso_region[7];      /* tso region size         */
  char             ceatso_instance[1];    /* tso instance number     */
  char             ceatso_apptag[8];      /* identity of caller      */
  char             ceatso_stoken[8];      /* tso asid stoken         */
  uint32_t         ceatso_ascbaddr;       /* tso ascb address        */
  uint16_t         ceatso_flags;          /* tso request flags       */
  uint16_t         ceatso_index;          /* tso session index       */
  char             rsvd1[8];              /* reserved space          */
 };
typedef struct CEATsoRequestStruct_s  CEATsoRequestStruct_t;
 
/**********************************************************************
 CEATsoQueryStruct_t*
 
 This structure is used to return Query results for the CEATsoRequesst
  CeaTsoQuery
 
 eyeCatcher - "CEAYTSOQ"
 version    - 1
 
**********************************************************************/
struct CEATsoQueryStruct_s{               /* query results           */
  char             ceatsoq_eyecatcher[8]; /* eye catcher: CEAYTSOQ   */
  uint32_t         ceatsoq_version;       /* version number          */
  uint32_t         ceatsoq_requesttype;   /* which type request      */
  char             ceatsoq_userid[8];     /* tso id                  */
  uint32_t         ceatsoq_asid;          /* tso asid                */
  char             ceatsoq_logonproc[8];  /* logon proc name         */
  char             ceatsoq_command[80];   /* tso command             */
  uint16_t         ceatsoq_numqueryreq;   /* caller num max query    */
  uint16_t         ceatsoq_numqueryrslt;  /* actual num query        */
  uint32_t         ceatsoq_duration;      /* duration                */
  uint32_t         ceatsoq_msgqueueid;    /* msg queue id            */
  uint16_t         ceatsoq_charset;       /* callers character set   */
  uint16_t         ceatsoq_codepage;      /* callers code page       */
  uint16_t         ceatsoq_screenrows;    /* screen rows             */
  uint16_t         ceatsoq_screencols;    /* screen cols             */
  char             ceatsoq_account[40];   /* tso account number      */
  char             ceatsoq_group[8];      /* tso group name          */
  char             ceatsoq_region[7];     /* tso region size         */
  char             ceatsoq_instance[1];   /* tso instance number     */
  char             ceatsoq_apptag[8];     /* identity of caller      */
  char             ceatsoq_stoken[8];     /* tso asid stoken         */
  uint32_t         ceatsoq_ascbaddr;      /* tso ascb address        */
  uint16_t         ceatsoq_flags;         /* tso request flags       */
  uint16_t         ceatsoq_index;         /* tso session index       */
  char             rsvd1[8];              /*reserved space           */
};
typedef struct CEATsoQueryStruct_s  CEATsoQueryStruct_t;
 
/**********************************************************************
 CEATsoDiag_t
 
 version       - version of CEADiag_t
 flags         - diagnostic flags
 offset        - offset point to additional information
 rsvd          - reserved for future use
 diag1         - Used to hold return codes
 diag2         -   from system REXX scripts
 diag3         -   or other things outside of
 diag4         -   CEA control
 rsvd2         - reserved for future use
 messageArea   - Contains any output messages relating to error codes
 
* This structure is part of CEAError, doesn't get its own eyecatcher
**********************************************************************/
 
struct CEATsoDiag_s {
    uint8_t  version;
    uint8_t  flags1;
    uint16_t offset;
    uint8_t  diagid;
    char     rsvd[3];
    uint32_t diag1;
    uint32_t diag2;
    uint32_t diag3;
    uint32_t diag4;
    char     rsvd2[16];
    char     messageArea[256];
 };
typedef struct CEATsoDiag_s CEATsoDiag_t;
 
/**********************************************************************
 CEAError_t
 
 eyeCatcher - "CEAIERRO"
 version    - version of CEAError_t
 returnCode - function return code - duplicate of function return value
 reasonCode - further explanation of a return code.
 diag       - further explanation of a reason code.
**********************************************************************/
 
struct CEATsoError_s {
    char      eyeCatcher[8];
    uint32_t  version;
    int32_t   returnCode;
    uint32_t  reasonCode;
    CEATsoDiag_t diag;
 };
typedef struct CEATsoError_s CEATsoError_t;
 
/**********************************************************************
 Function prototype CEATsoRequest
**********************************************************************/
#ifdef __cplusplus
extern "C" {
#endif
int32_t CEATsoRequest(CEATsoRequestStruct_t*,
                      CEATsoQueryStruct_t*,
                      CEATsoError_t*);
#ifdef __cplusplus
 }
#endif
 
/**********************************************************************
 Diag Values
 
 These are the possible values that can be retruned in the Diag1
 field in the CEAError_t Diag structure returned from the
 CEATsoRequest API
 
 Note: Some duplication of codes exist but codes are unique per API
       Request Type
**********************************************************************/
 
#define kCEATsoBadRacRouteExtr     0X0004 //0004
#define kCEATsoBadRacRouteCreate   0X0005 //0005
#define kCEATsoBadAddSession       0X000A //0010
#define kCEATsoBadQuerySession     0X000B //0011
#define kCEATsoBadASCBStoken       0X000C //0012
#define kCEATsoBadSessIndex        0X000D //0013
#define kCEATsoBadRemoveSessEntry  0X000E //0014
#define kCEATsoBadLogonMGCRE       0X000F //0015
#define kCEATsoSessionNotFound     0X0010 //0016
#define kCEATsoBadSessENQreq       0X0011 //0017
#define kCEATsoBadSessDEQreq       0X0012 //0018
#define kCEATsoBadSessUpdateLR     0X0013 //0019
#define kCEATsoBadQuerySessApptag  0X0014 //0020
#define kCEATsoBadNumEntries       0X0015 //0021
#define kCEATsoBadMsgQDelete       0X0016 //0022
#define kCEATsoBadAppTag           0X0017 //0023
#define KCEATsoBadWiComCreate      0X0017 //0023
#define KCEATsoBadResmgrAdd        0X0018 //0024
#define kCEATsoBadQueryAllSessions 0X0019 //0025
#define kCEATsoBadApptag           0X001A //0026
#define kCEATsoBaduserid           0X001B //0027
#define kCEATsoBadlogonproc        0X001C //0028
#define kCEATsoBadcharset          0X001D //0029
#define kCEATsoBadcodepage         0X001E //0030
#define kCEATsoBadscreenrows       0X001F //0031
#define kCEATsoBadscreencols       0X0020 //0032
#define kCEATsoBadaccount          0X0021 //0033
#define kCEATsoBadgroup            0X0022 //0034
#define kCEATsoBadregion           0X0023 //0035
#define kCEATsoBadQueryEyecatcher  0X0024 //0036
#define kCEATsoBadQueryVersion     0X0025 //0037
#define kCEATsoBadCharsetCodepage  0X0026 //0038
#define kCEATsoBadregionsize       0X0027 //0039
 
#endif  /* __ceaytsor__ */

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014