#ifndef INCLUDELIBRARY_NTD_INTERFACE_H #define INCLUDELIBRARY_NTD_INTERFACE_H #if defined(__hpux) || defined(HPUX) # include #endif #if defined(WNT) && !defined(HAVE_NO_DLL) # ifndef __NTD_API # if defined(__NTD_DLL) # define __NTD_API __declspec( dllexport ) # else # define __NTD_API __declspec( dllimport ) # endif # endif # ifndef __Engine_API # if defined(__Engine_DLL) # define __Engine_API __declspec( dllexport ) # else # define __Engine_API __declspec( dllimport ) # endif # endif #else # define __NTD_API # define __Engine_API #endif #ifndef __INCLUDELIBRARY_SERVER_INTERFACE_H #include #endif #define ind_init_ntd 0 #define ind_movc3 1 #define ind_movc5 2 #define ind_ntd_connect 3 #define ind_ntd_disconnect 4 #define ind_ntd_free 5 #define ind_ntd_gravity 6 #define ind_ntd_read 7 #define ind_ntd_reada 8 #define ind_ntd_select 9 #define ind_ntd_write 10 #define ind_osd_dclast 11 #define ind_osd_exitodeb 12 #define ind_osd_go 13 #define ind_osd_host_addr 14 #define ind_osd_setimer 15 #define ind_osd_stop 16 #define ind_osd_synch 17 #define ind_srvsts 18 #define ind_osd_host_addr_tcp 19 #define ind_ntd_iserdisc 20 #define ind_Get_Engine_Path 21 #define ind_Act_Sigio_Handler 22 #define ind_Load_Engine 23 #define ind_osd_nodename_tcp 24 #define ind_strsts 25 #define ind_osd_getmsg 26 #define ind_osd_wpipe 27 #define ind_Env_Engine 28 #define nbr_address 29 #ifdef UNX #define sigdeb sigdeb_ #define srvbck srvbck_ #define srvctl srvctl_ #define srwlnk srwlnk_ #define srwloc srwloc_ #define srvsts srvsts_ #define osd_getpid osd_getpid_ #define osd_getuic osd_getuic_ #define osd_geteuic osd_geteuic_ #define osd_nodename_tcp osd_nodename_tcp_ #define osd_host_addr osd_host_addr_ #define osd_host_addr_tcp osd_host_addr_tcp_ #define osd_host_addr_dec osd_host_addr_dec_ #define __fastcall #endif #ifdef WNT #define BEGINTHREADEX( lpsa, cbStack, lpStartAddr, lpvThreadParm, fdwCreate, lpIDThread ) \ ( ( HANDLE )_beginthreadex ( \ ( void* )( lpsa ), \ ( unsigned )( cbStack ), \ ( PTHREAD_START )( lpStartAddr ), \ ( void* )( lpvThreadParm ), \ ( unsigned )( fdwCreate ), \ ( unsigned* )( lpIDThread ) \ ) \ ) #define osd_chown () 1 #endif #if defined(sun) || defined(SOLARIS) extern "C" int risc_return_() ; #endif extern int __NTD_API K_VERBOSE_INIT ; extern char __NTD_API level_engine[81] ; #ifdef WNT extern OSVERSIONINFO __NTD_API NTD_OSVer; #endif extern void __NTD_API Get_Vector(int **K_VERBOSE , void (***vector_addr)() , int *nbr_addr ) ; #if defined(__GNUC__) || defined(LIN) #define Get_Vector_signatura "Get_Vector__FPPiPPPFv_vPi" #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" #elif defined(__osf__) || defined(DECOSF1) #define Get_Vector_signatura "Get_Vector" #define Get_Vector_signature "Get_Vector__XPPiPPPXv_vPi" #elif defined(__sun) || defined(SOLARIS) #define Get_Vector_signatura "Get_Vector" #define Get_Vector_signature "__0FKGet_VectorPPiPPPFv_vPi" #elif defined(__sgi) || defined(IRIX) #define Get_Vector_signatura "Get_Vector__GPPiPPPGv_vPi" #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" #elif defined(__hpux) || defined(HPUX) #define Get_Vector_signatura "Get_Vector" #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" #elif defined(WNT) #define Get_Vector_signatura "Get_Vector" #define Get_Vector_signature "?Get_Vector@@YAXPAPAHPAPAP6AXXZPAH@Z" #elif defined(_AIX) || defined(AIX) #define Get_Vector_signatura "Get_Vector" #define Get_Vector_signature ".Get_Vector__FPPiPPPFv_vPi" #endif #ifndef WNT extern void __NTD_API Act_Sigio_Handler() ; #endif extern void __NTD_API Set_Engine_Path(char *path); #if defined(__Engine_DLL) extern char __Engine_API *Get_Engine_Path(void); #else extern char __NTD_API *Get_Engine_Path(void); #endif extern int __NTD_API Env_Engine(int *lnk , int k_do_exec, int K_START, char *Engine_Path_Name, char **Engine_Path , char **Engine_Name ) ; extern int __NTD_API Load_Engine(char *Engine_Path, char *Engine_Name, int KVERBOSEINIT , int *nbr_ret_func , PVOID_FUNCTION *TABRETFUNC , int nbrptrfunc , PVOID_FUNCTION *TABFUNC , int nbrptr , void **TABPTR , int nbrval , int *TABVAL ); extern int __NTD_API init_ntd(PSRV_CTL srvctl, int k_synch, int **uic, char **usr, int **pid, int k_serpc); #ifdef WNT extern void __NTD_API done_ntd( void ); #endif extern int __NTD_API ntd_listener(int k_synch , char **server, PREAD_AST_MBX read_ast_mbx, PSTATUS sts, int *lnk); extern int __NTD_API ntd_confirm(int id, int reply, PAST_ADDR_V ast, int param, PSTATUS sts); extern int __NTD_API ntd_connect(int prtcl, char *node, char *server, int verbose, int k_synch, PAST_ADDR_PV astaddr, void *param, int *id, PSTATUS sts); extern int __NTD_API ntd_disconnect(int id, int how, PAST_ADDR_PV astaddr, void *param, PSTATUS sts); extern int __NTD_API ntd_resume(int *id, int k_free, PSTATUS sts); extern int __NTD_API ntd_chown(int id, int pid, PSTATUS sts); extern int __NTD_API ntd_synch(int CHAN, PSTATUS status_synch); extern int __NTD_API ntd_stop(int CHAN); extern int __NTD_API ntd_read(int CHAN, int *BUFFER, int LEN, PAST_ADDR_PV rpc_intr_read_ast, void *, int *READLEN, PSTATUS rpc_status); extern int __NTD_API ntd_reada(int CHAN, int *BUFFER, int LEN, PAST_ADDR_PV rpc_intr_read_ast, void *, int *READLEN, PSTATUS rpc_status); extern int __NTD_API ntd_iserdisc(PSTATUS status); extern int __NTD_API ntd_dassign(int CHAN, PSTATUS status); extern int __NTD_API ntd_free(int *CHAN, PSTATUS status); extern int __NTD_API ntd_write(int CHAN, int *BUFFER, int LEN, PAST_ADDR_PV rpc_write_ast, void *, int *LLEN, PSTATUS rpc_statusa); extern int __NTD_API ntd_select(int CHAN) ; extern int __NTD_API do_lstr_a_synch(int k_synch) ; extern int __NTD_API do_socket_a_synch(int sock_desc,int k_synch) ; extern int __NTD_API ntd_go(int CHAN, PSTATUS rpc_status); extern int __NTD_API ntd_gravity(PSTATUS sts); extern int __NTD_API ntd_message(void *numlnk, PSTATUS sts, char *msg, int lmax, int *lmsg); #ifdef WNT extern BOOL __NTD_API __fastcall ntd_ispipe ( int id ) ; extern SOCKET __NTD_API ntd_sd ( int* id ) ; #endif extern int __NTD_API osd_dclast(PAST_ADDR_PV rpc_write_ast, void *, PSTATUS rpc_status); extern int __NTD_API osd_dclastw(PAST_ADDR_PV rpc_write_ast, void *, PSTATUS rpc_statusa); extern int __NTD_API osd_setimer(unsigned int delay, PAST_ADDR_PV timer_ast, void *, PSTATUS sts); extern char __NTD_API *osd_getsymbol(char *) ; #ifdef WNT extern const char __NTD_API *osd_getmsg ( int ); #endif extern void __NTD_API osd_hiber(); extern char __NTD_API *osd_getuname(); extern void __NTD_API osd_exitodeb(); extern void __NTD_API osd_child(char *); extern void __NTD_API osd_wpipe() ; extern int __NTD_API osd_nodename_dec(char *nodloc, int len, PSTATUS rpc_status); extern int __NTD_API osd_nodename_tcp(char *nodloc, int len, PSTATUS rpc_status); extern int __NTD_API osd_host_addr_tcp(char *node, unsigned char intadr[], PSTATUS sts); extern int __NTD_API osd_host_addr( char intadr[] ) ; extern int __NTD_API osd_getuic(int *retuic, PSTATUS sts); extern int __NTD_API osd_getpid(); extern int __NTD_API osd_geteuic(int *reteuic); extern int __NTD_API osd_setuic(int *setuic); extern int __NTD_API osd_usruic(char *usrnam, int retuic[], PSTATUS status, int lenusr); #ifdef UNX extern void osd_sigclrmask(); #endif #if defined(UNX) || defined(WNT) extern int __NTD_API osd_initsynch(PSTATUS sts); extern void __NTD_API osd_go(PSYSSYNCH ); extern void __NTD_API osd_stop(PSYSSYNCH ); extern int __NTD_API osd_testsynch(PSYSSYNCH ); extern int __NTD_API osd_synch(PSYSSYNCH , PSTATUS ); extern void __NTD_API osd_disblast(); extern void __NTD_API osd_enblast(); #endif extern void __NTD_API __fastcall rspreorder(PBUF_RSP buffer); extern void __NTD_API __fastcall lreorder(unsigned int *hdr); extern void __NTD_API __fastcall cmdreorder(PBUF BUFFER); extern void __NTD_API __fastcall cnxassreorder(PCMD_BUFF BUFFER); extern void __NTD_API __fastcall reorder(int l , char *p); extern void __NTD_API __fastcall movc3(int srclen, char *srcadr, char *dstadr); extern void __NTD_API __fastcall movc5(int srclen, char *srcadr, char fill, int dstlen, char *dstadr); extern int __NTD_API srvsts(void *, char *, int, PSTATUS sts, int lg, char *msg, int *lgmsg); extern int __NTD_API osd_realpath(char *path, char *resolved_path, int pathlen, PSTATUS sts); extern int __NTD_API strsts(void *numlnk, char code[], char stat, PSTATUS status, int lgmsg, char msgerr[], int *lenerr); extern void __NTD_API osd_putoutput(char *msg); #ifdef UNX extern int osd_sigaction(int sig , struct sigaction *act , struct sigaction *oact ) ; #endif extern int __NTD_API srvctl_ast(void *param, PSTATUS status, int *msg, int *msglen); #ifndef UNX extern int Dnet_listener(char *server, int isrv, PREAD_AST_MBX func, PSTATUS sts); #endif extern int __NTD_API Inet_listener(char *server, int isrv, int k_synch , PREAD_AST_MBX func, PSTATUS sts); #if !defined(__hpux) && !defined(HPUX) && !defined(__osf__) && !defined(DECOSF1) && !defined(WNT) && !defined(LIN) && !defined(linux) && !defined(AIX) && !defined(_AIX) && !defined(__FreeBSD__) extern #ifdef CSF1 "C" { #endif int gethostname(char *, int) ; #ifdef CSF1 } #endif #endif #if DEBUG extern void __NTD_API sigdeb() ; extern void __NTD_API SIGDEB() ; #endif #ifdef WNT extern void __NTD_API _debug_break ( char* ); #endif #if DO_MALLOC extern "C" {void __NTD_API *realloc(void *ptr_free , size_t byte_size);} extern "C" {void __NTD_API *calloc(size_t nbr_elts,size_t byte_size);} extern "C" {void __NTD_API *malloc(size_t byte_size);} extern "C" {void __NTD_API free(void *pointer);} #endif #endif