ws2spi.h header

This header is used by multiple technologies. For more information, see:

ws2spi.h contains the following programming interfaces:

Functions

 
NSPStartup

Retrieves the dynamic information about a provider, such as the list of the DLL entry points.
WPUCloseEvent

The WPUCloseEvent function closes an open event object handle.
WPUCloseSocketHandle

The WPUCloseSocketHandle function closes an existing socket handle.
WPUCloseThread

The WPUCloseThread function closes a thread opened with a call to WPUOpenCurrentThread.
WPUCompleteOverlappedRequest

The WPUCompleteOverlappedRequest function performs overlapped I/O completion notification for overlapped I/O operations.
WPUCreateEvent

The WPUCreateEvent function creates a new event object.
WPUCreateSocketHandle

The WPUCreateSocketHandle function creates a new socket handle.
WPUFDIsSet

The WPUFDIsSet function checks the membership of the specified socket handle.
WPUGetProviderPath

The WPUGetProviderPath function retrieves the DLL path for the specified provider.
WPUModifyIFSHandle

The WPUModifyIFSHandle function receives a (possibly) modified IFS handle from Ws2_32.dll.
WPUOpenCurrentThread

The WPUOpenCurrentThread function opens a handle to the current thread that can be used with overlapped functions in a layered service provider.
WPUPostMessage

The WPUPostMessage function performs the standard Windows PostMessage function in a way that maintains backward compatibility with older versions of WSOCK32.dll.
WPUQueryBlockingCallback

The WPUQueryBlockingCallback function returns a pointer to a callback function the service provider should invoke periodically while servicing blocking operations.
WPUQuerySocketHandleContext

The WPUQuerySocketHandleContext function queries the context value associated with the specified socket handle.
WPUQueueApc

The WPUQueueApc function queues a user mode�asynchronous procedure call (APC) to the specified thread in order to facilitate invocation of overlapped I/O completion routines.
WPUResetEvent

The WPUResetEvent function resets the state of the specified event object to nonsignaled. This call is safe for use within interrupt context.
WPUSetEvent

The WPUSetEvent function sets the state of the specified event object to signaled. This call is safe for use within interrupt context.
WSAAdvertiseProvider

Makes a specific namespace version-2 provider available for all eligible clients.
WSAProviderCompleteAsyncCall

Notifies a client when an asynchronous call to a namespace version-2 provider is completed.
WSAUnadvertiseProvider

Makes a specific namespace version-2 provider no longer available for clients.
WSCDeinstallProvider

Removes the specified transport provider from the system configuration database.
WSCDeinstallProvider32

Removes the specified 32-bit transport provider from the system configuration database.
WSCEnableNSProvider

Changes the state of a given namespace provider.
WSCEnableNSProvider32

Enables or disables a specified 32-bit namespace provider.
WSCEnumNameSpaceProviders32

Returns information on available 32-bit namespace providers.Note  This call is a strictly 32-bit version of WSAEnumNameSpaceProviders for use on 64-bit platforms. It is provided to allow 64-bit processes to access the 32-bit catalogs. .
WSCEnumNameSpaceProvidersEx32

Retrieves information on available 32-bit namespace providers.
WSCEnumProtocols

The WSCEnumProtocols function retrieves information about available transport protocols.
WSCEnumProtocols32

Retrieves information about available transport protocols.Note  This call is a strictly 32-bit version of WSCEnumProtocols for use on 64-bit platforms. It is provided to allow 64-bit processes to access the 32-bit catalogs. .
WSCGetApplicationCategory

Retrieves the layered service provider (LSP) categories associated with an application.
WSCGetProviderInfo

Retrieves the data associated with an information class for a layered service provider (LSP).
WSCGetProviderInfo32

Retrieves the data associated with an information class for a 32-bit layered service provider (LSP).Note  This call is a strictly 32-bit version of WSCGetProviderInfo for use on 64-bit platforms.
WSCGetProviderPath

The WSCGetProviderPath function retrieves the DLL path for the specified provider.
WSCGetProviderPath32

Retrieves the DLL path for the specified 32-bit provider.Note  This call is a strictly 32-bit version of WSCGetProviderPath for use on 64-bit platforms. It is provided to allow 64-bit processes to access the 32-bit catalogs. .
WSCInstallNameSpace

