Rebase against 52a99f2eadf04394a99d81f97a9a6d2a454fa959.

[api-ms-win-Stub_DLLs]
Removed multiple api-ms-win stub dlls (accepted upstream).

[kernel32-QT_Environment_Variables]
Removed patch to avoid inheritance of QT_ environment variables from host
environment to Wine (accepted upstream).

[kernel32-VirtualProtect]
Removed patch to allow to pass NULL as old protection to VirtualProtect for
Win9x compatibility (accepted upstream).

[services-SERVICE_FILE_SYSTEM_DRIVER]
Removed patch to load SERVICE_FILE_SYSTEM_DRIVER services with winedevice
(accepted upstream).

[wpcap-Several_Fixes]
Removed patch to fix possible crash in pcap_loop (accepted upstream).
This commit is contained in:
Sebastian Lackner
2016-02-17 02:20:12 +01:00
parent bcf8079573
commit 5a7d29e22e
35 changed files with 199 additions and 547 deletions

View File

@@ -1,13 +1,13 @@
From 881b4446e9f6abc97ff6bead1bfba18b49a5acca Mon Sep 17 00:00:00 2001
From 7bda5e47fc9a9eb8d92413c55c34d70ecf501300 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 8 Feb 2016 02:31:00 +0100
Subject: ws2_32: Divide values returned by SO_RCVBUF and SO_SNDBUF getsockopt
options by two.
---
dlls/ws2_32/socket.c | 8 ++++++++
dlls/ws2_32/tests/sock.c | 22 ++++++++++++++++++++++
2 files changed, 30 insertions(+)
dlls/ws2_32/socket.c | 8 ++++++++
dlls/ws2_32/tests/sock.c | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c
index f62c9cd..e17b163 100644
@@ -29,45 +29,27 @@ index f62c9cd..e17b163 100644
return ret;
case WS_SO_ACCEPTCONN:
diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c
index aeb7a62..2e7ab20 100644
index 4f11cce..a8ad6e6 100644
--- a/dlls/ws2_32/tests/sock.c
+++ b/dlls/ws2_32/tests/sock.c
@@ -1328,6 +1328,7 @@ static void test_set_getsockopt(void)
WSAPROTOCOL_INFOA infoA;
WSAPROTOCOL_INFOW infoW;
char providername[WSAPROTOCOL_LEN + 1];
+ DWORD value;
struct _prottest
{
int family, type, proto;
@@ -1371,6 +1372,27 @@ static void test_set_getsockopt(void)
err = getsockopt(s, SOL_SOCKET, SO_SNDTIMEO, (char *) &timeout, &size);
ok( !err, "get/setsockopt(SO_SNDTIMEO) failed error: %d\n", WSAGetLastError());
ok( timeout == SOCKTIMEOUT2, "getsockopt(SO_SNDTIMEO) returned wrong value %d\n", timeout);
+
+ /* SO_SNDBUF */
+ value = 4096;
+ size = sizeof(DWORD);
+ err = setsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&value, size);
+ ok( !err, "setsockopt(SO_SNDBUF) failed error: %u\n", WSAGetLastError());
+ value = 0xdeadbeef;
+ err = getsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&value, &size);
+ ok( !err, "getsockopt(SO_SNDBUF) failed error: %u\n", WSAGetLastError());
@@ -1381,7 +1381,7 @@ static void test_set_getsockopt(void)
value = 0xdeadbeef;
err = getsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&value, &size);
ok( !err, "getsockopt(SO_SNDBUF) failed error: %u\n", WSAGetLastError() );
- todo_wine ok( value == 4096, "expected 4096, got %u\n", value );
+ ok( value == 4096, "expected 4096, got %u\n", value );
+
+ /* SO_RCVBUF */
+ value = 4096;
+ size = sizeof(DWORD);
+ err = setsockopt(s, SOL_SOCKET, SO_RCVBUF, (char *)&value, size);
+ ok( !err, "setsockopt(SO_RCVBUF) failed error: %u\n", WSAGetLastError());
+ value = 0xdeadbeef;
+ err = getsockopt(s, SOL_SOCKET, SO_RCVBUF, (char *)&value, &size);
+ ok( !err, "getsockopt(SO_RCVBUF) failed error: %u\n", WSAGetLastError());
/* SO_RCVBUF */
value = 4096;
@@ -1391,7 +1391,7 @@ static void test_set_getsockopt(void)
value = 0xdeadbeef;
err = getsockopt(s, SOL_SOCKET, SO_RCVBUF, (char *)&value, &size);
ok( !err, "getsockopt(SO_RCVBUF) failed error: %u\n", WSAGetLastError() );
- todo_wine ok( value == 4096, "expected 4096, got %u\n", value );
+ ok( value == 4096, "expected 4096, got %u\n", value );
+
/* SO_LINGER */
for( i = 0; i < sizeof(linger_testvals)/sizeof(LINGER);i++) {
size = sizeof(lingval);
--
2.7.0
2.7.1