7fd59977 |
1 | #ifndef INCLUDELIBRARY_NTD_INTERFACE_H |
2 | #define INCLUDELIBRARY_NTD_INTERFACE_H |
3 | |
4 | #if defined(__hpux) || defined(HPUX) |
5 | # include <dl.h> |
6 | #endif |
7 | |
8 | #if defined(WNT) && !defined(HAVE_NO_DLL) |
9 | # ifndef __NTD_API |
10 | # if defined(__NTD_DLL) |
11 | # define __NTD_API __declspec( dllexport ) |
12 | # else |
13 | # define __NTD_API __declspec( dllimport ) |
14 | # endif |
15 | # endif |
16 | # ifndef __Engine_API |
17 | # if defined(__Engine_DLL) |
18 | # define __Engine_API __declspec( dllexport ) |
19 | # else |
20 | # define __Engine_API __declspec( dllimport ) |
21 | # endif |
22 | # endif |
23 | #else |
24 | # define __NTD_API |
25 | # define __Engine_API |
26 | #endif |
27 | |
28 | #ifndef __INCLUDELIBRARY_SERVER_INTERFACE_H |
29 | #include <IncludeLibrary_server_interface.h> |
30 | #endif |
31 | |
32 | #define ind_init_ntd 0 |
33 | #define ind_movc3 1 |
34 | #define ind_movc5 2 |
35 | #define ind_ntd_connect 3 |
36 | #define ind_ntd_disconnect 4 |
37 | #define ind_ntd_free 5 |
38 | #define ind_ntd_gravity 6 |
39 | #define ind_ntd_read 7 |
40 | #define ind_ntd_reada 8 |
41 | #define ind_ntd_select 9 |
42 | #define ind_ntd_write 10 |
43 | #define ind_osd_dclast 11 |
44 | #define ind_osd_exitodeb 12 |
45 | #define ind_osd_go 13 |
46 | #define ind_osd_host_addr 14 |
47 | #define ind_osd_setimer 15 |
48 | #define ind_osd_stop 16 |
49 | #define ind_osd_synch 17 |
50 | #define ind_srvsts 18 |
51 | #define ind_osd_host_addr_tcp 19 |
52 | #define ind_ntd_iserdisc 20 |
53 | #define ind_Get_Engine_Path 21 |
54 | #define ind_Act_Sigio_Handler 22 |
55 | #define ind_Load_Engine 23 |
56 | #define ind_osd_nodename_tcp 24 |
57 | #define ind_strsts 25 |
58 | #define ind_osd_getmsg 26 |
59 | #define ind_osd_wpipe 27 |
60 | #define ind_Env_Engine 28 |
61 | #define nbr_address 29 |
62 | |
63 | #ifdef UNX |
64 | #define sigdeb sigdeb_ |
65 | #define srvbck srvbck_ |
66 | #define srvctl srvctl_ |
67 | #define srwlnk srwlnk_ |
68 | #define srwloc srwloc_ |
69 | #define srvsts srvsts_ |
70 | #define osd_getpid osd_getpid_ |
71 | #define osd_getuic osd_getuic_ |
72 | #define osd_geteuic osd_geteuic_ |
73 | #define osd_nodename_tcp osd_nodename_tcp_ |
74 | #define osd_host_addr osd_host_addr_ |
75 | #define osd_host_addr_tcp osd_host_addr_tcp_ |
76 | #define osd_host_addr_dec osd_host_addr_dec_ |
77 | #define __fastcall |
78 | #endif |
79 | |
80 | #ifdef WNT |
81 | #define BEGINTHREADEX( lpsa, cbStack, lpStartAddr, lpvThreadParm, fdwCreate, lpIDThread ) \ |
82 | ( ( HANDLE )_beginthreadex ( \ |
83 | ( void* )( lpsa ), \ |
84 | ( unsigned )( cbStack ), \ |
85 | ( PTHREAD_START )( lpStartAddr ), \ |
86 | ( void* )( lpvThreadParm ), \ |
87 | ( unsigned )( fdwCreate ), \ |
88 | ( unsigned* )( lpIDThread ) \ |
89 | ) \ |
90 | ) |
91 | |
92 | #define osd_chown () 1 |
93 | |
94 | #endif |
95 | |
96 | #if defined(sun) || defined(SOLARIS) |
97 | extern "C" int risc_return_() ; |
98 | #endif |
99 | |
100 | extern int __NTD_API K_VERBOSE_INIT ; |
101 | |
102 | extern char __NTD_API level_engine[81] ; |
103 | |
104 | #ifdef WNT |
105 | extern OSVERSIONINFO __NTD_API NTD_OSVer; |
106 | #endif |
107 | |
108 | extern void __NTD_API Get_Vector(int **K_VERBOSE , |
109 | void (***vector_addr)() , |
110 | int *nbr_addr ) ; |
111 | |
112 | #if defined(__GNUC__) || defined(LIN) |
113 | #define Get_Vector_signatura "Get_Vector__FPPiPPPFv_vPi" |
114 | #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" |
115 | #elif defined(__osf__) || defined(DECOSF1) |
116 | #define Get_Vector_signatura "Get_Vector" |
117 | #define Get_Vector_signature "Get_Vector__XPPiPPPXv_vPi" |
118 | #elif defined(__sun) || defined(SOLARIS) |
119 | #define Get_Vector_signatura "Get_Vector" |
120 | #define Get_Vector_signature "__0FKGet_VectorPPiPPPFv_vPi" |
121 | #elif defined(__sgi) || defined(IRIX) |
122 | #define Get_Vector_signatura "Get_Vector__GPPiPPPGv_vPi" |
123 | #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" |
124 | #elif defined(__hpux) || defined(HPUX) |
125 | #define Get_Vector_signatura "Get_Vector" |
126 | #define Get_Vector_signature "Get_Vector__FPPiPPPFv_vPi" |
127 | #elif defined(WNT) |
128 | #define Get_Vector_signatura "Get_Vector" |
129 | #define Get_Vector_signature "?Get_Vector@@YAXPAPAHPAPAP6AXXZPAH@Z" |
130 | #elif defined(_AIX) || defined(AIX) |
131 | #define Get_Vector_signatura "Get_Vector" |
132 | #define Get_Vector_signature ".Get_Vector__FPPiPPPFv_vPi" |
133 | #endif |
134 | |
135 | #ifndef WNT |
136 | extern void __NTD_API Act_Sigio_Handler() ; |
137 | #endif |
138 | extern void __NTD_API Set_Engine_Path(char *path); |
139 | |
140 | #if defined(__Engine_DLL) |
141 | extern char __Engine_API *Get_Engine_Path(void); |
142 | #else |
143 | extern char __NTD_API *Get_Engine_Path(void); |
144 | #endif |
145 | |
146 | extern int __NTD_API Env_Engine(int *lnk , |
147 | int k_do_exec, |
148 | int K_START, |
149 | char *Engine_Path_Name, |
150 | char **Engine_Path , |
151 | char **Engine_Name ) ; |
152 | |
153 | extern int __NTD_API Load_Engine(char *Engine_Path, |
154 | char *Engine_Name, |
155 | int KVERBOSEINIT , |
156 | int *nbr_ret_func , |
157 | PVOID_FUNCTION *TABRETFUNC , |
158 | int nbrptrfunc , |
159 | PVOID_FUNCTION *TABFUNC , |
160 | int nbrptr , |
161 | void **TABPTR , |
162 | int nbrval , |
163 | int *TABVAL ); |
164 | |
165 | extern int __NTD_API init_ntd(PSRV_CTL srvctl, |
166 | int k_synch, |
167 | int **uic, |
168 | char **usr, |
169 | int **pid, |
170 | int k_serpc); |
171 | #ifdef WNT |
172 | extern void __NTD_API done_ntd( void ); |
173 | #endif |
174 | extern int __NTD_API ntd_listener(int k_synch , |
175 | char **server, |
176 | PREAD_AST_MBX read_ast_mbx, |
177 | PSTATUS sts, |
178 | int *lnk); |
179 | extern int __NTD_API ntd_confirm(int id, |
180 | int reply, |
181 | PAST_ADDR_V ast, |
182 | int param, |
183 | PSTATUS sts); |
184 | extern int __NTD_API ntd_connect(int prtcl, |
185 | char *node, |
186 | char *server, |
187 | int verbose, |
188 | int k_synch, |
189 | PAST_ADDR_PV astaddr, |
190 | void *param, |
191 | int *id, |
192 | PSTATUS sts); |
193 | extern int __NTD_API ntd_disconnect(int id, |
194 | int how, |
195 | PAST_ADDR_PV astaddr, |
196 | void *param, |
197 | PSTATUS sts); |
198 | extern int __NTD_API ntd_resume(int *id, |
199 | int k_free, |
200 | PSTATUS sts); |
201 | extern int __NTD_API ntd_chown(int id, |
202 | int pid, |
203 | PSTATUS sts); |
204 | extern int __NTD_API ntd_synch(int CHAN, |
205 | PSTATUS status_synch); |
206 | extern int __NTD_API ntd_stop(int CHAN); |
207 | extern int __NTD_API ntd_read(int CHAN, |
208 | int *BUFFER, |
209 | int LEN, |
210 | PAST_ADDR_PV rpc_intr_read_ast, |
211 | void *, |
212 | int *READLEN, |
213 | PSTATUS rpc_status); |
214 | extern int __NTD_API ntd_reada(int CHAN, |
215 | int *BUFFER, |
216 | int LEN, |
217 | PAST_ADDR_PV rpc_intr_read_ast, |
218 | void *, |
219 | int *READLEN, |
220 | PSTATUS rpc_status); |
221 | extern int __NTD_API ntd_iserdisc(PSTATUS status); |
222 | extern int __NTD_API ntd_dassign(int CHAN, |
223 | PSTATUS status); |
224 | extern int __NTD_API ntd_free(int *CHAN, |
225 | PSTATUS status); |
226 | extern int __NTD_API ntd_write(int CHAN, |
227 | int *BUFFER, |
228 | int LEN, |
229 | PAST_ADDR_PV rpc_write_ast, |
230 | void *, |
231 | int *LLEN, |
232 | PSTATUS rpc_statusa); |
233 | extern int __NTD_API ntd_select(int CHAN) ; |
234 | extern int __NTD_API do_lstr_a_synch(int k_synch) ; |
235 | extern int __NTD_API do_socket_a_synch(int sock_desc,int k_synch) ; |
236 | extern int __NTD_API ntd_go(int CHAN, |
237 | PSTATUS rpc_status); |
238 | extern int __NTD_API ntd_gravity(PSTATUS sts); |
239 | extern int __NTD_API ntd_message(void *numlnk, |
240 | PSTATUS sts, |
241 | char *msg, |
242 | int lmax, |
243 | int *lmsg); |
244 | #ifdef WNT |
245 | extern BOOL __NTD_API __fastcall ntd_ispipe ( int id ) ; |
246 | extern SOCKET __NTD_API ntd_sd ( int* id ) ; |
247 | #endif |
248 | extern int __NTD_API osd_dclast(PAST_ADDR_PV rpc_write_ast, |
249 | void *, |
250 | PSTATUS rpc_status); |
251 | extern int __NTD_API osd_dclastw(PAST_ADDR_PV rpc_write_ast, |
252 | void *, |
253 | PSTATUS rpc_statusa); |
254 | extern int __NTD_API osd_setimer(unsigned int delay, |
255 | PAST_ADDR_PV timer_ast, |
256 | void *, |
257 | PSTATUS sts); |
258 | extern char __NTD_API *osd_getsymbol(char *) ; |
259 | #ifdef WNT |
260 | extern const char __NTD_API *osd_getmsg ( int ); |
261 | #endif |
262 | extern void __NTD_API osd_hiber(); |
263 | extern char __NTD_API *osd_getuname(); |
264 | extern void __NTD_API osd_exitodeb(); |
265 | extern void __NTD_API osd_child(char *); |
266 | extern void __NTD_API osd_wpipe() ; |
267 | extern int __NTD_API osd_nodename_dec(char *nodloc, |
268 | int len, |
269 | PSTATUS rpc_status); |
270 | extern int __NTD_API osd_nodename_tcp(char *nodloc, |
271 | int len, |
272 | PSTATUS rpc_status); |
273 | extern int __NTD_API osd_host_addr_tcp(char *node, |
274 | unsigned char intadr[], |
275 | PSTATUS sts); |
276 | extern int __NTD_API osd_host_addr( char intadr[] ) ; |
277 | extern int __NTD_API osd_getuic(int *retuic, |
278 | PSTATUS sts); |
279 | extern int __NTD_API osd_getpid(); |
280 | extern int __NTD_API osd_geteuic(int *reteuic); |
281 | extern int __NTD_API osd_setuic(int *setuic); |
282 | extern int __NTD_API osd_usruic(char *usrnam, |
283 | int retuic[], |
284 | PSTATUS status, |
285 | int lenusr); |
286 | |
287 | #ifdef UNX |
288 | extern void osd_sigclrmask(); |
289 | #endif |
290 | |
291 | #if defined(UNX) || defined(WNT) |
292 | extern int __NTD_API osd_initsynch(PSTATUS sts); |
293 | extern void __NTD_API osd_go(PSYSSYNCH ); |
294 | extern void __NTD_API osd_stop(PSYSSYNCH ); |
295 | extern int __NTD_API osd_testsynch(PSYSSYNCH ); |
296 | extern int __NTD_API osd_synch(PSYSSYNCH , |
297 | PSTATUS ); |
298 | extern void __NTD_API osd_disblast(); |
299 | extern void __NTD_API osd_enblast(); |
300 | #endif |
301 | |
302 | extern void __NTD_API __fastcall rspreorder(PBUF_RSP buffer); |
303 | extern void __NTD_API __fastcall lreorder(unsigned int *hdr); |
304 | extern void __NTD_API __fastcall cmdreorder(PBUF BUFFER); |
305 | extern void __NTD_API __fastcall cnxassreorder(PCMD_BUFF BUFFER); |
306 | extern void __NTD_API __fastcall reorder(int l , char *p); |
307 | extern void __NTD_API __fastcall movc3(int srclen, |
308 | char *srcadr, |
309 | char *dstadr); |
310 | extern void __NTD_API __fastcall movc5(int srclen, |
311 | char *srcadr, |
312 | char fill, |
313 | int dstlen, |
314 | char *dstadr); |
315 | extern int __NTD_API srvsts(void *, |
316 | char *, |
317 | int, |
318 | PSTATUS sts, |
319 | int lg, |
320 | char *msg, |
321 | int *lgmsg); |
322 | extern int __NTD_API osd_realpath(char *path, |
323 | char *resolved_path, |
324 | int pathlen, |
325 | PSTATUS sts); |
326 | extern int __NTD_API strsts(void *numlnk, |
327 | char code[], |
328 | char stat, |
329 | PSTATUS status, |
330 | int lgmsg, |
331 | char msgerr[], |
332 | int *lenerr); |
333 | extern void __NTD_API osd_putoutput(char *msg); |
334 | #ifdef UNX |
335 | extern int osd_sigaction(int sig , |
336 | struct sigaction *act , |
337 | struct sigaction *oact ) ; |
338 | #endif |
339 | extern int __NTD_API srvctl_ast(void *param, |
340 | PSTATUS status, |
341 | int *msg, |
342 | int *msglen); |
343 | |
344 | #ifndef UNX |
345 | extern int Dnet_listener(char *server, |
346 | int isrv, |
347 | PREAD_AST_MBX func, |
348 | PSTATUS sts); |
349 | #endif |
350 | extern int __NTD_API Inet_listener(char *server, |
351 | int isrv, |
352 | int k_synch , |
353 | PREAD_AST_MBX func, |
354 | PSTATUS sts); |
355 | #if !defined(__hpux) && !defined(HPUX) && !defined(__osf__) && !defined(DECOSF1) && !defined(WNT) && !defined(LIN) && !defined(linux) && !defined(AIX) && !defined(_AIX) && !defined(__FreeBSD__) |
356 | extern |
357 | #ifdef CSF1 |
358 | "C" { |
359 | #endif |
360 | int gethostname(char *, int) ; |
361 | #ifdef CSF1 |
362 | } |
363 | #endif |
364 | #endif |
365 | |
366 | #if DEBUG |
367 | extern void __NTD_API sigdeb() ; |
368 | extern void __NTD_API SIGDEB() ; |
369 | #endif |
370 | |
371 | #ifdef WNT |
372 | extern void __NTD_API _debug_break ( char* ); |
373 | #endif |
374 | |
375 | #if DO_MALLOC |
376 | extern "C" {void __NTD_API *realloc(void *ptr_free , size_t byte_size);} |
377 | extern "C" {void __NTD_API *calloc(size_t nbr_elts,size_t byte_size);} |
378 | extern "C" {void __NTD_API *malloc(size_t byte_size);} |
379 | extern "C" {void __NTD_API free(void *pointer);} |
380 | #endif |
381 | |
382 | #endif |