ReactOS 0.4.15-dev-8428-g6910fa6
ws2spi.h
Go to the documentation of this file.
1/*
2 * ws2spi.h
3 *
4 * Winsock 2 Service Provider interface.
5 *
6 *
7 * THIS SOFTWARE IS NOT COPYRIGHTED
8 *
9 * This source code is offered for use in the public domain. You may
10 * use, modify or distribute it freely.
11 *
12 * This code is distributed in the hope that it will be useful but
13 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
14 * DISCLAIMED. This includes but is not limited to warranties of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 *
17 */
18
19#pragma once
20
21#define _WS2SPI_H
22
23#ifndef _WINSOCK2API_
24#include <winsock2.h>
25#endif
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31#if !defined(_WIN64)
32#include <pshpack4.h>
33#endif
34
35#define WSPDESCRIPTION_LEN 255
36
37#define WSS_OPERATION_IN_PROGRESS 0x00000103L
38
39#define WSPAPI WSAAPI
40
41typedef struct _WSATHREADID {
45
46typedef struct WSPData {
51
52typedef BOOL
53(CALLBACK FAR *LPBLOCKINGCALLBACK)(
54 DWORD_PTR dwContext);
55
56typedef
61 _Out_writes_bytes_to_opt_(*addrlen, *addrlen) struct sockaddr FAR *addr,
62 _Inout_opt_ LPINT addrlen,
63 _In_opt_ LPCONDITIONPROC lpfnCondition,
64 _In_opt_ DWORD_PTR dwCallbackData,
65 _Out_ LPINT lpErrno);
66
67typedef VOID
68(CALLBACK FAR *LPWSAUSERAPC)(
69 DWORD_PTR dwContext);
70
71typedef INT
73 _In_reads_bytes_(dwAddressLength) LPSOCKADDR lpsaAddress,
74 _In_ DWORD dwAddressLength,
75 _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
76 _Out_writes_to_(*lpdwAddressStringLength, *lpdwAddressStringLength) LPWSTR lpszAddressString,
77 _Inout_ LPDWORD lpdwAddressStringLength,
78 _Out_ LPINT lpErrno);
79
80typedef int
84 _In_ unsigned int wMsg,
85 _In_ long lEvent,
86 _Out_ LPINT lpErrno);
87
88typedef int
92 _In_ int namelen,
93 _Out_ LPINT lpErrno);
94
95typedef int
97 _Out_ LPINT lpErrno);
98
99typedef int
101 _Out_ LPINT lpErrno);
102
103typedef int
105 _In_ SOCKET s,
106 _Out_ LPINT lpErrno);
107
108typedef int
110 _In_ SOCKET s,
112 _In_ int namelen,
113 _In_opt_ LPWSABUF lpCallerData,
114 _Out_opt_ LPWSABUF lpCalleeData,
115 _In_opt_ LPQOS lpSQOS,
116 _In_opt_ LPQOS lpGQOS,
117 _Out_ LPINT lpErrno);
118
119typedef int
121 _In_ SOCKET s,
122 _In_ DWORD dwProcessId,
123 _Out_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
124 _Out_ LPINT lpErrno);
125
126typedef int
128 _In_ SOCKET s,
129 _In_ WSAEVENT hEventObject,
130 _Out_ LPWSANETWORKEVENTS lpNetworkEvents,
131 _Out_ LPINT lpErrno);
132
133typedef int
135 _In_ SOCKET s,
136 _In_opt_ WSAEVENT hEventObject,
137 _In_ long lNetworkEvents,
138 _Out_ LPINT lpErrno);
139
140typedef BOOL
142 _In_ SOCKET s,
144 _Out_ LPDWORD lpcbTransfer,
145 _In_ BOOL fWait,
146 _Out_ LPDWORD lpdwFlags,
147 _Out_ LPINT lpErrno);
148
149typedef int
151 _In_ SOCKET s,
154 _Out_ LPINT lpErrno);
155
156typedef int
158 _In_ SOCKET s,
161 _Out_ LPINT lpErrno);
162
163typedef int
165 _In_ SOCKET s,
166 _In_ int level,
167 _In_ int optname,
168 _Out_writes_bytes_(*optlen) char FAR *optval,
169 _Inout_ LPINT optlen,
170 _Out_ LPINT lpErrno);
171
172typedef BOOL
174 _In_ SOCKET s,
175 _In_ LPWSABUF lpQOSName,
176 _Out_ LPQOS lpQOS,
177 _Out_ LPINT lpErrno);
178
179typedef int
181 _In_ SOCKET s,
183 _In_reads_bytes_opt_(cbInBuffer) LPVOID lpvInBuffer,
184 _In_ DWORD cbInBuffer,
185 _Out_writes_bytes_to_opt_(cbOutBuffer, *lpcbBytesReturned) LPVOID lpvOutBuffer,
186 _In_ DWORD cbOutBuffer,
187 _Out_ LPDWORD lpcbBytesReturned,
190 _In_opt_ LPWSATHREADID lpThreadId,
191 _Out_ LPINT lpErrno);
192
193typedef SOCKET
195 _In_ SOCKET s,
197 _In_ int namelen,
198 _In_opt_ LPWSABUF lpCallerData,
199 _Out_opt_ LPWSABUF lpCalleeData,
200 _In_opt_ LPQOS lpSQOS,
201 _In_opt_ LPQOS lpGQOS,
203 _Out_ LPINT lpErrno);
204
205typedef int
207 _In_ SOCKET s,
208 _In_ int backlog,
209 _Out_ LPINT lpErrno);
210
211typedef int
213 _In_ SOCKET s,
214 _In_reads_(dwBufferCount) LPWSABUF lpBuffers,
215 _In_ DWORD dwBufferCount,
216 _Out_opt_ LPDWORD lpNumberOfBytesRecvd,
217 _Inout_ LPDWORD lpFlags,
220 _In_opt_ LPWSATHREADID lpThreadId,
221 _In_ LPINT lpErrno);
222
223typedef int
225 _In_ SOCKET s,
226 _In_opt_ LPWSABUF lpInboundDisconnectData,
227 _Out_ LPINT lpErrno);
228
229typedef int
231 _In_ SOCKET s,
232 _In_reads_(dwBufferCount) LPWSABUF lpBuffers,
233 _In_ DWORD dwBufferCount,
234 _Out_opt_ LPDWORD lpNumberOfBytesRecvd,
235 _Inout_ LPDWORD lpFlags,
236 _Out_writes_bytes_to_opt_(*lpFromlen, *lpFromlen) struct sockaddr FAR *lpFrom,
237 _Inout_opt_ LPINT lpFromlen,
240 _In_opt_ LPWSATHREADID lpThreadId,
241 _Out_ LPINT lpErrno);
242
243typedef int
245 _In_ int nfds,
246 _Inout_opt_ fd_set FAR *readfds,
247 _Inout_opt_ fd_set FAR *writefds,
248 _Inout_opt_ fd_set FAR *exceptfds,
249 _In_opt_ const struct timeval FAR *timeout,
250 _Out_ LPINT lpErrno);
251
252typedef int
254 _In_ SOCKET s,
255 _In_reads_(dwBufferCount) LPWSABUF lpBuffers,
256 _In_ DWORD dwBufferCount,
257 _Out_opt_ LPDWORD lpNumberOfBytesSent,
261 _In_opt_ LPWSATHREADID lpThreadId,
262 _Out_ LPINT lpErrno);
263
264typedef int
266 _In_ SOCKET s,
267 _In_opt_ LPWSABUF lpOutboundDisconnectData,
268 _Out_ LPINT lpErrno);
269
270typedef int
272 _In_ SOCKET s,
273 _In_reads_(dwBufferCount) LPWSABUF lpBuffers,
274 _In_ DWORD dwBufferCount,
275 _Out_opt_ LPDWORD lpNumberOfBytesSent,
277 _In_reads_bytes_opt_(iTolen) const struct sockaddr FAR *lpTo,
278 _In_ int iTolen,
281 _In_opt_ LPWSATHREADID lpThreadId,
282 _Out_ LPINT lpErrno);
283
284typedef int
286 _In_ SOCKET s,
287 _In_ int level,
288 _In_ int optname,
289 _In_reads_bytes_opt_(optlen) const char FAR *optval,
290 _In_ int optlen,
291 _Out_ LPINT lpErrno);
292
293typedef int
295 _In_ SOCKET s,
296 _In_ int how,
297 _Out_ LPINT lpErrno);
298
299typedef
303 _In_ int af,
304 _In_ int type,
305 _In_ int protocol,
306 _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
307 _In_ GROUP g,
309 _Out_ LPINT lpErrno);
310
311typedef INT
313 _In_ LPWSTR AddressString,
315 _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
316 _Out_writes_bytes_to_(*lpAddressLength, *lpAddressLength) LPSOCKADDR lpAddress,
317 _Inout_ LPINT lpAddressLength,
318 _Out_ LPINT lpErrno);
319
320typedef BOOL
323 _Out_ LPINT lpErrno);
324
325typedef int
327 _In_ SOCKET s,
328 _Out_ LPINT lpErrno);
329
330typedef WSAEVENT
332 _Out_ LPINT lpErrno);
333
334typedef
338 _In_ DWORD dwCatalogEntryId,
339 _In_ DWORD_PTR dwContext,
340 _Out_ LPINT lpErrno);
341
342typedef int
344 _In_ SOCKET s,
345 _In_ fd_set FAR *fdset);
346
347typedef int
349 _In_ LPGUID lpProviderId,
350 _Out_writes_(*lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath,
351 _Inout_ LPINT lpProviderDllPathLen,
352 _Out_ LPINT lpErrno);
353
354typedef SOCKET
356 _In_ DWORD dwCatalogEntryId,
357 _In_ SOCKET ProposedHandle,
358 _Out_ LPINT lpErrno);
359
360typedef BOOL
362 _In_ HWND hWnd,
363 _In_ UINT Msg,
366
367typedef int
369 _In_ DWORD dwCatalogEntryId,
370 _Out_ LPBLOCKINGCALLBACK FAR *lplpfnCallback,
371 _Out_ PDWORD_PTR lpdwContext,
372 _Out_ LPINT lpErrno);
373
374typedef int
376 _In_ SOCKET s,
377 _Out_ PDWORD_PTR lpContext,
378 _Out_ LPINT lpErrno);
379
380typedef int
382 _In_ LPWSATHREADID lpThreadId,
383 _In_ LPWSAUSERAPC lpfnUserApc,
384 _In_ DWORD_PTR dwContext,
385 _Out_ LPINT lpErrno);
386
387typedef BOOL
390 _Out_ LPINT lpErrno);
391
392typedef BOOL
395 _Out_ LPINT lpErrno);
396
397typedef int
399 _Out_ LPWSATHREADID lpThreadId,
400 _Out_ LPINT lpErrno);
401
402typedef int
404 _In_ LPWSATHREADID lpThreadId,
405 _Out_ LPINT lpErrno);
406
407typedef int
409 _In_ SOCKET s,
411 _In_ DWORD dwError,
412 _In_ DWORD cbTransferred,
413 _Out_ LPINT lpErrno);
414
415typedef int
417 _In_opt_ LPINT lpiProtocols,
418 _Out_writes_bytes_to_opt_(*lpdwBufferLength, *lpdwBufferlength) LPWSAPROTOCOL_INFOW lpProtocolBuffer,
420 _Out_ LPINT lpErrno);
421
422typedef int
424 _In_ LPGUID lpProviderId,
425 _Out_ LPINT lpErrno);
426
427typedef int
429 _In_ LPGUID lpProviderId,
430 _In_z_ const WCHAR FAR *lpszProviderDllPath,
431 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
432 _In_ DWORD dwNumberOfEntries,
433 _Out_ LPINT lpErrno);
434
435typedef int
437 _In_ LPGUID lpProviderId,
438 _Out_writes_to_(*lpProviderDllPathLen, *lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath,
439 _Inout_ LPINT lpProviderDllPathLen,
440 _Out_ LPINT lpErrno);
441
442typedef INT
444 _In_ LPWSTR lpszIdentifier,
445 _In_ LPWSTR lpszPathName,
446 _In_ DWORD dwNameSpace,
447 _In_ DWORD dwVersion,
448 _In_ LPGUID lpProviderId);
449
450typedef INT
452 _In_ LPGUID lpProviderId);
453
454typedef INT
456 _In_ LPGUID lpProviderId,
457 _In_ BOOL fEnable);
458
459/* Service provider procedure table */
460typedef struct _WSPPROC_TABLE {
492
493typedef INT
495 _In_ LPGUID lpProviderId);
496
497typedef INT
499 _In_ LPGUID lpProviderId,
500 _In_ LPWSAQUERYSETW lpqsRestrictions,
501 _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo,
502 _In_ DWORD dwControlFlags,
503 _Out_ LPHANDLE lphLookup);
504
505typedef INT
507 _In_ HANDLE hLookup,
508 _In_ DWORD dwControlFlags,
511
512#if(_WIN32_WINNT >= 0x0501)
513typedef INT
514(WSAAPI *LPNSPIOCTL)(
515 _In_ HANDLE hLookup,
516 _In_ DWORD dwControlCode,
517 _In_reads_bytes_(cbInBuffer) LPVOID lpvInBuffer,
518 _In_ DWORD cbInBuffer,
519 _Out_writes_bytes_to_(cbOutBuffer, *lpcbBytesReturned) LPVOID lpvOutBuffer,
520 _In_ DWORD cbOutBuffer,
521 _Out_ LPDWORD lpcbBytesReturned,
522 _In_opt_ LPWSACOMPLETION lpCompletion,
523 _In_ LPWSATHREADID lpThreadId);
524#endif
525
526typedef INT
528 _In_ HANDLE hLookup);
529
530typedef INT
532 _In_ LPGUID lpProviderId,
533 _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo,
534 _In_ LPWSAQUERYSETW lpqsRegInfo,
535 _In_ WSAESETSERVICEOP essOperation,
536 _In_ DWORD dwControlFlags);
537
538typedef INT
540 _In_ LPGUID lpProviderId,
541 _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo);
542
543typedef INT
545 _In_ LPGUID lpProviderId,
546 _In_ LPGUID lpServiceClassId);
547
548typedef INT
550 _In_ LPGUID lpProviderId,
551 _In_ LPDWORD lpdwBufSize,
552 _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo);
553
554typedef
558 _In_ LPGUID lpProviderId,
559 _Outptr_ LPVOID *ppvClientSessionArg);
560
561typedef INT
563 _In_ LPGUID lpProviderId,
564 _In_ LPVOID pvClientSessionArg);
565
566typedef INT
568 _In_ LPGUID lpProviderId,
569 _In_ LPWSAQUERYSET2W lpqsRestrictions,
570 _In_ DWORD dwControlFlags,
571 _In_ LPVOID lpvClientSessionArg,
572 _Out_ LPHANDLE lphLookup);
573
574typedef VOID
576 _In_ HANDLE hAsyncCall,
577 _In_ HANDLE hLookup,
578 _In_ DWORD dwControlFlags,
580 _Out_ LPWSAQUERYSET2W lpqsResults);
581
582typedef INT
584 _In_ HANDLE hLookup);
585
586typedef VOID
588 _In_ HANDLE hAsyncCall,
589 _In_ LPGUID lpProviderId,
590 _In_ LPWSAQUERYSET2W lpqsRegInfo,
591 _In_ WSAESETSERVICEOP essOperation,
592 _In_ DWORD dwControlFlags,
593 _In_ LPVOID lpvClientSessionArg);
594
595typedef VOID
597 _In_ LPGUID lpProviderId,
598 _In_ LPVOID pvClientSessionArg);
599
600/* Service Provider upcall table */
601typedef struct _WSPUPCALLTABLE {
618
619typedef
623 _In_ WORD wVersionRequested,
624 _In_ LPWSPDATA lpWSPData,
625 _In_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
626 _In_ WSPUPCALLTABLE UpcallTable,
627 _Out_ LPWSPPROC_TABLE lpProcTable);
628
629#if (_WIN32_WINNT >= 0x0600)
630
631#define LSP_SYSTEM 0x80000000
632#define LSP_INSPECTOR 0x00000001
633#define LSP_REDIRECTOR 0x00000002
634#define LSP_PROXY 0x00000004
635#define LSP_FIREWALL 0x00000008
636#define LSP_INBOUND_MODIFY 0x00000010
637#define LSP_OUTBOUND_MODIFY 0x00000020
638#define LSP_CRYPTO_COMPRESS 0x00000040
639#define LSP_LOCAL_CACHE 0x00000080
640
641typedef enum _WSC_PROVIDER_INFO_TYPE {
642 ProviderInfoLspCategories,
643 ProviderInfoAudit
644} WSC_PROVIDER_INFO_TYPE ;
645
646typedef struct _WSC_PROVIDER_AUDIT_INFO {
647 DWORD RecordSize;
649} WSC_PROVIDER_AUDIT_INFO;
650
651#endif /* (_WIN32_WINNT >= 0x0600) */
652
653typedef struct _NSP_ROUTINE {
665 LPNSPIOCTL NSPIoctl;
667
668typedef
672 _In_ LPGUID lpProviderId,
673 _Inout_ LPNSP_ROUTINE lpnspRoutines);
674
675typedef struct _NSPV2_ROUTINE {
688
690int
691WSPAPI
693 _In_ WORD wVersionRequested,
694 _In_ LPWSPDATA lpWSPData,
695 _In_ LPWSAPROTOCOL_INFOW lpProtocolInfo,
696 _In_ WSPUPCALLTABLE UpcallTable,
697 _Out_ LPWSPPROC_TABLE lpProcTable);
698
699int
700WSPAPI
702 _In_opt_ LPINT lpiProtocols,
705 _Out_ LPINT lpErrno);
706
707#if (_WIN32_WINNT >= 0x0501)
708
709int
710WSPAPI
712 _Out_ LPWSATHREADID lpThreadId,
713 _Out_ LPINT lpErrno);
714
715int
716WSPAPI
718 _In_ LPWSATHREADID lpThreadId,
719 _Out_ LPINT lpErrno);
720
721#define WSCEnumNameSpaceProviders WSAEnumNameSpaceProvidersW
722#define LPFN_WSCENUMNAMESPACEPROVIDERS LPFN_WSAENUMNAMESPACEPROVIDERSW
723
724int
725WSPAPI
727 _In_ LPGUID lpProviderId,
728 _In_z_ const WCHAR FAR *lpszProviderDllPath,
729 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
730 _In_ DWORD dwNumberOfEntries,
731 _Out_ LPINT lpErrno);
732
733typedef int
734(WSPAPI *LPWSCUPDATEPROVIDER)(
735 _In_ LPGUID lpProviderId,
736 _In_z_ const WCHAR FAR *lpszProviderDllPath,
737 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
738 _In_ DWORD dwNumberOfEntries,
739 _Out_ LPINT lpErrno);
740
741#if defined(_WIN64)
742
743int
744WSPAPI
745WSCEnumProtocols32(
746 _In_opt_ LPINT lpiProtocols,
749 _Out_ LPINT lpErrno);
750
751int
752WSPAPI
753WSCDeinstallProvider32(
754 _In_ LPGUID lpProviderId,
755 _Out_ LPINT lpErrno);
756
757int
758WSPAPI
759WSCInstallProvider64_32(
760 _In_ LPGUID lpProviderId,
761 _In_z_ const WCHAR FAR *lpszProviderDllPath,
762 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
763 _In_ DWORD dwNumberOfEntries,
764 _Out_ LPINT lpErrno);
765
766_Success_(return == 0)
767int
768WSPAPI
769WSCGetProviderPath32(
770 _In_ LPGUID lpProviderId,
771 _Out_writes_to_(*lpProviderDllPathLen, *lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath,
772 _Inout_ LPINT lpProviderDllPathLen,
773 _Out_ LPINT lpErrno);
774
775int
776WSPAPI
777WSCUpdateProvider32(
778 _In_ LPGUID lpProviderId,
779 _In_z_ const WCHAR FAR *lpszProviderDllPath,
780 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
781 _In_ DWORD dwNumberOfEntries,
782 _Out_ LPINT lpErrno);
783
784INT
785WSAAPI
786WSCEnumNameSpaceProviders32(
789
790INT
791WSPAPI
792WSCInstallNameSpace32(
793 _In_ LPWSTR lpszIdentifier,
794 _In_ LPWSTR lpszPathName,
795 _In_ DWORD dwNameSpace,
796 _In_ DWORD dwVersion,
797 _In_ LPGUID lpProviderId);
798
799INT
800WSPAPI
801WSCUnInstallNameSpace32(
802 _In_ LPGUID lpProviderId);
803
804INT
805WSPAPI
806WSCEnableNSProvider32(
807 _In_ LPGUID lpProviderId,
808 _In_ BOOL fEnable);
809
810#endif /* defined(_WIN64) */
811
812#endif /* defined(_WIN32_WINNT >= 0x0501) */
813
814int
815WSPAPI
817 _In_ LPGUID lpProviderId,
818 _Out_ LPINT lpErrno);
819
820int
821WSPAPI
823 _In_ LPGUID lpProviderId,
824 _In_z_ const WCHAR FAR *lpszProviderDllPath,
825 _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
826 _In_ DWORD dwNumberOfEntries,
827 _Out_ LPINT lpErrno);
828
829int
830WSPAPI
832 _In_ LPGUID lpProviderId,
833 _Out_writes_to_(*lpProviderDllPathLen, *lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath,
834 _Inout_ LPINT lpProviderDllPathLen,
835 _Out_ LPINT lpErrno);
836
837#if (_WIN32_WINNT < 0x0600)
838
839int
840WSPAPI
842 _In_ const LPGUID Guid,
843 _In_ LPWSABUF QosName,
844 _In_ LPQOS Qos);
845
846typedef int
848 _In_ const LPGUID Guid,
849 _In_ LPWSABUF QosName,
850 _In_ LPQOS Qos);
851
852int
853WSPAPI
855 _In_ const LPGUID Guid,
856 _In_ LPWSABUF QosName);
857
858typedef int
860 _In_ const LPGUID Guid,
861 _In_ LPWSABUF QosName);
862
863#endif /* (_WIN32_WINNT < 0x0600) */
864
865#if(_WIN32_WINNT >= 0x0600)
866
867int
868WSPAPI
869WSCSetProviderInfo(
870 _In_ LPGUID lpProviderId,
871 _In_ WSC_PROVIDER_INFO_TYPE InfoType,
872 _In_reads_bytes_(InfoSize) PBYTE Info,
873 _In_ size_t InfoSize,
875 _Out_ LPINT lpErrno);
876
877int
878WSPAPI
879WSCGetProviderInfo(
880 _In_ LPGUID lpProviderId,
881 _In_ WSC_PROVIDER_INFO_TYPE InfoType,
882 _Out_writes_bytes_to_(*InfoSize, *InfoSize) PBYTE Info,
883 _Inout_ size_t *InfoSize,
885 _Out_ LPINT lpErrno);
886
887int
888WSPAPI
889WSCSetApplicationCategory(
892 _In_reads_opt_(ExtraLength) LPCWSTR Extra,
893 _In_ DWORD ExtraLength,
894 _In_ DWORD PermittedLspCategories,
895 _Out_opt_ DWORD *pPrevPermLspCat,
896 _Out_ LPINT lpErrno);
897
898int
899WSPAPI
900WSCGetApplicationCategory(
903 _In_reads_opt_(ExtraLength) LPCWSTR Extra,
904 _In_ DWORD ExtraLength,
905 _Out_ DWORD *pPermittedLspCategories,
906 _Out_ LPINT lpErrno);
907
908#define WSCEnumNameSpaceProvidersEx WSAEnumNameSpaceProvidersExW
909#define LPFN_WSCENUMNAMESPACEPROVIDERSEX LPFN_WSAENUMNAMESPACEPROVIDERSEXW
910
911INT
912WSPAPI
913WSCInstallNameSpaceEx(
914 _In_ LPWSTR lpszIdentifier,
915 _In_ LPWSTR lpszPathName,
916 _In_ DWORD dwNameSpace,
917 _In_ DWORD dwVersion,
918 _In_ LPGUID lpProviderId,
919 _In_ LPBLOB lpProviderSpecific);
920
921INT
922WSAAPI
923WSAAdvertiseProvider(
924 _In_ const GUID *puuidProviderId,
925 _In_ const LPCNSPV2_ROUTINE pNSPv2Routine);
926
927INT
928WSAAPI
929WSAUnadvertiseProvider(
930 _In_ const GUID *puuidProviderId);
931
932INT
933WSAAPI
934WSAProviderCompleteAsyncCall(
935 _In_ HANDLE hAsyncCall,
936 _In_ INT iRetCode);
937
938#if defined(_WIN64)
939
940int
941WSPAPI
942WSCSetProviderInfo32(
943 _In_ LPGUID lpProviderId,
944 _In_ WSC_PROVIDER_INFO_TYPE InfoType,
945 _In_reads_bytes_(InfoSize) PBYTE Info,
946 _In_ size_t InfoSize,
948 _Out_ LPINT lpErrno);
949
950int
951WSPAPI
952WSCGetProviderInfo32(
953 _In_ LPGUID lpProviderId,
954 _In_ WSC_PROVIDER_INFO_TYPE InfoType,
955 _Out_writes_bytes_to_(*InfoSize, *InfoSize) PBYTE Info,
956 _Inout_ size_t *InfoSize,
958 _Out_ LPINT lpErrno);
959
960INT
961WSAAPI
962WSCEnumNameSpaceProvidersEx32(
965
966INT
967WSPAPI
968WSCInstallNameSpaceEx32(
969 _In_ LPWSTR lpszIdentifier,
970 _In_ LPWSTR lpszPathName,
971 _In_ DWORD dwNameSpace,
972 _In_ DWORD dwVersion,
973 _In_ LPGUID lpProviderId,
974 _In_ LPBLOB lpProviderSpecific);
975
976#endif /* (_WIN64) */
977
978#if defined(_WIN64)
979int
980WSPAPI
981WSCInstallProviderAndChains64_32(
982#else
983int
984WSPAPI
985WSCInstallProviderAndChains(
986#endif
987 _In_ LPGUID lpProviderId,
988 _In_ const LPWSTR lpszProviderDllPath,
989#if defined(_WIN64)
990 _In_ const LPWSTR lpszProviderDllPath32,
991#endif
992 _In_ const LPWSTR lpszLspName,
993 _In_ DWORD dwServiceFlags,
994 _Inout_updates_(dwNumberOfEntries) LPWSAPROTOCOL_INFOW lpProtocolInfoList,
995 _In_ DWORD dwNumberOfEntries,
996 _Out_opt_ LPDWORD lpdwCatalogEntryId,
997 _Out_ LPINT lpErrno);
998
999#endif /* (_WIN32_WINNT >= 0x0600) */
1000
1001BOOL
1002WSPAPI
1005 _Out_ LPINT lpErrno);
1006
1007int
1008WSPAPI
1010 _In_ SOCKET s,
1011 _Out_ LPINT lpErrno);
1012
1014WSPAPI
1016 _Out_ LPINT lpErrno);
1017
1018SOCKET
1019WSPAPI
1021 _In_ DWORD dwCatalogEntryId,
1022 _In_ DWORD_PTR dwContext,
1023 _Out_ LPINT lpErrno);
1024
1025int
1026WSPAPI
1028 _In_ SOCKET s,
1029 _In_ fd_set FAR *fdset);
1030
1031int
1032WSPAPI
1034 _In_ LPGUID lpProviderId,
1035 _Out_writes_(*lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath,
1036 _Inout_ LPINT lpProviderDllPathLen,
1037 _Out_ LPINT lpErrno);
1038
1039SOCKET
1040WSPAPI
1042 _In_ DWORD dwCatalogEntryId,
1043 _In_ SOCKET ProposedHandle,
1044 _Out_ LPINT lpErrno);
1045
1046BOOL
1047WSPAPI
1049 _In_ HWND hWnd,
1050 _In_ UINT Msg,
1053
1054int
1055WSPAPI
1057 _In_ DWORD dwCatalogEntryId,
1058 _Out_ LPBLOCKINGCALLBACK FAR *lplpfnCallback,
1059 _Out_ PDWORD_PTR lpdwContext,
1060 _Out_ LPINT lpErrno);
1061
1062int
1063WSPAPI
1065 _In_ SOCKET s,
1066 _Out_ PDWORD_PTR lpContext,
1067 _Out_ LPINT lpErrno);
1068
1069int
1070WSPAPI
1072 _In_ LPWSATHREADID lpThreadId,
1073 _In_ LPWSAUSERAPC lpfnUserApc,
1074 _In_ DWORD_PTR dwContext,
1075 _Out_ LPINT lpErrno);
1076
1077BOOL
1078WSPAPI
1081 _Out_ LPINT lpErrno);
1082
1083BOOL
1084WSPAPI
1087 _Out_ LPINT lpErrno);
1088
1089int
1090WSPAPI
1092 _In_ SOCKET s,
1094 _In_ DWORD dwError,
1095 _In_ DWORD cbTransferred,
1096 _Out_ LPINT lpErrno);
1097
1098INT
1099WSPAPI
1101 _In_ LPWSTR lpszIdentifier,
1102 _In_ LPWSTR lpszPathName,
1103 _In_ DWORD dwNameSpace,
1104 _In_ DWORD dwVersion,
1105 _In_ LPGUID lpProviderId);
1106
1107INT
1108WSPAPI
1110 _In_ LPGUID lpProviderId);
1111
1112INT
1113WSPAPI
1115 _In_ LPGUID lpProviderId,
1116 _In_ BOOL fEnable);
1117
1119INT
1120WSAAPI
1122 _In_ LPGUID lpProviderId,
1123 _Inout_ LPNSP_ROUTINE lpnspRoutines);
1124
1125#if !defined(_WIN64)
1126#include <poppack.h>
1127#endif
1128
1129#ifdef __cplusplus
1130}
1131#endif
static USHORT PathLength
PRTL_UNICODE_STRING_BUFFER Path
#define VOID
Definition: acefi.h:82
HWND hWnd
Definition: settings.c:17
ULONG_PTR * PDWORD_PTR
Definition: basetsd.h:182
WPARAM wParam
Definition: combotst.c:138
struct @1628 Msg[]
LPARAM lParam
Definition: combotst.c:139
#define CALLBACK
Definition: compat.h:35
#define FAR
Definition: zlib.h:34
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
GLint level
Definition: gl.h:1546
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLdouble s
Definition: gl.h:2039
GLint namelen
Definition: glext.h:7232
GLenum const GLvoid * addr
Definition: glext.h:9621
GLboolean GLboolean g
Definition: glext.h:6204
static HANDLE hEvent
Definition: comm.c:54
#define _Out_opt_
Definition: ms_sal.h:346
#define _Success_(expr)
Definition: ms_sal.h:259
#define _In_reads_bytes_(size)
Definition: ms_sal.h:321
#define _Inout_
Definition: ms_sal.h:378
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Out_writes_bytes_to_(size, count)
Definition: ms_sal.h:360
#define _In_z_
Definition: ms_sal.h:313
#define _Inout_updates_(size)
Definition: ms_sal.h:387
#define _Outptr_
Definition: ms_sal.h:427
#define _Out_writes_(size)
Definition: ms_sal.h:348
#define _Inout_opt_
Definition: ms_sal.h:379
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Out_
Definition: ms_sal.h:345
#define _In_reads_opt_(size)
Definition: ms_sal.h:320
#define _Out_writes_bytes_to_opt_(size, count)
Definition: ms_sal.h:361
#define _In_
Definition: ms_sal.h:308
#define _In_reads_bytes_opt_(size)
Definition: ms_sal.h:322
#define _In_opt_
Definition: ms_sal.h:309
#define _Out_writes_to_(size, count)
Definition: ms_sal.h:355
#define _In_reads_(size)
Definition: ms_sal.h:319
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED lpOverlapped
Definition: mswsock.h:93
unsigned int UINT
Definition: ndis.h:50
IN PCO_ADDRESS_FAMILY AddressFamily
Definition: ndis.h:1906
INT WSPAPI WSCUpdateProvider(LPGUID lpProviderId, const WCHAR FAR *lpszProviderDllPath, const LPWSAPROTOCOL_INFOW lpProtocolInfoList, DWORD dwNumberOfEntries, LPINT lpErrno)
Definition: nspinstl.c:64
#define BOOL
Definition: nt_native.h:43
BYTE * PBYTE
Definition: pedump.c:66
#define INT
Definition: polytest.cpp:20
static LPWSAQUERYSETW
Definition: sock.c:90
INT WSPAPI WPUCloseThread(IN LPWSATHREADID lpThreadId, OUT LPINT lpErrno)
Definition: sputil.c:50
INT WSPAPI WPUOpenCurrentThread(OUT LPWSATHREADID lpThreadId, OUT LPINT lpErrno)
Definition: sputil.c:73
Definition: ws2spi.h:46
WORD wHighVersion
Definition: ws2spi.h:48
WCHAR szDescription[WSPDESCRIPTION_LEN+1]
Definition: ws2spi.h:49
WORD wVersion
Definition: ws2spi.h:47
Definition: nspapi.h:57
LPNSPV2LOOKUPSERVICEEND NSPv2LookupServiceEnd
Definition: ws2spi.h:683
DWORD dwMajorVersion
Definition: ws2spi.h:677
LPNSPV2LOOKUPSERVICENEXTEX NSPv2LookupServiceNextEx
Definition: ws2spi.h:682
LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown
Definition: ws2spi.h:685
LPNSPV2LOOKUPSERVICEBEGIN NSPv2LookupServiceBegin
Definition: ws2spi.h:681
LPNSPV2SETSERVICEEX NSPv2SetServiceEx
Definition: ws2spi.h:684
DWORD cbSize
Definition: ws2spi.h:676
LPNSPV2CLEANUP NSPv2Cleanup
Definition: ws2spi.h:680
DWORD dwMinorVersion
Definition: ws2spi.h:678
LPNSPV2STARTUP NSPv2Startup
Definition: ws2spi.h:679
LPNSPREMOVESERVICECLASS NSPRemoveServiceClass
Definition: ws2spi.h:663
LPNSPINSTALLSERVICECLASS NSPInstallServiceClass
Definition: ws2spi.h:662
LPNSPCLEANUP NSPCleanup
Definition: ws2spi.h:657
LPNSPLOOKUPSERVICEBEGIN NSPLookupServiceBegin
Definition: ws2spi.h:658
DWORD dwMajorVersion
Definition: ws2spi.h:655
DWORD dwMinorVersion
Definition: ws2spi.h:656
LPNSPIOCTL NSPIoctl
Definition: ws2spi.h:665
LPNSPSETSERVICE NSPSetService
Definition: ws2spi.h:661
LPNSPGETSERVICECLASSINFO NSPGetServiceClassInfo
Definition: ws2spi.h:664
LPNSPLOOKUPSERVICEEND NSPLookupServiceEnd
Definition: ws2spi.h:660
DWORD cbSize
Definition: ws2spi.h:654
LPNSPLOOKUPSERVICENEXT NSPLookupServiceNext
Definition: ws2spi.h:659
HANDLE ThreadHandle
Definition: ws2spi.h:42
DWORD_PTR Reserved
Definition: ws2spi.h:43
LPWSPRECV lpWSPRecv
Definition: ws2spi.h:480
LPWSPSENDTO lpWSPSendTo
Definition: ws2spi.h:486
LPWSPSTRINGTOADDRESS lpWSPStringToAddress
Definition: ws2spi.h:490
LPWSPSETSOCKOPT lpWSPSetSockOpt
Definition: ws2spi.h:487
LPWSPGETSOCKNAME lpWSPGetSockName
Definition: ws2spi.h:474
LPWSPCLOSESOCKET lpWSPCloseSocket
Definition: ws2spi.h:467
LPWSPGETPEERNAME lpWSPGetPeerName
Definition: ws2spi.h:473
LPWSPJOINLEAF lpWSPJoinLeaf
Definition: ws2spi.h:478
LPWSPRECVDISCONNECT lpWSPRecvDisconnect
Definition: ws2spi.h:481
LPWSPSENDDISCONNECT lpWSPSendDisconnect
Definition: ws2spi.h:485
LPWSPSHUTDOWN lpWSPShutdown
Definition: ws2spi.h:488
LPWSPSOCKET lpWSPSocket
Definition: ws2spi.h:489
LPWSPSELECT lpWSPSelect
Definition: ws2spi.h:483
LPWSPGETQOSBYNAME lpWSPGetQOSByName
Definition: ws2spi.h:476
LPWSPRECVFROM lpWSPRecvFrom
Definition: ws2spi.h:482
LPWSPIOCTL lpWSPIoctl
Definition: ws2spi.h:477
LPWSPEVENTSELECT lpWSPEventSelect
Definition: ws2spi.h:471
LPWSPCLEANUP lpWSPCleanup
Definition: ws2spi.h:466
LPWSPGETSOCKOPT lpWSPGetSockOpt
Definition: ws2spi.h:475
LPWSPCONNECT lpWSPConnect
Definition: ws2spi.h:468
LPWSPADDRESSTOSTRING lpWSPAddressToString
Definition: ws2spi.h:462
LPWSPENUMNETWORKEVENTS lpWSPEnumNetworkEvents
Definition: ws2spi.h:470
LPWSPSEND lpWSPSend
Definition: ws2spi.h:484
LPWSPACCEPT lpWSPAccept
Definition: ws2spi.h:461
LPWSPBIND lpWSPBind
Definition: ws2spi.h:464
LPWSPDUPLICATESOCKET lpWSPDuplicateSocket
Definition: ws2spi.h:469
LPWSPGETOVERLAPPEDRESULT lpWSPGetOverlappedResult
Definition: ws2spi.h:472
LPWSPCANCELBLOCKINGCALL lpWSPCancelBlockingCall
Definition: ws2spi.h:465
LPWSPLISTEN lpWSPListen
Definition: ws2spi.h:479
LPWSPASYNCSELECT lpWSPAsyncSelect
Definition: ws2spi.h:463
LPWPUQUERYSOCKETHANDLECONTEXT lpWPUQuerySocketHandleContext
Definition: ws2spi.h:611
LPWPUQUEUEAPC lpWPUQueueApc
Definition: ws2spi.h:612
LPWPUQUERYBLOCKINGCALLBACK lpWPUQueryBlockingCallback
Definition: ws2spi.h:610
LPWPUCREATEEVENT lpWPUCreateEvent
Definition: ws2spi.h:604
LPWPUCREATESOCKETHANDLE lpWPUCreateSocketHandle
Definition: ws2spi.h:605
LPWPUSETEVENT lpWPUSetEvent
Definition: ws2spi.h:614
LPWPUMODIFYIFSHANDLE lpWPUModifyIFSHandle
Definition: ws2spi.h:608
LPWPUOPENCURRENTTHREAD lpWPUOpenCurrentThread
Definition: ws2spi.h:615
LPWPURESETEVENT lpWPUResetEvent
Definition: ws2spi.h:613
LPWPUCLOSEEVENT lpWPUCloseEvent
Definition: ws2spi.h:602
LPWPUCLOSETHREAD lpWPUCloseThread
Definition: ws2spi.h:616
LPWPUFDISSET lpWPUFDIsSet
Definition: ws2spi.h:606
LPWPUGETPROVIDERPATH lpWPUGetProviderPath
Definition: ws2spi.h:607
LPWPUPOSTMESSAGE lpWPUPostMessage
Definition: ws2spi.h:609
LPWPUCLOSESOCKETHANDLE lpWPUCloseSocketHandle
Definition: ws2spi.h:603
Definition: winsock.h:66
Definition: name.c:39
Definition: dhcpd.h:245
HANDLE lEvent
Definition: tftpd.cpp:56
uint32_t DWORD_PTR
Definition: typedefs.h:65
uint32_t * LPDWORD
Definition: typedefs.h:59
int32_t INT
Definition: typedefs.h:58
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:690
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
Definition: wdfobject.h:762
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
_In_ DWORD dwIoControlCode
Definition: winddi.h:1700
LONG_PTR LPARAM
Definition: windef.h:208
UINT_PTR WPARAM
Definition: windef.h:207
int * LPINT
Definition: windef.h:178
_In_ _In_opt_ _Out_writes_bytes_to_opt_ lpdwBufferLength _Inout_ LPDWORD lpdwBufferLength
Definition: winhttp.h:675
unsigned int GROUP
Definition: winsock2.h:640
enum _WSAESETSERVICEOP WSAESETSERVICEOP
DWORD WSAEVENT
Definition: winsock2.h:606
void(CALLBACK * LPWSAOVERLAPPED_COMPLETION_ROUTINE)(IN DWORD dwError, IN DWORD cbTransferred, IN LPWSAOVERLAPPED lpOverlapped, IN DWORD dwFlags)
Definition: winsock2.h:722
#define WSAAPI
Definition: winsock2.h:605
int(CALLBACK * LPCONDITIONPROC)(IN LPWSABUF lpCallerId, IN LPWSABUF lpCallerData, IN OUT LPQOS lpSQOS, IN OUT LPQOS lpGQOS, IN LPWSABUF lpCalleeId, IN LPWSABUF lpCalleeData, OUT GROUP FAR *g, IN DWORD_PTR dwCallbackData)
Definition: winsock2.h:711
UINT_PTR SOCKET
Definition: winsock.h:47
INT WSPAPI WSCUnInstallNameSpace(_In_ LPGUID lpProviderId)
INT(WSAAPI * LPNSPV2LOOKUPSERVICEEND)(_In_ HANDLE hLookup)
Definition: ws2spi.h:583
int(WSPAPI * LPWPUOPENCURRENTTHREAD)(_Out_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:398
#define WSPDESCRIPTION_LEN
Definition: ws2spi.h:35
INT(WSAAPI * LPNSPINSTALLSERVICECLASS)(_In_ LPGUID lpProviderId, _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo)
Definition: ws2spi.h:539
int WSPAPI WPUQueryBlockingCallback(_In_ DWORD dwCatalogEntryId, _Out_ LPBLOCKINGCALLBACK FAR *lplpfnCallback, _Out_ PDWORD_PTR lpdwContext, _Out_ LPINT lpErrno)
INT(WSPAPI * LPWSPSTRINGTOADDRESS)(_In_ LPWSTR AddressString, _In_ INT AddressFamily, _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _Out_writes_bytes_to_(*lpAddressLength, *lpAddressLength) LPSOCKADDR lpAddress, _Inout_ LPINT lpAddressLength, _Out_ LPINT lpErrno)
Definition: ws2spi.h:312
#define WSPAPI
Definition: ws2spi.h:39
struct _WSPUPCALLTABLE WSPUPCALLTABLE
int(WSPAPI * LPWSPCANCELBLOCKINGCALL)(_Out_ LPINT lpErrno)
Definition: ws2spi.h:96
int(WSPAPI * LPWSCENUMPROTOCOLS)(_In_opt_ LPINT lpiProtocols, _Out_writes_bytes_to_opt_(*lpdwBufferLength, *lpdwBufferlength) LPWSAPROTOCOL_INFOW lpProtocolBuffer, _Inout_ LPDWORD lpdwBufferLength, _Out_ LPINT lpErrno)
Definition: ws2spi.h:416
int WSPAPI WSCRemoveQOSTemplate(_In_ const LPGUID Guid, _In_ LPWSABUF QosName)
int(WSPAPI * LPWSPDUPLICATESOCKET)(_In_ SOCKET s, _In_ DWORD dwProcessId, _Out_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _Out_ LPINT lpErrno)
Definition: ws2spi.h:120
int WSPAPI WPUCompleteOverlappedRequest(_In_ SOCKET s, _Inout_ LPWSAOVERLAPPED lpOverlapped, _In_ DWORD dwError, _In_ DWORD cbTransferred, _Out_ LPINT lpErrno)
BOOL(WSPAPI * LPWPURESETEVENT)(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
Definition: ws2spi.h:388
INT(WSAAPI * LPNSPREMOVESERVICECLASS)(_In_ LPGUID lpProviderId, _In_ LPGUID lpServiceClassId)
Definition: ws2spi.h:544
_Must_inspect_result_ SOCKET(WSPAPI * LPWSPACCEPT)(_In_ SOCKET s, _Out_writes_bytes_to_opt_(*addrlen, *addrlen) struct sockaddr FAR *addr, _Inout_opt_ LPINT addrlen, _In_opt_ LPCONDITIONPROC lpfnCondition, _In_opt_ DWORD_PTR dwCallbackData, _Out_ LPINT lpErrno)
Definition: ws2spi.h:59
BOOL(WSPAPI * LPWPUPOSTMESSAGE)(_In_ HWND hWnd, _In_ UINT Msg, _In_ WPARAM wParam, _In_ LPARAM lParam)
Definition: ws2spi.h:361
int(WSPAPI * LPWSPCONNECT)(_In_ SOCKET s, _In_reads_bytes_(namelen) const struct sockaddr FAR *name, _In_ int namelen, _In_opt_ LPWSABUF lpCallerData, _Out_opt_ LPWSABUF lpCalleeData, _In_opt_ LPQOS lpSQOS, _In_opt_ LPQOS lpGQOS, _Out_ LPINT lpErrno)
Definition: ws2spi.h:109
int(WSPAPI * LPWSPRECV)(_In_ SOCKET s, _In_reads_(dwBufferCount) LPWSABUF lpBuffers, _In_ DWORD dwBufferCount, _Out_opt_ LPDWORD lpNumberOfBytesRecvd, _Inout_ LPDWORD lpFlags, _Inout_opt_ LPWSAOVERLAPPED lpOverlapped, _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine, _In_opt_ LPWSATHREADID lpThreadId, _In_ LPINT lpErrno)
Definition: ws2spi.h:212
SOCKET(WSPAPI * LPWPUMODIFYIFSHANDLE)(_In_ DWORD dwCatalogEntryId, _In_ SOCKET ProposedHandle, _Out_ LPINT lpErrno)
Definition: ws2spi.h:355
int(WSPAPI * LPWPUQUERYSOCKETHANDLECONTEXT)(_In_ SOCKET s, _Out_ PDWORD_PTR lpContext, _Out_ LPINT lpErrno)
Definition: ws2spi.h:375
BOOL(WSPAPI * LPWSPGETQOSBYNAME)(_In_ SOCKET s, _In_ LPWSABUF lpQOSName, _Out_ LPQOS lpQOS, _Out_ LPINT lpErrno)
Definition: ws2spi.h:173
int(WSPAPI * LPWSPIOCTL)(_In_ SOCKET s, _In_ DWORD dwIoControlCode, _In_reads_bytes_opt_(cbInBuffer) LPVOID lpvInBuffer, _In_ DWORD cbInBuffer, _Out_writes_bytes_to_opt_(cbOutBuffer, *lpcbBytesReturned) LPVOID lpvOutBuffer, _In_ DWORD cbOutBuffer, _Out_ LPDWORD lpcbBytesReturned, _Inout_opt_ LPWSAOVERLAPPED lpOverlapped, _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine, _In_opt_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:180
_Must_inspect_result_ INT(WSAAPI * LPNSPSTARTUP)(_In_ LPGUID lpProviderId, _Inout_ LPNSP_ROUTINE lpnspRoutines)
Definition: ws2spi.h:671
VOID(WSAAPI * LPNSPV2CLIENTSESSIONRUNDOWN)(_In_ LPGUID lpProviderId, _In_ LPVOID pvClientSessionArg)
Definition: ws2spi.h:596
int(WSPAPI * LPWSPSENDTO)(_In_ SOCKET s, _In_reads_(dwBufferCount) LPWSABUF lpBuffers, _In_ DWORD dwBufferCount, _Out_opt_ LPDWORD lpNumberOfBytesSent, _In_ DWORD dwFlags, _In_reads_bytes_opt_(iTolen) const struct sockaddr FAR *lpTo, _In_ int iTolen, _Inout_opt_ LPWSAOVERLAPPED lpOverlapped, _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine, _In_opt_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:271
struct WSPData * LPWSPDATA
int(WSPAPI * LPWSPGETPEERNAME)(_In_ SOCKET s, _Out_writes_bytes_to_(*namelen, *namelen) struct sockaddr FAR *name, _Inout_ LPINT namelen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:150
int(WSPAPI * LPWSPSELECT)(_In_ int nfds, _Inout_opt_ fd_set FAR *readfds, _Inout_opt_ fd_set FAR *writefds, _Inout_opt_ fd_set FAR *exceptfds, _In_opt_ const struct timeval FAR *timeout, _Out_ LPINT lpErrno)
Definition: ws2spi.h:244
int(WSPAPI * LPWSPCLOSESOCKET)(_In_ SOCKET s, _Out_ LPINT lpErrno)
Definition: ws2spi.h:104
int WSPAPI WPUCloseSocketHandle(_In_ SOCKET s, _Out_ LPINT lpErrno)
INT(WSPAPI * LPWSCUNINSTALLNAMESPACE)(_In_ LPGUID lpProviderId)
Definition: ws2spi.h:451
int(WSPAPI * LPWPUCLOSETHREAD)(_In_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:403
BOOL WSPAPI WPUSetEvent(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
INT(WSAAPI * LPNSPLOOKUPSERVICEEND)(_In_ HANDLE hLookup)
Definition: ws2spi.h:527
_Must_inspect_result_ INT WSAAPI NSPStartup(_In_ LPGUID lpProviderId, _Inout_ LPNSP_ROUTINE lpnspRoutines)
BOOL WSPAPI WPUPostMessage(_In_ HWND hWnd, _In_ UINT Msg, _In_ WPARAM wParam, _In_ LPARAM lParam)
WSAEVENT WSPAPI WPUCreateEvent(_Out_ LPINT lpErrno)
int(WSPAPI * LPWSPENUMNETWORKEVENTS)(_In_ SOCKET s, _In_ WSAEVENT hEventObject, _Out_ LPWSANETWORKEVENTS lpNetworkEvents, _Out_ LPINT lpErrno)
Definition: ws2spi.h:127
WSAEVENT(WSPAPI * LPWPUCREATEEVENT)(_Out_ LPINT lpErrno)
Definition: ws2spi.h:331
SOCKET(WSPAPI * LPWSPJOINLEAF)(_In_ SOCKET s, _In_reads_bytes_(namelen) const struct sockaddr FAR *name, _In_ int namelen, _In_opt_ LPWSABUF lpCallerData, _Out_opt_ LPWSABUF lpCalleeData, _In_opt_ LPQOS lpSQOS, _In_opt_ LPQOS lpGQOS, _In_ DWORD dwFlags, _Out_ LPINT lpErrno)
Definition: ws2spi.h:194
SOCKET WSPAPI WPUCreateSocketHandle(_In_ DWORD dwCatalogEntryId, _In_ DWORD_PTR dwContext, _Out_ LPINT lpErrno)
int WSPAPI WPUGetProviderPath(_In_ LPGUID lpProviderId, _Out_writes_(*lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath, _Inout_ LPINT lpProviderDllPathLen, _Out_ LPINT lpErrno)
struct _WSPUPCALLTABLE * LPWSPUPCALLTABLE
struct _WSPPROC_TABLE WSPPROC_TABLE
const NSPV2_ROUTINE * LPCNSPV2_ROUTINE
Definition: ws2spi.h:687
struct WSPData WSPDATA
VOID(WSAAPI * LPNSPV2SETSERVICEEX)(_In_ HANDLE hAsyncCall, _In_ LPGUID lpProviderId, _In_ LPWSAQUERYSET2W lpqsRegInfo, _In_ WSAESETSERVICEOP essOperation, _In_ DWORD dwControlFlags, _In_ LPVOID lpvClientSessionArg)
Definition: ws2spi.h:587
int(WSPAPI * LPWSCINSTALLQOSTEMPLATE)(_In_ const LPGUID Guid, _In_ LPWSABUF QosName, _In_ LPQOS Qos)
Definition: ws2spi.h:847
struct _WSPPROC_TABLE * LPWSPPROC_TABLE
struct _NSP_ROUTINE NSP_ROUTINE
BOOL(WSPAPI * LPWPUSETEVENT)(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
Definition: ws2spi.h:393
int(WSPAPI * LPWSPEVENTSELECT)(_In_ SOCKET s, _In_opt_ WSAEVENT hEventObject, _In_ long lNetworkEvents, _Out_ LPINT lpErrno)
Definition: ws2spi.h:134
INT(WSAAPI * LPNSPGETSERVICECLASSINFO)(_In_ LPGUID lpProviderId, _In_ LPDWORD lpdwBufSize, _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo)
Definition: ws2spi.h:549
int(WSPAPI * LPWSPRECVDISCONNECT)(_In_ SOCKET s, _In_opt_ LPWSABUF lpInboundDisconnectData, _Out_ LPINT lpErrno)
Definition: ws2spi.h:224
int(WSPAPI * LPWPUFDISSET)(_In_ SOCKET s, _In_ fd_set FAR *fdset)
Definition: ws2spi.h:343
int WSPAPI WSCDeinstallProvider(_In_ LPGUID lpProviderId, _Out_ LPINT lpErrno)
struct _NSPV2_ROUTINE * LPNSPV2_ROUTINE
INT WSPAPI WSCInstallNameSpace(_In_ LPWSTR lpszIdentifier, _In_ LPWSTR lpszPathName, _In_ DWORD dwNameSpace, _In_ DWORD dwVersion, _In_ LPGUID lpProviderId)
int WSPAPI WPUQueueApc(_In_ LPWSATHREADID lpThreadId, _In_ LPWSAUSERAPC lpfnUserApc, _In_ DWORD_PTR dwContext, _Out_ LPINT lpErrno)
INT(WSAAPI * LPNSPV2LOOKUPSERVICEBEGIN)(_In_ LPGUID lpProviderId, _In_ LPWSAQUERYSET2W lpqsRestrictions, _In_ DWORD dwControlFlags, _In_ LPVOID lpvClientSessionArg, _Out_ LPHANDLE lphLookup)
Definition: ws2spi.h:567
BOOL WSPAPI WPUCloseEvent(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
SOCKET WSPAPI WPUModifyIFSHandle(_In_ DWORD dwCatalogEntryId, _In_ SOCKET ProposedHandle, _Out_ LPINT lpErrno)
INT WSPAPI WSCEnableNSProvider(_In_ LPGUID lpProviderId, _In_ BOOL fEnable)
struct _WSATHREADID WSATHREADID
int WSPAPI WSCGetProviderPath(_In_ LPGUID lpProviderId, _Out_writes_to_(*lpProviderDllPathLen, *lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath, _Inout_ LPINT lpProviderDllPathLen, _Out_ LPINT lpErrno)
BOOL(WSPAPI * LPWSPGETOVERLAPPEDRESULT)(_In_ SOCKET s, _In_ LPWSAOVERLAPPED lpOverlapped, _Out_ LPDWORD lpcbTransfer, _In_ BOOL fWait, _Out_ LPDWORD lpdwFlags, _Out_ LPINT lpErrno)
Definition: ws2spi.h:141
int WSPAPI WPUQuerySocketHandleContext(_In_ SOCKET s, _Out_ PDWORD_PTR lpContext, _Out_ LPINT lpErrno)
int WSPAPI WPUFDIsSet(_In_ SOCKET s, _In_ fd_set FAR *fdset)
struct _NSP_ROUTINE * PNSP_ROUTINE
int(WSPAPI * LPWSPGETSOCKNAME)(_In_ SOCKET s, _Out_writes_bytes_to_(*namelen, *namelen) struct sockaddr FAR *name, _Inout_ LPINT namelen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:157
struct _NSP_ROUTINE * LPNSP_ROUTINE
_Must_inspect_result_ SOCKET(WSPAPI * LPWSPSOCKET)(_In_ int af, _In_ int type, _In_ int protocol, _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _In_ GROUP g, _In_ DWORD dwFlags, _Out_ LPINT lpErrno)
Definition: ws2spi.h:302
int(WSPAPI * LPWSPBIND)(_In_ SOCKET s, _In_reads_bytes_(namelen) const struct sockaddr FAR *name, _In_ int namelen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:89
int WSPAPI WSCInstallQOSTemplate(_In_ const LPGUID Guid, _In_ LPWSABUF QosName, _In_ LPQOS Qos)
int(WSPAPI * LPWSCREMOVEQOSTEMPLATE)(_In_ const LPGUID Guid, _In_ LPWSABUF QosName)
Definition: ws2spi.h:859
_Must_inspect_result_ SOCKET(WSPAPI * LPWPUCREATESOCKETHANDLE)(_In_ DWORD dwCatalogEntryId, _In_ DWORD_PTR dwContext, _Out_ LPINT lpErrno)
Definition: ws2spi.h:337
struct _NSPV2_ROUTINE * PNSPV2_ROUTINE
int(WSPAPI * LPWPUCLOSESOCKETHANDLE)(_In_ SOCKET s, _Out_ LPINT lpErrno)
Definition: ws2spi.h:326
int(WSPAPI * LPWSPSENDDISCONNECT)(_In_ SOCKET s, _In_opt_ LPWSABUF lpOutboundDisconnectData, _Out_ LPINT lpErrno)
Definition: ws2spi.h:265
int(WSPAPI * LPWSPCLEANUP)(_Out_ LPINT lpErrno)
Definition: ws2spi.h:100
_Must_inspect_result_ INT(WSAAPI * LPNSPV2STARTUP)(_In_ LPGUID lpProviderId, _Outptr_ LPVOID *ppvClientSessionArg)
Definition: ws2spi.h:557
int(WSPAPI * LPWSPRECVFROM)(_In_ SOCKET s, _In_reads_(dwBufferCount) LPWSABUF lpBuffers, _In_ DWORD dwBufferCount, _Out_opt_ LPDWORD lpNumberOfBytesRecvd, _Inout_ LPDWORD lpFlags, _Out_writes_bytes_to_opt_(*lpFromlen, *lpFromlen) struct sockaddr FAR *lpFrom, _Inout_opt_ LPINT lpFromlen, _Inout_opt_ LPWSAOVERLAPPED lpOverlapped, _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine, _In_opt_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:230
_Must_inspect_result_ int WSPAPI WSPStartup(_In_ WORD wVersionRequested, _In_ LPWSPDATA lpWSPData, _In_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _In_ WSPUPCALLTABLE UpcallTable, _Out_ LPWSPPROC_TABLE lpProcTable)
Definition: dllmain.c:2998
int(WSPAPI * LPWSPGETSOCKOPT)(_In_ SOCKET s, _In_ int level, _In_ int optname, _Out_writes_bytes_(*optlen) char FAR *optval, _Inout_ LPINT optlen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:164
INT(WSAAPI * LPNSPV2CLEANUP)(_In_ LPGUID lpProviderId, _In_ LPVOID pvClientSessionArg)
Definition: ws2spi.h:562
int(WSPAPI * LPWSPSEND)(_In_ SOCKET s, _In_reads_(dwBufferCount) LPWSABUF lpBuffers, _In_ DWORD dwBufferCount, _Out_opt_ LPDWORD lpNumberOfBytesSent, _In_ DWORD dwFlags, _Inout_opt_ LPWSAOVERLAPPED lpOverlapped, _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine, _In_opt_ LPWSATHREADID lpThreadId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:253
int(WSPAPI * LPWPUQUEUEAPC)(_In_ LPWSATHREADID lpThreadId, _In_ LPWSAUSERAPC lpfnUserApc, _In_ DWORD_PTR dwContext, _Out_ LPINT lpErrno)
Definition: ws2spi.h:381
const NSPV2_ROUTINE * PCNSPV2_ROUTINE
Definition: ws2spi.h:687
BOOL WSPAPI WPUResetEvent(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
INT(WSAAPI * LPNSPLOOKUPSERVICEBEGIN)(_In_ LPGUID lpProviderId, _In_ LPWSAQUERYSETW lpqsRestrictions, _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo, _In_ DWORD dwControlFlags, _Out_ LPHANDLE lphLookup)
Definition: ws2spi.h:498
INT(WSAAPI * LPNSPSETSERVICE)(_In_ LPGUID lpProviderId, _In_ LPWSASERVICECLASSINFOW lpServiceClassInfo, _In_ LPWSAQUERYSETW lpqsRegInfo, _In_ WSAESETSERVICEOP essOperation, _In_ DWORD dwControlFlags)
Definition: ws2spi.h:531
int(WSPAPI * LPWSPASYNCSELECT)(_In_ SOCKET s, _In_ HWND hWnd, _In_ unsigned int wMsg, _In_ long lEvent, _Out_ LPINT lpErrno)
Definition: ws2spi.h:81
int WSPAPI WSCInstallProvider(_In_ LPGUID lpProviderId, _In_z_ const WCHAR FAR *lpszProviderDllPath, _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, _In_ DWORD dwNumberOfEntries, _Out_ LPINT lpErrno)
int(WSPAPI * LPWPUQUERYBLOCKINGCALLBACK)(_In_ DWORD dwCatalogEntryId, _Out_ LPBLOCKINGCALLBACK FAR *lplpfnCallback, _Out_ PDWORD_PTR lpdwContext, _Out_ LPINT lpErrno)
Definition: ws2spi.h:368
INT(WSPAPI * LPWSCENABLENSPROVIDER)(_In_ LPGUID lpProviderId, _In_ BOOL fEnable)
Definition: ws2spi.h:455
VOID(WSAAPI * LPNSPV2LOOKUPSERVICENEXTEX)(_In_ HANDLE hAsyncCall, _In_ HANDLE hLookup, _In_ DWORD dwControlFlags, _In_ LPDWORD lpdwBufferLength, _Out_ LPWSAQUERYSET2W lpqsResults)
Definition: ws2spi.h:575
int WSPAPI WSCEnumProtocols(_In_opt_ LPINT lpiProtocols, _Out_writes_bytes_to_opt_(*lpdwBufferLength, *lpdwBufferLength) LPWSAPROTOCOL_INFOW lpProtocolBuffer, _Inout_ LPDWORD lpdwBufferLength, _Out_ LPINT lpErrno)
int(WSPAPI * LPWPUGETPROVIDERPATH)(_In_ LPGUID lpProviderId, _Out_writes_(*lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath, _Inout_ LPINT lpProviderDllPathLen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:348
BOOL(WSPAPI * LPWPUCLOSEEVENT)(_In_ WSAEVENT hEvent, _Out_ LPINT lpErrno)
Definition: ws2spi.h:321
int(WSPAPI * LPWPUCOMPLETEOVERLAPPEDREQUEST)(_In_ SOCKET s, _Inout_ LPWSAOVERLAPPED lpOverlapped, _In_ DWORD dwError, _In_ DWORD cbTransferred, _Out_ LPINT lpErrno)
Definition: ws2spi.h:408
int(WSPAPI * LPWSCGETPROVIDERPATH)(_In_ LPGUID lpProviderId, _Out_writes_to_(*lpProviderDllPathLen, *lpProviderDllPathLen) WCHAR FAR *lpszProviderDllPath, _Inout_ LPINT lpProviderDllPathLen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:436
INT(WSAAPI * LPNSPLOOKUPSERVICENEXT)(_In_ HANDLE hLookup, _In_ DWORD dwControlFlags, _Inout_ LPDWORD lpdwBufferLength, _Out_writes_bytes_to_(*lpdwBufferLength, *lpdwBufferLength) LPWSAQUERYSETW lpqsResults)
Definition: ws2spi.h:506
int(WSPAPI * LPWSPSHUTDOWN)(_In_ SOCKET s, _In_ int how, _Out_ LPINT lpErrno)
Definition: ws2spi.h:294
INT(WSPAPI * LPWSCINSTALLNAMESPACE)(_In_ LPWSTR lpszIdentifier, _In_ LPWSTR lpszPathName, _In_ DWORD dwNameSpace, _In_ DWORD dwVersion, _In_ LPGUID lpProviderId)
Definition: ws2spi.h:443
struct _WSATHREADID * LPWSATHREADID
int(WSPAPI * LPWSCDEINSTALLPROVIDER)(_In_ LPGUID lpProviderId, _Out_ LPINT lpErrno)
Definition: ws2spi.h:423
int(WSPAPI * LPWSPSETSOCKOPT)(_In_ SOCKET s, _In_ int level, _In_ int optname, _In_reads_bytes_opt_(optlen) const char FAR *optval, _In_ int optlen, _Out_ LPINT lpErrno)
Definition: ws2spi.h:285
int(WSPAPI * LPWSPLISTEN)(_In_ SOCKET s, _In_ int backlog, _Out_ LPINT lpErrno)
Definition: ws2spi.h:206
_Must_inspect_result_ int(WSPAPI * LPWSPSTARTUP)(_In_ WORD wVersionRequested, _In_ LPWSPDATA lpWSPData, _In_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _In_ WSPUPCALLTABLE UpcallTable, _Out_ LPWSPPROC_TABLE lpProcTable)
Definition: ws2spi.h:622
INT(WSAAPI * LPNSPCLEANUP)(_In_ LPGUID lpProviderId)
Definition: ws2spi.h:494
int(WSPAPI * LPWSCINSTALLPROVIDER)(_In_ LPGUID lpProviderId, _In_z_ const WCHAR FAR *lpszProviderDllPath, _In_reads_(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, _In_ DWORD dwNumberOfEntries, _Out_ LPINT lpErrno)
Definition: ws2spi.h:428
INT(WSPAPI * LPWSPADDRESSTOSTRING)(_In_reads_bytes_(dwAddressLength) LPSOCKADDR lpsaAddress, _In_ DWORD dwAddressLength, _In_opt_ LPWSAPROTOCOL_INFOW lpProtocolInfo, _Out_writes_to_(*lpdwAddressStringLength, *lpdwAddressStringLength) LPWSTR lpszAddressString, _Inout_ LPDWORD lpdwAddressStringLength, _Out_ LPINT lpErrno)
Definition: ws2spi.h:72
struct _NSPV2_ROUTINE NSPV2_ROUTINE
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
#define const
Definition: zconf.h:233