mswsock.h (5.2.3790.3959-Windows 5.0) | | mswsock.h (6.0.6002.18005-Windows 6.0) |
| | |
skipping to change at line 29 | | skipping to change at line 29 |
#define _MSWSOCK_ | | #define _MSWSOCK_ |
| | |
#if _MSC_VER > 1000 | | #if _MSC_VER > 1000 |
#pragma once | | #pragma once |
#endif | | #endif |
| | |
#ifdef __cplusplus | | #ifdef __cplusplus |
extern "C" { | | extern "C" { |
#endif | | #endif |
| | |
|
| | #include <mswsockdef.h> |
| | |
/* | | /* |
* Options for connect and disconnect data and options. Used only by | | * Options for connect and disconnect data and options. Used only by |
* non-TCP/IP transports such as DECNet, OSI TP4, etc. | | * non-TCP/IP transports such as DECNet, OSI TP4, etc. |
*/ | | */ |
#define SO_CONNDATA 0x7000 | | #define SO_CONNDATA 0x7000 |
#define SO_CONNOPT 0x7001 | | #define SO_CONNOPT 0x7001 |
#define SO_DISCDATA 0x7002 | | #define SO_DISCDATA 0x7002 |
#define SO_DISCOPT 0x7003 | | #define SO_DISCOPT 0x7003 |
#define SO_CONNDATALEN 0x7004 | | #define SO_CONNDATALEN 0x7004 |
#define SO_CONNOPTLEN 0x7005 | | #define SO_CONNOPTLEN 0x7005 |
| | |
skipping to change at line 57 | | skipping to change at line 59 |
#define SO_SYNCHRONOUS_ALERT 0x10 | | #define SO_SYNCHRONOUS_ALERT 0x10 |
#define SO_SYNCHRONOUS_NONALERT 0x20 | | #define SO_SYNCHRONOUS_NONALERT 0x20 |
| | |
/* | | /* |
* Other NT-specific options. | | * Other NT-specific options. |
*/ | | */ |
#define SO_MAXDG 0x7009 | | #define SO_MAXDG 0x7009 |
#define SO_MAXPATHDG 0x700A | | #define SO_MAXPATHDG 0x700A |
#define SO_UPDATE_ACCEPT_CONTEXT 0x700B | | #define SO_UPDATE_ACCEPT_CONTEXT 0x700B |
#define SO_CONNECT_TIME 0x700C | | #define SO_CONNECT_TIME 0x700C |
|
| | #if(_WIN32_WINNT >= 0x0501) |
#define SO_UPDATE_CONNECT_CONTEXT 0x7010 | | #define SO_UPDATE_CONNECT_CONTEXT 0x7010 |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
/* | | /* |
* TCP options. | | * TCP options. |
*/ | | */ |
#define TCP_BSDURGENT 0x7000 | | #define TCP_BSDURGENT 0x7000 |
| | |
/* | | /* |
* MS Transport Provider IOCTL to control | | * MS Transport Provider IOCTL to control |
* reporting PORT_UNREACHABLE messages | | * reporting PORT_UNREACHABLE messages |
* on UDP sockets via recv/WSARecv/etc. | | * on UDP sockets via recv/WSARecv/etc. |
* Path TRUE in input buffer to enable (default if supported), | | * Path TRUE in input buffer to enable (default if supported), |
* FALSE to disable. | | * FALSE to disable. |
*/ | | */ |
#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12) | | #define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12) |
| | |
|
| | #if((_WIN32_WINNT < 0x0600) && (_WIN32_WINNT >= 0x0501)) |
| | |
/* | | /* |
* MS Transport Provider IOCTL to request | | * MS Transport Provider IOCTL to request |
* notification when a given socket is closed. | | * notification when a given socket is closed. |
* Input buffer must be a pointer to the socket handle. | | * Input buffer must be a pointer to the socket handle. |
* Input buffer size must be exactly sizeof(HANDLE). | | * Input buffer size must be exactly sizeof(HANDLE). |
* Output buffer and output buffer length must be | | * Output buffer and output buffer length must be |
* NULL and 0 respectively. This IOCTL must always | | * NULL and 0 respectively. This IOCTL must always |
* be issued with an overlapped structure. | | * be issued with an overlapped structure. |
|
| | * |
| | * This Ioctl code is available only on WinXP SP2 and Win2k3 SP1. |
*/ | | */ |
#define SIO_SOCKET_CLOSE_NOTIFY _WSAIOW(IOC_VENDOR,13) | | #define SIO_SOCKET_CLOSE_NOTIFY _WSAIOW(IOC_VENDOR,13) |
| | |
|
| | #endif //(_WIN32_WINNT < 0x0600 && _WIN32_WINNT >= 0x0501) |
| | |
| | /* |
| | * MS Transport Provider IOCTL to control |
| | * reporting NET_UNREACHABLE (TTL expired) messages |
| | * on UDP sockets via recv/WSARecv/Etc. |
| | * Pass TRUE in input buffer to enabled (default if supported), |
| | * FALSE to disable. |
| | */ |
| | #define SIO_UDP_NETRESET _WSAIOW(IOC_VENDOR,15) |
| | |
/* | | /* |
* Microsoft extended APIs. | | * Microsoft extended APIs. |
*/ | | */ |
|
| | |
| | #if(_WIN32_WINNT < 0x0600) |
int | | int |
PASCAL FAR | | PASCAL FAR |
|
WSARecvEx ( | | WSARecvEx( |
SOCKET s, | | SOCKET s, |
|
char FAR *buf, | | __out_bcount_part(len, return) char FAR *buf, |
int len, | | int len, |
int FAR *flags | | int FAR *flags |
); | | ); |
|
| | #else //(_WIN32_WINNT < 0x0600) |
| | INT |
| | PASCAL FAR |
| | WSARecvEx( |
| | SOCKET s, |
| | __out_bcount_part(len, return) CHAR FAR *buf, |
| | INT len, |
| | INT FAR *flags |
| | ); |
| | #endif //(_WIN32_WINNT < 0x0600) |
| | |
typedef struct _TRANSMIT_FILE_BUFFERS { | | typedef struct _TRANSMIT_FILE_BUFFERS { |
LPVOID Head; | | LPVOID Head; |
DWORD HeadLength; | | DWORD HeadLength; |
LPVOID Tail; | | LPVOID Tail; |
DWORD TailLength; | | DWORD TailLength; |
} TRANSMIT_FILE_BUFFERS, *PTRANSMIT_FILE_BUFFERS, FAR *LPTRANSMIT_FILE_BUFFERS; | | } TRANSMIT_FILE_BUFFERS, *PTRANSMIT_FILE_BUFFERS, FAR *LPTRANSMIT_FILE_BUFFERS; |
| | |
#define TF_DISCONNECT 0x01 | | #define TF_DISCONNECT 0x01 |
#define TF_REUSE_SOCKET 0x02 | | #define TF_REUSE_SOCKET 0x02 |
| | |
skipping to change at line 122 | | skipping to change at line 153 |
TransmitFile ( | | TransmitFile ( |
IN SOCKET hSocket, | | IN SOCKET hSocket, |
IN HANDLE hFile, | | IN HANDLE hFile, |
IN DWORD nNumberOfBytesToWrite, | | IN DWORD nNumberOfBytesToWrite, |
IN DWORD nNumberOfBytesPerSend, | | IN DWORD nNumberOfBytesPerSend, |
IN LPOVERLAPPED lpOverlapped, | | IN LPOVERLAPPED lpOverlapped, |
IN LPTRANSMIT_FILE_BUFFERS lpTransmitBuffers, | | IN LPTRANSMIT_FILE_BUFFERS lpTransmitBuffers, |
IN DWORD dwReserved | | IN DWORD dwReserved |
); | | ); |
| | |
|
| | __control_entrypoint(DllExport) |
BOOL | | BOOL |
PASCAL FAR | | PASCAL FAR |
AcceptEx ( | | AcceptEx ( |
IN SOCKET sListenSocket, | | IN SOCKET sListenSocket, |
IN SOCKET sAcceptSocket, | | IN SOCKET sAcceptSocket, |
|
IN PVOID lpOutputBuffer, | | __out_bcount_part(dwReceiveDataLength+dwLocalAddressLength+dwRemoteAddressLe |
| | ngth, |
| | *lpdwBytesReceived) IN PVOID lpOutputBuffer, |
IN DWORD dwReceiveDataLength, | | IN DWORD dwReceiveDataLength, |
IN DWORD dwLocalAddressLength, | | IN DWORD dwLocalAddressLength, |
IN DWORD dwRemoteAddressLength, | | IN DWORD dwRemoteAddressLength, |
OUT LPDWORD lpdwBytesReceived, | | OUT LPDWORD lpdwBytesReceived, |
IN LPOVERLAPPED lpOverlapped | | IN LPOVERLAPPED lpOverlapped |
); | | ); |
| | |
|
| | __control_entrypoint(DllExport) |
VOID | | VOID |
PASCAL FAR | | PASCAL FAR |
GetAcceptExSockaddrs ( | | GetAcceptExSockaddrs ( |
|
IN PVOID lpOutputBuffer, | | __in_bcount(dwReceiveDataLength+dwLocalAddressLength+dwRemoteAddressLength)
IN PVOID lpOutputBuffer, |
IN DWORD dwReceiveDataLength, | | IN DWORD dwReceiveDataLength, |
IN DWORD dwLocalAddressLength, | | IN DWORD dwLocalAddressLength, |
IN DWORD dwRemoteAddressLength, | | IN DWORD dwRemoteAddressLength, |
|
OUT struct sockaddr **LocalSockaddr, | | __deref_out_bcount(*LocalSockaddrLength) OUT struct sockaddr **LocalSockaddr
, |
OUT LPINT LocalSockaddrLength, | | OUT LPINT LocalSockaddrLength, |
|
OUT struct sockaddr **RemoteSockaddr, | | __deref_out_bcount(*RemoteSockaddrLength) OUT struct sockaddr **RemoteSockad
dr, |
OUT LPINT RemoteSockaddrLength | | OUT LPINT RemoteSockaddrLength |
); | | ); |
| | |
/* | | /* |
* "QueryInterface" versions of the above APIs. | | * "QueryInterface" versions of the above APIs. |
*/ | | */ |
| | |
typedef | | typedef |
BOOL | | BOOL |
(PASCAL FAR * LPFN_TRANSMITFILE)( | | (PASCAL FAR * LPFN_TRANSMITFILE)( |
| | |
skipping to change at line 199 | | skipping to change at line 233 |
IN DWORD dwRemoteAddressLength, | | IN DWORD dwRemoteAddressLength, |
OUT struct sockaddr **LocalSockaddr, | | OUT struct sockaddr **LocalSockaddr, |
OUT LPINT LocalSockaddrLength, | | OUT LPINT LocalSockaddrLength, |
OUT struct sockaddr **RemoteSockaddr, | | OUT struct sockaddr **RemoteSockaddr, |
OUT LPINT RemoteSockaddrLength | | OUT LPINT RemoteSockaddrLength |
); | | ); |
| | |
#define WSAID_GETACCEPTEXSOCKADDRS \ | | #define WSAID_GETACCEPTEXSOCKADDRS \ |
{0xb5367df2,0xcbac,0x11cf,{0x95,0xca,0x00,0x80,0x5f,0x48,0xa1,0x92}} | | {0xb5367df2,0xcbac,0x11cf,{0x95,0xca,0x00,0x80,0x5f,0x48,0xa1,0x92}} |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
| | |
#if _MSC_VER >= 1200 | | #if _MSC_VER >= 1200 |
#pragma warning(push) | | #pragma warning(push) |
#endif | | #endif |
#pragma warning(disable:4201) /* Nonstandard extension, nameless struct/union */ | | #pragma warning(disable:4201) /* Nonstandard extension, nameless struct/union */ |
| | |
typedef struct _TRANSMIT_PACKETS_ELEMENT { | | typedef struct _TRANSMIT_PACKETS_ELEMENT { |
ULONG dwElFlags; | | ULONG dwElFlags; |
#define TP_ELEMENT_MEMORY 1 | | #define TP_ELEMENT_MEMORY 1 |
#define TP_ELEMENT_FILE 2 | | #define TP_ELEMENT_FILE 2 |
#define TP_ELEMENT_EOP 4 | | #define TP_ELEMENT_EOP 4 |
| | |
skipping to change at line 356 | | skipping to change at line 392 |
DWORD state; | | DWORD state; |
WCHAR machineName[256]; | | WCHAR machineName[256]; |
WCHAR sharedAdapterName[256]; | | WCHAR sharedAdapterName[256]; |
} remote; | | } remote; |
} ICS; | | } ICS; |
| | |
} data; | | } data; |
| | |
} NLA_BLOB, *PNLA_BLOB, * FAR LPNLA_BLOB; | | } NLA_BLOB, *PNLA_BLOB, * FAR LPNLA_BLOB; |
| | |
|
typedef struct _WSAMSG { | | |
LPSOCKADDR name; /* Remote address */ | | |
INT namelen; /* Remote address length */ | | |
LPWSABUF lpBuffers; /* Data buffer array */ | | |
DWORD dwBufferCount; /* Number of elements in the array */ | | |
WSABUF Control; /* Control buffer */ | | |
DWORD dwFlags; /* Flags */ | | |
} WSAMSG, *PWSAMSG, * FAR LPWSAMSG; | | |
| | |
/* | | /* |
|
* Layout of ancillary data objects in the control buffer | | * WSARecvMsg -- support for receiving ancilliary |
| | * data/control information with a message. |
*/ | | */ |
|
typedef struct _WSACMSGHDR { | | typedef |
SIZE_T cmsg_len; | | INT |
INT cmsg_level; | | (PASCAL FAR * LPFN_WSARECVMSG) ( |
INT cmsg_type; | | IN SOCKET s, |
/* followed by UCHAR cmsg_data[] */ | | IN OUT LPWSAMSG lpMsg, |
} WSACMSGHDR, *PWSACMSGHDR, FAR *LPWSACMSGHDR; | | __out_opt LPDWORD lpdwNumberOfBytesRecvd, |
| | IN LPWSAOVERLAPPED lpOverlapped, |
| | IN LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine |
| | ); |
| | |
| | #define WSAID_WSARECVMSG \ |
| | {0xf689d7c8,0x6f1f,0x436b,{0x8a,0x53,0xe5,0x4f,0xe3,0x51,0xc3,0x22}} |
| | |
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
| | #if(_WIN32_WINNT >= 0x0600) |
| | |
/* | | /* |
|
* Alignment macros for header and data members of | | * Ioctl codes for translating socket handles to the base provider handle. |
* the control buffer. | | * This is performed to prevent breaking non-IFS LSPs when new Winsock extension |
| | * funtions are added. |
*/ | | */ |
|
#define WSA_CMSGHDR_ALIGN(length) \ | | #define SIO_BSP_HANDLE _WSAIOR(IOC_WS2,27) |
( ((length) + TYPE_ALIGNMENT(WSACMSGHDR)-1) & \ | | #define SIO_BSP_HANDLE_SELECT _WSAIOR(IOC_WS2,28) |
(~(TYPE_ALIGNMENT(WSACMSGHDR)-1)) ) \ | | #define SIO_BSP_HANDLE_POLL _WSAIOR(IOC_WS2,29) |
| | |
#define WSA_CMSGDATA_ALIGN(length) \ | | |
( ((length) + MAX_NATURAL_ALIGNMENT-1) & \ | | |
(~(MAX_NATURAL_ALIGNMENT-1)) ) | | |
| | |
/* | | /* |
|
* WSA_CMSG_FIRSTHDR | | * Ioctl code used to translate a socket handle into the base provider's handle. |
* | | * This is not used by any Winsock extension function and should not be intercep |
* Returns a pointer to the first ancillary data object, | | ted |
* or a null pointer if there is no ancillary data in the | | * by Winsock LSPs. |
* control buffer of the WSAMSG structure. | | |
* | | |
* LPCMSGHDR | | |
* WSA_CMSG_FIRSTHDR ( | | |
* LPWSAMSG msg | | |
* ); | | |
*/ | | */ |
|
#define WSA_CMSG_FIRSTHDR(msg) \ | | #define SIO_BASE_HANDLE _WSAIOR(IOC_WS2,34) |
( ((msg)->Control.len >= sizeof(WSACMSGHDR)) \ | | |
? (LPWSACMSGHDR)(msg)->Control.buf \ | | |
: (LPWSACMSGHDR)NULL ) | | |
| | |
/* | | /* |
|
* WSA_CMSG_NXTHDR | | * Ioctl codes for Winsock extension functions. |
* | | |
* Returns a pointer to the next ancillary data object, | | |
* or a null if there are no more data objects. | | |
* | | |
* LPCMSGHDR | | |
* WSA_CMSG_NEXTHDR ( | | |
* LPWSAMSG msg, | | |
* LPWSACMSGHDR cmsg | | |
* ); | | |
*/ | | */ |
|
#define WSA_CMSG_NXTHDR(msg, cmsg) \ | | #define SIO_EXT_SELECT _WSAIORW(IOC_WS2,30) |
( ((cmsg) == NULL) \ | | #define SIO_EXT_POLL _WSAIORW(IOC_WS2,31) |
? WSA_CMSG_FIRSTHDR(msg) \ | | #define SIO_EXT_SENDMSG _WSAIORW(IOC_WS2,32) |
: ( ( ((u_char *)(cmsg) + \ | | |
WSA_CMSGHDR_ALIGN((cmsg)->cmsg_len) + \ | | #pragma warning(push) |
sizeof(WSACMSGHDR) ) > \ | | #pragma warning(disable:4200) /* zero-sized array in struct/union */ |
(u_char *)((msg)->Control.buf) + \ | | |
(msg)->Control.len ) \ | | |
? (LPWSACMSGHDR)NULL \ | | |
: (LPWSACMSGHDR)((u_char *)(cmsg) + \ | | |
WSA_CMSGHDR_ALIGN((cmsg)->cmsg_len)) ) ) | | |
| | |
/* | | /* |
|
* WSA_CMSG_DATA | | * Data structure for passing WSAPoll arugments through WSAIoctl |
* | | |
* Returns a pointer to the first byte of data (what is referred | | |
* to as the cmsg_data member though it is not defined in | | |
* the structure). | | |
* | | |
* u_char * | | |
* WSA_CMSG_DATA ( | | |
* LPWSACMSGHDR pcmsg | | |
* ); | | |
*/ | | */ |
|
#define WSA_CMSG_DATA(cmsg) \ | | typedef struct { |
( (u_char *)(cmsg) + WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR)) ) | | int result; |
| | ULONG fds; |
| | INT timeout; |
| | WSAPOLLFD fdArray[0]; |
| | } WSAPOLLDATA, *LPWSAPOLLDATA; |
| | |
| | #pragma warning(pop) |
| | |
/* | | /* |
|
* WSA_CMSG_SPACE | | * Data structure for passing WSASendMsg arguments through WSAIoctl |
* | | |
* Returns total size of an ancillary data object given | | |
* the amount of data. Used to allocate the correct amount | | |
* of space. | | |
* | | |
* SIZE_T | | |
* WSA_CMSG_SPACE ( | | |
* SIZE_T length | | |
* ); | | |
*/ | | */ |
|
#define WSA_CMSG_SPACE(length) \ | | typedef struct { |
(WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR) + WSA_CMSGHDR_ALIGN(length))) | | LPWSAMSG lpMsg; |
| | DWORD dwFlags; |
| | LPDWORD lpNumberOfBytesSent; |
| | LPWSAOVERLAPPED lpOverlapped; |
| | LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine; |
| | } WSASENDMSG, *LPWSASENDMSG; |
| | |
/* | | /* |
|
* WSA_CMSG_LEN | | * WSASendMsg -- send data to a specific destination, with options, using |
| | * overlapped I/O where applicable. |
* | | * |
|
* Returns the value to store in cmsg_len given the amount of data. | | * Valid flags for dwFlags parameter: |
| | * MSG_DONTROUTE |
| | * MSG_PARTIAL (a.k.a. MSG_EOR) (only for non-stream sockets) |
| | * MSG_OOB (only for stream style sockets) (NYI) |
* | | * |
|
* SIZE_T | | * Caller must provide either lpOverlapped or lpCompletionRoutine |
* WSA_CMSG_LEN ( | | * or neither (both NULL). |
* SIZE_T length | | |
* ); | | |
*/ | | */ |
|
#define WSA_CMSG_LEN(length) \ | | typedef |
(WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR)) + length) | | INT |
| | (PASCAL FAR * LPFN_WSASENDMSG) ( |
| | IN SOCKET s, |
| | IN LPWSAMSG lpMsg, |
| | IN DWORD dwFlags, |
| | __out_opt LPDWORD lpNumberOfBytesSent, |
| | IN LPWSAOVERLAPPED lpOverlapped OPTIONAL, |
| | IN LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine OPTIONAL |
| | ); |
| | |
|
/* | | #define WSAID_WSASENDMSG /* a441e712-754f-43ca-84a7-0dee44cf606d */ \ |
* Definition for flags member of the WSAMSG structure | | {0xa441e712,0x754f,0x43ca,{0x84,0xa7,0x0d,0xee,0x44,0xcf,0x60,0x6d}} |
* This is in addition to other MSG_xxx flags defined | | |
* for recv/recvfrom/send/sendto. | | |
*/ | | |
#define MSG_TRUNC 0x0100 | | |
#define MSG_CTRUNC 0x0200 | | |
#define MSG_BCAST 0x0400 | | |
#define MSG_MCAST 0x0800 | | |
| | |
|
| | // |
| | // WSAPoll |
| | // |
typedef | | typedef |
INT | | INT |
|
(PASCAL FAR * LPFN_WSARECVMSG) ( | | (WSAAPI *LPFN_WSAPOLL)( |
IN SOCKET s, | | IN OUT LPWSAPOLLFD fdarray, |
IN OUT LPWSAMSG lpMsg, | | IN ULONG nfds, |
OUT LPDWORD lpdwNumberOfBytesRecvd, | | IN INT timeout |
IN LPWSAOVERLAPPED lpOverlapped, | | |
IN LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine | | |
); | | ); |
| | |
|
#define WSAID_WSARECVMSG \ | | #define WSAID_WSAPOLL \ |
{0xf689d7c8,0x6f1f,0x436b,{0x8a,0x53,0xe5,0x4f,0xe3,0x51,0xc3,0x22}} | | {0x18C76F85,0xDC66,0x4964,{0x97,0x2E,0x23,0xC2,0x72,0x38,0x31,0x2B}} |
| | |
| | #endif //(_WIN32_WINNT >= 0x0600) |
| | |
#ifdef __cplusplus | | #ifdef __cplusplus |
} | | } |
#endif | | #endif |
| | |
#endif /* _MSWSOCK_ */ | | #endif /* _MSWSOCK_ */ |
| | |
End of changes. 38 change blocks. |
115 lines changed or deleted | | 127 lines changed or added |
|
ws2spi.h (5.2.3790.3959-Windows 5.0) | | ws2spi.h (6.0.6002.18005-Windows 6.0) |
|
| | //$TAG BIZDEV |
| | // $IPCategory: |
| | // $DealPointID: 118736 |
| | // $AgreementName: berkeley software distribution license |
| | // $AgreementType: oss license |
| | // $ExternalOrigin: regents of the university of california |
| | //$ENDTAG |
| | |
| | //$TAG ENGR |
| | // $Owner: vadime |
| | // $Module: published_inc |
| | // |
| | //$ENDTAG |
| | |
/* WS2SPI.H -- definitions to be used with the WinSock service provider. | | /* WS2SPI.H -- definitions to be used with the WinSock service provider. |
* | | * |
* Copyright (c) Microsoft Corporation. All rights reserved. | | * Copyright (c) Microsoft Corporation. All rights reserved. |
* | | * |
* This header file corresponds to version 2.2.x of the WinSock SPI | | * This header file corresponds to version 2.2.x of the WinSock SPI |
* specification. | | * specification. |
* | | * |
* This file includes parts which are Copyright (c) 1982-1986 Regents | | * This file includes parts which are Copyright (c) 1982-1986 Regents |
* of the University of California. All rights reserved. The | | * of the University of California. All rights reserved. The |
* Berkeley Software License Agreement specifies the terms and | | * Berkeley Software License Agreement specifies the terms and |
| | |
skipping to change at line 22 | | skipping to change at line 36 |
*/ | | */ |
| | |
#ifndef _WINSOCK2SPI_ | | #ifndef _WINSOCK2SPI_ |
#define _WINSOCK2SPI_ | | #define _WINSOCK2SPI_ |
| | |
#if _MSC_VER > 1000 | | #if _MSC_VER > 1000 |
#pragma once | | #pragma once |
#endif | | #endif |
| | |
/* | | /* |
|
* Ensure structures are packed consistently. | | |
*/ | | |
| | |
#if !defined(_WIN64) | | |
#include <pshpack4.h> | | |
#endif | | |
| | |
/* | | |
* Pull in WINSOCK2.H if necessary | | * Pull in WINSOCK2.H if necessary |
*/ | | */ |
| | |
#ifndef _WINSOCK2API_ | | #ifndef _WINSOCK2API_ |
#include <winsock2.h> | | #include <winsock2.h> |
#endif /* _WINSOCK2API_ */ | | #endif /* _WINSOCK2API_ */ |
| | |
|
| | /* |
| | * Ensure structures are packed consistently. |
| | */ |
| | |
| | #if !defined(_WIN64) |
| | #include <pshpack4.h> |
| | #endif |
| | |
#define WSPDESCRIPTION_LEN 255 | | #define WSPDESCRIPTION_LEN 255 |
| | |
#define WSS_OPERATION_IN_PROGRESS 0x00000103L | | #define WSS_OPERATION_IN_PROGRESS 0x00000103L |
| | |
typedef struct WSPData { | | typedef struct WSPData { |
WORD wVersion; | | WORD wVersion; |
WORD wHighVersion; | | WORD wHighVersion; |
WCHAR szDescription[WSPDESCRIPTION_LEN+1]; | | WCHAR szDescription[WSPDESCRIPTION_LEN+1]; |
} WSPDATA, FAR * LPWSPDATA; | | } WSPDATA, FAR * LPWSPDATA; |
| | |
| | |
skipping to change at line 570 | | skipping to change at line 584 |
int | | int |
(WSPAPI * LPWPUCLOSETHREAD)( | | (WSPAPI * LPWPUCLOSETHREAD)( |
LPWSATHREADID lpThreadId, | | LPWSATHREADID lpThreadId, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
// Available only directly from ws2_32.dll | | // Available only directly from ws2_32.dll |
typedef | | typedef |
int | | int |
(WSPAPI * LPWPUCOMPLETEOVERLAPPEDREQUEST) ( | | (WSPAPI * LPWPUCOMPLETEOVERLAPPEDREQUEST) ( |
|
IN SOCKET s, | | SOCKET s, |
LPWSAOVERLAPPED lpOverlapped, | | LPWSAOVERLAPPED lpOverlapped, |
DWORD dwError, | | DWORD dwError, |
DWORD cbTransferred, | | DWORD cbTransferred, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
/* | | /* |
* The upcall table. This structure is passed by value to the service | | * The upcall table. This structure is passed by value to the service |
* provider's WSPStartup() entrypoint. | | * provider's WSPStartup() entrypoint. |
*/ | | */ |
| | |
skipping to change at line 606 | | skipping to change at line 620 |
LPWPUSETEVENT lpWPUSetEvent; | | LPWPUSETEVENT lpWPUSetEvent; |
LPWPUOPENCURRENTTHREAD lpWPUOpenCurrentThread; | | LPWPUOPENCURRENTTHREAD lpWPUOpenCurrentThread; |
LPWPUCLOSETHREAD lpWPUCloseThread; | | LPWPUCLOSETHREAD lpWPUCloseThread; |
| | |
} WSPUPCALLTABLE, FAR * LPWSPUPCALLTABLE; | | } WSPUPCALLTABLE, FAR * LPWSPUPCALLTABLE; |
| | |
/* | | /* |
* WinSock 2 SPI socket function prototypes | | * WinSock 2 SPI socket function prototypes |
*/ | | */ |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSPStartup( | | WSPStartup( |
IN WORD wVersionRequested, | | IN WORD wVersionRequested, |
|
OUT LPWSPDATA lpWSPData, | | __in OUT LPWSPDATA lpWSPData, |
IN LPWSAPROTOCOL_INFOW lpProtocolInfo, | | __in IN LPWSAPROTOCOL_INFOW lpProtocolInfo, |
IN WSPUPCALLTABLE UpcallTable, | | __in IN WSPUPCALLTABLE UpcallTable, |
OUT LPWSPPROC_TABLE lpProcTable | | __inout OUT LPWSPPROC_TABLE lpProcTable |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSPSTARTUP)( | | (WSPAPI * LPWSPSTARTUP)( |
WORD wVersionRequested, | | WORD wVersionRequested, |
LPWSPDATA lpWSPData, | | LPWSPDATA lpWSPData, |
LPWSAPROTOCOL_INFOW lpProtocolInfo, | | LPWSAPROTOCOL_INFOW lpProtocolInfo, |
WSPUPCALLTABLE UpcallTable, | | WSPUPCALLTABLE UpcallTable, |
LPWSPPROC_TABLE lpProcTable | | LPWSPPROC_TABLE lpProcTable |
); | | ); |
| | |
/* | | /* |
* Installation and configuration entrypoints. | | * Installation and configuration entrypoints. |
*/ | | */ |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCEnumProtocols( | | WSCEnumProtocols( |
IN LPINT lpiProtocols, | | IN LPINT lpiProtocols, |
|
OUT LPWSAPROTOCOL_INFOW lpProtocolBuffer, | | __out_bcount_opt(*lpdwBufferLength) LPWSAPROTOCOL_INFOW lpProtocolBuffer, |
IN OUT LPDWORD lpdwBufferLength, | | IN OUT LPDWORD lpdwBufferLength, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCENUMPROTOCOLS)( | | (WSPAPI * LPWSCENUMPROTOCOLS)( |
LPINT lpiProtocols, | | LPINT lpiProtocols, |
LPWSAPROTOCOL_INFOW lpProtocolBuffer, | | LPWSAPROTOCOL_INFOW lpProtocolBuffer, |
LPDWORD lpdwBufferLength, | | LPDWORD lpdwBufferLength, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
/* | | /* |
* 64-bit architectures capable of running 32-bit code have | | * 64-bit architectures capable of running 32-bit code have |
* separate 64-bit and 32-bit catalogs. API with '32' prefix | | * separate 64-bit and 32-bit catalogs. API with '32' prefix |
* allow 32 bit catalog manipulations by 64 bit process. | | * allow 32 bit catalog manipulations by 64 bit process. |
*/ | | */ |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCEnumProtocols32( | | WSCEnumProtocols32( |
IN LPINT lpiProtocols, | | IN LPINT lpiProtocols, |
|
OUT LPWSAPROTOCOL_INFOW lpProtocolBuffer, | | __out_bcount(*lpdwBufferLength) LPWSAPROTOCOL_INFOW lpProtocolBuffer, |
IN OUT LPDWORD lpdwBufferLength, | | IN OUT LPDWORD lpdwBufferLength, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
|
#endif | | #endif //(defined(_WIN64) && _WIN32_WINNT >= 0x0501) |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCDeinstallProvider( | | WSCDeinstallProvider( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCDEINSTALLPROVIDER)( | | (WSPAPI * LPWSCDEINSTALLPROVIDER)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCDeinstallProvider32( | | WSCDeinstallProvider32( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
|
#endif | | #endif //(defined(_WIN64) && _WIN32_WINNT >= 0x0501) |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCInstallProvider( | | WSCInstallProvider( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN const WCHAR FAR * lpszProviderDllPath, | | IN const WCHAR FAR * lpszProviderDllPath, |
|
IN const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | __in_ecount(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
IN DWORD dwNumberOfEntries, | | IN DWORD dwNumberOfEntries, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCINSTALLPROVIDER)( | | (WSPAPI * LPWSCINSTALLPROVIDER)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
const WCHAR FAR * lpszProviderDllPath, | | const WCHAR FAR * lpszProviderDllPath, |
const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
DWORD dwNumberOfEntries, | | DWORD dwNumberOfEntries, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
/* | | /* |
* This API manipulates 64-bit and 32-bit catalogs simulteneously. | | * This API manipulates 64-bit and 32-bit catalogs simulteneously. |
* It is needed to guarantee the same catalog IDs for provider catalog | | * It is needed to guarantee the same catalog IDs for provider catalog |
* entries in both 64-bit and 32-bit catalogs. | | * entries in both 64-bit and 32-bit catalogs. |
*/ | | */ |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCInstallProvider64_32( | | WSCInstallProvider64_32( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN const WCHAR FAR * lpszProviderDllPath, | | IN const WCHAR FAR * lpszProviderDllPath, |
|
IN const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | __in_ecount(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
IN DWORD dwNumberOfEntries, | | IN DWORD dwNumberOfEntries, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
|
#endif | | #endif //(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCGetProviderPath( | | WSCGetProviderPath( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
|
OUT WCHAR FAR * lpszProviderDllPath, | | __out_ecount(*lpProviderDllPathLen) WCHAR FAR * lpszProviderDllPath, |
IN OUT LPINT lpProviderDllPathLen, | | IN OUT LPINT lpProviderDllPathLen, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCGETPROVIDERPATH)( | | (WSPAPI * LPWSCGETPROVIDERPATH)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
WCHAR FAR * lpszProviderDllPath, | | WCHAR FAR * lpszProviderDllPath, |
LPINT lpProviderDllPathLen, | | LPINT lpProviderDllPathLen, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
#if defined(_WIN64) | | #if defined(_WIN64) |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCGetProviderPath32( | | WSCGetProviderPath32( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
|
OUT WCHAR FAR * lpszProviderDllPath, | | __out_ecount(*lpProviderDllPathLen) WCHAR FAR * lpszProviderDllPath, |
IN OUT LPINT lpProviderDllPathLen, | | IN OUT LPINT lpProviderDllPathLen, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
#endif | | #endif |
| | |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCUpdateProvider( | | WSCUpdateProvider( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN const WCHAR FAR * lpszProviderDllPath, | | IN const WCHAR FAR * lpszProviderDllPath, |
|
IN const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | __in_ecount(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
IN DWORD dwNumberOfEntries, | | IN DWORD dwNumberOfEntries, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCUPDATEPROVIDER)( | | (WSPAPI * LPWSCUPDATEPROVIDER)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
const WCHAR FAR * lpszProviderDllPath, | | const WCHAR FAR * lpszProviderDllPath, |
const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
DWORD dwNumberOfEntries, | | DWORD dwNumberOfEntries, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
#if defined(_WIN64) | | #if defined(_WIN64) |
|
| | __control_entrypoint(DllExport) |
int | | int |
WSPAPI | | WSPAPI |
WSCUpdateProvider32( | | WSCUpdateProvider32( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN const WCHAR FAR * lpszProviderDllPath, | | IN const WCHAR FAR * lpszProviderDllPath, |
|
IN const LPWSAPROTOCOL_INFOW lpProtocolInfoList, | | __in_ecount(dwNumberOfEntries) const LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
IN DWORD dwNumberOfEntries, | | IN DWORD dwNumberOfEntries, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
#endif | | #endif |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
|
| | #if (_WIN32_WINNT < 0x0600) |
int | | int |
WSPAPI | | WSPAPI |
WSCInstallQOSTemplate ( | | WSCInstallQOSTemplate ( |
IN const LPGUID Guid, | | IN const LPGUID Guid, |
IN LPWSABUF QosName, | | IN LPWSABUF QosName, |
IN LPQOS Qos | | IN LPQOS Qos |
); | | ); |
| | |
typedef | | typedef |
int | | int |
| | |
skipping to change at line 815 | | skipping to change at line 846 |
IN LPWSABUF QosName | | IN LPWSABUF QosName |
); | | ); |
| | |
typedef | | typedef |
int | | int |
(WSPAPI * LPWSCREMOVEQOSTEMPLATE)( | | (WSPAPI * LPWSCREMOVEQOSTEMPLATE)( |
const LPGUID Guid, | | const LPGUID Guid, |
LPWSABUF QosName | | LPWSABUF QosName |
); | | ); |
| | |
|
| | #endif //(_WIN32_WINNT < 0x0600) |
| | |
| | #if(_WIN32_WINNT >= 0x0600) |
| | |
| | // |
| | // LSP Categorization |
| | // |
| | |
| | #define LSP_SYSTEM 0x80000000 |
| | #define LSP_INSPECTOR 0x00000001 |
| | #define LSP_REDIRECTOR 0x00000002 |
| | #define LSP_PROXY 0x00000004 |
| | #define LSP_FIREWALL 0x00000008 |
| | #define LSP_INBOUND_MODIFY 0x00000010 |
| | #define LSP_OUTBOUND_MODIFY 0x00000020 |
| | #define LSP_CRYPTO_COMPRESS 0x00000040 |
| | #define LSP_LOCAL_CACHE 0x00000080 |
| | |
| | // |
| | // Provider Information APIs |
| | // |
| | |
| | typedef enum _WSC_PROVIDER_INFO_TYPE { |
| | // InfoType is: Info points to: |
| | ProviderInfoLspCategories, // DWORD (LspCategories) |
| | ProviderInfoAudit, // struct WSC_PROVIDER_AUDIT_INFO |
| | } WSC_PROVIDER_INFO_TYPE ; |
| | |
| | typedef struct _WSC_PROVIDER_AUDIT_INFO { |
| | DWORD RecordSize; // Size of this audit record, in bytes (includes thi |
| | s field) |
| | PVOID Reserved; // Reserved |
| | // Install Time (GMT) |
| | // User SID of account performing install |
| | // Length (in characters) of Full Path |
| | // Full Path of EXE performing install |
| | } WSC_PROVIDER_AUDIT_INFO; |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCSetProviderInfo( |
| | __in LPGUID lpProviderId, |
| | __in WSC_PROVIDER_INFO_TYPE InfoType, |
| | __in_bcount(InfoSize) PBYTE Info, |
| | __in size_t InfoSize, |
| | __in DWORD Flags, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCGetProviderInfo( |
| | __in LPGUID lpProviderId, |
| | __in WSC_PROVIDER_INFO_TYPE InfoType, |
| | __out_bcount_part(*InfoSize, *InfoSize) PBYTE Info, |
| | __inout size_t *InfoSize, |
| | __in DWORD Flags, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | #if defined(_WIN64) |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCSetProviderInfo32( |
| | __in LPGUID lpProviderId, |
| | __in WSC_PROVIDER_INFO_TYPE InfoType, |
| | __in_bcount(InfoSize) PBYTE Info, |
| | __in size_t InfoSize, |
| | __in DWORD Flags, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCGetProviderInfo32( |
| | __in LPGUID lpProviderId, |
| | __in WSC_PROVIDER_INFO_TYPE InfoType, |
| | __out_bcount_part(*InfoSize, *InfoSize) PBYTE Info, |
| | __inout size_t *InfoSize, |
| | __in DWORD Flags, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | #endif // (_WIN64) |
| | |
| | // |
| | // App Permitted LSP Categorization APIs |
| | // |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCSetApplicationCategory( |
| | __in_ecount(PathLength) LPCWSTR Path, |
| | __in DWORD PathLength, |
| | __in_ecount_opt(ExtraLength) LPCWSTR Extra, |
| | __in DWORD ExtraLength, |
| | __in DWORD PermittedLspCategories, |
| | __out_opt DWORD * pPrevPermLspCat, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | __control_entrypoint(DllExport) |
| | int |
| | WSPAPI |
| | WSCGetApplicationCategory( |
| | __in_ecount(PathLength) LPCWSTR Path, |
| | __in DWORD PathLength, |
| | __in_ecount_opt(ExtraLength) LPCWSTR Extra, |
| | __in DWORD ExtraLength, |
| | __out DWORD * pPermittedLspCategories, |
| | __out LPINT lpErrno |
| | ); |
| | |
| | #endif //(_WIN32_WINNT >= 0x0600) |
| | |
/* | | /* |
* The following upcall function prototypes are only used by WinSock 2 DLL and | | * The following upcall function prototypes are only used by WinSock 2 DLL and |
* should not be used by any service providers. | | * should not be used by any service providers. |
*/ | | */ |
| | |
BOOL | | BOOL |
WSPAPI | | WSPAPI |
WPUCloseEvent( | | WPUCloseEvent( |
IN WSAEVENT hEvent, | | IN WSAEVENT hEvent, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
| | |
skipping to change at line 848 | | skipping to change at line 999 |
); | | ); |
| | |
SOCKET | | SOCKET |
WSPAPI | | WSPAPI |
WPUCreateSocketHandle( | | WPUCreateSocketHandle( |
IN DWORD dwCatalogEntryId, | | IN DWORD dwCatalogEntryId, |
IN DWORD_PTR dwContext, | | IN DWORD_PTR dwContext, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
|
| | __control_entrypoint(DispatchTable) |
int | | int |
WSPAPI | | WSPAPI |
WPUFDIsSet( | | WPUFDIsSet( |
IN SOCKET s, | | IN SOCKET s, |
IN fd_set FAR * fdset | | IN fd_set FAR * fdset |
); | | ); |
| | |
int | | int |
WSPAPI | | WSPAPI |
WPUGetProviderPath( | | WPUGetProviderPath( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
|
OUT WCHAR FAR * lpszProviderDllPath, | | __out_ecount(*lpProviderDllPathLen) WCHAR FAR * lpszProviderDllPath, |
IN OUT LPINT lpProviderDllPathLen, | | __inout LPINT lpProviderDllPathLen, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
SOCKET | | SOCKET |
WSPAPI | | WSPAPI |
WPUModifyIFSHandle( | | WPUModifyIFSHandle( |
IN DWORD dwCatalogEntryId, | | IN DWORD dwCatalogEntryId, |
IN SOCKET ProposedHandle, | | IN SOCKET ProposedHandle, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
|
| | __control_entrypoint(DispatchTable) |
BOOL | | BOOL |
WSPAPI | | WSPAPI |
WPUPostMessage( | | WPUPostMessage( |
IN HWND hWnd, | | IN HWND hWnd, |
IN UINT Msg, | | IN UINT Msg, |
IN WPARAM wParam, | | IN WPARAM wParam, |
IN LPARAM lParam | | IN LPARAM lParam |
); | | ); |
| | |
int | | int |
| | |
skipping to change at line 898 | | skipping to change at line 1051 |
); | | ); |
| | |
int | | int |
WSPAPI | | WSPAPI |
WPUQuerySocketHandleContext( | | WPUQuerySocketHandleContext( |
IN SOCKET s, | | IN SOCKET s, |
OUT PDWORD_PTR lpContext, | | OUT PDWORD_PTR lpContext, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
|
| | __control_entrypoint(DispatchTable) |
int | | int |
WSPAPI | | WSPAPI |
WPUQueueApc( | | WPUQueueApc( |
IN LPWSATHREADID lpThreadId, | | IN LPWSATHREADID lpThreadId, |
IN LPWSAUSERAPC lpfnUserApc, | | IN LPWSAUSERAPC lpfnUserApc, |
IN DWORD_PTR dwContext, | | IN DWORD_PTR dwContext, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
BOOL | | BOOL |
| | |
skipping to change at line 921 | | skipping to change at line 1075 |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
BOOL | | BOOL |
WSPAPI | | WSPAPI |
WPUSetEvent( | | WPUSetEvent( |
IN WSAEVENT hEvent, | | IN WSAEVENT hEvent, |
OUT LPINT lpErrno | | OUT LPINT lpErrno |
); | | ); |
| | |
|
| | __control_entrypoint(DispatchTable) |
int | | int |
WSPAPI | | WSPAPI |
WPUCompleteOverlappedRequest ( | | WPUCompleteOverlappedRequest ( |
SOCKET s, | | SOCKET s, |
LPWSAOVERLAPPED lpOverlapped, | | LPWSAOVERLAPPED lpOverlapped, |
DWORD dwError, | | DWORD dwError, |
DWORD cbTransferred, | | DWORD cbTransferred, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
| | __control_entrypoint(DispatchTable) |
int | | int |
WSPAPI | | WSPAPI |
WPUOpenCurrentThread( | | WPUOpenCurrentThread( |
LPWSATHREADID lpThreadId, | | LPWSATHREADID lpThreadId, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
| | |
|
| | __control_entrypoint(DispatchTable) |
int | | int |
WSPAPI | | WSPAPI |
WPUCloseThread( | | WPUCloseThread( |
LPWSATHREADID lpThreadId, | | LPWSATHREADID lpThreadId, |
LPINT lpErrno | | LPINT lpErrno |
); | | ); |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
/* | | /* |
* Installing and uninstalling name space providers. | | * Installing and uninstalling name space providers. |
*/ | | */ |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
/* | | /* |
* SPI and API for enumerating name space providers are | | * SPI and API for enumerating name space providers are |
* currently equivalent since there is no concept of a hidden | | * currently equivalent since there is no concept of a hidden |
* name space provider | | * name space provider |
*/ | | */ |
#define WSCEnumNameSpaceProviders WSAEnumNameSpaceProvidersW | | #define WSCEnumNameSpaceProviders WSAEnumNameSpaceProvidersW |
#define LPFN_WSCENUMNAMESPACEPROVIDERS LPFN_WSAENUMNAMESPACEPROVIDERSW | | #define LPFN_WSCENUMNAMESPACEPROVIDERS LPFN_WSAENUMNAMESPACEPROVIDERSW |
| | |
#if defined(_WIN64) | | #if defined(_WIN64) |
INT | | INT |
WSAAPI | | WSAAPI |
WSCEnumNameSpaceProviders32( | | WSCEnumNameSpaceProviders32( |
|
IN OUT LPDWORD lpdwBufferLength, | | __inout LPDWORD lpdwBufferLength, |
OUT LPWSANAMESPACE_INFOW lpnspBuffer | | __out_bcount(*lpdwBufferLength) LPWSANAMESPACE_INFOW lpnspBuffer |
); | | ); |
#endif | | #endif |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
| | #if(_WIN32_WINNT >= 0x0600) |
| | #define WSCEnumNameSpaceProvidersEx WSAEnumNameSpaceProvidersExW |
| | #define LPFN_WSCENUMNAMESPACEPROVIDERSEX LPFN_WSAENUMNAMESPACEPROVIDERSEXW |
| | |
| | #if defined(_WIN64) |
| | INT |
| | WSAAPI |
| | WSCEnumNameSpaceProvidersEx32( |
| | __inout LPDWORD lpdwBufferLength, |
| | __out_bcount(*lpdwBufferLength) LPWSANAMESPACE_INFOEXW lpnspBuffer |
| | ); |
| | #endif //(_WIN64) |
| | #endif //(_WIN32_WINNT >= 0x0600) |
| | |
INT | | INT |
WSPAPI | | WSPAPI |
WSCInstallNameSpace ( | | WSCInstallNameSpace ( |
|
IN LPWSTR lpszIdentifier, | | __in LPWSTR lpszIdentifier, |
IN LPWSTR lpszPathName, | | __in LPWSTR lpszPathName, |
IN DWORD dwNameSpace, | | IN DWORD dwNameSpace, |
IN DWORD dwVersion, | | IN DWORD dwVersion, |
|
IN LPGUID lpProviderId | | __in IN LPGUID lpProviderId |
); | | ); |
| | |
typedef | | typedef |
INT | | INT |
(WSPAPI * LPWSCINSTALLNAMESPACE)( | | (WSPAPI * LPWSCINSTALLNAMESPACE)( |
LPWSTR lpszIdentifier, | | LPWSTR lpszIdentifier, |
LPWSTR lpszPathName, | | LPWSTR lpszPathName, |
DWORD dwNameSpace, | | DWORD dwNameSpace, |
DWORD dwVersion, | | DWORD dwVersion, |
LPGUID lpProviderId | | LPGUID lpProviderId |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
INT | | INT |
WSPAPI | | WSPAPI |
WSCInstallNameSpace32 ( | | WSCInstallNameSpace32 ( |
|
IN LPWSTR lpszIdentifier, | | __in LPWSTR lpszIdentifier, |
IN LPWSTR lpszPathName, | | __in LPWSTR lpszPathName, |
IN DWORD dwNameSpace, | | IN DWORD dwNameSpace, |
IN DWORD dwVersion, | | IN DWORD dwVersion, |
IN LPGUID lpProviderId | | IN LPGUID lpProviderId |
); | | ); |
|
#endif | | #endif //(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
INT | | INT |
WSPAPI | | WSPAPI |
WSCUnInstallNameSpace ( | | WSCUnInstallNameSpace ( |
IN LPGUID lpProviderId | | IN LPGUID lpProviderId |
); | | ); |
| | |
typedef | | typedef |
INT | | INT |
(WSPAPI * LPWSCUNINSTALLNAMESPACE)( | | (WSPAPI * LPWSCUNINSTALLNAMESPACE)( |
LPGUID lpProviderId | | LPGUID lpProviderId |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if (_WIN32_WINNT >= 0x0600 ) |
| | INT |
| | WSPAPI |
| | WSCInstallNameSpaceEx( |
| | __in LPWSTR lpszIdentifier, |
| | __in LPWSTR lpszPathName, |
| | IN DWORD dwNameSpace, |
| | IN DWORD dwVersion, |
| | __in LPGUID lpProviderId, |
| | __in LPBLOB lpProviderSpecific |
| | ); |
| | #endif //(defined(_WIN32_WINNT >= 0x0600) |
| | |
| | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0600)) |
| | INT |
| | WSPAPI |
| | WSCInstallNameSpaceEx32( |
| | __in LPWSTR lpszIdentifier, |
| | __in LPWSTR lpszPathName, |
| | IN DWORD dwNameSpace, |
| | IN DWORD dwVersion, |
| | IN LPGUID lpProviderId, |
| | IN LPBLOB lpProviderSpecific |
| | ); |
| | #endif //(defined(_WIN64) && (_WIN32_WINNT >= 0x0600)) |
| | |
| | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
INT | | INT |
WSPAPI | | WSPAPI |
WSCUnInstallNameSpace32 ( | | WSCUnInstallNameSpace32 ( |
IN LPGUID lpProviderId | | IN LPGUID lpProviderId |
); | | ); |
|
#endif | | #endif //(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
INT | | INT |
WSPAPI | | WSPAPI |
WSCEnableNSProvider ( | | WSCEnableNSProvider ( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN BOOL fEnable | | IN BOOL fEnable |
); | | ); |
| | |
typedef | | typedef |
INT | | INT |
(WSPAPI * LPWSCENABLENSPROVIDER)( | | (WSPAPI * LPWSCENABLENSPROVIDER)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
BOOL fEnable | | BOOL fEnable |
); | | ); |
| | |
|
#if defined(_WIN64) | | #if(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
INT | | INT |
WSPAPI | | WSPAPI |
WSCEnableNSProvider32 ( | | WSCEnableNSProvider32 ( |
IN LPGUID lpProviderId, | | IN LPGUID lpProviderId, |
IN BOOL fEnable | | IN BOOL fEnable |
); | | ); |
|
| | #endif //(defined(_WIN64) && (_WIN32_WINNT >= 0x0501)) |
| | |
| | #if (_WIN32_WINNT >= 0x0600) |
| | |
| | #if defined(_WIN64) |
| | int WSPAPI WSCInstallProviderAndChains64_32( |
| | #else |
| | int WSPAPI WSCInstallProviderAndChains( |
| | #endif |
| | IN LPGUID lpProviderId, |
| | __in const LPWSTR lpszProviderDllPath, |
| | #if defined(_WIN64) |
| | __in const LPWSTR lpszProviderDllPath32, |
#endif | | #endif |
|
| | __in const LPWSTR lpszLspName, |
| | IN DWORD dwServiceFlags, |
| | __inout_ecount(dwNumberOfEntries) LPWSAPROTOCOL_INFOW lpProtocolInfoList, |
| | IN DWORD dwNumberOfEntries, |
| | OUT LPDWORD lpdwCatalogEntryId OPTIONAL, |
| | OUT LPINT lpErrno); |
| | |
| | #endif //(_WIN32_WINNT >= 0x0600) |
| | |
/* | | /* |
* Pointers to the individual entries in the namespace proc table. | | * Pointers to the individual entries in the namespace proc table. |
*/ | | */ |
| | |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPCLEANUP)( | | (WSAAPI * LPNSPCLEANUP)( |
LPGUID lpProviderId | | LPGUID lpProviderId |
); | | ); |
| | |
skipping to change at line 1070 | | skipping to change at line 1292 |
| | |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPLOOKUPSERVICENEXT)( | | (WSAAPI * LPNSPLOOKUPSERVICENEXT)( |
HANDLE hLookup, | | HANDLE hLookup, |
DWORD dwControlFlags, | | DWORD dwControlFlags, |
LPDWORD lpdwBufferLength, | | LPDWORD lpdwBufferLength, |
LPWSAQUERYSETW lpqsResults | | LPWSAQUERYSETW lpqsResults |
); | | ); |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPIOCTL)( | | (WSAAPI * LPNSPIOCTL)( |
HANDLE hLookup, | | HANDLE hLookup, |
DWORD dwControlCode, | | DWORD dwControlCode, |
LPVOID lpvInBuffer, | | LPVOID lpvInBuffer, |
DWORD cbInBuffer, | | DWORD cbInBuffer, |
LPVOID lpvOutBuffer, | | LPVOID lpvOutBuffer, |
DWORD cbOutBuffer, | | DWORD cbOutBuffer, |
LPDWORD lpcbBytesReturned, | | LPDWORD lpcbBytesReturned, |
LPWSACOMPLETION lpCompletion, | | LPWSACOMPLETION lpCompletion, |
LPWSATHREADID lpThreadId | | LPWSATHREADID lpThreadId |
); | | ); |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPLOOKUPSERVICEEND)( | | (WSAAPI * LPNSPLOOKUPSERVICEEND)( |
HANDLE hLookup | | HANDLE hLookup |
); | | ); |
| | |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPSETSERVICE)( | | (WSAAPI * LPNSPSETSERVICE)( |
| | |
skipping to change at line 1144 | | skipping to change at line 1368 |
| | |
LPNSPCLEANUP NSPCleanup; | | LPNSPCLEANUP NSPCleanup; |
LPNSPLOOKUPSERVICEBEGIN NSPLookupServiceBegin; | | LPNSPLOOKUPSERVICEBEGIN NSPLookupServiceBegin; |
LPNSPLOOKUPSERVICENEXT NSPLookupServiceNext; | | LPNSPLOOKUPSERVICENEXT NSPLookupServiceNext; |
LPNSPLOOKUPSERVICEEND NSPLookupServiceEnd; | | LPNSPLOOKUPSERVICEEND NSPLookupServiceEnd; |
LPNSPSETSERVICE NSPSetService; | | LPNSPSETSERVICE NSPSetService; |
LPNSPINSTALLSERVICECLASS NSPInstallServiceClass; | | LPNSPINSTALLSERVICECLASS NSPInstallServiceClass; |
LPNSPREMOVESERVICECLASS NSPRemoveServiceClass; | | LPNSPREMOVESERVICECLASS NSPRemoveServiceClass; |
LPNSPGETSERVICECLASSINFO NSPGetServiceClassInfo; | | LPNSPGETSERVICECLASSINFO NSPGetServiceClassInfo; |
| | |
|
| | #if(_WIN32_WINNT >= 0x0501) |
// These APIs were added later, so must appear here | | // These APIs were added later, so must appear here |
// to keep the pointers in the structure in order. | | // to keep the pointers in the structure in order. |
// Namespaces unaware of these APIs will set cbSize | | // Namespaces unaware of these APIs will set cbSize |
// to match the size of FIELD_OFFSET(NSP_ROUTINE, NSPIoctl). | | // to match the size of FIELD_OFFSET(NSP_ROUTINE, NSPIoctl). |
LPNSPIOCTL NSPIoctl; | | LPNSPIOCTL NSPIoctl; |
|
| | #endif //(_WIN32_WINNT >= 0x0501) |
| | |
} NSP_ROUTINE, FAR * LPNSP_ROUTINE; | | } NSP_ROUTINE, FAR * LPNSP_ROUTINE; |
| | |
/* | | /* |
* Startup procedures. | | * Startup procedures. |
*/ | | */ |
| | |
INT | | INT |
WSAAPI | | WSAAPI |
NSPStartup( | | NSPStartup( |
|
LPGUID lpProviderId, | | __in LPGUID lpProviderId, |
LPNSP_ROUTINE lpnspRoutines | | __inout LPNSP_ROUTINE lpnspRoutines |
); | | ); |
| | |
typedef | | typedef |
INT | | INT |
(WSAAPI * LPNSPSTARTUP)( | | (WSAAPI * LPNSPSTARTUP)( |
LPGUID lpProviderId, | | LPGUID lpProviderId, |
LPNSP_ROUTINE lpnspRoutines | | LPNSP_ROUTINE lpnspRoutines |
); | | ); |
| | |
|
| | typedef |
| | INT |
| | (WSAAPI * LPNSPV2STARTUP)( |
| | LPGUID lpProviderId, |
| | LPVOID * ppvClientSessionArg |
| | ); |
| | |
| | typedef |
| | INT |
| | (WSAAPI * LPNSPV2CLEANUP)( |
| | LPGUID lpProviderId, |
| | LPVOID pvClientSessionArg |
| | ); |
| | |
| | typedef |
| | INT |
| | (WSAAPI * LPNSPV2LOOKUPSERVICEBEGIN)( |
| | LPGUID lpProviderId, |
| | LPWSAQUERYSET2W lpqsRestrictions, |
| | DWORD dwControlFlags, |
| | LPVOID lpvClientSessionArg, |
| | LPHANDLE lphLookup |
| | ); |
| | |
| | typedef |
| | VOID |
| | (WSAAPI * LPNSPV2LOOKUPSERVICENEXTEX)( |
| | HANDLE hAsyncCall, |
| | HANDLE hLookup, |
| | DWORD dwControlFlags, |
| | LPDWORD lpdwBufferLength, |
| | LPWSAQUERYSET2W lpqsResults |
| | ); |
| | |
| | typedef |
| | INT |
| | (WSAAPI * LPNSPV2LOOKUPSERVICEEND)( |
| | HANDLE hLookup |
| | ); |
| | |
| | typedef |
| | VOID |
| | (WSAAPI * LPNSPV2SETSERVICEEX)( |
| | HANDLE hAsyncCall, |
| | LPGUID lpProviderId, |
| | LPWSAQUERYSET2W lpqsRegInfo, |
| | WSAESETSERVICEOP essOperation, |
| | DWORD dwControlFlags, |
| | LPVOID lpvClientSessionArg |
| | ); |
| | |
| | typedef |
| | VOID |
| | (WSAAPI * LPNSPV2CLIENTSESSIONRUNDOWN)( |
| | LPGUID lpProviderId, |
| | LPVOID pvClientSessionArg |
| | ); |
| | |
| | typedef struct _NSPV2_ROUTINE { |
| | DWORD cbSize; |
| | DWORD dwMajorVersion; |
| | DWORD dwMinorVersion; |
| | LPNSPV2STARTUP NSPv2Startup; |
| | LPNSPV2CLEANUP NSPv2Cleanup; |
| | LPNSPV2LOOKUPSERVICEBEGIN NSPv2LookupServiceBegin; |
| | LPNSPV2LOOKUPSERVICENEXTEX NSPv2LookupServiceNextEx; |
| | LPNSPV2LOOKUPSERVICEEND NSPv2LookupServiceEnd; |
| | LPNSPV2SETSERVICEEX NSPv2SetServiceEx; |
| | LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown; |
| | } NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE; |
| | typedef const NSPV2_ROUTINE * PCNSPV2_ROUTINE, * LPCNSPV2_ROUTINE; |
| | |
| | #if(_WIN32_WINNT >= 0x0600) |
| | |
| | INT WSAAPI WSAAdvertiseProvider( |
| | __in const GUID * puuidProviderId, |
| | __in const LPCNSPV2_ROUTINE pNSPv2Routine); |
| | |
| | INT WSAAPI WSAUnadvertiseProvider( |
| | __in const GUID * puuidProviderId); |
| | |
| | INT WSAAPI WSAProviderCompleteAsyncCall( |
| | __in HANDLE hAsyncCall, |
| | __in INT iRetCode); |
| | |
| | #endif //(_WIN32_WINNT >= 0x0600) |
| | |
#ifdef __cplusplus | | #ifdef __cplusplus |
} | | } |
#endif | | #endif |
| | |
#if !defined(_WIN64) | | #if !defined(_WIN64) |
#include <poppack.h> | | #include <poppack.h> |
#endif | | #endif |
| | |
#endif /* _WINSOCK2SPI_ */ | | #endif /* _WINSOCK2SPI_ */ |
| | |
End of changes. 60 change blocks. |
43 lines changed or deleted | | 357 lines changed or added |
|