Installs a namespace provider. (WSCInstallNameSpace)
WSCInstallNameSpace32

Installs a specified 32-bit namespace provider. (WSCInstallNamespace32)
WSCInstallNameSpaceEx

Installs a namespace provider. (WSCInstallNameSpaceEx)
WSCInstallNameSpaceEx32

Installs a specified 32-bit namespace provider. (WSCInstallNameSpaceEx32)
WSCInstallProvider

Installs the specified transport provider into the system configuration database.
WSCInstallProvider64_32

Installs the specified transport service provider into the 32-bit and 64-bit system configuration databases on a 64-bit computer.
WSCInstallProviderAndChains

Installs the specified 32-bit transport provider as well as its specific protocol chains into the Winsock 2 system configuration database on a 32-bit computer.
WSCInstallProviderAndChains64_32

Installs the specified transport provider and its specific protocol chains into both the 32-bit and 64-bit Winsock 2 system configuration databases on a 64-bit computer.
WSCInstallQOSTemplate

Installs the specified QoS template in the system configuration database.
WSCRemoveQOSTemplate

Removes the specified QoS template from the system configuration database.
WSCSetApplicationCategory

Sets the permitted layered service provider (LSP) categories associated with an application.
WSCSetProviderInfo

Sets the data value for the specified information class for a layered service provider (LSP).
WSCSetProviderInfo32

Sets the data value for specified information class for a layered service provider (LSP).
WSCUnInstallNameSpace

Uninstalls the indicated name-space provider.
WSCUnInstallNameSpace32

Uninstalls a specific 32-bit namespace provider.
WSCUpdateProvider

Modifies the specified transport provider in the system configuration database.
WSCUpdateProvider32

Modifies the specified 32-bit transport provider in the system configuration database.Note  This call is a strictly 32-bit version of WSCUpdateProvider for use on 64-bit platforms. It is provided to allow 64-bit processes to access the 32-bit catalogs. .
WSPStartup

The WSPStartup function initiates use of a Windows Sockets service provider interface (SPI) by a client.

Callback functions

 
LPNSPCLEANUP

Terminates the use of a particular Windows Sockets namespace service provider.
LPNSPGETSERVICECLASSINFO

Retrieves all the pertinent class information (schema) pertaining to the namespace provider.
LPNSPINSTALLSERVICECLASS

The NSPInstallServiceClass function registers service class schema within the namespace providers.
LPNSPIOCTL

Sends an IOCTL to a namespace service provider.
LPNSPLOOKUPSERVICEBEGIN

Initiates a client query that is constrained by the information contained within a WSAQUERYSET structure.
LPNSPLOOKUPSERVICEEND

Called to free the handle after previous calls to NSPLookupServiceBegin and NSPLookupServiceNext.
LPNSPLOOKUPSERVICENEXT

Called after obtaining a handle from a previous call to NSPLookupServiceBegin in order to retrieve the requested service information.
LPNSPREMOVESERVICECLASS

Permanently removes a specified service class from the namespace.
LPNSPSETSERVICE

Registers or deregisters a service instance within a namespace.
LPNSPV2CLEANUP

Notifies a namespace service provider version-2 (NSPv2) provider that a client session has terminated.
LPNSPV2CLIENTSESSIONRUNDOWN

Notifies a namespace service provider version-2 (NSPv2) provider that the client session is terminating.
LPNSPV2LOOKUPSERVICEBEGIN

Initiates a client query of a namespace version-2 service provider that is constrained by the information contained within a WSAQUERYSET2 structure.
LPNSPV2LOOKUPSERVICEEND

Called to free the handle after previous calls to NSPv2LookupServiceBegin and NSPv2LookupServiceNextEx.
LPNSPV2LOOKUPSERVICENEXTEX

Called after obtaining a handle from a previous call to NSPv2LookupServiceBegin in order to retrieve the requested information from a namespace version-2 service provider.
LPNSPV2SETSERVICEEX

Registers or deregisters a name or service instance within a namespace of a namespace service provider version-2 (NSPv2) provider.
LPNSPV2STARTUP

Notifies a namespace service provider version-2 (NSPv2) provider that a new client process is to begin using the provider.
LPWSPACCEPT

The LPWSPAccept function conditionally accepts a connection based on the return value of a condition function.
LPWSPADDRESSTOSTRING

