1/* $Id: dllstub.c,v 1.1 2003/06/04 00:27:51 marka Exp $ */
2
3SOCKET   PASCAL
4accept(SOCKET a0, struct sockaddr* a1, int* a2)
5{
6    static SOCKET   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
7
8#ifdef DEBUG_STUB
9    idnLogPrintf(idn_log_level_trace, "stub accept() called\n");
10#endif
11    if (fp == NULL) {
12	void *p;
13	if ((p = GetProcAddress(DLLHANDLE, "accept")) == NULL) {
14	    FATAL("cannot find entry accept (%d)\n", GetLastError());
15	    abort();
16	}
17	fp = p;
18    }
19    return (*fp)(a0, a1, a2);
20}
21
22int   PASCAL
23bind(SOCKET a0, const struct sockaddr* a1, int a2)
24{
25    static int   (PASCAL *fp)(SOCKET a0, const struct sockaddr* a1, int a2);
26
27#ifdef DEBUG_STUB
28    idnLogPrintf(idn_log_level_trace, "stub bind() called\n");
29#endif
30    if (fp == NULL) {
31	void *p;
32	if ((p = GetProcAddress(DLLHANDLE, "bind")) == NULL) {
33	    FATAL("cannot find entry bind (%d)\n", GetLastError());
34	    abort();
35	}
36	fp = p;
37    }
38    return (*fp)(a0, a1, a2);
39}
40
41int   PASCAL
42closesocket(SOCKET a0)
43{
44    static int   (PASCAL *fp)(SOCKET a0);
45
46#ifdef DEBUG_STUB
47    idnLogPrintf(idn_log_level_trace, "stub closesocket() called\n");
48#endif
49    if (fp == NULL) {
50	void *p;
51	if ((p = GetProcAddress(DLLHANDLE, "closesocket")) == NULL) {
52	    FATAL("cannot find entry closesocket (%d)\n", GetLastError());
53	    abort();
54	}
55	fp = p;
56    }
57    return (*fp)(a0);
58}
59
60int   PASCAL
61connect(SOCKET a0, const struct sockaddr* a1, int a2)
62{
63    static int   (PASCAL *fp)(SOCKET a0, const struct sockaddr* a1, int a2);
64
65#ifdef DEBUG_STUB
66    idnLogPrintf(idn_log_level_trace, "stub connect() called\n");
67#endif
68    if (fp == NULL) {
69	void *p;
70	if ((p = GetProcAddress(DLLHANDLE, "connect")) == NULL) {
71	    FATAL("cannot find entry connect (%d)\n", GetLastError());
72	    abort();
73	}
74	fp = p;
75    }
76    return (*fp)(a0, a1, a2);
77}
78
79int   PASCAL
80getpeername(SOCKET a0, struct sockaddr* a1, int* a2)
81{
82    static int   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
83
84#ifdef DEBUG_STUB
85    idnLogPrintf(idn_log_level_trace, "stub getpeername() called\n");
86#endif
87    if (fp == NULL) {
88	void *p;
89	if ((p = GetProcAddress(DLLHANDLE, "getpeername")) == NULL) {
90	    FATAL("cannot find entry getpeername (%d)\n", GetLastError());
91	    abort();
92	}
93	fp = p;
94    }
95    return (*fp)(a0, a1, a2);
96}
97
98int   PASCAL
99getsockname(SOCKET a0, struct sockaddr* a1, int* a2)
100{
101    static int   (PASCAL *fp)(SOCKET a0, struct sockaddr* a1, int* a2);
102
103#ifdef DEBUG_STUB
104    idnLogPrintf(idn_log_level_trace, "stub getsockname() called\n");
105#endif
106    if (fp == NULL) {
107	void *p;
108	if ((p = GetProcAddress(DLLHANDLE, "getsockname")) == NULL) {
109	    FATAL("cannot find entry getsockname (%d)\n", GetLastError());
110	    abort();
111	}
112	fp = p;
113    }
114    return (*fp)(a0, a1, a2);
115}
116
117int   PASCAL
118getsockopt(SOCKET a0, int a1, int a2, char* a3, int* a4)
119{
120    static int   (PASCAL *fp)(SOCKET a0, int a1, int a2, char* a3, int* a4);
121
122#ifdef DEBUG_STUB
123    idnLogPrintf(idn_log_level_trace, "stub getsockopt() called\n");
124#endif
125    if (fp == NULL) {
126	void *p;
127	if ((p = GetProcAddress(DLLHANDLE, "getsockopt")) == NULL) {
128	    FATAL("cannot find entry getsockopt (%d)\n", GetLastError());
129	    abort();
130	}
131	fp = p;
132    }
133    return (*fp)(a0, a1, a2, a3, a4);
134}
135
136u_long   PASCAL
137htonl(u_long a0)
138{
139    static u_long   (PASCAL *fp)(u_long a0);
140
141#ifdef DEBUG_STUB
142    idnLogPrintf(idn_log_level_trace, "stub htonl() called\n");
143#endif
144    if (fp == NULL) {
145	void *p;
146	if ((p = GetProcAddress(DLLHANDLE, "htonl")) == NULL) {
147	    FATAL("cannot find entry htonl (%d)\n", GetLastError());
148	    abort();
149	}
150	fp = p;
151    }
152    return (*fp)(a0);
153}
154
155u_short   PASCAL
156htons(u_short a0)
157{
158    static u_short   (PASCAL *fp)(u_short a0);
159
160#ifdef DEBUG_STUB
161    idnLogPrintf(idn_log_level_trace, "stub htons() called\n");
162#endif
163    if (fp == NULL) {
164	void *p;
165	if ((p = GetProcAddress(DLLHANDLE, "htons")) == NULL) {
166	    FATAL("cannot find entry htons (%d)\n", GetLastError());
167	    abort();
168	}
169	fp = p;
170    }
171    return (*fp)(a0);
172}
173
174int   PASCAL
175ioctlsocket(SOCKET a0, long a1, u_long * a2)
176{
177    static int   (PASCAL *fp)(SOCKET a0, long a1, u_long * a2);
178
179#ifdef DEBUG_STUB
180    idnLogPrintf(idn_log_level_trace, "stub ioctlsocket() called\n");
181#endif
182    if (fp == NULL) {
183	void *p;
184	if ((p = GetProcAddress(DLLHANDLE, "ioctlsocket")) == NULL) {
185	    FATAL("cannot find entry ioctlsocket (%d)\n", GetLastError());
186	    abort();
187	}
188	fp = p;
189    }
190    return (*fp)(a0, a1, a2);
191}
192
193unsigned long   PASCAL
194inet_addr(const char* a0)
195{
196    static unsigned long   (PASCAL *fp)(const char* a0);
197
198#ifdef DEBUG_STUB
199    idnLogPrintf(idn_log_level_trace, "stub inet_addr() called\n");
200#endif
201    if (fp == NULL) {
202	void *p;
203	if ((p = GetProcAddress(DLLHANDLE, "inet_addr")) == NULL) {
204	    FATAL("cannot find entry inet_addr (%d)\n", GetLastError());
205	    abort();
206	}
207	fp = p;
208    }
209    return (*fp)(a0);
210}
211
212 char * PASCAL
213inet_ntoa(struct in_addr a0)
214{
215    static  char * (PASCAL *fp)(struct in_addr a0);
216
217#ifdef DEBUG_STUB
218    idnLogPrintf(idn_log_level_trace, "stub inet_ntoa() called\n");
219#endif
220    if (fp == NULL) {
221	void *p;
222	if ((p = GetProcAddress(DLLHANDLE, "inet_ntoa")) == NULL) {
223	    FATAL("cannot find entry inet_ntoa (%d)\n", GetLastError());
224	    abort();
225	}
226	fp = p;
227    }
228    return (*fp)(a0);
229}
230
231int   PASCAL
232listen(SOCKET a0, int a1)
233{
234    static int   (PASCAL *fp)(SOCKET a0, int a1);
235
236#ifdef DEBUG_STUB
237    idnLogPrintf(idn_log_level_trace, "stub listen() called\n");
238#endif
239    if (fp == NULL) {
240	void *p;
241	if ((p = GetProcAddress(DLLHANDLE, "listen")) == NULL) {
242	    FATAL("cannot find entry listen (%d)\n", GetLastError());
243	    abort();
244	}
245	fp = p;
246    }
247    return (*fp)(a0, a1);
248}
249
250u_long   PASCAL
251ntohl(u_long a0)
252{
253    static u_long   (PASCAL *fp)(u_long a0);
254
255#ifdef DEBUG_STUB
256    idnLogPrintf(idn_log_level_trace, "stub ntohl() called\n");
257#endif
258    if (fp == NULL) {
259	void *p;
260	if ((p = GetProcAddress(DLLHANDLE, "ntohl")) == NULL) {
261	    FATAL("cannot find entry ntohl (%d)\n", GetLastError());
262	    abort();
263	}
264	fp = p;
265    }
266    return (*fp)(a0);
267}
268
269u_short   PASCAL
270ntohs(u_short a0)
271{
272    static u_short   (PASCAL *fp)(u_short a0);
273
274#ifdef DEBUG_STUB
275    idnLogPrintf(idn_log_level_trace, "stub ntohs() called\n");
276#endif
277    if (fp == NULL) {
278	void *p;
279	if ((p = GetProcAddress(DLLHANDLE, "ntohs")) == NULL) {
280	    FATAL("cannot find entry ntohs (%d)\n", GetLastError());
281	    abort();
282	}
283	fp = p;
284    }
285    return (*fp)(a0);
286}
287
288int   PASCAL
289recv(SOCKET a0, char* a1, int a2, int a3)
290{
291    static int   (PASCAL *fp)(SOCKET a0, char* a1, int a2, int a3);
292
293#ifdef DEBUG_STUB
294    idnLogPrintf(idn_log_level_trace, "stub recv() called\n");
295#endif
296    if (fp == NULL) {
297	void *p;
298	if ((p = GetProcAddress(DLLHANDLE, "recv")) == NULL) {
299	    FATAL("cannot find entry recv (%d)\n", GetLastError());
300	    abort();
301	}
302	fp = p;
303    }
304    return (*fp)(a0, a1, a2, a3);
305}
306
307int   PASCAL
308recvfrom(SOCKET a0, char* a1, int a2, int a3, struct sockaddr* a4, int* a5)
309{
310    static int   (PASCAL *fp)(SOCKET a0, char* a1, int a2, int a3, struct sockaddr* a4, int* a5);
311
312#ifdef DEBUG_STUB
313    idnLogPrintf(idn_log_level_trace, "stub recvfrom() called\n");
314#endif
315    if (fp == NULL) {
316	void *p;
317	if ((p = GetProcAddress(DLLHANDLE, "recvfrom")) == NULL) {
318	    FATAL("cannot find entry recvfrom (%d)\n", GetLastError());
319	    abort();
320	}
321	fp = p;
322    }
323    return (*fp)(a0, a1, a2, a3, a4, a5);
324}
325
326int   PASCAL
327select(int a0, fd_set* a1, fd_set* a2, fd_set* a3, const struct timeval* a4)
328{
329    static int   (PASCAL *fp)(int a0, fd_set* a1, fd_set* a2, fd_set* a3, const struct timeval* a4);
330
331#ifdef DEBUG_STUB
332    idnLogPrintf(idn_log_level_trace, "stub select() called\n");
333#endif
334    if (fp == NULL) {
335	void *p;
336	if ((p = GetProcAddress(DLLHANDLE, "select")) == NULL) {
337	    FATAL("cannot find entry select (%d)\n", GetLastError());
338	    abort();
339	}
340	fp = p;
341    }
342    return (*fp)(a0, a1, a2, a3, a4);
343}
344
345int   PASCAL
346send(SOCKET a0, const char* a1, int a2, int a3)
347{
348    static int   (PASCAL *fp)(SOCKET a0, const char* a1, int a2, int a3);
349
350#ifdef DEBUG_STUB
351    idnLogPrintf(idn_log_level_trace, "stub send() called\n");
352#endif
353    if (fp == NULL) {
354	void *p;
355	if ((p = GetProcAddress(DLLHANDLE, "send")) == NULL) {
356	    FATAL("cannot find entry send (%d)\n", GetLastError());
357	    abort();
358	}
359	fp = p;
360    }
361    return (*fp)(a0, a1, a2, a3);
362}
363
364int   PASCAL
365sendto(SOCKET a0, const char* a1, int a2, int a3, const struct sockaddr* a4, int a5)
366{
367    static int   (PASCAL *fp)(SOCKET a0, const char* a1, int a2, int a3, const struct sockaddr* a4, int a5);
368
369#ifdef DEBUG_STUB
370    idnLogPrintf(idn_log_level_trace, "stub sendto() called\n");
371#endif
372    if (fp == NULL) {
373	void *p;
374	if ((p = GetProcAddress(DLLHANDLE, "sendto")) == NULL) {
375	    FATAL("cannot find entry sendto (%d)\n", GetLastError());
376	    abort();
377	}
378	fp = p;
379    }
380    return (*fp)(a0, a1, a2, a3, a4, a5);
381}
382
383int   PASCAL
384setsockopt(SOCKET a0, int a1, int a2, const char* a3, int a4)
385{
386    static int   (PASCAL *fp)(SOCKET a0, int a1, int a2, const char* a3, int a4);
387
388#ifdef DEBUG_STUB
389    idnLogPrintf(idn_log_level_trace, "stub setsockopt() called\n");
390#endif
391    if (fp == NULL) {
392	void *p;
393	if ((p = GetProcAddress(DLLHANDLE, "setsockopt")) == NULL) {
394	    FATAL("cannot find entry setsockopt (%d)\n", GetLastError());
395	    abort();
396	}
397	fp = p;
398    }
399    return (*fp)(a0, a1, a2, a3, a4);
400}
401
402int   PASCAL
403shutdown(SOCKET a0, int a1)
404{
405    static int   (PASCAL *fp)(SOCKET a0, int a1);
406
407#ifdef DEBUG_STUB
408    idnLogPrintf(idn_log_level_trace, "stub shutdown() called\n");
409#endif
410    if (fp == NULL) {
411	void *p;
412	if ((p = GetProcAddress(DLLHANDLE, "shutdown")) == NULL) {
413	    FATAL("cannot find entry shutdown (%d)\n", GetLastError());
414	    abort();
415	}
416	fp = p;
417    }
418    return (*fp)(a0, a1);
419}
420
421SOCKET   PASCAL
422socket(int a0, int a1, int a2)
423{
424    static SOCKET   (PASCAL *fp)(int a0, int a1, int a2);
425
426#ifdef DEBUG_STUB
427    idnLogPrintf(idn_log_level_trace, "stub socket() called\n");
428#endif
429    if (fp == NULL) {
430	void *p;
431	if ((p = GetProcAddress(DLLHANDLE, "socket")) == NULL) {
432	    FATAL("cannot find entry socket (%d)\n", GetLastError());
433	    abort();
434	}
435	fp = p;
436    }
437    return (*fp)(a0, a1, a2);
438}
439
440int  PASCAL
441WSApSetPostRoutine(int a0)
442{
443    static int  (PASCAL *fp)(int a0);
444
445#ifdef DEBUG_STUB
446    idnLogPrintf(idn_log_level_trace, "stub WSApSetPostRoutine() called\n");
447#endif
448    if (fp == NULL) {
449	void *p;
450	if ((p = GetProcAddress(DLLHANDLE, "WSApSetPostRoutine")) == NULL) {
451	    FATAL("cannot find entry WSApSetPostRoutine (%d)\n", GetLastError());
452	    abort();
453	}
454	fp = p;
455    }
456    return (*fp)(a0);
457}
458
459WSAEVENT   WSAAPI
460WPUCompleteOverlappedRequest(SOCKET a0, LPWSAOVERLAPPED a1, DWORD a2, DWORD a3, LPINT a4)
461{
462    static WSAEVENT   (WSAAPI *fp)(SOCKET a0, LPWSAOVERLAPPED a1, DWORD a2, DWORD a3, LPINT a4);
463
464#ifdef DEBUG_STUB
465    idnLogPrintf(idn_log_level_trace, "stub WPUCompleteOverlappedRequest() called\n");
466#endif
467    if (fp == NULL) {
468	void *p;
469	if ((p = GetProcAddress(DLLHANDLE, "WPUCompleteOverlappedRequest")) == NULL) {
470	    FATAL("cannot find entry WPUCompleteOverlappedRequest (%d)\n", GetLastError());
471	    abort();
472	}
473	fp = p;
474    }
475    return (*fp)(a0, a1, a2, a3, a4);
476}
477
478SOCKET   WINAPI
479WSAAccept(SOCKET a0, struct sockaddr * a1, LPINT a2, LPCONDITIONPROC a3, DWORD a4)
480{
481    static SOCKET   (WINAPI *fp)(SOCKET a0, struct sockaddr * a1, LPINT a2, LPCONDITIONPROC a3, DWORD a4);
482
483#ifdef DEBUG_STUB
484    idnLogPrintf(idn_log_level_trace, "stub WSAAccept() called\n");
485#endif
486    if (fp == NULL) {
487	void *p;
488	if ((p = GetProcAddress(DLLHANDLE, "WSAAccept")) == NULL) {
489	    FATAL("cannot find entry WSAAccept (%d)\n", GetLastError());
490	    abort();
491	}
492	fp = p;
493    }
494    return (*fp)(a0, a1, a2, a3, a4);
495}
496
497INT   WINAPI
498WSAAddressToStringA(LPSOCKADDR a0, DWORD a1, LPWSAPROTOCOL_INFOA a2, LPSTR a3, LPDWORD a4)
499{
500    static INT   (WINAPI *fp)(LPSOCKADDR a0, DWORD a1, LPWSAPROTOCOL_INFOA a2, LPSTR a3, LPDWORD a4);
501
502#ifdef DEBUG_STUB
503    idnLogPrintf(idn_log_level_trace, "stub WSAAddressToStringA() called\n");
504#endif
505    if (fp == NULL) {
506	void *p;
507	if ((p = GetProcAddress(DLLHANDLE, "WSAAddressToStringA")) == NULL) {
508	    FATAL("cannot find entry WSAAddressToStringA (%d)\n", GetLastError());
509	    abort();
510	}
511	fp = p;
512    }
513    return (*fp)(a0, a1, a2, a3, a4);
514}
515
516INT   WINAPI
517WSAAddressToStringW(LPSOCKADDR a0, DWORD a1, LPWSAPROTOCOL_INFOW a2, LPWSTR a3, LPDWORD a4)
518{
519    static INT   (WINAPI *fp)(LPSOCKADDR a0, DWORD a1, LPWSAPROTOCOL_INFOW a2, LPWSTR a3, LPDWORD a4);
520
521#ifdef DEBUG_STUB
522    idnLogPrintf(idn_log_level_trace, "stub WSAAddressToStringW() called\n");
523#endif
524    if (fp == NULL) {
525	void *p;
526	if ((p = GetProcAddress(DLLHANDLE, "WSAAddressToStringW")) == NULL) {
527	    FATAL("cannot find entry WSAAddressToStringW (%d)\n", GetLastError());
528	    abort();
529	}
530	fp = p;
531    }
532    return (*fp)(a0, a1, a2, a3, a4);
533}
534
535BOOL   WINAPI
536WSACloseEvent(WSAEVENT a0)
537{
538    static BOOL   (WINAPI *fp)(WSAEVENT a0);
539
540#ifdef DEBUG_STUB
541    idnLogPrintf(idn_log_level_trace, "stub WSACloseEvent() called\n");
542#endif
543    if (fp == NULL) {
544	void *p;
545	if ((p = GetProcAddress(DLLHANDLE, "WSACloseEvent")) == NULL) {
546	    FATAL("cannot find entry WSACloseEvent (%d)\n", GetLastError());
547	    abort();
548	}
549	fp = p;
550    }
551    return (*fp)(a0);
552}
553
554int   WINAPI
555WSAConnect(SOCKET a0, const struct sockaddr * a1, int a2, LPWSABUF a3, LPWSABUF a4, LPQOS a5, LPQOS a6)
556{
557    static int   (WINAPI *fp)(SOCKET a0, const struct sockaddr * a1, int a2, LPWSABUF a3, LPWSABUF a4, LPQOS a5, LPQOS a6);
558
559#ifdef DEBUG_STUB
560    idnLogPrintf(idn_log_level_trace, "stub WSAConnect() called\n");
561#endif
562    if (fp == NULL) {
563	void *p;
564	if ((p = GetProcAddress(DLLHANDLE, "WSAConnect")) == NULL) {
565	    FATAL("cannot find entry WSAConnect (%d)\n", GetLastError());
566	    abort();
567	}
568	fp = p;
569    }
570    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
571}
572
573WSAEVENT   WINAPI
574WSACreateEvent(void)
575{
576    static WSAEVENT   (WINAPI *fp)(void);
577
578#ifdef DEBUG_STUB
579    idnLogPrintf(idn_log_level_trace, "stub WSACreateEvent() called\n");
580#endif
581    if (fp == NULL) {
582	void *p;
583	if ((p = GetProcAddress(DLLHANDLE, "WSACreateEvent")) == NULL) {
584	    FATAL("cannot find entry WSACreateEvent (%d)\n", GetLastError());
585	    abort();
586	}
587	fp = p;
588    }
589    return (*fp)();
590}
591
592int   WINAPI
593WSADuplicateSocketA(SOCKET a0, DWORD a1, LPWSAPROTOCOL_INFOA a2)
594{
595    static int   (WINAPI *fp)(SOCKET a0, DWORD a1, LPWSAPROTOCOL_INFOA a2);
596
597#ifdef DEBUG_STUB
598    idnLogPrintf(idn_log_level_trace, "stub WSADuplicateSocketA() called\n");
599#endif
600    if (fp == NULL) {
601	void *p;
602	if ((p = GetProcAddress(DLLHANDLE, "WSADuplicateSocketA")) == NULL) {
603	    FATAL("cannot find entry WSADuplicateSocketA (%d)\n", GetLastError());
604	    abort();
605	}
606	fp = p;
607    }
608    return (*fp)(a0, a1, a2);
609}
610
611int   WINAPI
612WSADuplicateSocketW(SOCKET a0, DWORD a1, LPWSAPROTOCOL_INFOW a2)
613{
614    static int   (WINAPI *fp)(SOCKET a0, DWORD a1, LPWSAPROTOCOL_INFOW a2);
615
616#ifdef DEBUG_STUB
617    idnLogPrintf(idn_log_level_trace, "stub WSADuplicateSocketW() called\n");
618#endif
619    if (fp == NULL) {
620	void *p;
621	if ((p = GetProcAddress(DLLHANDLE, "WSADuplicateSocketW")) == NULL) {
622	    FATAL("cannot find entry WSADuplicateSocketW (%d)\n", GetLastError());
623	    abort();
624	}
625	fp = p;
626    }
627    return (*fp)(a0, a1, a2);
628}
629
630INT   WINAPI
631WSAEnumNameSpaceProvidersA(LPDWORD a0, LPWSANAMESPACE_INFOA a1)
632{
633    static INT   (WINAPI *fp)(LPDWORD a0, LPWSANAMESPACE_INFOA a1);
634
635#ifdef DEBUG_STUB
636    idnLogPrintf(idn_log_level_trace, "stub WSAEnumNameSpaceProvidersA() called\n");
637#endif
638    if (fp == NULL) {
639	void *p;
640	if ((p = GetProcAddress(DLLHANDLE, "WSAEnumNameSpaceProvidersA")) == NULL) {
641	    FATAL("cannot find entry WSAEnumNameSpaceProvidersA (%d)\n", GetLastError());
642	    abort();
643	}
644	fp = p;
645    }
646    return (*fp)(a0, a1);
647}
648
649INT   WINAPI
650WSAEnumNameSpaceProvidersW(LPDWORD a0, LPWSANAMESPACE_INFOW a1)
651{
652    static INT   (WINAPI *fp)(LPDWORD a0, LPWSANAMESPACE_INFOW a1);
653
654#ifdef DEBUG_STUB
655    idnLogPrintf(idn_log_level_trace, "stub WSAEnumNameSpaceProvidersW() called\n");
656#endif
657    if (fp == NULL) {
658	void *p;
659	if ((p = GetProcAddress(DLLHANDLE, "WSAEnumNameSpaceProvidersW")) == NULL) {
660	    FATAL("cannot find entry WSAEnumNameSpaceProvidersW (%d)\n", GetLastError());
661	    abort();
662	}
663	fp = p;
664    }
665    return (*fp)(a0, a1);
666}
667
668int   WINAPI
669WSAEnumNetworkEvents(SOCKET a0, WSAEVENT a1, LPWSANETWORKEVENTS a2)
670{
671    static int   (WINAPI *fp)(SOCKET a0, WSAEVENT a1, LPWSANETWORKEVENTS a2);
672
673#ifdef DEBUG_STUB
674    idnLogPrintf(idn_log_level_trace, "stub WSAEnumNetworkEvents() called\n");
675#endif
676    if (fp == NULL) {
677	void *p;
678	if ((p = GetProcAddress(DLLHANDLE, "WSAEnumNetworkEvents")) == NULL) {
679	    FATAL("cannot find entry WSAEnumNetworkEvents (%d)\n", GetLastError());
680	    abort();
681	}
682	fp = p;
683    }
684    return (*fp)(a0, a1, a2);
685}
686
687int   WINAPI
688WSAEnumProtocolsA(LPINT a0, LPWSAPROTOCOL_INFOA a1, LPDWORD a2)
689{
690    static int   (WINAPI *fp)(LPINT a0, LPWSAPROTOCOL_INFOA a1, LPDWORD a2);
691
692#ifdef DEBUG_STUB
693    idnLogPrintf(idn_log_level_trace, "stub WSAEnumProtocolsA() called\n");
694#endif
695    if (fp == NULL) {
696	void *p;
697	if ((p = GetProcAddress(DLLHANDLE, "WSAEnumProtocolsA")) == NULL) {
698	    FATAL("cannot find entry WSAEnumProtocolsA (%d)\n", GetLastError());
699	    abort();
700	}
701	fp = p;
702    }
703    return (*fp)(a0, a1, a2);
704}
705
706int   WINAPI
707WSAEnumProtocolsW(LPINT a0, LPWSAPROTOCOL_INFOW a1, LPDWORD a2)
708{
709    static int   (WINAPI *fp)(LPINT a0, LPWSAPROTOCOL_INFOW a1, LPDWORD a2);
710
711#ifdef DEBUG_STUB
712    idnLogPrintf(idn_log_level_trace, "stub WSAEnumProtocolsW() called\n");
713#endif
714    if (fp == NULL) {
715	void *p;
716	if ((p = GetProcAddress(DLLHANDLE, "WSAEnumProtocolsW")) == NULL) {
717	    FATAL("cannot find entry WSAEnumProtocolsW (%d)\n", GetLastError());
718	    abort();
719	}
720	fp = p;
721    }
722    return (*fp)(a0, a1, a2);
723}
724
725int   WINAPI
726WSAEventSelect(SOCKET a0, WSAEVENT a1, long a2)
727{
728    static int   (WINAPI *fp)(SOCKET a0, WSAEVENT a1, long a2);
729
730#ifdef DEBUG_STUB
731    idnLogPrintf(idn_log_level_trace, "stub WSAEventSelect() called\n");
732#endif
733    if (fp == NULL) {
734	void *p;
735	if ((p = GetProcAddress(DLLHANDLE, "WSAEventSelect")) == NULL) {
736	    FATAL("cannot find entry WSAEventSelect (%d)\n", GetLastError());
737	    abort();
738	}
739	fp = p;
740    }
741    return (*fp)(a0, a1, a2);
742}
743
744BOOL   WINAPI
745WSAGetOverlappedResult(SOCKET a0, LPWSAOVERLAPPED a1, LPDWORD a2, BOOL a3, LPDWORD a4)
746{
747    static BOOL   (WINAPI *fp)(SOCKET a0, LPWSAOVERLAPPED a1, LPDWORD a2, BOOL a3, LPDWORD a4);
748
749#ifdef DEBUG_STUB
750    idnLogPrintf(idn_log_level_trace, "stub WSAGetOverlappedResult() called\n");
751#endif
752    if (fp == NULL) {
753	void *p;
754	if ((p = GetProcAddress(DLLHANDLE, "WSAGetOverlappedResult")) == NULL) {
755	    FATAL("cannot find entry WSAGetOverlappedResult (%d)\n", GetLastError());
756	    abort();
757	}
758	fp = p;
759    }
760    return (*fp)(a0, a1, a2, a3, a4);
761}
762
763BOOL   WINAPI
764WSAGetQOSByName(SOCKET a0, LPWSABUF a1, LPQOS a2)
765{
766    static BOOL   (WINAPI *fp)(SOCKET a0, LPWSABUF a1, LPQOS a2);
767
768#ifdef DEBUG_STUB
769    idnLogPrintf(idn_log_level_trace, "stub WSAGetQOSByName() called\n");
770#endif
771    if (fp == NULL) {
772	void *p;
773	if ((p = GetProcAddress(DLLHANDLE, "WSAGetQOSByName")) == NULL) {
774	    FATAL("cannot find entry WSAGetQOSByName (%d)\n", GetLastError());
775	    abort();
776	}
777	fp = p;
778    }
779    return (*fp)(a0, a1, a2);
780}
781
782INT   WINAPI
783WSAGetServiceClassInfoA(LPGUID a0, LPGUID a1, LPDWORD a2, LPWSASERVICECLASSINFOA a3)
784{
785    static INT   (WINAPI *fp)(LPGUID a0, LPGUID a1, LPDWORD a2, LPWSASERVICECLASSINFOA a3);
786
787#ifdef DEBUG_STUB
788    idnLogPrintf(idn_log_level_trace, "stub WSAGetServiceClassInfoA() called\n");
789#endif
790    if (fp == NULL) {
791	void *p;
792	if ((p = GetProcAddress(DLLHANDLE, "WSAGetServiceClassInfoA")) == NULL) {
793	    FATAL("cannot find entry WSAGetServiceClassInfoA (%d)\n", GetLastError());
794	    abort();
795	}
796	fp = p;
797    }
798    return (*fp)(a0, a1, a2, a3);
799}
800
801INT   WINAPI
802WSAGetServiceClassInfoW(LPGUID a0, LPGUID a1, LPDWORD a2, LPWSASERVICECLASSINFOW a3)
803{
804    static INT   (WINAPI *fp)(LPGUID a0, LPGUID a1, LPDWORD a2, LPWSASERVICECLASSINFOW a3);
805
806#ifdef DEBUG_STUB
807    idnLogPrintf(idn_log_level_trace, "stub WSAGetServiceClassInfoW() called\n");
808#endif
809    if (fp == NULL) {
810	void *p;
811	if ((p = GetProcAddress(DLLHANDLE, "WSAGetServiceClassInfoW")) == NULL) {
812	    FATAL("cannot find entry WSAGetServiceClassInfoW (%d)\n", GetLastError());
813	    abort();
814	}
815	fp = p;
816    }
817    return (*fp)(a0, a1, a2, a3);
818}
819
820INT   WINAPI
821WSAGetServiceClassNameByClassIdA(LPGUID a0, LPSTR a1, LPDWORD a2)
822{
823    static INT   (WINAPI *fp)(LPGUID a0, LPSTR a1, LPDWORD a2);
824
825#ifdef DEBUG_STUB
826    idnLogPrintf(idn_log_level_trace, "stub WSAGetServiceClassNameByClassIdA() called\n");
827#endif
828    if (fp == NULL) {
829	void *p;
830	if ((p = GetProcAddress(DLLHANDLE, "WSAGetServiceClassNameByClassIdA")) == NULL) {
831	    FATAL("cannot find entry WSAGetServiceClassNameByClassIdA (%d)\n", GetLastError());
832	    abort();
833	}
834	fp = p;
835    }
836    return (*fp)(a0, a1, a2);
837}
838
839INT   WINAPI
840WSAGetServiceClassNameByClassIdW(LPGUID a0, LPWSTR a1, LPDWORD a2)
841{
842    static INT   (WINAPI *fp)(LPGUID a0, LPWSTR a1, LPDWORD a2);
843
844#ifdef DEBUG_STUB
845    idnLogPrintf(idn_log_level_trace, "stub WSAGetServiceClassNameByClassIdW() called\n");
846#endif
847    if (fp == NULL) {
848	void *p;
849	if ((p = GetProcAddress(DLLHANDLE, "WSAGetServiceClassNameByClassIdW")) == NULL) {
850	    FATAL("cannot find entry WSAGetServiceClassNameByClassIdW (%d)\n", GetLastError());
851	    abort();
852	}
853	fp = p;
854    }
855    return (*fp)(a0, a1, a2);
856}
857
858int   WINAPI
859WSAHtonl(SOCKET a0, unsigned long a1, unsigned long * a2)
860{
861    static int   (WINAPI *fp)(SOCKET a0, unsigned long a1, unsigned long * a2);
862
863#ifdef DEBUG_STUB
864    idnLogPrintf(idn_log_level_trace, "stub WSAHtonl() called\n");
865#endif
866    if (fp == NULL) {
867	void *p;
868	if ((p = GetProcAddress(DLLHANDLE, "WSAHtonl")) == NULL) {
869	    FATAL("cannot find entry WSAHtonl (%d)\n", GetLastError());
870	    abort();
871	}
872	fp = p;
873    }
874    return (*fp)(a0, a1, a2);
875}
876
877int   WINAPI
878WSAHtons(SOCKET a0, unsigned short a1, unsigned short * a2)
879{
880    static int   (WINAPI *fp)(SOCKET a0, unsigned short a1, unsigned short * a2);
881
882#ifdef DEBUG_STUB
883    idnLogPrintf(idn_log_level_trace, "stub WSAHtons() called\n");
884#endif
885    if (fp == NULL) {
886	void *p;
887	if ((p = GetProcAddress(DLLHANDLE, "WSAHtons")) == NULL) {
888	    FATAL("cannot find entry WSAHtons (%d)\n", GetLastError());
889	    abort();
890	}
891	fp = p;
892    }
893    return (*fp)(a0, a1, a2);
894}
895
896INT   WINAPI
897WSAInstallServiceClassA(LPWSASERVICECLASSINFOA a0)
898{
899    static INT   (WINAPI *fp)(LPWSASERVICECLASSINFOA a0);
900
901#ifdef DEBUG_STUB
902    idnLogPrintf(idn_log_level_trace, "stub WSAInstallServiceClassA() called\n");
903#endif
904    if (fp == NULL) {
905	void *p;
906	if ((p = GetProcAddress(DLLHANDLE, "WSAInstallServiceClassA")) == NULL) {
907	    FATAL("cannot find entry WSAInstallServiceClassA (%d)\n", GetLastError());
908	    abort();
909	}
910	fp = p;
911    }
912    return (*fp)(a0);
913}
914
915INT   WINAPI
916WSAInstallServiceClassW(LPWSASERVICECLASSINFOW a0)
917{
918    static INT   (WINAPI *fp)(LPWSASERVICECLASSINFOW a0);
919
920#ifdef DEBUG_STUB
921    idnLogPrintf(idn_log_level_trace, "stub WSAInstallServiceClassW() called\n");
922#endif
923    if (fp == NULL) {
924	void *p;
925	if ((p = GetProcAddress(DLLHANDLE, "WSAInstallServiceClassW")) == NULL) {
926	    FATAL("cannot find entry WSAInstallServiceClassW (%d)\n", GetLastError());
927	    abort();
928	}
929	fp = p;
930    }
931    return (*fp)(a0);
932}
933
934int   WINAPI
935WSAIoctl(SOCKET a0, DWORD a1, LPVOID a2, DWORD a3, LPVOID a4, DWORD a5, LPDWORD a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8)
936{
937    static int   (WINAPI *fp)(SOCKET a0, DWORD a1, LPVOID a2, DWORD a3, LPVOID a4, DWORD a5, LPDWORD a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8);
938
939#ifdef DEBUG_STUB
940    idnLogPrintf(idn_log_level_trace, "stub WSAIoctl() called\n");
941#endif
942    if (fp == NULL) {
943	void *p;
944	if ((p = GetProcAddress(DLLHANDLE, "WSAIoctl")) == NULL) {
945	    FATAL("cannot find entry WSAIoctl (%d)\n", GetLastError());
946	    abort();
947	}
948	fp = p;
949    }
950    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7, a8);
951}
952
953 struct hostent * PASCAL
954_org_gethostbyaddr(const char* a0, int a1, int a2)
955{
956    static  struct hostent * (PASCAL *fp)(const char* a0, int a1, int a2);
957
958#ifdef DEBUG_STUB
959    idnLogPrintf(idn_log_level_trace, "stub _org_gethostbyaddr() called\n");
960#endif
961    if (fp == NULL) {
962	void *p;
963	if ((p = GetProcAddress(DLLHANDLE, "gethostbyaddr")) == NULL) {
964	    FATAL("cannot find entry gethostbyaddr (%d)\n", GetLastError());
965	    abort();
966	}
967	fp = p;
968    }
969    return (*fp)(a0, a1, a2);
970}
971
972 struct hostent * PASCAL
973_org_gethostbyname(const char* a0)
974{
975    static  struct hostent * (PASCAL *fp)(const char* a0);
976
977#ifdef DEBUG_STUB
978    idnLogPrintf(idn_log_level_trace, "stub _org_gethostbyname() called\n");
979#endif
980    if (fp == NULL) {
981	void *p;
982	if ((p = GetProcAddress(DLLHANDLE, "gethostbyname")) == NULL) {
983	    FATAL("cannot find entry gethostbyname (%d)\n", GetLastError());
984	    abort();
985	}
986	fp = p;
987    }
988    return (*fp)(a0);
989}
990
991 struct protoent * PASCAL
992getprotobyname(const char* a0)
993{
994    static  struct protoent * (PASCAL *fp)(const char* a0);
995
996#ifdef DEBUG_STUB
997    idnLogPrintf(idn_log_level_trace, "stub getprotobyname() called\n");
998#endif
999    if (fp == NULL) {
1000	void *p;
1001	if ((p = GetProcAddress(DLLHANDLE, "getprotobyname")) == NULL) {
1002	    FATAL("cannot find entry getprotobyname (%d)\n", GetLastError());
1003	    abort();
1004	}
1005	fp = p;
1006    }
1007    return (*fp)(a0);
1008}
1009
1010 struct protoent * PASCAL
1011getprotobynumber(int a0)
1012{
1013    static  struct protoent * (PASCAL *fp)(int a0);
1014
1015#ifdef DEBUG_STUB
1016    idnLogPrintf(idn_log_level_trace, "stub getprotobynumber() called\n");
1017#endif
1018    if (fp == NULL) {
1019	void *p;
1020	if ((p = GetProcAddress(DLLHANDLE, "getprotobynumber")) == NULL) {
1021	    FATAL("cannot find entry getprotobynumber (%d)\n", GetLastError());
1022	    abort();
1023	}
1024	fp = p;
1025    }
1026    return (*fp)(a0);
1027}
1028
1029 struct servent * PASCAL
1030getservbyname(const char* a0, const char* a1)
1031{
1032    static  struct servent * (PASCAL *fp)(const char* a0, const char* a1);
1033
1034#ifdef DEBUG_STUB
1035    idnLogPrintf(idn_log_level_trace, "stub getservbyname() called\n");
1036#endif
1037    if (fp == NULL) {
1038	void *p;
1039	if ((p = GetProcAddress(DLLHANDLE, "getservbyname")) == NULL) {
1040	    FATAL("cannot find entry getservbyname (%d)\n", GetLastError());
1041	    abort();
1042	}
1043	fp = p;
1044    }
1045    return (*fp)(a0, a1);
1046}
1047
1048 struct servent * PASCAL
1049getservbyport(int a0, const char* a1)
1050{
1051    static  struct servent * (PASCAL *fp)(int a0, const char* a1);
1052
1053#ifdef DEBUG_STUB
1054    idnLogPrintf(idn_log_level_trace, "stub getservbyport() called\n");
1055#endif
1056    if (fp == NULL) {
1057	void *p;
1058	if ((p = GetProcAddress(DLLHANDLE, "getservbyport")) == NULL) {
1059	    FATAL("cannot find entry getservbyport (%d)\n", GetLastError());
1060	    abort();
1061	}
1062	fp = p;
1063    }
1064    return (*fp)(a0, a1);
1065}
1066
1067int   PASCAL
1068_org_gethostname(char* a0, int a1)
1069{
1070    static int   (PASCAL *fp)(char* a0, int a1);
1071
1072#ifdef DEBUG_STUB
1073    idnLogPrintf(idn_log_level_trace, "stub _org_gethostname() called\n");
1074#endif
1075    if (fp == NULL) {
1076	void *p;
1077	if ((p = GetProcAddress(DLLHANDLE, "gethostname")) == NULL) {
1078	    FATAL("cannot find entry gethostname (%d)\n", GetLastError());
1079	    abort();
1080	}
1081	fp = p;
1082    }
1083    return (*fp)(a0, a1);
1084}
1085
1086SOCKET   WINAPI
1087WSAJoinLeaf(SOCKET a0, const struct sockaddr * a1, int a2, LPWSABUF a3, LPWSABUF a4, LPQOS a5, LPQOS a6, DWORD a7)
1088{
1089    static SOCKET   (WINAPI *fp)(SOCKET a0, const struct sockaddr * a1, int a2, LPWSABUF a3, LPWSABUF a4, LPQOS a5, LPQOS a6, DWORD a7);
1090
1091#ifdef DEBUG_STUB
1092    idnLogPrintf(idn_log_level_trace, "stub WSAJoinLeaf() called\n");
1093#endif
1094    if (fp == NULL) {
1095	void *p;
1096	if ((p = GetProcAddress(DLLHANDLE, "WSAJoinLeaf")) == NULL) {
1097	    FATAL("cannot find entry WSAJoinLeaf (%d)\n", GetLastError());
1098	    abort();
1099	}
1100	fp = p;
1101    }
1102    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7);
1103}
1104
1105INT   WINAPI
1106_org_WSALookupServiceBeginA(LPWSAQUERYSETA a0, DWORD a1, LPHANDLE a2)
1107{
1108    static INT   (WINAPI *fp)(LPWSAQUERYSETA a0, DWORD a1, LPHANDLE a2);
1109
1110#ifdef DEBUG_STUB
1111    idnLogPrintf(idn_log_level_trace, "stub _org_WSALookupServiceBeginA() called\n");
1112#endif
1113    if (fp == NULL) {
1114	void *p;
1115	if ((p = GetProcAddress(DLLHANDLE, "WSALookupServiceBeginA")) == NULL) {
1116	    FATAL("cannot find entry WSALookupServiceBeginA (%d)\n", GetLastError());
1117	    abort();
1118	}
1119	fp = p;
1120    }
1121    return (*fp)(a0, a1, a2);
1122}
1123
1124INT   WINAPI
1125_org_WSALookupServiceBeginW(LPWSAQUERYSETW a0, DWORD a1, LPHANDLE a2)
1126{
1127    static INT   (WINAPI *fp)(LPWSAQUERYSETW a0, DWORD a1, LPHANDLE a2);
1128
1129#ifdef DEBUG_STUB
1130    idnLogPrintf(idn_log_level_trace, "stub _org_WSALookupServiceBeginW() called\n");
1131#endif
1132    if (fp == NULL) {
1133	void *p;
1134	if ((p = GetProcAddress(DLLHANDLE, "WSALookupServiceBeginW")) == NULL) {
1135	    FATAL("cannot find entry WSALookupServiceBeginW (%d)\n", GetLastError());
1136	    abort();
1137	}
1138	fp = p;
1139    }
1140    return (*fp)(a0, a1, a2);
1141}
1142
1143INT   WINAPI
1144_org_WSALookupServiceEnd(HANDLE a0)
1145{
1146    static INT   (WINAPI *fp)(HANDLE a0);
1147
1148#ifdef DEBUG_STUB
1149    idnLogPrintf(idn_log_level_trace, "stub _org_WSALookupServiceEnd() called\n");
1150#endif
1151    if (fp == NULL) {
1152	void *p;
1153	if ((p = GetProcAddress(DLLHANDLE, "WSALookupServiceEnd")) == NULL) {
1154	    FATAL("cannot find entry WSALookupServiceEnd (%d)\n", GetLastError());
1155	    abort();
1156	}
1157	fp = p;
1158    }
1159    return (*fp)(a0);
1160}
1161
1162INT   WINAPI
1163_org_WSALookupServiceNextA(HANDLE a0, DWORD a1, LPDWORD a2, LPWSAQUERYSETA a3)
1164{
1165    static INT   (WINAPI *fp)(HANDLE a0, DWORD a1, LPDWORD a2, LPWSAQUERYSETA a3);
1166
1167#ifdef DEBUG_STUB
1168    idnLogPrintf(idn_log_level_trace, "stub _org_WSALookupServiceNextA() called\n");
1169#endif
1170    if (fp == NULL) {
1171	void *p;
1172	if ((p = GetProcAddress(DLLHANDLE, "WSALookupServiceNextA")) == NULL) {
1173	    FATAL("cannot find entry WSALookupServiceNextA (%d)\n", GetLastError());
1174	    abort();
1175	}
1176	fp = p;
1177    }
1178    return (*fp)(a0, a1, a2, a3);
1179}
1180
1181INT   WINAPI
1182_org_WSALookupServiceNextW(HANDLE a0, DWORD a1, LPDWORD a2, LPWSAQUERYSETW a3)
1183{
1184    static INT   (WINAPI *fp)(HANDLE a0, DWORD a1, LPDWORD a2, LPWSAQUERYSETW a3);
1185
1186#ifdef DEBUG_STUB
1187    idnLogPrintf(idn_log_level_trace, "stub _org_WSALookupServiceNextW() called\n");
1188#endif
1189    if (fp == NULL) {
1190	void *p;
1191	if ((p = GetProcAddress(DLLHANDLE, "WSALookupServiceNextW")) == NULL) {
1192	    FATAL("cannot find entry WSALookupServiceNextW (%d)\n", GetLastError());
1193	    abort();
1194	}
1195	fp = p;
1196    }
1197    return (*fp)(a0, a1, a2, a3);
1198}
1199
1200int   WINAPI
1201WSANtohl(SOCKET a0, unsigned long a1, unsigned long * a2)
1202{
1203    static int   (WINAPI *fp)(SOCKET a0, unsigned long a1, unsigned long * a2);
1204
1205#ifdef DEBUG_STUB
1206    idnLogPrintf(idn_log_level_trace, "stub WSANtohl() called\n");
1207#endif
1208    if (fp == NULL) {
1209	void *p;
1210	if ((p = GetProcAddress(DLLHANDLE, "WSANtohl")) == NULL) {
1211	    FATAL("cannot find entry WSANtohl (%d)\n", GetLastError());
1212	    abort();
1213	}
1214	fp = p;
1215    }
1216    return (*fp)(a0, a1, a2);
1217}
1218
1219int   WINAPI
1220WSANtohs(SOCKET a0, unsigned short a1, unsigned short * a2)
1221{
1222    static int   (WINAPI *fp)(SOCKET a0, unsigned short a1, unsigned short * a2);
1223
1224#ifdef DEBUG_STUB
1225    idnLogPrintf(idn_log_level_trace, "stub WSANtohs() called\n");
1226#endif
1227    if (fp == NULL) {
1228	void *p;
1229	if ((p = GetProcAddress(DLLHANDLE, "WSANtohs")) == NULL) {
1230	    FATAL("cannot find entry WSANtohs (%d)\n", GetLastError());
1231	    abort();
1232	}
1233	fp = p;
1234    }
1235    return (*fp)(a0, a1, a2);
1236}
1237
1238int   WSAAPI
1239WSAProviderConfigChange(LPHANDLE a0, LPWSAOVERLAPPED a1, LPWSAOVERLAPPED_COMPLETION_ROUTINE a2)
1240{
1241    static int   (WSAAPI *fp)(LPHANDLE a0, LPWSAOVERLAPPED a1, LPWSAOVERLAPPED_COMPLETION_ROUTINE a2);
1242
1243#ifdef DEBUG_STUB
1244    idnLogPrintf(idn_log_level_trace, "stub WSAProviderConfigChange() called\n");
1245#endif
1246    if (fp == NULL) {
1247	void *p;
1248	if ((p = GetProcAddress(DLLHANDLE, "WSAProviderConfigChange")) == NULL) {
1249	    FATAL("cannot find entry WSAProviderConfigChange (%d)\n", GetLastError());
1250	    abort();
1251	}
1252	fp = p;
1253    }
1254    return (*fp)(a0, a1, a2);
1255}
1256
1257int   WINAPI
1258WSARecv(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, LPDWORD a4, LPWSAOVERLAPPED a5, LPWSAOVERLAPPED_COMPLETION_ROUTINE a6)
1259{
1260    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, LPDWORD a4, LPWSAOVERLAPPED a5, LPWSAOVERLAPPED_COMPLETION_ROUTINE a6);
1261
1262#ifdef DEBUG_STUB
1263    idnLogPrintf(idn_log_level_trace, "stub WSARecv() called\n");
1264#endif
1265    if (fp == NULL) {
1266	void *p;
1267	if ((p = GetProcAddress(DLLHANDLE, "WSARecv")) == NULL) {
1268	    FATAL("cannot find entry WSARecv (%d)\n", GetLastError());
1269	    abort();
1270	}
1271	fp = p;
1272    }
1273    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1274}
1275
1276int   WINAPI
1277WSARecvDisconnect(SOCKET a0, LPWSABUF a1)
1278{
1279    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1);
1280
1281#ifdef DEBUG_STUB
1282    idnLogPrintf(idn_log_level_trace, "stub WSARecvDisconnect() called\n");
1283#endif
1284    if (fp == NULL) {
1285	void *p;
1286	if ((p = GetProcAddress(DLLHANDLE, "WSARecvDisconnect")) == NULL) {
1287	    FATAL("cannot find entry WSARecvDisconnect (%d)\n", GetLastError());
1288	    abort();
1289	}
1290	fp = p;
1291    }
1292    return (*fp)(a0, a1);
1293}
1294
1295int   WINAPI
1296WSARecvFrom(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, LPDWORD a4, struct sockaddr * a5, LPINT a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8)
1297{
1298    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, LPDWORD a4, struct sockaddr * a5, LPINT a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8);
1299
1300#ifdef DEBUG_STUB
1301    idnLogPrintf(idn_log_level_trace, "stub WSARecvFrom() called\n");
1302#endif
1303    if (fp == NULL) {
1304	void *p;
1305	if ((p = GetProcAddress(DLLHANDLE, "WSARecvFrom")) == NULL) {
1306	    FATAL("cannot find entry WSARecvFrom (%d)\n", GetLastError());
1307	    abort();
1308	}
1309	fp = p;
1310    }
1311    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7, a8);
1312}
1313
1314INT   WINAPI
1315WSARemoveServiceClass(LPGUID a0)
1316{
1317    static INT   (WINAPI *fp)(LPGUID a0);
1318
1319#ifdef DEBUG_STUB
1320    idnLogPrintf(idn_log_level_trace, "stub WSARemoveServiceClass() called\n");
1321#endif
1322    if (fp == NULL) {
1323	void *p;
1324	if ((p = GetProcAddress(DLLHANDLE, "WSARemoveServiceClass")) == NULL) {
1325	    FATAL("cannot find entry WSARemoveServiceClass (%d)\n", GetLastError());
1326	    abort();
1327	}
1328	fp = p;
1329    }
1330    return (*fp)(a0);
1331}
1332
1333BOOL   WINAPI
1334WSAResetEvent(WSAEVENT a0)
1335{
1336    static BOOL   (WINAPI *fp)(WSAEVENT a0);
1337
1338#ifdef DEBUG_STUB
1339    idnLogPrintf(idn_log_level_trace, "stub WSAResetEvent() called\n");
1340#endif
1341    if (fp == NULL) {
1342	void *p;
1343	if ((p = GetProcAddress(DLLHANDLE, "WSAResetEvent")) == NULL) {
1344	    FATAL("cannot find entry WSAResetEvent (%d)\n", GetLastError());
1345	    abort();
1346	}
1347	fp = p;
1348    }
1349    return (*fp)(a0);
1350}
1351
1352int   WINAPI
1353WSASend(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, DWORD a4, LPWSAOVERLAPPED a5, LPWSAOVERLAPPED_COMPLETION_ROUTINE a6)
1354{
1355    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, DWORD a4, LPWSAOVERLAPPED a5, LPWSAOVERLAPPED_COMPLETION_ROUTINE a6);
1356
1357#ifdef DEBUG_STUB
1358    idnLogPrintf(idn_log_level_trace, "stub WSASend() called\n");
1359#endif
1360    if (fp == NULL) {
1361	void *p;
1362	if ((p = GetProcAddress(DLLHANDLE, "WSASend")) == NULL) {
1363	    FATAL("cannot find entry WSASend (%d)\n", GetLastError());
1364	    abort();
1365	}
1366	fp = p;
1367    }
1368    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1369}
1370
1371int   WINAPI
1372WSASendDisconnect(SOCKET a0, LPWSABUF a1)
1373{
1374    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1);
1375
1376#ifdef DEBUG_STUB
1377    idnLogPrintf(idn_log_level_trace, "stub WSASendDisconnect() called\n");
1378#endif
1379    if (fp == NULL) {
1380	void *p;
1381	if ((p = GetProcAddress(DLLHANDLE, "WSASendDisconnect")) == NULL) {
1382	    FATAL("cannot find entry WSASendDisconnect (%d)\n", GetLastError());
1383	    abort();
1384	}
1385	fp = p;
1386    }
1387    return (*fp)(a0, a1);
1388}
1389
1390int   WINAPI
1391WSASendTo(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, DWORD a4, const struct sockaddr * a5, int a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8)
1392{
1393    static int   (WINAPI *fp)(SOCKET a0, LPWSABUF a1, DWORD a2, LPDWORD a3, DWORD a4, const struct sockaddr * a5, int a6, LPWSAOVERLAPPED a7, LPWSAOVERLAPPED_COMPLETION_ROUTINE a8);
1394
1395#ifdef DEBUG_STUB
1396    idnLogPrintf(idn_log_level_trace, "stub WSASendTo() called\n");
1397#endif
1398    if (fp == NULL) {
1399	void *p;
1400	if ((p = GetProcAddress(DLLHANDLE, "WSASendTo")) == NULL) {
1401	    FATAL("cannot find entry WSASendTo (%d)\n", GetLastError());
1402	    abort();
1403	}
1404	fp = p;
1405    }
1406    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7, a8);
1407}
1408
1409BOOL   WINAPI
1410WSASetEvent(WSAEVENT a0)
1411{
1412    static BOOL   (WINAPI *fp)(WSAEVENT a0);
1413
1414#ifdef DEBUG_STUB
1415    idnLogPrintf(idn_log_level_trace, "stub WSASetEvent() called\n");
1416#endif
1417    if (fp == NULL) {
1418	void *p;
1419	if ((p = GetProcAddress(DLLHANDLE, "WSASetEvent")) == NULL) {
1420	    FATAL("cannot find entry WSASetEvent (%d)\n", GetLastError());
1421	    abort();
1422	}
1423	fp = p;
1424    }
1425    return (*fp)(a0);
1426}
1427
1428INT   WSAAPI
1429WSASetServiceA(LPWSAQUERYSETA a0, WSAESETSERVICEOP a1, DWORD a2)
1430{
1431    static INT   (WSAAPI *fp)(LPWSAQUERYSETA a0, WSAESETSERVICEOP a1, DWORD a2);
1432
1433#ifdef DEBUG_STUB
1434    idnLogPrintf(idn_log_level_trace, "stub WSASetServiceA() called\n");
1435#endif
1436    if (fp == NULL) {
1437	void *p;
1438	if ((p = GetProcAddress(DLLHANDLE, "WSASetServiceA")) == NULL) {
1439	    FATAL("cannot find entry WSASetServiceA (%d)\n", GetLastError());
1440	    abort();
1441	}
1442	fp = p;
1443    }
1444    return (*fp)(a0, a1, a2);
1445}
1446
1447INT   WINAPI
1448WSASetServiceW(LPWSAQUERYSETW a0, WSAESETSERVICEOP a1, DWORD a2)
1449{
1450    static INT   (WINAPI *fp)(LPWSAQUERYSETW a0, WSAESETSERVICEOP a1, DWORD a2);
1451
1452#ifdef DEBUG_STUB
1453    idnLogPrintf(idn_log_level_trace, "stub WSASetServiceW() called\n");
1454#endif
1455    if (fp == NULL) {
1456	void *p;
1457	if ((p = GetProcAddress(DLLHANDLE, "WSASetServiceW")) == NULL) {
1458	    FATAL("cannot find entry WSASetServiceW (%d)\n", GetLastError());
1459	    abort();
1460	}
1461	fp = p;
1462    }
1463    return (*fp)(a0, a1, a2);
1464}
1465
1466SOCKET   WINAPI
1467WSASocketA(int a0, int a1, int a2, LPWSAPROTOCOL_INFOA a3, GROUP a4, DWORD a5)
1468{
1469    static SOCKET   (WINAPI *fp)(int a0, int a1, int a2, LPWSAPROTOCOL_INFOA a3, GROUP a4, DWORD a5);
1470
1471#ifdef DEBUG_STUB
1472    idnLogPrintf(idn_log_level_trace, "stub WSASocketA() called\n");
1473#endif
1474    if (fp == NULL) {
1475	void *p;
1476	if ((p = GetProcAddress(DLLHANDLE, "WSASocketA")) == NULL) {
1477	    FATAL("cannot find entry WSASocketA (%d)\n", GetLastError());
1478	    abort();
1479	}
1480	fp = p;
1481    }
1482    return (*fp)(a0, a1, a2, a3, a4, a5);
1483}
1484
1485SOCKET   WINAPI
1486WSASocketW(int a0, int a1, int a2, LPWSAPROTOCOL_INFOW a3, GROUP a4, DWORD a5)
1487{
1488    static SOCKET   (WINAPI *fp)(int a0, int a1, int a2, LPWSAPROTOCOL_INFOW a3, GROUP a4, DWORD a5);
1489
1490#ifdef DEBUG_STUB
1491    idnLogPrintf(idn_log_level_trace, "stub WSASocketW() called\n");
1492#endif
1493    if (fp == NULL) {
1494	void *p;
1495	if ((p = GetProcAddress(DLLHANDLE, "WSASocketW")) == NULL) {
1496	    FATAL("cannot find entry WSASocketW (%d)\n", GetLastError());
1497	    abort();
1498	}
1499	fp = p;
1500    }
1501    return (*fp)(a0, a1, a2, a3, a4, a5);
1502}
1503
1504INT   WINAPI
1505WSAStringToAddressA(LPSTR a0, INT a1, LPWSAPROTOCOL_INFOA a2, LPSOCKADDR a3, LPINT a4)
1506{
1507    static INT   (WINAPI *fp)(LPSTR a0, INT a1, LPWSAPROTOCOL_INFOA a2, LPSOCKADDR a3, LPINT a4);
1508
1509#ifdef DEBUG_STUB
1510    idnLogPrintf(idn_log_level_trace, "stub WSAStringToAddressA() called\n");
1511#endif
1512    if (fp == NULL) {
1513	void *p;
1514	if ((p = GetProcAddress(DLLHANDLE, "WSAStringToAddressA")) == NULL) {
1515	    FATAL("cannot find entry WSAStringToAddressA (%d)\n", GetLastError());
1516	    abort();
1517	}
1518	fp = p;
1519    }
1520    return (*fp)(a0, a1, a2, a3, a4);
1521}
1522
1523INT   WINAPI
1524WSAStringToAddressW(LPWSTR a0, INT a1, LPWSAPROTOCOL_INFOW a2, LPSOCKADDR a3, LPINT a4)
1525{
1526    static INT   (WINAPI *fp)(LPWSTR a0, INT a1, LPWSAPROTOCOL_INFOW a2, LPSOCKADDR a3, LPINT a4);
1527
1528#ifdef DEBUG_STUB
1529    idnLogPrintf(idn_log_level_trace, "stub WSAStringToAddressW() called\n");
1530#endif
1531    if (fp == NULL) {
1532	void *p;
1533	if ((p = GetProcAddress(DLLHANDLE, "WSAStringToAddressW")) == NULL) {
1534	    FATAL("cannot find entry WSAStringToAddressW (%d)\n", GetLastError());
1535	    abort();
1536	}
1537	fp = p;
1538    }
1539    return (*fp)(a0, a1, a2, a3, a4);
1540}
1541
1542DWORD   WINAPI
1543WSAWaitForMultipleEvents(DWORD a0, const WSAEVENT * a1, BOOL a2, DWORD a3, BOOL a4)
1544{
1545    static DWORD   (WINAPI *fp)(DWORD a0, const WSAEVENT * a1, BOOL a2, DWORD a3, BOOL a4);
1546
1547#ifdef DEBUG_STUB
1548    idnLogPrintf(idn_log_level_trace, "stub WSAWaitForMultipleEvents() called\n");
1549#endif
1550    if (fp == NULL) {
1551	void *p;
1552	if ((p = GetProcAddress(DLLHANDLE, "WSAWaitForMultipleEvents")) == NULL) {
1553	    FATAL("cannot find entry WSAWaitForMultipleEvents (%d)\n", GetLastError());
1554	    abort();
1555	}
1556	fp = p;
1557    }
1558    return (*fp)(a0, a1, a2, a3, a4);
1559}
1560
1561int   WINAPI
1562WSCDeinstallProvider(LPGUID a0, LPINT a1)
1563{
1564    static int   (WINAPI *fp)(LPGUID a0, LPINT a1);
1565
1566#ifdef DEBUG_STUB
1567    idnLogPrintf(idn_log_level_trace, "stub WSCDeinstallProvider() called\n");
1568#endif
1569    if (fp == NULL) {
1570	void *p;
1571	if ((p = GetProcAddress(DLLHANDLE, "WSCDeinstallProvider")) == NULL) {
1572	    FATAL("cannot find entry WSCDeinstallProvider (%d)\n", GetLastError());
1573	    abort();
1574	}
1575	fp = p;
1576    }
1577    return (*fp)(a0, a1);
1578}
1579
1580int   WINAPI
1581WSCEnableNSProvider(LPGUID a0, BOOL a1)
1582{
1583    static int   (WINAPI *fp)(LPGUID a0, BOOL a1);
1584
1585#ifdef DEBUG_STUB
1586    idnLogPrintf(idn_log_level_trace, "stub WSCEnableNSProvider() called\n");
1587#endif
1588    if (fp == NULL) {
1589	void *p;
1590	if ((p = GetProcAddress(DLLHANDLE, "WSCEnableNSProvider")) == NULL) {
1591	    FATAL("cannot find entry WSCEnableNSProvider (%d)\n", GetLastError());
1592	    abort();
1593	}
1594	fp = p;
1595    }
1596    return (*fp)(a0, a1);
1597}
1598
1599int   WINAPI
1600WSCEnumProtocols(LPINT a0, LPWSAPROTOCOL_INFOW a1, LPDWORD a2, LPINT a3)
1601{
1602    static int   (WINAPI *fp)(LPINT a0, LPWSAPROTOCOL_INFOW a1, LPDWORD a2, LPINT a3);
1603
1604#ifdef DEBUG_STUB
1605    idnLogPrintf(idn_log_level_trace, "stub WSCEnumProtocols() called\n");
1606#endif
1607    if (fp == NULL) {
1608	void *p;
1609	if ((p = GetProcAddress(DLLHANDLE, "WSCEnumProtocols")) == NULL) {
1610	    FATAL("cannot find entry WSCEnumProtocols (%d)\n", GetLastError());
1611	    abort();
1612	}
1613	fp = p;
1614    }
1615    return (*fp)(a0, a1, a2, a3);
1616}
1617
1618int   WINAPI
1619WSCGetProviderPath(LPGUID a0, LPWSTR a1, LPINT a2, LPINT a3)
1620{
1621    static int   (WINAPI *fp)(LPGUID a0, LPWSTR a1, LPINT a2, LPINT a3);
1622
1623#ifdef DEBUG_STUB
1624    idnLogPrintf(idn_log_level_trace, "stub WSCGetProviderPath() called\n");
1625#endif
1626    if (fp == NULL) {
1627	void *p;
1628	if ((p = GetProcAddress(DLLHANDLE, "WSCGetProviderPath")) == NULL) {
1629	    FATAL("cannot find entry WSCGetProviderPath (%d)\n", GetLastError());
1630	    abort();
1631	}
1632	fp = p;
1633    }
1634    return (*fp)(a0, a1, a2, a3);
1635}
1636
1637int   WINAPI
1638WSCInstallNameSpace(LPWSTR a0, LPWSTR a1, DWORD a2, DWORD a3, LPGUID a4)
1639{
1640    static int   (WINAPI *fp)(LPWSTR a0, LPWSTR a1, DWORD a2, DWORD a3, LPGUID a4);
1641
1642#ifdef DEBUG_STUB
1643    idnLogPrintf(idn_log_level_trace, "stub WSCInstallNameSpace() called\n");
1644#endif
1645    if (fp == NULL) {
1646	void *p;
1647	if ((p = GetProcAddress(DLLHANDLE, "WSCInstallNameSpace")) == NULL) {
1648	    FATAL("cannot find entry WSCInstallNameSpace (%d)\n", GetLastError());
1649	    abort();
1650	}
1651	fp = p;
1652    }
1653    return (*fp)(a0, a1, a2, a3, a4);
1654}
1655
1656int   WINAPI
1657WSCInstallProvider(const LPGUID a0, const LPWSTR a1, const LPWSAPROTOCOL_INFOW a2, DWORD a3, LPINT a4)
1658{
1659    static int   (WINAPI *fp)(const LPGUID a0, const LPWSTR a1, const LPWSAPROTOCOL_INFOW a2, DWORD a3, LPINT a4);
1660
1661#ifdef DEBUG_STUB
1662    idnLogPrintf(idn_log_level_trace, "stub WSCInstallProvider() called\n");
1663#endif
1664    if (fp == NULL) {
1665	void *p;
1666	if ((p = GetProcAddress(DLLHANDLE, "WSCInstallProvider")) == NULL) {
1667	    FATAL("cannot find entry WSCInstallProvider (%d)\n", GetLastError());
1668	    abort();
1669	}
1670	fp = p;
1671    }
1672    return (*fp)(a0, a1, a2, a3, a4);
1673}
1674
1675int   WINAPI
1676WSCUnInstallNameSpace(LPGUID a0)
1677{
1678    static int   (WINAPI *fp)(LPGUID a0);
1679
1680#ifdef DEBUG_STUB
1681    idnLogPrintf(idn_log_level_trace, "stub WSCUnInstallNameSpace() called\n");
1682#endif
1683    if (fp == NULL) {
1684	void *p;
1685	if ((p = GetProcAddress(DLLHANDLE, "WSCUnInstallNameSpace")) == NULL) {
1686	    FATAL("cannot find entry WSCUnInstallNameSpace (%d)\n", GetLastError());
1687	    abort();
1688	}
1689	fp = p;
1690    }
1691    return (*fp)(a0);
1692}
1693
1694int   PASCAL
1695WSAAsyncSelect(SOCKET a0, HWND a1, u_int a2, long a3)
1696{
1697    static int   (PASCAL *fp)(SOCKET a0, HWND a1, u_int a2, long a3);
1698
1699#ifdef DEBUG_STUB
1700    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncSelect() called\n");
1701#endif
1702    if (fp == NULL) {
1703	void *p;
1704	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncSelect")) == NULL) {
1705	    FATAL("cannot find entry WSAAsyncSelect (%d)\n", GetLastError());
1706	    abort();
1707	}
1708	fp = p;
1709    }
1710    return (*fp)(a0, a1, a2, a3);
1711}
1712
1713HANDLE   PASCAL
1714_org_WSAAsyncGetHostByAddr(HWND a0, u_int a1, const char* a2, int a3, int a4, char* a5, int a6)
1715{
1716    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, int a3, int a4, char* a5, int a6);
1717
1718#ifdef DEBUG_STUB
1719    idnLogPrintf(idn_log_level_trace, "stub _org_WSAAsyncGetHostByAddr() called\n");
1720#endif
1721    if (fp == NULL) {
1722	void *p;
1723	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetHostByAddr")) == NULL) {
1724	    FATAL("cannot find entry WSAAsyncGetHostByAddr (%d)\n", GetLastError());
1725	    abort();
1726	}
1727	fp = p;
1728    }
1729    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
1730}
1731
1732HANDLE   PASCAL
1733_org_WSAAsyncGetHostByName(HWND a0, u_int a1, const char* a2, char* a3, int a4)
1734{
1735    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, char* a3, int a4);
1736
1737#ifdef DEBUG_STUB
1738    idnLogPrintf(idn_log_level_trace, "stub _org_WSAAsyncGetHostByName() called\n");
1739#endif
1740    if (fp == NULL) {
1741	void *p;
1742	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetHostByName")) == NULL) {
1743	    FATAL("cannot find entry WSAAsyncGetHostByName (%d)\n", GetLastError());
1744	    abort();
1745	}
1746	fp = p;
1747    }
1748    return (*fp)(a0, a1, a2, a3, a4);
1749}
1750
1751HANDLE   PASCAL
1752WSAAsyncGetProtoByNumber(HWND a0, u_int a1, int a2, char* a3, int a4)
1753{
1754    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, int a2, char* a3, int a4);
1755
1756#ifdef DEBUG_STUB
1757    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetProtoByNumber() called\n");
1758#endif
1759    if (fp == NULL) {
1760	void *p;
1761	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetProtoByNumber")) == NULL) {
1762	    FATAL("cannot find entry WSAAsyncGetProtoByNumber (%d)\n", GetLastError());
1763	    abort();
1764	}
1765	fp = p;
1766    }
1767    return (*fp)(a0, a1, a2, a3, a4);
1768}
1769
1770HANDLE   PASCAL
1771WSAAsyncGetProtoByName(HWND a0, u_int a1, const char* a2, char* a3, int a4)
1772{
1773    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, char* a3, int a4);
1774
1775#ifdef DEBUG_STUB
1776    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetProtoByName() called\n");
1777#endif
1778    if (fp == NULL) {
1779	void *p;
1780	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetProtoByName")) == NULL) {
1781	    FATAL("cannot find entry WSAAsyncGetProtoByName (%d)\n", GetLastError());
1782	    abort();
1783	}
1784	fp = p;
1785    }
1786    return (*fp)(a0, a1, a2, a3, a4);
1787}
1788
1789HANDLE   PASCAL
1790WSAAsyncGetServByPort(HWND a0, u_int a1, int a2, const char* a3, char* a4, int a5)
1791{
1792    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, int a2, const char* a3, char* a4, int a5);
1793
1794#ifdef DEBUG_STUB
1795    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetServByPort() called\n");
1796#endif
1797    if (fp == NULL) {
1798	void *p;
1799	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetServByPort")) == NULL) {
1800	    FATAL("cannot find entry WSAAsyncGetServByPort (%d)\n", GetLastError());
1801	    abort();
1802	}
1803	fp = p;
1804    }
1805    return (*fp)(a0, a1, a2, a3, a4, a5);
1806}
1807
1808HANDLE   PASCAL
1809WSAAsyncGetServByName(HWND a0, u_int a1, const char* a2, const char* a3, char* a4, int a5)
1810{
1811    static HANDLE   (PASCAL *fp)(HWND a0, u_int a1, const char* a2, const char* a3, char* a4, int a5);
1812
1813#ifdef DEBUG_STUB
1814    idnLogPrintf(idn_log_level_trace, "stub WSAAsyncGetServByName() called\n");
1815#endif
1816    if (fp == NULL) {
1817	void *p;
1818	if ((p = GetProcAddress(DLLHANDLE, "WSAAsyncGetServByName")) == NULL) {
1819	    FATAL("cannot find entry WSAAsyncGetServByName (%d)\n", GetLastError());
1820	    abort();
1821	}
1822	fp = p;
1823    }
1824    return (*fp)(a0, a1, a2, a3, a4, a5);
1825}
1826
1827int   PASCAL
1828WSACancelAsyncRequest(HANDLE a0)
1829{
1830    static int   (PASCAL *fp)(HANDLE a0);
1831
1832#ifdef DEBUG_STUB
1833    idnLogPrintf(idn_log_level_trace, "stub WSACancelAsyncRequest() called\n");
1834#endif
1835    if (fp == NULL) {
1836	void *p;
1837	if ((p = GetProcAddress(DLLHANDLE, "WSACancelAsyncRequest")) == NULL) {
1838	    FATAL("cannot find entry WSACancelAsyncRequest (%d)\n", GetLastError());
1839	    abort();
1840	}
1841	fp = p;
1842    }
1843    return (*fp)(a0);
1844}
1845
1846FARPROC   PASCAL
1847WSASetBlockingHook(FARPROC a0)
1848{
1849    static FARPROC   (PASCAL *fp)(FARPROC a0);
1850
1851#ifdef DEBUG_STUB
1852    idnLogPrintf(idn_log_level_trace, "stub WSASetBlockingHook() called\n");
1853#endif
1854    if (fp == NULL) {
1855	void *p;
1856	if ((p = GetProcAddress(DLLHANDLE, "WSASetBlockingHook")) == NULL) {
1857	    FATAL("cannot find entry WSASetBlockingHook (%d)\n", GetLastError());
1858	    abort();
1859	}
1860	fp = p;
1861    }
1862    return (*fp)(a0);
1863}
1864
1865int   PASCAL
1866WSAUnhookBlockingHook(void)
1867{
1868    static int   (PASCAL *fp)(void);
1869
1870#ifdef DEBUG_STUB
1871    idnLogPrintf(idn_log_level_trace, "stub WSAUnhookBlockingHook() called\n");
1872#endif
1873    if (fp == NULL) {
1874	void *p;
1875	if ((p = GetProcAddress(DLLHANDLE, "WSAUnhookBlockingHook")) == NULL) {
1876	    FATAL("cannot find entry WSAUnhookBlockingHook (%d)\n", GetLastError());
1877	    abort();
1878	}
1879	fp = p;
1880    }
1881    return (*fp)();
1882}
1883
1884int   PASCAL
1885WSAGetLastError(void)
1886{
1887    static int   (PASCAL *fp)(void);
1888
1889#ifdef DEBUG_STUB
1890    idnLogPrintf(idn_log_level_trace, "stub WSAGetLastError() called\n");
1891#endif
1892    if (fp == NULL) {
1893	void *p;
1894	if ((p = GetProcAddress(DLLHANDLE, "WSAGetLastError")) == NULL) {
1895	    FATAL("cannot find entry WSAGetLastError (%d)\n", GetLastError());
1896	    abort();
1897	}
1898	fp = p;
1899    }
1900    return (*fp)();
1901}
1902
1903void   PASCAL
1904WSASetLastError(int a0)
1905{
1906    static void   (PASCAL *fp)(int a0);
1907
1908#ifdef DEBUG_STUB
1909    idnLogPrintf(idn_log_level_trace, "stub WSASetLastError() called\n");
1910#endif
1911    if (fp == NULL) {
1912	void *p;
1913	if ((p = GetProcAddress(DLLHANDLE, "WSASetLastError")) == NULL) {
1914	    FATAL("cannot find entry WSASetLastError (%d)\n", GetLastError());
1915	    abort();
1916	}
1917	fp = p;
1918    }
1919     (*fp)(a0);
1920}
1921
1922int   PASCAL
1923WSACancelBlockingCall(void)
1924{
1925    static int   (PASCAL *fp)(void);
1926
1927#ifdef DEBUG_STUB
1928    idnLogPrintf(idn_log_level_trace, "stub WSACancelBlockingCall() called\n");
1929#endif
1930    if (fp == NULL) {
1931	void *p;
1932	if ((p = GetProcAddress(DLLHANDLE, "WSACancelBlockingCall")) == NULL) {
1933	    FATAL("cannot find entry WSACancelBlockingCall (%d)\n", GetLastError());
1934	    abort();
1935	}
1936	fp = p;
1937    }
1938    return (*fp)();
1939}
1940
1941BOOL   PASCAL
1942WSAIsBlocking(void)
1943{
1944    static BOOL   (PASCAL *fp)(void);
1945
1946#ifdef DEBUG_STUB
1947    idnLogPrintf(idn_log_level_trace, "stub WSAIsBlocking() called\n");
1948#endif
1949    if (fp == NULL) {
1950	void *p;
1951	if ((p = GetProcAddress(DLLHANDLE, "WSAIsBlocking")) == NULL) {
1952	    FATAL("cannot find entry WSAIsBlocking (%d)\n", GetLastError());
1953	    abort();
1954	}
1955	fp = p;
1956    }
1957    return (*fp)();
1958}
1959
1960int   PASCAL
1961WSAStartup(WORD a0, LPWSADATA a1)
1962{
1963    static int   (PASCAL *fp)(WORD a0, LPWSADATA a1);
1964
1965#ifdef DEBUG_STUB
1966    idnLogPrintf(idn_log_level_trace, "stub WSAStartup() called\n");
1967#endif
1968    if (fp == NULL) {
1969	void *p;
1970	if ((p = GetProcAddress(DLLHANDLE, "WSAStartup")) == NULL) {
1971	    FATAL("cannot find entry WSAStartup (%d)\n", GetLastError());
1972	    abort();
1973	}
1974	fp = p;
1975    }
1976    return (*fp)(a0, a1);
1977}
1978
1979int   PASCAL
1980WSACleanup(void)
1981{
1982    static int   (PASCAL *fp)(void);
1983
1984#ifdef DEBUG_STUB
1985    idnLogPrintf(idn_log_level_trace, "stub WSACleanup() called\n");
1986#endif
1987    if (fp == NULL) {
1988	void *p;
1989	if ((p = GetProcAddress(DLLHANDLE, "WSACleanup")) == NULL) {
1990	    FATAL("cannot find entry WSACleanup (%d)\n", GetLastError());
1991	    abort();
1992	}
1993	fp = p;
1994    }
1995    return (*fp)();
1996}
1997
1998int   PASCAL
1999__WSAFDIsSet(SOCKET a0, fd_set* a1)
2000{
2001    static int   (PASCAL *fp)(SOCKET a0, fd_set* a1);
2002
2003#ifdef DEBUG_STUB
2004    idnLogPrintf(idn_log_level_trace, "stub __WSAFDIsSet() called\n");
2005#endif
2006    if (fp == NULL) {
2007	void *p;
2008	if ((p = GetProcAddress(DLLHANDLE, "__WSAFDIsSet")) == NULL) {
2009	    FATAL("cannot find entry __WSAFDIsSet (%d)\n", GetLastError());
2010	    abort();
2011	}
2012	fp = p;
2013    }
2014    return (*fp)(a0, a1);
2015}
2016
2017int  PASCAL
2018WEP(void)
2019{
2020    static int  (PASCAL *fp)(void);
2021
2022#ifdef DEBUG_STUB
2023    idnLogPrintf(idn_log_level_trace, "stub WEP() called\n");
2024#endif
2025    if (fp == NULL) {
2026	void *p;
2027	if ((p = GetProcAddress(DLLHANDLE, "WEP")) == NULL) {
2028	    FATAL("cannot find entry WEP (%d)\n", GetLastError());
2029	    abort();
2030	}
2031	fp = p;
2032    }
2033    return (*fp)();
2034}
2035
2036int  PASCAL
2037WSCWriteNameSpaceOrder(int a0, int a1)
2038{
2039    static int  (PASCAL *fp)(int a0, int a1);
2040
2041#ifdef DEBUG_STUB
2042    idnLogPrintf(idn_log_level_trace, "stub WSCWriteNameSpaceOrder() called\n");
2043#endif
2044    if (fp == NULL) {
2045	void *p;
2046	if ((p = GetProcAddress(DLLHANDLE, "WSCWriteNameSpaceOrder")) == NULL) {
2047	    FATAL("cannot find entry WSCWriteNameSpaceOrder (%d)\n", GetLastError());
2048	    abort();
2049	}
2050	fp = p;
2051    }
2052    return (*fp)(a0, a1);
2053}
2054
2055int   PASCAL
2056WSCWriteProviderOrder(LPDWORD a0, DWORD a1)
2057{
2058    static int   (PASCAL *fp)(LPDWORD a0, DWORD a1);
2059
2060#ifdef DEBUG_STUB
2061    idnLogPrintf(idn_log_level_trace, "stub WSCWriteProviderOrder() called\n");
2062#endif
2063    if (fp == NULL) {
2064	void *p;
2065	if ((p = GetProcAddress(DLLHANDLE, "WSCWriteProviderOrder")) == NULL) {
2066	    FATAL("cannot find entry WSCWriteProviderOrder (%d)\n", GetLastError());
2067	    abort();
2068	}
2069	fp = p;
2070    }
2071    return (*fp)(a0, a1);
2072}
2073
2074int   PASCAL
2075WSANSPIoctl(HANDLE a0, DWORD a1, LPVOID a2, DWORD a3, LPVOID a4, DWORD a5, LPDWORD a6, LPVOID a7)
2076{
2077    static int   (PASCAL *fp)(HANDLE a0, DWORD a1, LPVOID a2, DWORD a3, LPVOID a4, DWORD a5, LPDWORD a6, LPVOID a7);
2078
2079#ifdef DEBUG_STUB
2080    idnLogPrintf(idn_log_level_trace, "stub WSANSPIoctl() called\n");
2081#endif
2082    if (fp == NULL) {
2083	void *p;
2084	if ((p = GetProcAddress(DLLHANDLE, "WSANSPIoctl")) == NULL) {
2085	    FATAL("cannot find entry WSANSPIoctl (%d)\n", GetLastError());
2086	    abort();
2087	}
2088	fp = p;
2089    }
2090    return (*fp)(a0, a1, a2, a3, a4, a5, a6, a7);
2091}
2092
2093int   PASCAL
2094WSCUpdateProvider(LPGUID a0, const WCHAR FAR* a1, const LPVOID a2, DWORD a3, LPINT a4)
2095{
2096    static int   (PASCAL *fp)(LPGUID a0, const WCHAR FAR* a1, const LPVOID a2, DWORD a3, LPINT a4);
2097
2098#ifdef DEBUG_STUB
2099    idnLogPrintf(idn_log_level_trace, "stub WSCUpdateProvider() called\n");
2100#endif
2101    if (fp == NULL) {
2102	void *p;
2103	if ((p = GetProcAddress(DLLHANDLE, "WSCUpdateProvider")) == NULL) {
2104	    FATAL("cannot find entry WSCUpdateProvider (%d)\n", GetLastError());
2105	    abort();
2106	}
2107	fp = p;
2108    }
2109    return (*fp)(a0, a1, a2, a3, a4);
2110}
2111
2112int   PASCAL
2113_org_getaddrinfo(const char* a0, const char* a1, LPVOID a2, LPVOID a3)
2114{
2115    static int   (PASCAL *fp)(const char* a0, const char* a1, LPVOID a2, LPVOID a3);
2116
2117#ifdef DEBUG_STUB
2118    idnLogPrintf(idn_log_level_trace, "stub _org_getaddrinfo() called\n");
2119#endif
2120    if (fp == NULL) {
2121	void *p;
2122	if ((p = GetProcAddress(DLLHANDLE, "getaddrinfo")) == NULL) {
2123	    FATAL("cannot find entry getaddrinfo (%d)\n", GetLastError());
2124	    abort();
2125	}
2126	fp = p;
2127    }
2128    return (*fp)(a0, a1, a2, a3);
2129}
2130
2131void   PASCAL
2132_org_freeaddrinfo(LPVOID a0)
2133{
2134    static void   (PASCAL *fp)(LPVOID a0);
2135
2136#ifdef DEBUG_STUB
2137    idnLogPrintf(idn_log_level_trace, "stub _org_freeaddrinfo() called\n");
2138#endif
2139    if (fp == NULL) {
2140	void *p;
2141	if ((p = GetProcAddress(DLLHANDLE, "freeaddrinfo")) == NULL) {
2142	    FATAL("cannot find entry freeaddrinfo (%d)\n", GetLastError());
2143	    abort();
2144	}
2145	fp = p;
2146    }
2147     (*fp)(a0);
2148}
2149
2150int   PASCAL
2151_org_getnameinfo(LPVOID a0, DWORD a1, char* a2, DWORD a3, char* a4, DWORD a5, int a6)
2152{
2153    static int   (PASCAL *fp)(LPVOID a0, DWORD a1, char* a2, DWORD a3, char* a4, DWORD a5, int a6);
2154
2155#ifdef DEBUG_STUB
2156    idnLogPrintf(idn_log_level_trace, "stub _org_getnameinfo() called\n");
2157#endif
2158    if (fp == NULL) {
2159	void *p;
2160	if ((p = GetProcAddress(DLLHANDLE, "getnameinfo")) == NULL) {
2161	    FATAL("cannot find entry getnameinfo (%d)\n", GetLastError());
2162	    abort();
2163	}
2164	fp = p;
2165    }
2166    return (*fp)(a0, a1, a2, a3, a4, a5, a6);
2167}
2168
2169