[PATCH 3/4] ws2_32: Add protocol information for TCP and UDP over IPv6.
Zebediah Figura
z.figura12 at gmail.com
Fri Sep 25 16:20:39 CDT 2020
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/ws2_32/socket.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c
index 65edc077b43..0e22416b66b 100644
--- a/dlls/ws2_32/socket.c
+++ b/dlls/ws2_32/socket.c
@@ -195,6 +195,7 @@ static const WCHAR NameUdpW[] = {'U', 'D', 'P', '/', 'I', 'P', '\0'};
/* Taken from Win2k */
static const GUID ProviderIdIP = { 0xe70f1aa0, 0xab8b, 0x11cf,
{ 0x8c, 0xa3, 0x00, 0x80, 0x5f, 0x48, 0xa1, 0x92 } };
+static const GUID ProviderIdIPv6 = {0xf9eab0c0, 0x26d4, 0x11d0, {0xbb, 0xbf, 0x00, 0xaa, 0x00, 0x6c, 0x34, 0xe4}};
static const GUID ProviderIdIPX = { 0x11058240, 0xbe47, 0x11cf,
{ 0x95, 0xc8, 0x00, 0x80, 0x5f, 0x48, 0xa1, 0x92 } };
static const GUID ProviderIdSPX = { 0x11058241, 0xbe47, 0x11cf,
@@ -233,6 +234,37 @@ static const WSAPROTOCOL_INFOW supported_protocols[] =
.dwMessageSize = 0xffbb,
.szProtocol = {'U','D','P','/','I','P',0},
},
+ {
+ .dwServiceFlags1 = XP1_IFS_HANDLES | XP1_EXPEDITED_DATA | XP1_GRACEFUL_CLOSE
+ | XP1_GUARANTEED_ORDER | XP1_GUARANTEED_DELIVERY,
+ .dwProviderFlags = PFL_MATCHES_PROTOCOL_ZERO,
+ .ProviderId = ProviderIdIPv6,
+ .dwCatalogEntryId = 1004,
+ .ProtocolChain.ChainLen = 1,
+ .iVersion = 2,
+ .iAddressFamily = WS_AF_INET6,
+ .iMaxSockAddr = sizeof(struct WS_sockaddr_in6),
+ .iMinSockAddr = sizeof(struct WS_sockaddr_in6),
+ .iSocketType = WS_SOCK_STREAM,
+ .iProtocol = WS_IPPROTO_TCP,
+ .szProtocol = {'T','C','P','/','I','P','v','6',0},
+ },
+ {
+ .dwServiceFlags1 = XP1_IFS_HANDLES | XP1_SUPPORT_BROADCAST
+ | XP1_SUPPORT_MULTIPOINT | XP1_MESSAGE_ORIENTED | XP1_CONNECTIONLESS,
+ .dwProviderFlags = PFL_MATCHES_PROTOCOL_ZERO,
+ .ProviderId = ProviderIdIPv6,
+ .dwCatalogEntryId = 1005,
+ .ProtocolChain.ChainLen = 1,
+ .iVersion = 2,
+ .iAddressFamily = WS_AF_INET6,
+ .iMaxSockAddr = sizeof(struct WS_sockaddr_in6),
+ .iMinSockAddr = sizeof(struct WS_sockaddr_in6),
+ .iSocketType = WS_SOCK_DGRAM,
+ .iProtocol = WS_IPPROTO_UDP,
+ .dwMessageSize = 0xffbb,
+ .szProtocol = {'U','D','P','/','I','P','v','6',0},
+ },
{
.dwServiceFlags1 = XP1_PARTIAL_MESSAGE | XP1_SUPPORT_BROADCAST
| XP1_SUPPORT_MULTIPOINT | XP1_MESSAGE_ORIENTED | XP1_CONNECTIONLESS,
--
2.28.0
More information about the wine-devel
mailing list