1/*	$NetBSD: dllstub.c,v 1.2 2011/02/16 03:46:58 christos Exp $	*/
2
3/* Id: dllstub.c,v 1.1 2003/06/04 00:27:45 marka Exp  */
4
5SOCKET   PASCAL
6accept(SOCKET a0, struct sockaddr* a1, int* a2)
7{
8    static SOCKET   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
9
10#ifdef DEBUG_STUB
11    idnLogPrintf(idn_log_level_trace, "stub accept() called\n");
12#endif
13    if (fp == NULL) {
14	void *p;
15	if ((p = GetProcAddress(DLLHANDLE, "accept")) == NULL) {
16	    FATAL("cannot find entry accept (%d)\n", GetLastError());
17	    abort();
18	}
19	fp = p;
20    }
21    return (*fp)(a0, a1, a2);
22}
23
24int   PASCAL
25bind(SOCKET a0, const struct sockaddr* a1, int a2)
26{
27    static int   (PASCAL *fp)(SOCKET a0, const struct sockaddr* a1, int a2);
28
29#ifdef DEBUG_STUB
30    idnLogPrintf(idn_log_level_trace, "stub bind() called\n");
31#endif
32    if (fp == NULL) {
33	void *p;
34	if ((p = GetProcAddress(DLLHANDLE, "bind")) == NULL) {
35	    FATAL("cannot find entry bind (%d)\n", GetLastError());
36	    abort();
37	}
38	fp = p;
39    }
40    return (*fp)(a0, a1, a2);
41}
42
43int   PASCAL
44closesocket(SOCKET a0)
45{
46    static int   (PASCAL *fp)(SOCKET a0);
47
48#ifdef DEBUG_STUB
49    idnLogPrintf(idn_log_level_trace, "stub closesocket() called\n");
50#endif
51    if (fp == NULL) {
52	void *p;
53	if ((p = GetProcAddress(DLLHANDLE, "closesocket")) == NULL) {
54	    FATAL("cannot find entry closesocket (%d)\n", GetLastError());
55	    abort();
56	}
57	fp = p;
58    }
59    return (*fp)(a0);
60}
61
62int   PASCAL
63connect(SOCKET a0, const struct sockaddr* a1, int a2)
64{
65    static int   (PASCAL *fp)(SOCKET a0, const struct sockaddr* a1, int a2);
66
67#ifdef DEBUG_STUB
68    idnLogPrintf(idn_log_level_trace, "stub connect() called\n");
69#endif
70    if (fp == NULL) {
71	void *p;
72	if ((p = GetProcAddress(DLLHANDLE, "connect")) == NULL) {
73	    FATAL("cannot find entry connect (%d)\n", GetLastError());
74	    abort();
75	}
76	fp = p;
77    }
78    return (*fp)(a0, a1, a2);
79}
80
81int   PASCAL
82getpeername(SOCKET a0, struct sockaddr* a1, int* a2)
83{
84    static int   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
85
86#ifdef DEBUG_STUB
87    idnLogPrintf(idn_log_level_trace, "stub getpeername() called\n");
88#endif
89    if (fp == NULL) {
90	void *p;
91	if ((p = GetProcAddress(DLLHANDLE, "getpeername")) == NULL) {
92	    FATAL("cannot find entry getpeername (%d)\n", GetLastError());
93	    abort();
94	}
95	fp = p;
96    }
97    return (*fp)(a0, a1, a2);
98}
99
100int   PASCAL
101getsockname(SOCKET a0, struct sockaddr* a1, int* a2)
102{
103    static int   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
104
105#ifdef DEBUG_STUB
106    idnLogPrintf(idn_log_level_trace, "stub getsockname() called\n");
107#endif
108    if (fp == NULL) {
109	void *p;
110	if ((p = GetProcAddress(DLLHANDLE, "getsockname")) == NULL) {
111	    FATAL("cannot find entry getsockname (%d)\n", GetLastError());
112	    abort();
113	}
114	fp = p;
115    }
116    return (*fp)(a0, a1, a2);
117}
118
119int   PASCAL
120getsockopt(SOCKET a0, int a1, int a2, char* a3, int* a4)
121{
122    static int   (PASCAL *fp)(SOCKET a0, int a1, int a2, char* a3, int* a4);
123
124#ifdef DEBUG_STUB
125    idnLogPrintf(idn_log_level_trace, "stub getsockopt() called\n");
126#endif
127    if (fp == NULL) {
128	void *p;
129	if ((p = GetProcAddress(DLLHANDLE, "getsockopt")) == NULL) {
130	    FATAL("cannot find entry getsockopt (%d)\n", GetLastError());
131	    abort();
132	}
133	fp = p;
134    }
135    return (*fp)(a0, a1, a2, a3, a4);
136}
137
138u_long   PASCAL
139htonl(u_long a0)
140{
141    static u_long   (PASCAL *fp)(u_long a0);
142
143#ifdef DEBUG_STUB
144    idnLogPrintf(idn_log_level_trace, "stub htonl() called\n");
145#endif
146    if (fp == NULL) {
147	void *p;
148	if ((p = GetProcAddress(DLLHANDLE, "htonl")) == NULL) {
149	    FATAL("cannot find entry htonl (%d)\n", GetLastError());
150	    abort();
151	}
152	fp = p;
153    }
154    return (*fp)(a0);
155}
156
157u_short   PASCAL
158htons(u_short a0)
159{
160    static u_short   (PASCAL *fp)(u_short a0);
161
162#ifdef DEBUG_STUB
163    idnLogPrintf(idn_log_level_trace, "stub htons() called\n");
164#endif
165    if (fp == NULL) {
166	void *p;
167	if ((p = GetProcAddress(DLLHANDLE, "htons")) == NULL) {
168	    FATAL("cannot find entry htons (%d)\n", GetLastError());
169	    abort();
170	}
171	fp = p;
172    }
173    return (*fp)(a0);
174}
175
176unsigned long   PASCAL
177inet_addr(const char* a0)
178{
179    static unsigned long   (PASCAL *fp)(const char* a0);
180
181#ifdef DEBUG_STUB
182    idnLogPrintf(idn_log_level_trace, "stub inet_addr() called\n");
183#endif
184    if (fp == NULL) {
185	void *p;
186	if ((p = GetProcAddress(DLLHANDLE, "inet_addr")) == NULL) {
187	    FATAL("cannot find entry inet_addr (%d)\n", GetLastError());
188	    abort();
189	}
190	fp = p;
191    }
192    return (*fp)(a0);
193}
194
195 char * PASCAL
196inet_ntoa(struct in_addr a0)
197{
198    static  char * (PASCAL *fp)(struct in_addr a0);
199
200#ifdef DEBUG_STUB
201    idnLogPrintf(idn_log_level_trace, "stub inet_ntoa() called\n");
202#endif
203    if (fp == NULL) {
204	void *p;
205	if ((p = GetProcAddress(DLLHANDLE, "inet_ntoa")) == NULL) {
206	    FATAL("cannot find entry inet_ntoa (%d)\n", GetLastError());
207	    abort();
208	}
209	fp = p;
210    }
211    return (*fp)(a0);
212}
213
214int   PASCAL
215ioctlsocket(SOCKET a0, long a1, u_long * a2)
216{
217    static int   (PASCAL *fp)(SOCKET a0, long a1, u_long * a2);
218
219#ifdef DEBUG_STUB
220    idnLogPrintf(idn_log_level_trace, "stub ioctlsocket() called\n");
221#endif
222    if (fp == NULL) {
223	void *p;
224	if ((p = GetProcAddress(DLLHANDLE, "ioctlsocket")) == NULL) {
225	    FATAL("cannot find entry ioctlsocket (%d)\n", GetLastError());
226	    abort();
227	}
228	fp = p;
229    }
230    return (*fp)(a0, a1, a2);
231}
232
233int   PASCAL
234listen(SOCKET a0, int a1)
235{
236    static int   (PASCAL *fp)(SOCKET a0, int a1);
237
238#ifdef DEBUG_STUB
239    idnLogPrintf(idn_log_level_trace, "stub listen() called\n");
240#endif
241    if (fp == NULL) {
242	void *p;
243	if ((p = GetProcAddress(DLLHANDLE, "listen")) == NULL) {
244	    FATAL("cannot find entry listen (%d)\n", GetLastError());
245	    abort();
246	}
247	fp = p;
248    }
249    return (*fp)(a0, a1);
250}
251
252u_long   PASCAL
253ntohl(u_long a0)
254{
255    static u_long   (PASCAL *fp)(u_long a0);
256
257#ifdef DEBUG_STUB
258    idnLogPrintf(idn_log_level_trace, "stub ntohl() called\n");
259#endif
260    if (fp == NULL) {
261	void *p;
262	if ((p = GetProcAddress(DLLHANDLE, "ntohl")) == NULL) {
263	    FATAL("cannot find entry ntohl (%d)\n", GetLastError());
264	    abort();
265	}
266	fp = p;
267    }
268    return (*fp)(a0);
269}
270
271u_short   PASCAL
272ntohs(u_short a0)
273{
274    static u_short   (PASCAL *fp)(u_short a0);
275
276#ifdef DEBUG_STUB
277    idnLogPrintf(idn_log_level_trace, "stub ntohs() called\n");
278#endif
279    if (fp == NULL) {
280	void *p;
281	if ((p = GetProcAddress(DLLHANDLE, "ntohs")) == NULL) {
282	    FATAL("cannot find entry ntohs (%d)\n", GetLastError());
283	    abort();
284	}
285	fp = p;
286    }
287    return (*fp)(a0);
288}
289
290int   PASCAL
291recv(SOCKET a0, char* a1, int a2, int a3)
292{
293    static int   (PASCAL *fp)(SOCKET a0, char* a1, int a2, int a3);
294
295#ifdef DEBUG_STUB
296    idnLogPrintf(idn_log_level_trace, "stub recv() called\n");
297#endif
298    if (fp == NULL) {
299	void *p;
300	if ((p = GetProcAddress(DLLHANDLE, "recv")) == NULL) {
301	    FATAL("cannot find entry recv (%d)\n", GetLastError());
302	    abort();
303	}
304	fp = p;
305    }
306    return (*fp)(a0, a1, a2, a3);
307}
308
309int   PASCAL
310recvfrom(SOCKET a0, char* a1, int a2, int a3, struct sockaddr* a4, int* a5)
311{
312    static int   (PASCAL *fp)(SOCKET a0, char* a1, int a2, int a3, struct sockaddr* a4, int* a5);
313
314#ifdef DEBUG_STUB
315    idnLogPrintf(idn_log_level_trace, "stub recvfrom() called\n");
316#endif
317    if (fp == NULL) {
318	void *p;
319	if ((p = GetProcAddress(DLLHANDLE, "recvfrom")) == NULL) {
320	    FATAL("cannot find entry recvfrom (%d)\n", GetLastError());
321	    abort();
322	}
323	fp = p;
324    }
325    return (*fp)(a0, a1, a2, a3, a4, a5);
326}
327
328int   PASCAL
329select(int a0, fd_set* a1, fd_set* a2, fd_set* a3, const struct timeval* a4)
330{
331    static int   (PASCAL *fp)(int a0, fd_set* a1, fd_set* a2, fd_set* a3, const struct timeval* a4);
332
333#ifdef DEBUG_STUB
334    idnLogPrintf(idn_log_level_trace, "stub select() called\n");
335#endif
336    if (fp == NULL) {
337	void *p;
338	if ((p = GetProcAddress(DLLHANDLE, "select")) == NULL) {
339	    FATAL("cannot find entry select (%d)\n", GetLastError());
340	    abort();
341	}
342	fp = p;
343    }
344    return (*fp)(a0, a1, a2, a3, a4);
345}
346
347int   PASCAL
348send(SOCKET a0, const char* a1, int a2, int a3)
349{
350    static int   (PASCAL *fp)(SOCKET a0, const char* a1, int a2, int a3);
351
352#ifdef DEBUG_STUB
353    idnLogPrintf(idn_log_level_trace, "stub send() called\n");
354#endif
355    if (fp == NULL) {
356	void *p;
357	if ((p = GetProcAddress(DLLHANDLE, "send")) == NULL) {
358	    FATAL("cannot find entry send (%d)\n", GetLastError());
359	    abort();
360	}
361	fp = p;
362    }
363    return (*fp)(a0, a1, a2, a3);
364}
365
366int   PASCAL
367sendto(SOCKET a0, const char* a1, int a2, int a3, const struct sockaddr* a4, int a5)
368{
369    static int   (PASCAL *fp)(SOCKET a0, const char* a1, int a2, int a3, const struct sockaddr* a4, int a5);
370
371#ifdef DEBUG_STUB
372    idnLogPrintf(idn_log_level_trace, "stub sendto() called\n");
373#endif
374    if (fp == NULL) {
375	void *p;
376	if ((p = GetProcAddress(DLLHANDLE, "sendto")) == NULL) {
377	    FATAL("cannot find entry sendto (%d)\n", GetLastError());
378	    abort();
379	}
380	fp = p;
381    }
382    return (*fp)(a0, a1, a2, a3, a4, a5);
383}
384
385int   PASCAL
386setsockopt(SOCKET a0, int a1, int a2, const char* a3, int a4)
387{
388    static int   (PASCAL *fp)(SOCKET a0, int a1, int a2, const char* a3, int a4);
389
390#ifdef DEBUG_STUB
391    idnLogPrintf(idn_log_level_trace, "stub setsockopt() called\n");
392#endif
393    if (fp == NULL) {
394	void *p;
395	if ((p = GetProcAddress(DLLHANDLE, "setsockopt")) == NULL) {
396	    FATAL("cannot find entry setsockopt (%d)\n", GetLastError());
397	    abort();
398	}
399	fp = p;
400    }
401    return (*fp)(a0, a1, a2, a3, a4);
402}
403
404int   PASCAL
405shutdown(SOCKET a0, int a1)
406{
407    static int   (PASCAL *fp)(SOCKET a0, int a1);
408
409#ifdef DEBUG_STUB
410    idnLogPrintf(idn_log_level_trace, "stub shutdown() called\n");
411#endif
412    if (fp == NULL) {
413	void *p;
414	if ((p = GetProcAddress(DLLHANDLE, "shutdown")) == NULL) {
415	    FATAL("cannot find entry shutdown (%d)\n", GetLastError());
416	    abort();
417	}
418	fp = p;
419    }
420    return (*fp)(a0, a1);
421}
422
423SOCKET   PASCAL
424socket(int a0, int a1, int a2)
425{
426    static SOCKET   (PASCAL *fp)(int a0, int a1, int a2);
427
428#ifdef DEBUG_STUB
429    idnLogPrintf(idn_log_level_trace, "stub socket() called\n");
430#endif
431    if (fp == NULL) {
432	void *p;
433	if ((p = GetProcAddress(DLLHANDLE, "socket")) == NULL) {
434	    FATAL("cannot find entry socket (%d)\n", GetLastError());
435	    abort();
436	}
437	fp = p;
438    }
439    return (*fp)(a0, a1, a2);
440}
441
442int  PASCAL
443MigrateWinsockConfiguration(int a0, int a1, int a2)
444{
445    static int  (PASCAL *fp)(int a0, int a1, int a2);
446
447#ifdef DEBUG_STUB
448    idnLogPrintf(idn_log_level_trace, "stub MigrateWinsockConfiguration() called\n");
449#endif
450    if (fp == NULL) {
451	void *p;
452	if ((p = GetProcAddress(DLLHANDLE, "MigrateWinsockConfiguration")) == NULL) {
453	    FATAL("cannot find entry MigrateWinsockConfiguration (%d)\n", GetLastError());
454	    abort();
455	}
456	fp = p;
457    }
458    return (*fp)(a0, a1, a2);
459}
460
461 struct hostent * PASCAL
462_org_gethostbyaddr(const char* a0, int a1, int a2)
463{
464    static  struct hostent * (PASCAL *fp)(const char* a0, int a1, int a2);
465
466#ifdef DEBUG_STUB
467    idnLogPrintf(idn_log_level_trace, "stub _org_gethostbyaddr() called\n");
468#endif
469    if (fp == NULL) {
470	void *p;
471	if ((p = GetProcAddress(DLLHANDLE, "gethostbyaddr")) == NULL) {
472	    FATAL("cannot find entry gethostbyaddr (%d)\n", GetLastError());
473	    abort();
474	}
475	fp = p;
476    }
477    return (*fp)(a0, a1, a2);
478}
479
480 struct hostent * PASCAL
481_org_gethostbyname(const char* a0)
482{
483    static  struct hostent * (PASCAL *fp)(const char* a0);
484
485#ifdef DEBUG_STUB
486    idnLogPrintf(idn_log_level_trace, "stub _org_gethostbyname() called\n");
487#endif
488    if (fp == NULL) {
489	void *p;
490	if ((p = GetProcAddress(DLLHANDLE, "gethostbyname")) == NULL) {
491	    FATAL("cannot find entry gethostbyname (%d)\n", GetLastError());
492	    abort();
493	}
494	fp = p;
495    }
496    return (*fp)(a0);
497}
498
499 struct protoent * PASCAL
500getprotobyname(const char* a0)
501{
502    static  struct protoent * (PASCAL *fp)(const char* a0);
503
504#ifdef DEBUG_STUB
505    idnLogPrintf(idn_log_level_trace, "stub getprotobyname() called\n");
506#endif
507    if (fp == NULL) {
508	void *p;
509	if ((p = GetProcAddress(DLLHANDLE, "getprotobyname")) == NULL) {
510	    FATAL("cannot find entry getprotobyname (%d)\n", GetLastError());
511	    abort();
512	}
513	fp = p;
514    }
515    return (*fp)(a0);
516}
517
518 struct protoent * PASCAL
519getprotobynumber(int a0)
520{
521    static  struct protoent * (PASCAL *fp)(int a0);
522
523#ifdef DEBUG_STUB
524    idnLogPrintf(idn_log_level_trace, "stub getprotobynumber() called\n");
525#endif
526    if (fp == NULL) {
527	void *p;
528	if ((p = GetProcAddress(DLLHANDLE, "getprotobynumber")) == NULL) {
529	    FATAL("cannot find entry getprotobynumber (%d)\n", GetLastError());
530	    abort();
531	}
532	fp = p;
533    }
534    return (*fp)(a0);
535}
536
537 struct servent * PASCAL
538getservbyname(const char* a0, const char* a1)
539{
540    static  struct servent * (PASCAL *fp)(const char* a0, const char* a1);
541
542#ifdef DEBUG_STUB
543    idnLogPrintf(idn_log_level_trace, "stub getservbyname() called\n");
544#endif
545    if (fp == NULL) {
546	void *p;
547	if ((p = GetProcAddress(DLLHANDLE, "getservbyname")) == NULL) {
548	    FATAL("cannot find entry getservbyname (%d)\n", GetLastError());
549	    abort();
550	}
551	fp = p;
552    }
553    return (*fp)(a0, a1);
554}
555
556 struct servent * PASCAL
557getservbyport(int a0, const char* a1)
558{
559    static  struct servent * (PASCAL *fp)(int a0, const char* a1);
560
561#ifdef DEBUG_STUB
562    idnLogPrintf(idn_log_level_trace, "stub getservbyport() called\n");
563#endif
564    if (fp == NULL) {
565	void *p;
566	if ((p = GetProcAddress(DLLHANDLE, "getservbyport")) == NULL) {
567	    FATAL("cannot find entry getservbyport (%d)\n", GetLastError());
568	    abort();
569	}
570	fp = p;
571    }
572    return (*fp)(a0, a1);
573}
574
575int   PASCAL
576_org_gethostname(char* a0, int a1)
577{
578    static int   (PASCAL *fp)(char* a0, int a1);
579
580#ifdef DEBUG_STUB
581    idnLogPrintf(idn_log_level_trace, "stub _org_gethostname() called\n");
582#endif
583    if (fp == NULL) {
584	void *p;
585	if ((p = GetProcAddress(DLLHANDLE, "gethostname")) == NULL) {
586	    FATAL("cannot find entry gethostname (%d)\n", GetLastError());
587	    abort();
588	}
589	fp = p;
590    }
591    return (*fp)(a0, a1);
592}
593
594int   PASCAL
595WSAAsyncSelect(SOCKET a0, HWND a1, u_int a2, long a3)
596{
597    static int   (PASCAL *fp)(SOCKET a0, HWND a1, u_int a2, long a3);
598
599#ifdef DEBUG_STUB
600    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncSelect() called\n");
601#endif
602    if (fp == NULL) {
603	void *p;
604	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncSelect")) == NULL) {
605	    FATAL("cannot find entry WSAAsyncSelect (%d)\n", GetLastError());
606	    abort();
607	}
608	fp = p;
609    }
610    return (*fp)(a0, a1, a2, a3);
611}
612
613HANDLE   PASCAL
614_org_WSAAsyncGetHostByAddr(HWND a0, u_int a1, const char* a2, int a3, int a4, char* a5, int a6)
615{
616    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, int a3, int a4, char* a5, int a6);
617
618#ifdef DEBUG_STUB
619    idnLogPrintf(idn_log_level_trace, "stub _org_WSAAsyncGetHostByAddr() called\n");
620#endif
621    if (fp == NULL) {
622	void *p;
623	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetHostByAddr")) == NULL) {
624	    FATAL("cannot find entry WSAAsyncGetHostByAddr (%d)\n", GetLastError());
625	    abort();
626	}
627	fp = p;
628    }
629    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
630}
631
632HANDLE   PASCAL
633_org_WSAAsyncGetHostByName(HWND a0, u_int a1, const char* a2, char* a3, int a4)
634{
635    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, char* a3, int a4);
636
637#ifdef DEBUG_STUB
638    idnLogPrintf(idn_log_level_trace, "stub _org_WSAAsyncGetHostByName() called\n");
639#endif
640    if (fp == NULL) {
641	void *p;
642	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetHostByName")) == NULL) {
643	    FATAL("cannot find entry WSAAsyncGetHostByName (%d)\n", GetLastError());
644	    abort();
645	}
646	fp = p;
647    }
648    return (*fp)(a0, a1, a2, a3, a4);
649}
650
651HANDLE   PASCAL
652WSAAsyncGetProtoByNumber(HWND a0, u_int a1, int a2, char* a3, int a4)
653{
654    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, int a2, char* a3, int a4);
655
656#ifdef DEBUG_STUB
657    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetProtoByNumber() called\n");
658#endif
659    if (fp == NULL) {
660	void *p;
661	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetProtoByNumber")) == NULL) {
662	    FATAL("cannot find entry WSAAsyncGetProtoByNumber (%d)\n", GetLastError());
663	    abort();
664	}
665	fp = p;
666    }
667    return (*fp)(a0, a1, a2, a3, a4);
668}
669
670HANDLE   PASCAL
671WSAAsyncGetProtoByName(HWND a0, u_int a1, const char* a2, char* a3, int a4)
672{
673    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, char* a3, int a4);
674
675#ifdef DEBUG_STUB
676    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetProtoByName() called\n");
677#endif
678    if (fp == NULL) {
679	void *p;
680	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetProtoByName")) == NULL) {
681	    FATAL("cannot find entry WSAAsyncGetProtoByName (%d)\n", GetLastError());
682	    abort();
683	}
684	fp = p;
685    }
686    return (*fp)(a0, a1, a2, a3, a4);
687}
688
689HANDLE   PASCAL
690WSAAsyncGetServByPort(HWND a0, u_int a1, int a2, const char* a3, char* a4, int a5)
691{
692    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, int a2, const char* a3, char* a4, int a5);
693
694#ifdef DEBUG_STUB
695    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetServByPort() called\n");
696#endif
697    if (fp == NULL) {
698	void *p;
699	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetServByPort")) == NULL) {
700	    FATAL("cannot find entry WSAAsyncGetServByPort (%d)\n", GetLastError());
701	    abort();
702	}
703	fp = p;
704    }
705    return (*fp)(a0, a1, a2, a3, a4, a5);
706}
707
708HANDLE   PASCAL
709WSAAsyncGetServByName(HWND a0, u_int a1, const char* a2, const char* a3, char* a4, int a5)
710{
711    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, const char* a3, char* a4, int a5);
712
713#ifdef DEBUG_STUB
714    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetServByName() called\n");
715#endif
716    if (fp == NULL) {
717	void *p;
718	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetServByName")) == NULL) {
719	    FATAL("cannot find entry WSAAsyncGetServByName (%d)\n", GetLastError());
720	    abort();
721	}
722	fp = p;
723    }
724    return (*fp)(a0, a1, a2, a3, a4, a5);
725}
726
727int   PASCAL
728WSACancelAsyncRequest(HANDLE a0)
729{
730    static int   (PASCAL *fp)(HANDLE a0);
731
732#ifdef DEBUG_STUB
733    idnLogPrintf(idn_log_level_trace, "stub WSACancelAsyncRequest() called\n");
734#endif
735    if (fp == NULL) {
736	void *p;
737	if ((p = GetProcAddress(DLLHANDLE, "WSACancelAsyncRequest")) == NULL) {
738	    FATAL("cannot find entry WSACancelAsyncRequest (%d)\n", GetLastError());
739	    abort();
740	}
741	fp = p;
742    }
743    return (*fp)(a0);
744}
745
746FARPROC   PASCAL
747WSASetBlockingHook(FARPROC a0)
748{
749    static FARPROC   (PASCAL *fp)(FARPROC a0);
750
751#ifdef DEBUG_STUB
752    idnLogPrintf(idn_log_level_trace, "stub WSASetBlockingHook() called\n");
753#endif
754    if (fp == NULL) {
755	void *p;
756	if ((p = GetProcAddress(DLLHANDLE, "WSASetBlockingHook")) == NULL) {
757	    FATAL("cannot find entry WSASetBlockingHook (%d)\n", GetLastError());
758	    abort();
759	}
760	fp = p;
761    }
762    return (*fp)(a0);
763}
764
765int   PASCAL
766WSAUnhookBlockingHook(void)
767{
768    static int   (PASCAL *fp)(void);
769
770#ifdef DEBUG_STUB
771    idnLogPrintf(idn_log_level_trace, "stub WSAUnhookBlockingHook() called\n");
772#endif
773    if (fp == NULL) {
774	void *p;
775	if ((p = GetProcAddress(DLLHANDLE, "WSAUnhookBlockingHook")) == NULL) {
776	    FATAL("cannot find entry WSAUnhookBlockingHook (%d)\n", GetLastError());
777	    abort();
778	}
779	fp = p;
780    }
781    return (*fp)();
782}
783
784int   PASCAL
785WSAGetLastError(void)
786{
787    static int   (PASCAL *fp)(void);
788
789#ifdef DEBUG_STUB
790    idnLogPrintf(idn_log_level_trace, "stub WSAGetLastError() called\n");
791#endif
792    if (fp == NULL) {
793	void *p;
794	if ((p = GetProcAddress(DLLHANDLE, "WSAGetLastError")) == NULL) {
795	    FATAL("cannot find entry WSAGetLastError (%d)\n", GetLastError());
796	    abort();
797	}
798	fp = p;
799    }
800    return (*fp)();
801}
802
803void   PASCAL
804WSASetLastError(int a0)
805{
806    static void   (PASCAL *fp)(int a0);
807
808#ifdef DEBUG_STUB
809    idnLogPrintf(idn_log_level_trace, "stub WSASetLastError() called\n");
810#endif
811    if (fp == NULL) {
812	void *p;
813	if ((p = GetProcAddress(DLLHANDLE, "WSASetLastError")) == NULL) {
814	    FATAL("cannot find entry WSASetLastError (%d)\n", GetLastError());
815	    abort();
816	}
817	fp = p;
818    }
819     (*fp)(a0);
820}
821
822int   PASCAL
823WSACancelBlockingCall(void)
824{
825    static int   (PASCAL *fp)(void);
826
827#ifdef DEBUG_STUB
828    idnLogPrintf(idn_log_level_trace, "stub WSACancelBlockingCall() called\n");
829#endif
830    if (fp == NULL) {
831	void *p;
832	if ((p = GetProcAddress(DLLHANDLE, "WSACancelBlockingCall")) == NULL) {
833	    FATAL("cannot find entry WSACancelBlockingCall (%d)\n", GetLastError());
834	    abort();
835	}
836	fp = p;
837    }
838    return (*fp)();
839}
840
841BOOL   PASCAL
842WSAIsBlocking(void)
843{
844    static BOOL   (PASCAL *fp)(void);
845
846#ifdef DEBUG_STUB
847    idnLogPrintf(idn_log_level_trace, "stub WSAIsBlocking() called\n");
848#endif
849    if (fp == NULL) {
850	void *p;
851	if ((p = GetProcAddress(DLLHANDLE, "WSAIsBlocking")) == NULL) {
852	    FATAL("cannot find entry WSAIsBlocking (%d)\n", GetLastError());
853	    abort();
854	}
855	fp = p;
856    }
857    return (*fp)();
858}
859
860int   PASCAL
861WSAStartup(WORD a0, LPWSADATA a1)
862{
863    static int   (PASCAL *fp)(WORD a0, LPWSADATA a1);
864
865#ifdef DEBUG_STUB
866    idnLogPrintf(idn_log_level_trace, "stub WSAStartup() called\n");
867#endif
868    if (fp == NULL) {
869	void *p;
870	if ((p = GetProcAddress(DLLHANDLE, "WSAStartup")) == NULL) {
871	    FATAL("cannot find entry WSAStartup (%d)\n", GetLastError());
872	    abort();
873	}
874	fp = p;
875    }
876    return (*fp)(a0, a1);
877}
878
879int   PASCAL
880WSACleanup(void)
881{
882    static int   (PASCAL *fp)(void);
883
884#ifdef DEBUG_STUB
885    idnLogPrintf(idn_log_level_trace, "stub WSACleanup() called\n");
886#endif
887    if (fp == NULL) {
888	void *p;
889	if ((p = GetProcAddress(DLLHANDLE, "WSACleanup")) == NULL) {
890	    FATAL("cannot find entry WSACleanup (%d)\n", GetLastError());
891	    abort();
892	}
893	fp = p;
894    }
895    return (*fp)();
896}
897
898int   PASCAL
899__WSAFDIsSet(SOCKET a0, fd_set* a1)
900{
901    static int   (PASCAL *fp)(SOCKET a0, fd_set* a1);
902
903#ifdef DEBUG_STUB
904    idnLogPrintf(idn_log_level_trace, "stub __WSAFDIsSet() called\n");
905#endif
906    if (fp == NULL) {
907	void *p;
908	if ((p = GetProcAddress(DLLHANDLE, "__WSAFDIsSet")) == NULL) {
909	    FATAL("cannot find entry __WSAFDIsSet (%d)\n", GetLastError());
910	    abort();
911	}
912	fp = p;
913    }
914    return (*fp)(a0, a1);
915}
916
917int  PASCAL
918WEP(void)
919{
920    static int  (PASCAL *fp)(void);
921
922#ifdef DEBUG_STUB
923    idnLogPrintf(idn_log_level_trace, "stub WEP() called\n");
924#endif
925    if (fp == NULL) {
926	void *p;
927	if ((p = GetProcAddress(DLLHANDLE, "WEP")) == NULL) {
928	    FATAL("cannot find entry WEP (%d)\n", GetLastError());
929	    abort();
930	}
931	fp = p;
932    }
933    return (*fp)();
934}
935
936int  PASCAL
937WSApSetPostRoutine(int a0)
938{
939    static int  (PASCAL *fp)(int a0);
940
941#ifdef DEBUG_STUB
942    idnLogPrintf(idn_log_level_trace, "stub WSApSetPostRoutine() called\n");
943#endif
944    if (fp == NULL) {
945	void *p;
946	if ((p = GetProcAddress(DLLHANDLE, "WSApSetPostRoutine")) == NULL) {
947	    FATAL("cannot find entry WSApSetPostRoutine (%d)\n", GetLastError());
948	    abort();
949	}
950	fp = p;
951    }
952    return (*fp)(a0);
953}
954
955int  PASCAL
956WsControl(int a0, int a1, int a2, int a3, int a4, int a5)
957{
958    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3, int a4, int a5);
959
960#ifdef DEBUG_STUB
961    idnLogPrintf(idn_log_level_trace, "stub WsControl() called\n");
962#endif
963    if (fp == NULL) {
964	void *p;
965	if ((p = GetProcAddress(DLLHANDLE, "WsControl")) == NULL) {
966	    FATAL("cannot find entry WsControl (%d)\n", GetLastError());
967	    abort();
968	}
969	fp = p;
970    }
971    return (*fp)(a0, a1, a2, a3, a4, a5);
972}
973
974int  PASCAL
975closesockinfo(int a0)
976{
977    static int  (PASCAL *fp)(int a0);
978
979#ifdef DEBUG_STUB
980    idnLogPrintf(idn_log_level_trace, "stub closesockinfo() called\n");
981#endif
982    if (fp == NULL) {
983	void *p;
984	if ((p = GetProcAddress(DLLHANDLE, "closesockinfo")) == NULL) {
985	    FATAL("cannot find entry closesockinfo (%d)\n", GetLastError());
986	    abort();
987	}
988	fp = p;
989    }
990    return (*fp)(a0);
991}
992
993int  PASCAL
994Arecv(int a0, int a1, int a2, int a3)
995{
996    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3);
997
998#ifdef DEBUG_STUB
999    idnLogPrintf(idn_log_level_trace, "stub Arecv() called\n");
1000#endif
1001    if (fp == NULL) {
1002	void *p;
1003	if ((p = GetProcAddress(DLLHANDLE, "Arecv")) == NULL) {
1004	    FATAL("cannot find entry Arecv (%d)\n", GetLastError());
1005	    abort();
1006	}
1007	fp = p;
1008    }
1009    return (*fp)(a0, a1, a2, a3);
1010}
1011
1012int  PASCAL
1013Asend(int a0, int a1, int a2, int a3)
1014{
1015    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3);
1016
1017#ifdef DEBUG_STUB
1018    idnLogPrintf(idn_log_level_trace, "stub Asend() called\n");
1019#endif
1020    if (fp == NULL) {
1021	void *p;
1022	if ((p = GetProcAddress(DLLHANDLE, "Asend")) == NULL) {
1023	    FATAL("cannot find entry Asend (%d)\n", GetLastError());
1024	    abort();
1025	}
1026	fp = p;
1027    }
1028    return (*fp)(a0, a1, a2, a3);
1029}
1030
1031int  PASCAL
1032WSHEnumProtocols(void)
1033{
1034    static int  (PASCAL *fp)(void);
1035
1036#ifdef DEBUG_STUB
1037    idnLogPrintf(idn_log_level_trace, "stub WSHEnumProtocols() called\n");
1038#endif
1039    if (fp == NULL) {
1040	void *p;
1041	if ((p = GetProcAddress(DLLHANDLE, "WSHEnumProtocols")) == NULL) {
1042	    FATAL("cannot find entry WSHEnumProtocols (%d)\n", GetLastError());
1043	    abort();
1044	}
1045	fp = p;
1046    }
1047    return (*fp)();
1048}
1049
1050int  PASCAL
1051inet_network(int a0)
1052{
1053    static int  (PASCAL *fp)(int a0);
1054
1055#ifdef DEBUG_STUB
1056    idnLogPrintf(idn_log_level_trace, "stub inet_network() called\n");
1057#endif
1058    if (fp == NULL) {
1059	void *p;
1060	if ((p = GetProcAddress(DLLHANDLE, "inet_network")) == NULL) {
1061	    FATAL("cannot find entry inet_network (%d)\n", GetLastError());
1062	    abort();
1063	}
1064	fp = p;
1065    }
1066    return (*fp)(a0);
1067}
1068
1069int  PASCAL
1070getnetbyname(int a0)
1071{
1072    static int  (PASCAL *fp)(int a0);
1073
1074#ifdef DEBUG_STUB
1075    idnLogPrintf(idn_log_level_trace, "stub getnetbyname() called\n");
1076#endif
1077    if (fp == NULL) {
1078	void *p;
1079	if ((p = GetProcAddress(DLLHANDLE, "getnetbyname")) == NULL) {
1080	    FATAL("cannot find entry getnetbyname (%d)\n", GetLastError());
1081	    abort();
1082	}
1083	fp = p;
1084    }
1085    return (*fp)(a0);
1086}
1087
1088int  PASCAL
1089rcmd(int a0, int a1, int a2, int a3, int a4, int a5)
1090{
1091    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3, int a4, int a5);
1092
1093#ifdef DEBUG_STUB
1094    idnLogPrintf(idn_log_level_trace, "stub rcmd() called\n");
1095#endif
1096    if (fp == NULL) {
1097	void *p;
1098	if ((p = GetProcAddress(DLLHANDLE, "rcmd")) == NULL) {
1099	    FATAL("cannot find entry rcmd (%d)\n", GetLastError());
1100	    abort();
1101	}
1102	fp = p;
1103    }
1104    return (*fp)(a0, a1, a2, a3, a4, a5);
1105}
1106
1107int  PASCAL
1108rexec(int a0, int a1, int a2, int a3, int a4, int a5)
1109{
1110    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3, int a4, int a5);
1111
1112#ifdef DEBUG_STUB
1113    idnLogPrintf(idn_log_level_trace, "stub rexec() called\n");
1114#endif
1115    if (fp == NULL) {
1116	void *p;
1117	if ((p = GetProcAddress(DLLHANDLE, "rexec")) == NULL) {
1118	    FATAL("cannot find entry rexec (%d)\n", GetLastError());
1119	    abort();
1120	}
1121	fp = p;
1122    }
1123    return (*fp)(a0, a1, a2, a3, a4, a5);
1124}
1125
1126int  PASCAL
1127rresvport(int a0)
1128{
1129    static int  (PASCAL *fp)(int a0);
1130
1131#ifdef DEBUG_STUB
1132    idnLogPrintf(idn_log_level_trace, "stub rresvport() called\n");
1133#endif
1134    if (fp == NULL) {
1135	void *p;
1136	if ((p = GetProcAddress(DLLHANDLE, "rresvport")) == NULL) {
1137	    FATAL("cannot find entry rresvport (%d)\n", GetLastError());
1138	    abort();
1139	}
1140	fp = p;
1141    }
1142    return (*fp)(a0);
1143}
1144
1145int  PASCAL
1146sethostname(int a0, int a1)
1147{
1148    static int  (PASCAL *fp)(int a0, int a1);
1149
1150#ifdef DEBUG_STUB
1151    idnLogPrintf(idn_log_level_trace, "stub sethostname() called\n");
1152#endif
1153    if (fp == NULL) {
1154	void *p;
1155	if ((p = GetProcAddress(DLLHANDLE, "sethostname")) == NULL) {
1156	    FATAL("cannot find entry sethostname (%d)\n", GetLastError());
1157	    abort();
1158	}
1159	fp = p;
1160    }
1161    return (*fp)(a0, a1);
1162}
1163
1164int  PASCAL
1165dn_expand(int a0, int a1, int a2, int a3, int a4)
1166{
1167    static int  (PASCAL *fp)(int a0, int a1, int a2, int a3, int a4);
1168
1169#ifdef DEBUG_STUB
1170    idnLogPrintf(idn_log_level_trace, "stub dn_expand() called\n");
1171#endif
1172    if (fp == NULL) {
1173	void *p;
1174	if ((p = GetProcAddress(DLLHANDLE, "dn_expand")) == NULL) {
1175	    FATAL("cannot find entry dn_expand (%d)\n", GetLastError());
1176	    abort();
1177	}
1178	fp = p;
1179    }
1180    return (*fp)(a0, a1, a2, a3, a4);
1181}
1182
1183int   PASCAL
1184WSARecvEx(SOCKET a0, char* a1, int a2, int* a3)
1185{
1186    static int   (PASCAL *fp)(SOCKET a0, char* a1, int a2, int* a3);
1187
1188#ifdef DEBUG_STUB
1189    idnLogPrintf(idn_log_level_trace, "stub WSARecvEx() called\n");
1190#endif
1191    if (fp == NULL) {
1192	void *p;
1193	if ((p = GetProcAddress(DLLHANDLE, "WSARecvEx")) == NULL) {
1194	    FATAL("cannot find entry WSARecvEx (%d)\n", GetLastError());
1195	    abort();
1196	}
1197	fp = p;
1198    }
1199    return (*fp)(a0, a1, a2, a3);
1200}
1201
1202int  PASCAL
1203s_perror(int a0, int a1)
1204{
1205    static int  (PASCAL *fp)(int a0, int a1);
1206
1207#ifdef DEBUG_STUB
1208    idnLogPrintf(idn_log_level_trace, "stub s_perror() called\n");
1209#endif
1210    if (fp == NULL) {
1211	void *p;
1212	if ((p = GetProcAddress(DLLHANDLE, "s_perror")) == NULL) {
1213	    FATAL("cannot find entry s_perror (%d)\n", GetLastError());
1214	    abort();
1215	}
1216	fp = p;
1217    }
1218    return (*fp)(a0, a1);
1219}
1220
1221INT   PASCAL
1222GetAddressByNameA(DWORD a0, LPGUID a1, LPSTR a2, LPINT a3, DWORD a4, LPSERVICE_ASYNC_INFO a5, LPVOID a6, LPDWORD a7, LPSTR a8, LPDWORD a9)
1223{
1224    static INT   (PASCAL *fp)(DWORD a0, LPGUID a1, LPSTR a2, LPINT a3, DWORD a4, LPSERVICE_ASYNC_INFO a5, LPVOID a6, LPDWORD a7, LPSTR a8, LPDWORD a9);
1225
1226#ifdef DEBUG_STUB
1227    idnLogPrintf(idn_log_level_trace, "stub GetAddressByNameA() called\n");
1228#endif
1229    if (fp == NULL) {
1230	void *p;
1231	if ((p = GetProcAddress(DLLHANDLE, "GetAddressByNameA")) == NULL) {
1232	    FATAL("cannot find entry GetAddressByNameA (%d)\n", GetLastError());
1233	    abort();
1234	}
1235	fp = p;
1236    }
1237    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);
1238}
1239
1240INT   PASCAL
1241GetAddressByNameW(DWORD a0, LPGUID a1, LPWSTR a2, LPINT a3, DWORD a4, LPSERVICE_ASYNC_INFO a5, LPVOID a6, LPDWORD a7, LPWSTR a8, LPDWORD a9)
1242{
1243    static INT   (PASCAL *fp)(DWORD a0, LPGUID a1, LPWSTR a2, LPINT a3, DWORD a4, LPSERVICE_ASYNC_INFO a5, LPVOID a6, LPDWORD a7, LPWSTR a8, LPDWORD a9);
1244
1245#ifdef DEBUG_STUB
1246    idnLogPrintf(idn_log_level_trace, "stub GetAddressByNameW() called\n");
1247#endif
1248    if (fp == NULL) {
1249	void *p;
1250	if ((p = GetProcAddress(DLLHANDLE, "GetAddressByNameW")) == NULL) {
1251	    FATAL("cannot find entry GetAddressByNameW (%d)\n", GetLastError());
1252	    abort();
1253	}
1254	fp = p;
1255    }
1256    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);
1257}
1258
1259INT   PASCAL
1260EnumProtocolsA(LPINT a0, LPVOID a1, LPDWORD a2)
1261{
1262    static INT   (PASCAL *fp)(LPINT a0, LPVOID a1, LPDWORD a2);
1263
1264#ifdef DEBUG_STUB
1265    idnLogPrintf(idn_log_level_trace, "stub EnumProtocolsA() called\n");
1266#endif
1267    if (fp == NULL) {
1268	void *p;
1269	if ((p = GetProcAddress(DLLHANDLE, "EnumProtocolsA")) == NULL) {
1270	    FATAL("cannot find entry EnumProtocolsA (%d)\n", GetLastError());
1271	    abort();
1272	}
1273	fp = p;
1274    }
1275    return (*fp)(a0, a1, a2);
1276}
1277
1278INT   PASCAL
1279EnumProtocolsW(LPINT a0, LPVOID a1, LPDWORD a2)
1280{
1281    static INT   (PASCAL *fp)(LPINT a0, LPVOID a1, LPDWORD a2);
1282
1283#ifdef DEBUG_STUB
1284    idnLogPrintf(idn_log_level_trace, "stub EnumProtocolsW() called\n");
1285#endif
1286    if (fp == NULL) {
1287	void *p;
1288	if ((p = GetProcAddress(DLLHANDLE, "EnumProtocolsW")) == NULL) {
1289	    FATAL("cannot find entry EnumProtocolsW (%d)\n", GetLastError());
1290	    abort();
1291	}
1292	fp = p;
1293    }
1294    return (*fp)(a0, a1, a2);
1295}
1296
1297INT   PASCAL
1298GetTypeByNameA(LPSTR a0, LPGUID a1)
1299{
1300    static INT   (PASCAL *fp)(LPSTR a0, LPGUID a1);
1301
1302#ifdef DEBUG_STUB
1303    idnLogPrintf(idn_log_level_trace, "stub GetTypeByNameA() called\n");
1304#endif
1305    if (fp == NULL) {
1306	void *p;
1307	if ((p = GetProcAddress(DLLHANDLE, "GetTypeByNameA")) == NULL) {
1308	    FATAL("cannot find entry GetTypeByNameA (%d)\n", GetLastError());
1309	    abort();
1310	}
1311	fp = p;
1312    }
1313    return (*fp)(a0, a1);
1314}
1315
1316INT   PASCAL
1317GetTypeByNameW(LPWSTR a0, LPGUID a1)
1318{
1319    static INT   (PASCAL *fp)(LPWSTR a0, LPGUID a1);
1320
1321#ifdef DEBUG_STUB
1322    idnLogPrintf(idn_log_level_trace, "stub GetTypeByNameW() called\n");
1323#endif
1324    if (fp == NULL) {
1325	void *p;
1326	if ((p = GetProcAddress(DLLHANDLE, "GetTypeByNameW")) == NULL) {
1327	    FATAL("cannot find entry GetTypeByNameW (%d)\n", GetLastError());
1328	    abort();
1329	}
1330	fp = p;
1331    }
1332    return (*fp)(a0, a1);
1333}
1334
1335INT   PASCAL
1336GetNameByTypeA(LPGUID a0, LPSTR a1, DWORD a2)
1337{
1338    static INT   (PASCAL *fp)(LPGUID a0, LPSTR a1, DWORD a2);
1339
1340#ifdef DEBUG_STUB
1341    idnLogPrintf(idn_log_level_trace, "stub GetNameByTypeA() called\n");
1342#endif
1343    if (fp == NULL) {
1344	void *p;
1345	if ((p = GetProcAddress(DLLHANDLE, "GetNameByTypeA")) == NULL) {
1346	    FATAL("cannot find entry GetNameByTypeA (%d)\n", GetLastError());
1347	    abort();
1348	}
1349	fp = p;
1350    }
1351    return (*fp)(a0, a1, a2);
1352}
1353
1354INT   PASCAL
1355GetNameByTypeW(LPGUID a0, LPWSTR a1, DWORD a2)
1356{
1357    static INT   (PASCAL *fp)(LPGUID a0, LPWSTR a1, DWORD a2);
1358
1359#ifdef DEBUG_STUB
1360    idnLogPrintf(idn_log_level_trace, "stub GetNameByTypeW() called\n");
1361#endif
1362    if (fp == NULL) {
1363	void *p;
1364	if ((p = GetProcAddress(DLLHANDLE, "GetNameByTypeW")) == NULL) {
1365	    FATAL("cannot find entry GetNameByTypeW (%d)\n", GetLastError());
1366	    abort();
1367	}
1368	fp = p;
1369    }
1370    return (*fp)(a0, a1, a2);
1371}
1372
1373INT   PASCAL
1374SetServiceA(DWORD a0, DWORD a1, DWORD a2, LPSERVICE_INFOA a3, LPSERVICE_ASYNC_INFO a4, LPDWORD a5)
1375{
1376    static INT   (PASCAL *fp)(DWORD a0, DWORD a1, DWORD a2, LPSERVICE_INFOA a3, LPSERVICE_ASYNC_INFO a4, LPDWORD a5);
1377
1378#ifdef DEBUG_STUB
1379    idnLogPrintf(idn_log_level_trace, "stub SetServiceA() called\n");
1380#endif
1381    if (fp == NULL) {
1382	void *p;
1383	if ((p = GetProcAddress(DLLHANDLE, "SetServiceA")) == NULL) {
1384	    FATAL("cannot find entry SetServiceA (%d)\n", GetLastError());
1385	    abort();
1386	}
1387	fp = p;
1388    }
1389    return (*fp)(a0, a1, a2, a3, a4, a5);
1390}
1391
1392INT   PASCAL
1393SetServiceW(DWORD a0, DWORD a1, DWORD a2, LPSERVICE_INFOW a3, LPSERVICE_ASYNC_INFO a4, LPDWORD a5)
1394{
1395    static INT   (PASCAL *fp)(DWORD a0, DWORD a1, DWORD a2, LPSERVICE_INFOW a3, LPSERVICE_ASYNC_INFO a4, LPDWORD a5);
1396
1397#ifdef DEBUG_STUB
1398    idnLogPrintf(idn_log_level_trace, "stub SetServiceW() called\n");
1399#endif
1400    if (fp == NULL) {
1401	void *p;
1402	if ((p = GetProcAddress(DLLHANDLE, "SetServiceW")) == NULL) {
1403	    FATAL("cannot find entry SetServiceW (%d)\n", GetLastError());
1404	    abort();
1405	}
1406	fp = p;
1407    }
1408    return (*fp)(a0, a1, a2, a3, a4, a5);
1409}
1410
1411INT   PASCAL
1412GetServiceA(DWORD a0, LPGUID a1, LPSTR a2, DWORD a3, LPVOID a4, LPDWORD a5, LPSERVICE_ASYNC_INFO a6)
1413{
1414    static INT   (PASCAL *fp)(DWORD a0, LPGUID a1, LPSTR a2, DWORD a3, LPVOID a4, LPDWORD a5, LPSERVICE_ASYNC_INFO a6);
1415
1416#ifdef DEBUG_STUB
1417    idnLogPrintf(idn_log_level_trace, "stub GetServiceA() called\n");
1418#endif
1419    if (fp == NULL) {
1420	void *p;
1421	if ((p = GetProcAddress(DLLHANDLE, "GetServiceA")) == NULL) {
1422	    FATAL("cannot find entry GetServiceA (%d)\n", GetLastError());
1423	    abort();
1424	}
1425	fp = p;
1426    }
1427    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1428}
1429
1430INT   PASCAL
1431GetServiceW(DWORD a0, LPGUID a1, LPWSTR a2, DWORD a3, LPVOID a4, LPDWORD a5, LPSERVICE_ASYNC_INFO a6)
1432{
1433    static INT   (PASCAL *fp)(DWORD a0, LPGUID a1, LPWSTR a2, DWORD a3, LPVOID a4, LPDWORD a5, LPSERVICE_ASYNC_INFO a6);
1434
1435#ifdef DEBUG_STUB
1436    idnLogPrintf(idn_log_level_trace, "stub GetServiceW() called\n");
1437#endif
1438    if (fp == NULL) {
1439	void *p;
1440	if ((p = GetProcAddress(DLLHANDLE, "GetServiceW")) == NULL) {
1441	    FATAL("cannot find entry GetServiceW (%d)\n", GetLastError());
1442	    abort();
1443	}
1444	fp = p;
1445    }
1446    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1447}
1448
1449int  PASCAL
1450NPLoadNameSpaces(int a0, int a1, int a2)
1451{
1452    static int  (PASCAL *fp)(int a0, int a1, int a2);
1453
1454#ifdef DEBUG_STUB
1455    idnLogPrintf(idn_log_level_trace, "stub NPLoadNameSpaces() called\n");
1456#endif
1457    if (fp == NULL) {
1458	void *p;
1459	if ((p = GetProcAddress(DLLHANDLE, "NPLoadNameSpaces")) == NULL) {
1460	    FATAL("cannot find entry NPLoadNameSpaces (%d)\n", GetLastError());
1461	    abort();
1462	}
1463	fp = p;
1464    }
1465    return (*fp)(a0, a1, a2);
1466}
1467
1468int  PASCAL
1469NSPStartup(int a0, int a1)
1470{
1471    static int  (PASCAL *fp)(int a0, int a1);
1472
1473#ifdef DEBUG_STUB
1474    idnLogPrintf(idn_log_level_trace, "stub NSPStartup() called\n");
1475#endif
1476    if (fp == NULL) {
1477	void *p;
1478	if ((p = GetProcAddress(DLLHANDLE, "NSPStartup")) == NULL) {
1479	    FATAL("cannot find entry NSPStartup (%d)\n", GetLastError());
1480	    abort();
1481	}
1482	fp = p;
1483    }
1484    return (*fp)(a0, a1);
1485}
1486
1487BOOL   PASCAL
1488TransmitFile(SOCKET a0, HANDLE a1, DWORD a2, DWORD a3, LPOVERLAPPED a4, LPTRANSMIT_FILE_BUFFERS a5, DWORD a6)
1489{
1490    static BOOL   (PASCAL *fp)(SOCKET a0, HANDLE a1, DWORD a2, DWORD a3, LPOVERLAPPED a4, LPTRANSMIT_FILE_BUFFERS a5, DWORD a6);
1491
1492#ifdef DEBUG_STUB
1493    idnLogPrintf(idn_log_level_trace, "stub TransmitFile() called\n");
1494#endif
1495    if (fp == NULL) {
1496	void *p;
1497	if ((p = GetProcAddress(DLLHANDLE, "TransmitFile")) == NULL) {
1498	    FATAL("cannot find entry TransmitFile (%d)\n", GetLastError());
1499	    abort();
1500	}
1501	fp = p;
1502    }
1503    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1504}
1505
1506BOOL   PASCAL
1507AcceptEx(SOCKET a0, SOCKET a1, PVOID a2, DWORD a3, DWORD a4, DWORD a5, LPDWORD a6, LPOVERLAPPED a7)
1508{
1509    static BOOL   (PASCAL *fp)(SOCKET a0, SOCKET a1, PVOID a2, DWORD a3, DWORD a4, DWORD a5, LPDWORD a6, LPOVERLAPPED a7);
1510
1511#ifdef DEBUG_STUB
1512    idnLogPrintf(idn_log_level_trace, "stub AcceptEx() called\n");
1513#endif
1514    if (fp == NULL) {
1515	void *p;
1516	if ((p = GetProcAddress(DLLHANDLE, "AcceptEx")) == NULL) {
1517	    FATAL("cannot find entry AcceptEx (%d)\n", GetLastError());
1518	    abort();
1519	}
1520	fp = p;
1521    }
1522    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7);
1523}
1524
1525VOID   PASCAL
1526GetAcceptExSockaddrs(PVOID a0, DWORD a1, DWORD a2, DWORD a3, struct sockaddr** a4, LPINT a5, struct sockaddr** a6, LPINT a7)
1527{
1528    static VOID   (PASCAL *fp)(PVOID a0, DWORD a1, DWORD a2, DWORD a3, struct sockaddr** a4, LPINT a5, struct sockaddr** a6, LPINT a7);
1529
1530#ifdef DEBUG_STUB
1531    idnLogPrintf(idn_log_level_trace, "stub GetAcceptExSockaddrs() called\n");
1532#endif
1533    if (fp == NULL) {
1534	void *p;
1535	if ((p = GetProcAddress(DLLHANDLE, "GetAcceptExSockaddrs")) == NULL) {
1536	    FATAL("cannot find entry GetAcceptExSockaddrs (%d)\n", GetLastError());
1537	    abort();
1538	}
1539	fp = p;
1540    }
1541     (*fp)(a0, a1, a2, a3, a4, a5, a6, a7);
1542}
1543
1544