0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034 #ifndef __OATMI_H
0035 #define __OATMI_H
0036
0037 #ifdef __cplusplus
0038 extern "C" {
0039 #endif
0040
0041 #include <stdint.h>
0042 #include <ubf.h>
0043 #include <atmi.h>
0044
0045
0046 #define Otperrno(P_CTXT) (*O_exget_tperrno_addr(P_CTXT))
0047 #define Otpurcode(P_CTXT) (*O_exget_tpurcode_addr(P_CTXT))
0048
0049
0050
0051
0052
0053 extern NDRX_API int Otpacall(TPCONTEXT_T *p_ctxt, char *svc, char *data, long len, long flags);
0054 extern NDRX_API char * Otpalloc(TPCONTEXT_T *p_ctxt, char *type, char *subtype, long size);
0055 extern NDRX_API int Otpcall(TPCONTEXT_T *p_ctxt, char *svc, char *idata, long ilen, char **odata, long *olen, long flags);
0056 extern NDRX_API int Otpcancel(TPCONTEXT_T *p_ctxt, int cd);
0057 extern NDRX_API int Otpconnect(TPCONTEXT_T *p_ctxt, char *svc, char *data, long len, long flags);
0058 extern NDRX_API int Otpdiscon(TPCONTEXT_T *p_ctxt, int cd);
0059 extern NDRX_API void Otpfree(TPCONTEXT_T *p_ctxt, char *ptr);
0060 extern NDRX_API int Otpisautobuf(TPCONTEXT_T *p_ctxt, char *buf);
0061 extern NDRX_API int Otpgetrply(TPCONTEXT_T *p_ctxt, int *cd, char **data, long *len, long flags);
0062 extern NDRX_API char * Otprealloc(TPCONTEXT_T *p_ctxt, char *ptr, long size);
0063 extern NDRX_API int Otprecv(TPCONTEXT_T *p_ctxt, int cd, char **data, long *len, long flags, long *revent);
0064 extern NDRX_API int Otpsend(TPCONTEXT_T *p_ctxt, int cd, char *data, long len, long flags, long *revent);
0065 extern NDRX_API long Otptypes(TPCONTEXT_T *p_ctxt, char *ptr, char *type, char *subtype);
0066 extern NDRX_API int Otpabort(TPCONTEXT_T *p_ctxt, long flags);
0067 extern NDRX_API int Otpscmt(TPCONTEXT_T *p_ctxt, long flags);
0068 extern NDRX_API int Otpbegin(TPCONTEXT_T *p_ctxt, unsigned long timeout, long flags);
0069 extern NDRX_API int Otpcommit(TPCONTEXT_T *p_ctxt, long flags);
0070 extern NDRX_API int Otpconvert(TPCONTEXT_T *p_ctxt, char *str, char *bin, long flags);
0071 extern NDRX_API int Otpsuspend(TPCONTEXT_T *p_ctxt, TPTRANID *tranid, long flags);
0072 extern NDRX_API int Otpresume(TPCONTEXT_T *p_ctxt, TPTRANID *tranid, long flags);
0073 extern NDRX_API int Otpopen(TPCONTEXT_T *p_ctxt);
0074 extern NDRX_API int Otpclose(TPCONTEXT_T *p_ctxt);
0075 extern NDRX_API int Otpgetlev(TPCONTEXT_T *p_ctxt);
0076 extern NDRX_API char * Otpstrerror(TPCONTEXT_T *p_ctxt, int err);
0077 extern NDRX_API int Otperrordetail(TPCONTEXT_T *p_ctxt, long flags);
0078 extern NDRX_API char * Otpstrerrordetail(TPCONTEXT_T *p_ctxt, int err, long flags);
0079 extern NDRX_API char * Otpecodestr(TPCONTEXT_T *p_ctxt, int err);
0080 extern NDRX_API long Otpgetnodeid(TPCONTEXT_T *p_ctxt);
0081 extern NDRX_API long Otpsubscribe(TPCONTEXT_T *p_ctxt, char *eventexpr, char *filter, TPEVCTL *ctl, long flags);
0082 extern NDRX_API int Otpunsubscribe(TPCONTEXT_T *p_ctxt, long subscription, long flags);
0083 extern NDRX_API int Otppost(TPCONTEXT_T *p_ctxt, char *eventname, char *data, long len, long flags);
0084 extern NDRX_API int * O_exget_tperrno_addr(TPCONTEXT_T *p_ctxt);
0085 extern NDRX_API long * O_exget_tpurcode_addr(TPCONTEXT_T *p_ctxt);
0086 extern NDRX_API int Otpinit(TPCONTEXT_T *p_ctxt, TPINIT *tpinfo);
0087 extern NDRX_API int Otpappthrinit(TPCONTEXT_T *p_ctxt, TPINIT *tpinfo);
0088 extern NDRX_API int Otpchkauth(TPCONTEXT_T *p_ctxt);
0089 extern NDRX_API void (*Otpsetunsol (TPCONTEXT_T *p_ctxt, void (*disp) (char *data, long len, long flags))) (char *data, long len, long flags);
0090 extern NDRX_API int Otpnotify(TPCONTEXT_T *p_ctxt, CLIENTID *clientid, char *data, long len, long flags);
0091 extern NDRX_API int Otpbroadcast(TPCONTEXT_T *p_ctxt, char *lmid, char *usrname, char *cltname, char *data, long len, long flags);
0092 extern NDRX_API int Otpchkunsol(TPCONTEXT_T *p_ctxt);
0093 extern NDRX_API int Otptoutset(TPCONTEXT_T *p_ctxt, int tout);
0094 extern NDRX_API int Otptoutget(TPCONTEXT_T *p_ctxt);
0095 extern NDRX_API int Otpimport(TPCONTEXT_T *p_ctxt, char *istr, long ilen, char **obuf, long *olen, long flags);
0096 extern NDRX_API int Otpexport(TPCONTEXT_T *p_ctxt, char *ibuf, long ilen, char *ostr, long *olen, long flags);
0097 extern NDRX_API void* Otpgetconn(TPCONTEXT_T *p_ctxt);
0098 extern NDRX_API char * Otuxgetenv(TPCONTEXT_T *p_ctxt, char *envname);
0099 extern NDRX_API int Otpgetcallinfo(TPCONTEXT_T *p_ctxt, const char *msg, UBFH **cibuf, long flags);
0100 extern NDRX_API int Otpsetcallinfo(TPCONTEXT_T *p_ctxt, const char *msg, UBFH *cibuf, long flags);
0101 extern NDRX_API int Otpterm(TPCONTEXT_T *p_ctxt);
0102 extern NDRX_API int Otpappthrterm(TPCONTEXT_T *p_ctxt);
0103 extern NDRX_API int Otpjsontoubf(TPCONTEXT_T *p_ctxt, UBFH *p_ub, char *buffer);
0104 extern NDRX_API int Otpubftojson(TPCONTEXT_T *p_ctxt, UBFH *p_ub, char *buffer, int bufsize);
0105 extern NDRX_API int Otpviewtojson(TPCONTEXT_T *p_ctxt, char *cstruct, char *view, char *buffer,int bufsize, long flags);
0106 extern NDRX_API char * Otpjsontoview(TPCONTEXT_T *p_ctxt, char *view, char *buffer);
0107 extern NDRX_API int Otpenqueue(TPCONTEXT_T *p_ctxt, char *qspace, char *qname, TPQCTL *ctl, char *data, long len, long flags);
0108 extern NDRX_API int Otpdequeue(TPCONTEXT_T *p_ctxt, char *qspace, char *qname, TPQCTL *ctl, char **data, long *len, long flags);
0109 extern NDRX_API int Otpenqueueex(TPCONTEXT_T *p_ctxt, short nodeid, short srvid, char *qname, TPQCTL *ctl, char *data, long len, long flags);
0110 extern NDRX_API int Otpdequeueex(TPCONTEXT_T *p_ctxt, short nodeid, short srvid, char *qname, TPQCTL *ctl, char **data, long *len, long flags);
0111 extern NDRX_API int Otpgetctxt(TPCONTEXT_T *p_ctxt, TPCONTEXT_T *context, long flags);
0112 extern NDRX_API int Otpsetctxt(TPCONTEXT_T *p_ctxt, TPCONTEXT_T context, long flags);
0113 extern NDRX_API TPCONTEXT_T Otpnewctxt(TPCONTEXT_T *p_ctxt, int auto_destroy, int auto_set);
0114 extern NDRX_API void Otpfreectxt(TPCONTEXT_T *p_ctxt, TPCONTEXT_T context);
0115 extern NDRX_API int Otplogsetreqfile(TPCONTEXT_T *p_ctxt, char **data, char *filename, char *filesvc);
0116 extern NDRX_API int Otploggetbufreqfile(TPCONTEXT_T *p_ctxt, char *data, char *filename, int bufsize);
0117 extern NDRX_API int Otplogdelbufreqfile(TPCONTEXT_T *p_ctxt, char *data);
0118 extern NDRX_API void Otplogprintubf(TPCONTEXT_T *p_ctxt, int lev, char *title, UBFH *p_ub);
0119 extern NDRX_API void Ondrx_ndrx_tmunsolerr_handler(TPCONTEXT_T *p_ctxt, char *data, long len, long flags);
0120 extern NDRX_API pid_t Ondrx_fork(TPCONTEXT_T *p_ctxt);
0121 extern NDRX_API void Ondrx_atfork_child(TPCONTEXT_T *p_ctxt);
0122 extern NDRX_API void Ondrx_atfork_parent(TPCONTEXT_T *p_ctxt);
0123 extern NDRX_API void Ondrx_atfork_prepare(TPCONTEXT_T *p_ctxt);
0124 extern NDRX_API int Otpencrypt(TPCONTEXT_T *p_ctxt, char *input, long ilen, char *output, long *olen, long flags);
0125 extern NDRX_API int Otpdecrypt(TPCONTEXT_T *p_ctxt, char *input, long ilen, char *output, long *olen, long flags);
0126 extern NDRX_API int Otpsprio(TPCONTEXT_T *p_ctxt, int prio, long flags);
0127 extern NDRX_API int Otpgprio(TPCONTEXT_T *p_ctxt);
0128 extern NDRX_API int Otpsblktime(TPCONTEXT_T *p_ctxt, int tout,long flags);
0129 extern NDRX_API int Otpgblktime(TPCONTEXT_T *p_ctxt, long flags);
0130 #endif
0131