📄 atmi.h
字号:
/* Copyright (c) 1998 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. *//* 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. *//* 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.1.6.1 $" */#ifndef ATMI_H#define ATMI_H#ifndef TMENV_H#include <tmenv.h>#endif#ifndef NOWHATstatic char h_atmi[] = "@(#) tuxedo/include/atmi.h $Revision: 1.1.6.1 $";#endif/* * 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 /* *//* 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 0x00000007 /* 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 *//* 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/* 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; /* reserved for future use */ 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;#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" {#endif#if (defined(_TM_WIN) || defined(_TM_OS2)) && !defined(_TMDLL)extern int _TM_FAR * _TMDLLENTRY _tmget_tperrno_addr(void);extern long _TM_FAR * _TMDLLENTRY _tmget_tpurcode_addr(void);extern int _TMDLLENTRY gettperrno(void);extern long _TMDLLENTRY gettpurcode(void);#define tperrno (*_tmget_tperrno_addr())#define tpurcode (*_tmget_tpurcode_addr())#else#ifdef _TMSTHREADSextern 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())#else_TMITUXWSC extern _TM_THREADVAR int tperrno;_TMITUXWSC extern _TM_THREADVAR long tpurcode;#endif#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 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_MAXVAL 7 /* maximum error message *//* * WARNING: when adding new error messages above, remember to: * - increase TPED_MAXVAL
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -