1 /* 2 * COPYRIGHT: See COPYING in the top level directory 3 * PROJECT: ReactOS Ancillary Function Driver DLL 4 * FILE: dll/win32/msafd/include/helpers.h 5 * PURPOSE: Definitions for helper DLL management 6 */ 7 #ifndef __HELPERS_H 8 #define __HELPERS_H 9 10 //#include <msafd.h> 11 12 typedef struct _HELPER_DATA { 13 LIST_ENTRY Helpers; 14 LONG RefCount; 15 HANDLE hInstance; 16 INT MinWSAddressLength; 17 INT MaxWSAddressLength; 18 INT MinTDIAddressLength; 19 INT MaxTDIAddressLength; 20 BOOLEAN UseDelayedAcceptance; 21 PWINSOCK_MAPPING Mapping; 22 PWSH_OPEN_SOCKET WSHOpenSocket; 23 PWSH_OPEN_SOCKET2 WSHOpenSocket2; 24 PWSH_JOIN_LEAF WSHJoinLeaf; 25 PWSH_NOTIFY WSHNotify; 26 PWSH_GET_SOCKET_INFORMATION WSHGetSocketInformation; 27 PWSH_SET_SOCKET_INFORMATION WSHSetSocketInformation; 28 PWSH_GET_SOCKADDR_TYPE WSHGetSockaddrType; 29 PWSH_GET_WILDCARD_SOCKADDR WSHGetWildcardSockaddr; 30 PWSH_GET_BROADCAST_SOCKADDR WSHGetBroadcastSockaddr; 31 PWSH_ADDRESS_TO_STRING WSHAddressToString; 32 PWSH_STRING_TO_ADDRESS WSHStringToAddress; 33 PWSH_IOCTL WSHIoctl; 34 WCHAR TransportName[1]; 35 } HELPER_DATA, *PHELPER_DATA; 36 37 int SockLoadHelperDll( 38 PWSTR TransportName, 39 PWINSOCK_MAPPING Mapping, 40 PHELPER_DATA *HelperDllData 41 ); 42 43 int SockLoadTransportMapping( 44 PWSTR TransportName, 45 PWINSOCK_MAPPING *Mapping 46 ); 47 48 int SockLoadTransportList( 49 PWSTR *TransportList 50 ); 51 52 BOOL SockIsTripleInMapping( 53 PWINSOCK_MAPPING Mapping, 54 INT AddressFamily, 55 INT SocketType, 56 INT Protocol 57 ); 58 59 int SockGetTdiName( 60 PINT AddressFamily, 61 PINT SocketType, 62 PINT Protocol, 63 GROUP Group, 64 DWORD Flags, 65 PUNICODE_STRING TransportName, 66 PVOID *HelperDllContext, 67 PHELPER_DATA *HelperDllData, 68 PDWORD Events 69 ); 70 71 #endif /* __HELPERS_H */ 72 73 /* EOF */ 74