The LPWSPAddressToString function converts all components of a sockaddr structure into a human-readable numeric string representation of the address. This is used mainly for display purposes.
LPWSPASYNCSELECT

The LPWSPAsyncSelect function requests Windows message-based event notification of network events for a socket.
LPWSPBIND

The LPWSPBind function associates a local address (that is, name) with a socket.
LPWSPCANCELBLOCKINGCALL

The LPWSPCancelBlockingCall function cancels a blocking call that is currently in progress.
LPWSPCLEANUP

The LPWSPCleanup function terminates use of the Windows Sockets service provider.
LPWSPCLOSESOCKET

The LPWSPCloseSocket function closes a socket.
LPWSPCONNECT

The LPWSPConnect function establishes a connection to a peer, exchanges connect data, and specifies needed quality of service based on the supplied flow specification.
LPWSPDUPLICATESOCKET

The LPWSPDuplicateSocket function returns a WSAPROTOCOL_INFO structure that can be used to create a new socket descriptor for a shared socket.
LPWSPENUMNETWORKEVENTS

The LPWSPEnumNetworkEvents function reports occurrences of network events for the indicated socket.
LPWSPEVENTSELECT

The LPWSPEventSelect function specifies an event object to be associated with the supplied set of network events.
LPWSPGETOVERLAPPEDRESULT

The LPWSPGetOverlappedResult function returns the results of an overlapped operation on the specified socket.
LPWSPGETPEERNAME

The LPWSPGetPeerName function gets the address of the peer to which a socket is connected.
LPWSPGETQOSBYNAME

The LPWSPGetQOSByName function initializes a QOS structure based on a named template, or retrieves an enumeration of the available template names.
LPWSPGETSOCKNAME

The LPWSPGetSockName function gets the local name for a socket.
LPWSPGETSOCKOPT

The LPWSPGetSockOpt function retrieves a socket option.
LPWSPIOCTL

The LPWSPIoctl function controls the mode of a socket.
LPWSPJOINLEAF

The LPWSPJoinLeaf function joins a leaf node into a multipoint session, exchanges connect data, and specifies needed quality of service based on the supplied flow specifications.
LPWSPLISTEN

The LPWSPListen function establishes a socket to listen for incoming connections.
LPWSPRECV

The LPWSPRecv function receives data on a socket.
LPWSPRECVDISCONNECT

The LPWSPRecvDisconnect function terminates reception on a socket and retrieves the disconnect data, if the socket is connection oriented.
LPWSPRECVFROM

The LPWSPRecvFrom function receives a datagram and stores the source address.
LPWSPSELECT

The LPWSPSelect function determines the status of one or more sockets.
LPWSPSEND

The LPWSPSend function sends data on a connected socket.
LPWSPSENDDISCONNECT

The LPWSPSendDisconnect function initiates termination of the connection for the socket and sends disconnect data.
LPWSPSENDTO

The WSPSendTo function sends data to a specific destination using overlapped I/O.
LPWSPSETSOCKOPT

The LPWSPSetSockOpt function sets a socket option.
LPWSPSHUTDOWN

The LPWSPShutdown function disables sends and/or receives on a socket.
LPWSPSOCKET

The LPWSPSocket function creates a socket.
LPWSPSTRINGTOADDRESS

The WSPStringToAddress function converts a human-readable numeric string to a socket address structure (sockaddr) suitable to passing to Windows Sockets routines that take such a structure.

Structures

 
NSP_ROUTINE

Contains information regarding the functions implemented by a namespace service provider version 1 (NSPv1) provider.
NSPV2_ROUTINE

Contains information on the functions implemented by a namespace service provider version-2 (NSPv2) provider.
WSATHREADID

The WSATHREADID structure enables a provider to identify a thread on which asynchronous procedure calls (APCs) can be queued using the WPUQueueApc function.
WSC_PROVIDER_AUDIT_INFO

Contains audit information for a layered service provider (LSP) entry in Windows Sockets 2.
WSPDATA

The WSPDATA structure contains service provider information.
WSPPROC_TABLE

Contains a table of pointers to service provider functions.
WSPUPCALLTABLE

Contains a table of pointers to service provider upcall functions.

Enumerations

 
WSC_PROVIDER_INFO_TYPE

Enumeration type is used to specify the information class of a layered service protocol (LSP) in Windows Sockets 2.