📄 atmi.h
字号:
/* * Copyright (c) 1997 BEA Systems, Inc. * All rights reserved * * THIS IS UNPUBLISHED PROPRIETARY * SOURCE CODE OF BEA Systems, Inc. * The copyright notice above does not * evidence any actual or intended * publication of such source code. *//* * Copyright * 1996 BEA Systems, Inc. * * Portions of this software Copyright * 1995 Novell, Inc. * All rights reserved * * THIS IS UNPUBLISHED PROPRIETARY * SOURCE CODE OF BEA Systems, Inc. * The copyright notice above does not * evidence any actual or intended * publication of such source code. * * #ident "@(#) tuxedo/include/atmi.h $Revision: 1.17 $" */#ifndef ATMI_H#define ATMI_H#ifndef TMENV_H#include <tmenv.h>#endif#ifndef NOWHATstatic char h_atmi[] = "@(#) tuxedo/include/atmi.h $Revision: 1.17 $";#endif#include <fml32.h> /* Needed for FBFR32 and FLDID32 definitions *//* * DEFINITIONS NEEDED BY USER APPLICATION PROGRAMS. * * Warning: This header file should not be changed in any * way, doing so will destroy the compatibility with TUXEDO programs * and libraries. *//* Flags to service routines */#define TPNOBLOCK 0x00000001 /* non-blocking send/rcv */#define TPSIGRSTRT 0x00000002 /* restart rcv on interrupt */#define TPNOREPLY 0x00000004 /* no reply expected */#define TPNOTRAN 0x00000008 /* not sent in transaction mode */#define TPTRAN 0x00000010 /* sent in transaction mode */#define TPNOTIME 0x00000020 /* no timeout */#define TPABSOLUTE 0x00000040 /* absolute value on tmsetprio */#define TPGETANY 0x00000080 /* get any valid reply */#define TPNOCHANGE 0x00000100 /* force incoming buffer to match */#define RESERVED_BIT1 0x00000200 /* reserved for future use */#define TPCONV 0x00000400 /* conversational service */#define TPSENDONLY 0x00000800 /* send-only mode */#define TPRECVONLY 0x00001000 /* recv-only mode */#define TPACK 0x00002000 /* */#define RESERVED_BIT2 0x00004000 /* reserved for future use */#define RESERVED_BIT3 0x00008000 /* reserved for future use */#define RESERVED_BIT4 0x00010000 /* reserved for future use */#define RESERVED_BIT5 0x00020000 /* reserved for future use *//* Flags to tpreturn() */#define TPFAIL 0x00000001 /* service FAILure for tpreturn */#define TPSUCCESS 0x00000002 /* service SUCCESS for tpreturn */#define TPEXIT 0x08000000 /* service failue with server exit *//* Flags to tpscmt() - Valid TP_COMMIT_CONTROL characteristic values */#define TP_CMT_LOGGED 0x01 /* return after commit decision is logged */#define TP_CMT_COMPLETE 0x02 /* return after commit has completed *//* Flags to tpinit() */#define TPU_MASK 0x00000047 /* unsolicited notification mask */#define TPU_SIG 0x00000001 /* signal based notification */#define TPU_DIP 0x00000002 /* dip-in based notification */#define TPU_IGN 0x00000004 /* ignore unsolicited messages */#define TPSA_FASTPATH 0x00000008 /* System access == fastpath */#define TPSA_PROTECTED 0x00000010 /* System access == protected */#define TPMULTICONTEXTS 0x00000020 /* Enable MULTI context */#define TPU_THREAD 0x00000040 /* thread based notification *//* Flags to tpconvert() */#define TPTOSTRING 0x40000000 /* Convert structure to string */#define TPCONVCLTID 0x00000001 /* Convert CLIENTID */#define TPCONVTRANID 0x00000002 /* Convert TRANID */#define TPCONVXID 0x00000004 /* Convert XID */#define TPCONVMAXSTR 256 /* Maximum string size *//* Return values to tpchkauth() */#define TPNOAUTH 0 /* no authentication */#define TPSYSAUTH 1 /* system authentication */#define TPAPPAUTH 2 /* system and application authentication */#ifndef MAXTIDENT#define MAXTIDENT 30 /* max len of a /T identifier */#endif/* Flag for tpsetmbenc() */#define RM_ENC 0x00000001 /*delete encoding name on typed buffer*//* option to tuxsetmbaconv() */#define MBAUTOCONVERSION_OFF 0 /*turn off autoconversion for buffers*/#define MBAUTOCONVERSION_ON 1 /*turn on autoconversion for buffers*//* client identifier structure */struct clientid_t { long clientdata[4]; /* reserved for internal use */};typedef struct clientid_t CLIENTID;/* interface to service routines */struct tpsvcinfo {#define XATMI_SERVICE_NAME_LENGTH 32 char name[XATMI_SERVICE_NAME_LENGTH];/* service name invoked */ long flags; /* describes service attributes */ char *data; /* pointer to data */ long len; /* request data length */ int cd; /* connection descriptor */ long appkey; /* application authentication client key */ CLIENTID cltid; /* client identifier for originating client */};typedef struct tpsvcinfo TPSVCINFO;/* X/Open buffer types */#define X_OCTET "X_OCTET"#define X_C_TYPE "X_C_TYPE"#define X_COMMON "X_COMMON"/* tpinit(3) interface structure */struct tpinfo_t { char usrname[MAXTIDENT+2]; /* client user name */ char cltname[MAXTIDENT+2]; /* application client name */ char passwd[MAXTIDENT+2]; /* application password */ char grpname[MAXTIDENT+2]; /* client group name */ long flags; /* initialization flags */ long datalen; /* length of app specific data */ long data; /* placeholder for app data */};typedef struct tpinfo_t TPINIT;/* tpgetctxt(3)/tpsetctxt(3) interface data type */typedef long TPCONTEXT_T;/* special context value that can be passed to tpsetctxt(3) */#define TPNULLCONTEXT -2/* * special context in which a thread is placed another thread * terminates the context in which the thread had been */#define TPINVALIDCONTEXT -1/* * context in which a process is placed when it sucessfully * executes tpinit() without the TPMULTICONTEXTS flag. */#define TPSINGLECONTEXT 0#ifndef lint#define TPINITNEED(u) (((u) > sizeof(long)) \ ? (sizeof(TPINIT) - sizeof(long) + (u)) \ : (sizeof(TPINIT)))#elseextern long TPINITNEED _((long));#endif/* TPTRANID structure for tpsuspend(3) and tpresume(3) */struct tp_tranid_t { long info[6];};typedef struct tp_tranid_t TPTRANID;#if defined(__cplusplus)extern "C" {#endifextern int _TM_FAR * _TMDLLENTRY _tmget_tperrno_addr _((void));extern long _TM_FAR * _TMDLLENTRY _tmget_tpurcode_addr _((void));#define tperrno (*_tmget_tperrno_addr())#define tpurcode (*_tmget_tpurcode_addr())#if (defined(_TM_WIN) || defined(_TM_OS2)) && !defined(_TMDLL)extern int _TMDLLENTRY gettperrno(void);extern long _TMDLLENTRY gettpurcode(void);#endif#if defined(__cplusplus)}#endif/* * tperrno values - error codes * The man pages explain the context in which the following error codes * can return. */#define TPMINVAL 0 /* minimum error message */#define TPEABORT 1#define TPEBADDESC 2#define TPEBLOCK 3#define TPEINVAL 4#define TPELIMIT 5#define TPENOENT 6#define TPEOS 7#define TPEPERM 8#define TPEPROTO 9#define TPESVCERR 10#define TPESVCFAIL 11#define TPESYSTEM 12#define TPETIME 13#define TPETRAN 14#define TPGOTSIG 15#define TPERMERR 16#define TPEITYPE 17#define TPEOTYPE 18#define TPERELEASE 19#define TPEHAZARD 20#define TPEHEURISTIC 21#define TPEEVENT 22#define TPEMATCH 23#define TPEDIAGNOSTIC 24#define TPEMIB 25#define TPMAXVAL 26 /* maximum error message *//* * WARNING: when adding new error messages above, remember to: * - increase TPMAXVAL * - add a string for the message to LIBTUX.text * - add a string for the message to LIBWSC.text * - add an array entry in _tmemsgs[] *//* * tperrordetail values - error detail codes * The man pages explain the context in which the following error detail codes * can return. */#define TPED_MINVAL 0 /* minimum error message */#define TPED_SVCTIMEOUT 1#define TPED_TERM 2#define TPED_NOUNSOLHANDLER 3#define TPED_NOCLIENT 4#define TPED_DOMAINUNREACHABLE 5#define TPED_CLIENTDISCONNECTED 6#define TPED_PERM 7#define TPED_OTS_INTERNAL 8#define TPED_INVALID_CERTIFICATE 9#define TPED_INVALID_SIGNATURE 10#define TPED_DECRYPTION_FAILURE 11#define TPED_INVALIDCONTEXT 12#define TPED_INVALID_XA_TRANSACTION 13#define TPED_MBCONV 14#define TPED_MAXVAL 15 /* maximum error message *//* * WARNING: when adding new error messages above, remember to: * - increase TPED_MAXVAL * - add a string for the message to LIBTUX.text * - add an array entry in _tmedmsgs[] */#ifdef _as400_extern void _tmunsolerrhdlr _((char *, long, long));#define TPUNSOLERR _tmunsolerrhdlr#else#define TPUNSOLERR ((void (_TMDLLENTRY *) _((char _TM_FAR *, long, long))) -1)#endif/* conversations - events */#define TPEV_DISCONIMM 0x0001#define TPEV_SVCERR 0x0002#define TPEV_SVCFAIL 0x0004#define TPEV_SVCSUCC 0x0008#define TPEV_SENDONLY 0x0020#if defined(__cplusplus)extern "C" {#endifextern char _TM_FAR * _TMDLLENTRY tpalloc _((char _TM_FAR *, char _TM_FAR *, long));extern char _TM_FAR * _TMDLLENTRY tprealloc _((char _TM_FAR *, long));extern int _TMDLLENTRY tpcall _((char _TM_FAR *, char _TM_FAR *, long, char _TM_FAR * _TM_FAR *, long _TM_FAR *, long));extern int _TMDLLENTRY tpgettimestamp _((char _TM_FAR *, long _TM_FAR *, long _TM_FAR *));extern int _TMDLLENTRY tpacall _((char _TM_FAR *, char _TM_FAR *, long, long));extern int _TMDLLENTRY tpgetrply _((int _TM_FAR *, char _TM_FAR * _TM_FAR *, long _TM_FAR *, long));extern int _TMDLLENTRY tpcancel _((int));extern int _TMDLLENTRY tpscmt _((long));extern int _TMDLLENTRY tpabort _((long));extern int _TMDLLENTRY tpbegin _((unsigned long, long));extern int _TMDLLENTRY tpcommit _((long));extern int _TMDLLENTRY tpconvert _((char _TM_FAR *, char _TM_FAR *, long));extern int _TMDLLENTRY tpsuspend _((TPTRANID _TM_FAR *, long));extern int _TMDLLENTRY tpresume _((TPTRANID _TM_FAR *, long));extern int tpsvrinit _((int, char **));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -