1 /* 2 * COPYRIGHT: See COPYING in the top level directory 3 * PROJECT: ReactOS WinSock Helper DLL for TCP/IP 4 * FILE: include/wshtcpip.h 5 * PURPOSE: WinSock Helper DLL for TCP/IP header 6 */ 7 #ifndef __WSHTCPIP_H 8 #define __WSHTCPIP_H 9 10 #define WIN32_NO_STATUS 11 #define _INC_WINDOWS 12 #define COM_NO_WINDOWS_H 13 14 #include <stdarg.h> 15 16 #include <windef.h> 17 #include <winbase.h> 18 #include <wsahelp.h> 19 #include <tdiinfo.h> 20 #include <tcpioctl.h> 21 #include <tdilib.h> 22 #include <ws2tcpip.h> 23 #include <rtlfuncs.h> 24 25 #define EXPORT WINAPI 26 27 #define DD_TCP_DEVICE_NAME L"\\Device\\Tcp" 28 #define DD_UDP_DEVICE_NAME L"\\Device\\Udp" 29 #define DD_RAW_IP_DEVICE_NAME L"\\Device\\RawIp" 30 31 typedef enum _SOCKET_STATE { 32 SocketStateCreated, 33 SocketStateBound, 34 SocketStateListening, 35 SocketStateConnected 36 } SOCKET_STATE, *PSOCKET_STATE; 37 38 typedef struct _QUEUED_REQUEST { 39 PTCP_REQUEST_SET_INFORMATION_EX Info; 40 PVOID Next; 41 } QUEUED_REQUEST, *PQUEUED_REQUEST; 42 43 typedef struct _SOCKET_CONTEXT { 44 INT AddressFamily; 45 INT SocketType; 46 INT Protocol; 47 DWORD Flags; 48 DWORD AddrFileEntityType; 49 DWORD AddrFileInstance; 50 SOCKET_STATE SocketState; 51 PQUEUED_REQUEST RequestQueue; 52 BOOL DontRoute; 53 } SOCKET_CONTEXT, *PSOCKET_CONTEXT; 54 55 INT 56 WSHIoctl_GetInterfaceList( 57 IN LPVOID OutputBuffer, 58 IN DWORD OutputBufferLength, 59 OUT LPDWORD NumberOfBytesReturned, 60 OUT LPBOOL NeedsCompletion); 61 62 #endif /* __WSHTCPIP_H */ 63 64 /* EOF */ 65