https://git.reactos.org/?p=reactos.git;a=commitdiff;h=4a3f32ff30864286a9c74…
commit 4a3f32ff30864286a9c7480b617454bc77a56d3d
Author: Jérôme Gardou <jerome.gardou(a)reactos.org>
AuthorDate: Tue Dec 8 17:45:41 2020 +0100
Commit: Jérôme Gardou <zefklop(a)users.noreply.github.com>
CommitDate: Tue Jan 5 11:03:13 2021 +0100
[WINESYNC]: revert wine-staging patchset for wininet
---
dll/win32/wininet/http.c | 196 +++++++-------
modules/rostests/winetests/wininet/http.c | 282 +--------------------
...-wininet-tests-Add-more-tests-for-cookies.patch | 145 -----------
...ts-Test-auth-credential-reusage-with-host.patch | 130 ----------
...ts-Check-cookie-behaviour-when-overriding.patch | 132 ----------
...trip-filename-if-no-path-is-set-in-cookie.patch | 82 ------
...lacing-header-fields-should-fail-if-they-.patch | 241 ------------------
7 files changed, 97 insertions(+), 1111 deletions(-)
diff --git a/dll/win32/wininet/http.c b/dll/win32/wininet/http.c
index 45036f2fe56..a4c793aaeac 100644
--- a/dll/win32/wininet/http.c
+++ b/dll/win32/wininet/http.c
@@ -766,18 +766,10 @@ static void HTTP_ProcessCookies( http_request_t *request )
int HeaderIndex;
int numCookies = 0;
LPHTTPHEADERW setCookieHeader;
- WCHAR *path, *tmp;
if(request->hdr.dwFlags & INTERNET_FLAG_NO_COOKIES)
return;
- path = heap_strdupW(request->path);
- if (!path)
- return;
-
- tmp = strrchrW(path, '/');
- if (tmp && tmp[1]) tmp[1] = 0;
-
EnterCriticalSection( &request->headers_section );
while((HeaderIndex = HTTP_GetCustomHeaderIndex(request, szSet_Cookie, numCookies++,
FALSE)) != -1)
@@ -796,11 +788,10 @@ static void HTTP_ProcessCookies( http_request_t *request )
name = substr(setCookieHeader->lpszValue, data -
setCookieHeader->lpszValue);
data++;
- set_cookie(substrz(request->server->name), substrz(path), name,
substrz(data), INTERNET_COOKIE_HTTPONLY);
+ set_cookie(substrz(request->server->name), substrz(request->path), name,
substrz(data), INTERNET_COOKIE_HTTPONLY);
}
LeaveCriticalSection( &request->headers_section );
- heap_free(path);
}
static void strip_spaces(LPWSTR start)
@@ -6152,128 +6143,127 @@ static LPWSTR * HTTP_InterpretHttpHeader(LPCWSTR buffer)
static DWORD HTTP_ProcessHeader(http_request_t *request, LPCWSTR field, LPCWSTR value,
DWORD dwModifier)
{
- LPHTTPHEADERW lphttpHdr;
+ LPHTTPHEADERW lphttpHdr = NULL;
INT index;
BOOL request_only = !!(dwModifier & HTTP_ADDHDR_FLAG_REQ);
- DWORD res = ERROR_SUCCESS;
+ DWORD res = ERROR_HTTP_INVALID_HEADER;
TRACE("--> %s: %s - 0x%08x\n", debugstr_w(field), debugstr_w(value),
dwModifier);
EnterCriticalSection( &request->headers_section );
- index = HTTP_GetCustomHeaderIndex(request, field, 0, request_only);
+ /* REPLACE wins out over ADD */
+ if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
+ dwModifier &= ~HTTP_ADDHDR_FLAG_ADD;
+
+ if (dwModifier & HTTP_ADDHDR_FLAG_ADD)
+ index = -1;
+ else
+ index = HTTP_GetCustomHeaderIndex(request, field, 0, request_only);
+
if (index >= 0)
{
- lphttpHdr = &request->custHeaders[index];
-
- /* replace existing header if FLAG_REPLACE is given */
- if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
+ if (dwModifier & HTTP_ADDHDR_FLAG_ADD_IF_NEW)
{
- HTTP_DeleteCustomHeader( request, index );
+ LeaveCriticalSection( &request->headers_section );
+ return ERROR_HTTP_INVALID_HEADER;
+ }
+ lphttpHdr = &request->custHeaders[index];
+ }
+ else if (value)
+ {
+ HTTPHEADERW hdr;
- if (value && value[0])
- {
- HTTPHEADERW hdr;
+ hdr.lpszField = (LPWSTR)field;
+ hdr.lpszValue = (LPWSTR)value;
+ hdr.wFlags = hdr.wCount = 0;
- hdr.lpszField = (LPWSTR)field;
- hdr.lpszValue = (LPWSTR)value;
- hdr.wFlags = hdr.wCount = 0;
+ if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
+ hdr.wFlags |= HDR_ISREQUEST;
- if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
- hdr.wFlags |= HDR_ISREQUEST;
+ res = HTTP_InsertCustomHeader(request, &hdr);
+ LeaveCriticalSection( &request->headers_section );
+ return res;
+ }
+ /* no value to delete */
+ else
+ {
+ LeaveCriticalSection( &request->headers_section );
+ return ERROR_SUCCESS;
+ }
- res = HTTP_InsertCustomHeader( request, &hdr );
- }
+ if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
+ lphttpHdr->wFlags |= HDR_ISREQUEST;
+ else
+ lphttpHdr->wFlags &= ~HDR_ISREQUEST;
- goto out;
- }
+ if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
+ {
+ HTTP_DeleteCustomHeader( request, index );
- /* do not add new header if FLAG_ADD_IF_NEW is set */
- if (dwModifier & HTTP_ADDHDR_FLAG_ADD_IF_NEW)
+ if (value && value[0])
{
- res = ERROR_HTTP_INVALID_HEADER; /* FIXME */
- goto out;
- }
+ HTTPHEADERW hdr;
- /* handle appending to existing header */
- if (dwModifier & COALESCEFLAGS)
- {
- LPWSTR lpsztmp;
- WCHAR ch = 0;
- INT len = 0;
- INT origlen = strlenW(lphttpHdr->lpszValue);
- INT valuelen = strlenW(value);
+ hdr.lpszField = (LPWSTR)field;
+ hdr.lpszValue = (LPWSTR)value;
+ hdr.wFlags = hdr.wCount = 0;
- /* FIXME: Should it really clear HDR_ISREQUEST? */
if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
- lphttpHdr->wFlags |= HDR_ISREQUEST;
- else
- lphttpHdr->wFlags &= ~HDR_ISREQUEST;
+ hdr.wFlags |= HDR_ISREQUEST;
- if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_COMMA)
- {
- ch = ',';
- lphttpHdr->wFlags |= HDR_COMMADELIMITED;
- }
- else if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_SEMICOLON)
- {
- ch = ';';
- lphttpHdr->wFlags |= HDR_COMMADELIMITED;
- }
-
- len = origlen + valuelen + ((ch > 0) ? 2 : 0);
-
- lpsztmp = heap_realloc(lphttpHdr->lpszValue, (len+1)*sizeof(WCHAR));
- if (lpsztmp)
- {
- lphttpHdr->lpszValue = lpsztmp;
- /* FIXME: Increment lphttpHdr->wCount. Perhaps lpszValue should be an
array */
- if (ch > 0)
- {
- lphttpHdr->lpszValue[origlen] = ch;
- origlen++;
- lphttpHdr->lpszValue[origlen] = ' ';
- origlen++;
- }
-
- memcpy(&lphttpHdr->lpszValue[origlen], value,
valuelen*sizeof(WCHAR));
- lphttpHdr->lpszValue[len] = '\0';
- }
- else
- {
- WARN("heap_realloc (%d bytes) failed\n",len+1);
- res = ERROR_OUTOFMEMORY;
- }
-
- goto out;
+ res = HTTP_InsertCustomHeader(request, &hdr);
+ LeaveCriticalSection( &request->headers_section );
+ return res;
}
- }
- /* FIXME: What about other combinations? */
- if ((dwModifier & ~HTTP_ADDHDR_FLAG_REQ) == HTTP_ADDHDR_FLAG_REPLACE)
- {
- res = ERROR_HTTP_HEADER_NOT_FOUND;
- goto out;
+ LeaveCriticalSection( &request->headers_section );
+ return ERROR_SUCCESS;
}
-
- /* FIXME: What if value == ""? */
- if (value)
+ else if (dwModifier & COALESCEFLAGS)
{
- HTTPHEADERW hdr;
+ LPWSTR lpsztmp;
+ WCHAR ch = 0;
+ INT len = 0;
+ INT origlen = strlenW(lphttpHdr->lpszValue);
+ INT valuelen = strlenW(value);
- hdr.lpszField = (LPWSTR)field;
- hdr.lpszValue = (LPWSTR)value;
- hdr.wFlags = hdr.wCount = 0;
+ if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_COMMA)
+ {
+ ch = ',';
+ lphttpHdr->wFlags |= HDR_COMMADELIMITED;
+ }
+ else if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_SEMICOLON)
+ {
+ ch = ';';
+ lphttpHdr->wFlags |= HDR_COMMADELIMITED;
+ }
- if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
- hdr.wFlags |= HDR_ISREQUEST;
+ len = origlen + valuelen + ((ch > 0) ? 2 : 0);
- res = HTTP_InsertCustomHeader( request, &hdr );
- goto out;
- }
+ lpsztmp = heap_realloc(lphttpHdr->lpszValue, (len+1)*sizeof(WCHAR));
+ if (lpsztmp)
+ {
+ lphttpHdr->lpszValue = lpsztmp;
+ /* FIXME: Increment lphttpHdr->wCount. Perhaps lpszValue should be an array */
+ if (ch > 0)
+ {
+ lphttpHdr->lpszValue[origlen] = ch;
+ origlen++;
+ lphttpHdr->lpszValue[origlen] = ' ';
+ origlen++;
+ }
- /* FIXME: What if value == NULL? */
-out:
+ memcpy(&lphttpHdr->lpszValue[origlen], value,
valuelen*sizeof(WCHAR));
+ lphttpHdr->lpszValue[len] = '\0';
+ res = ERROR_SUCCESS;
+ }
+ else
+ {
+ WARN("heap_realloc (%d bytes) failed\n",len+1);
+ res = ERROR_OUTOFMEMORY;
+ }
+ }
TRACE("<-- %d\n", res);
LeaveCriticalSection( &request->headers_section );
return res;
diff --git a/modules/rostests/winetests/wininet/http.c
b/modules/rostests/winetests/wininet/http.c
index 09646b18996..28ebd68bcf5 100644
--- a/modules/rostests/winetests/wininet/http.c
+++ b/modules/rostests/winetests/wininet/http.c
@@ -2074,22 +2074,6 @@ static const char largemsg[] =
"Content-Length: %I64u\r\n"
"\r\n";
-static const char okmsg_cookie_path[] =
-"HTTP/1.1 200 OK\r\n"
-"Date: Mon, 01 Dec 2008 13:44:34 GMT\r\n"
-"Server: winetest\r\n"
-"Content-Length: 0\r\n"
-"Set-Cookie: subcookie2=data; path=/test_cookie_set_path\r\n"
-"\r\n";
-
-static const char okmsg_cookie[] =
-"HTTP/1.1 200 OK\r\n"
-"Date: Mon, 01 Dec 2008 13:44:34 GMT\r\n"
-"Server: winetest\r\n"
-"Content-Length: 0\r\n"
-"Set-Cookie: testcookie=testvalue\r\n"
-"\r\n";
-
static const char notokmsg[] =
"HTTP/1.1 400 Bad Request\r\n"
"Server: winetest\r\n"
@@ -2308,7 +2292,7 @@ static DWORD CALLBACK server_thread(LPVOID param)
}
if (strstr(buffer, "/testC"))
{
- if (strstr(buffer, "cookie=biscuit"))
+ if (strstr(buffer, "Cookie: cookie=biscuit"))
send(c, okmsg, sizeof okmsg-1, 0);
else
send(c, notokmsg, sizeof notokmsg-1, 0);
@@ -2469,51 +2453,6 @@ static DWORD CALLBACK server_thread(LPVOID param)
else
send(c, noauthmsg, sizeof noauthmsg-1, 0);
}
- if (strstr(buffer, "/test_cookie_path1"))
- {
- if (strstr(buffer, "subcookie=data"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
- if (strstr(buffer, "/test_cookie_path2"))
- {
- if (strstr(buffer, "subcookie2=data"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
- if (strstr(buffer, "/test_cookie_set_path"))
- {
- send(c, okmsg_cookie_path, sizeof okmsg_cookie_path-1, 0);
- }
- if (strstr(buffer, "/test_cookie_merge"))
- {
- if (strstr(buffer, "subcookie=data") &&
- !strstr(buffer, "manual_cookie=test"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
- if (strstr(buffer, "/test_cookie_set_host_override"))
- {
- send(c, okmsg_cookie, sizeof okmsg_cookie-1, 0);
- }
- if (strstr(buffer, "/test_cookie_check_host_override"))
- {
- if (strstr(buffer, "Cookie:") && strstr(buffer,
"testcookie=testvalue"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
- if (strstr(buffer, "/test_cookie_check_different_host"))
- {
- if (!strstr(buffer, "foo") &&
- strstr(buffer, "cookie=biscuit"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
if (strstr(buffer, "/test_host_override"))
{
if (strstr(buffer, host_header_override))
@@ -2545,27 +2484,12 @@ static DWORD CALLBACK server_thread(LPVOID param)
{
send(c, okmsg, sizeof(okmsg)-1, 0);
}
-
if (strstr(buffer, "HEAD /test_large_content"))
{
char msg[sizeof(largemsg) + 16];
sprintf(msg, largemsg, content_length);
send(c, msg, strlen(msg), 0);
}
- if (strstr(buffer, "HEAD /test_auth_host1"))
- {
- if (strstr(buffer, "Authorization: Basic dGVzdDE6cGFzcw=="))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, noauthmsg, sizeof noauthmsg-1, 0);
- }
- if (strstr(buffer, "HEAD /test_auth_host2"))
- {
- if (strstr(buffer, "Authorization: Basic dGVzdDE6cGFzczI="))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, noauthmsg, sizeof noauthmsg-1, 0);
- }
shutdown(c, 2);
closesocket(c);
c = -1;
@@ -3261,152 +3185,6 @@ static void test_header_override(int port)
test_status_code(req, 400);
}
- InternetCloseHandle(req);
- InternetSetCookieA("http://localhost", "cookie",
"biscuit");
- req = HttpOpenRequestA(con, NULL, "/testC", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- req = HttpOpenRequestA(con, NULL, "/test_cookie_set_host_override", NULL,
NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- req = HttpOpenRequestA(con, NULL, "/test_cookie_check_host_override", NULL,
NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- req = HttpOpenRequestA(con, NULL, "/test_cookie_check_host_override", NULL,
NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetSetCookieA("http://test.local", "foo", "bar");
- req = HttpOpenRequestA(con, NULL, "/test_cookie_check_different_host",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- req = HttpOpenRequestA(con, NULL, "/test_cookie_check_different_host",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-
- ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
- ok(ses != NULL, "InternetOpenA failed\n");
-
- con = InternetConnectA(ses, "localhost", port, "test1",
"pass", INTERNET_SERVICE_HTTP, 0, 0);
- ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-
- req = HttpOpenRequestA( con, "HEAD", "/test_auth_host1", NULL,
NULL, NULL, 0, 0);
- ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-
- ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
- ok(ses != NULL, "InternetOpenA failed\n");
-
- con = InternetConnectA( ses, "localhost", port, NULL, NULL,
INTERNET_SERVICE_HTTP, 0, 0);
- ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-
- req = HttpOpenRequestA(con, "HEAD", "/test_auth_host1", NULL,
NULL, NULL, 0, 0);
- ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA( req, NULL, 0, NULL, 0 );
- ok( ret, "HttpSendRequestA failed %u\n", GetLastError() );
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-
- ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
- ok(ses != NULL, "InternetOpenA failed\n");
-
- con = InternetConnectA(ses, "localhost", port, "test1",
"pass2", INTERNET_SERVICE_HTTP, 0, 0);
- ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-
- req = HttpOpenRequestA(con, "HEAD", "/test_auth_host2", NULL,
NULL, NULL, 0, 0);
- ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-
- ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-
- test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-
- ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
- ok(ses != NULL, "InternetOpenA failed\n");
-
- con = InternetConnectA(ses, "localhost", port, NULL, NULL,
INTERNET_SERVICE_HTTP, 0, 0);
- ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-
- req = HttpOpenRequestA(con, "HEAD", "/test_auth_host2", NULL,
NULL, NULL, 0, 0);
- ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-
- test_status_code(req, 200);
-
InternetCloseHandle(req);
InternetCloseHandle(con);
InternetCloseHandle(ses);
@@ -4053,7 +3831,7 @@ static void test_cookie_header(int port)
HINTERNET ses, con, req;
DWORD size, error;
BOOL ret;
- char buffer[256];
+ char buffer[64];
ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
ok(ses != NULL, "InternetOpen failed\n");
@@ -4081,7 +3859,7 @@ static void test_cookie_header(int port)
size = sizeof(buffer);
ret = HttpQueryInfoA(req, HTTP_QUERY_COOKIE | HTTP_QUERY_FLAG_REQUEST_HEADERS,
buffer, &size, NULL);
ok(ret, "HttpQueryInfo failed: %u\n", GetLastError());
- ok(!!strstr(buffer, "cookie=not biscuit"), "got '%s' expected
\'cookie=not biscuit\'\n", buffer);
+ ok(!strcmp(buffer, "cookie=not biscuit"), "got '%s' expected
\'cookie=not biscuit\'\n", buffer);
ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
ok(ret, "HttpSendRequest failed: %u\n", GetLastError());
@@ -4092,61 +3870,9 @@ static void test_cookie_header(int port)
size = sizeof(buffer);
ret = HttpQueryInfoA(req, HTTP_QUERY_COOKIE | HTTP_QUERY_FLAG_REQUEST_HEADERS,
buffer, &size, NULL);
ok(ret, "HttpQueryInfo failed: %u\n", GetLastError());
- ok(!strstr(buffer, "cookie=not biscuit"), "'%s' should not
contain \'cookie=not biscuit\'\n", buffer);
- ok(!!strstr(buffer, "cookie=biscuit"), "'%s' should contain
\'cookie=biscuit\'\n", buffer);
-
- InternetCloseHandle(req);
-
- InternetSetCookieA("http://localhost/testCCCC", "subcookie",
"data");
-
- req = HttpOpenRequestA(con, NULL, "/test_cookie_path1", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
+ ok(!strcmp(buffer, "cookie=biscuit"), "got '%s' expected
\'cookie=biscuit\'\n", buffer);
- test_status_code(req, 200);
InternetCloseHandle(req);
-
- req = HttpOpenRequestA(con, NULL, "/test_cookie_path1/abc", NULL, NULL,
NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
- InternetCloseHandle(req);
-
- req = HttpOpenRequestA(con, NULL, "/test_cookie_set_path", NULL, NULL,
NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
- InternetCloseHandle(req);
-
- req = HttpOpenRequestA(con, NULL, "/test_cookie_path2", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 400);
- InternetCloseHandle(req);
-
- req = HttpOpenRequestA(con, NULL, "/test_cookie_merge", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
- ok(req != NULL, "HttpOpenRequest failed\n");
-
- ret = HttpAddRequestHeadersA(req, "Cookie: manual_cookie=test\r\n", ~0u,
HTTP_ADDREQ_FLAG_ADD);
- ok(ret, "HttpAddRequestHeaders failed: %u\n", GetLastError());
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
- test_status_code(req, 200);
- InternetCloseHandle(req);
-
InternetCloseHandle(con);
InternetCloseHandle(ses);
}
diff --git
a/sdk/tools/winesync/wininet_staging/0001-wininet-tests-Add-more-tests-for-cookies.patch
b/sdk/tools/winesync/wininet_staging/0001-wininet-tests-Add-more-tests-for-cookies.patch
deleted file mode 100644
index 110d815705a..00000000000
---
a/sdk/tools/winesync/wininet_staging/0001-wininet-tests-Add-more-tests-for-cookies.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-From 915a805cabaec3cc265f4f8ad9f0005502f8fd24 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael(a)fds-team.de>
-Date: Fri, 15 May 2015 20:37:19 +0200
-Subject: [PATCH] wininet/tests: Add more tests for cookies.
-
----
- modules/rostests/winetests/wininet/http.c | 92 +++++++++++++++++++++++++++++++++++++--
- 1 file changed, 89 insertions(+), 3 deletions(-)
-
-diff --git a/modules/rostests/winetests/wininet/http.c
b/modules/rostests/winetests/wininet/http.c
-index 90a38dc3a..55d51b299 100644
---- a/modules/rostests/winetests/wininet/http.c
-+++ b/modules/rostests/winetests/wininet/http.c
-@@ -2068,6 +2068,14 @@ static const char largemsg[] =
- "Content-Length: %I64u\r\n"
- "\r\n";
-
-+static const char okmsg_cookie_path[] =
-+"HTTP/1.1 200 OK\r\n"
-+"Date: Mon, 01 Dec 2008 13:44:34 GMT\r\n"
-+"Server: winetest\r\n"
-+"Content-Length: 0\r\n"
-+"Set-Cookie: subcookie2=data; path=/test_cookie_set_path\r\n"
-+"\r\n";
-+
- static const char notokmsg[] =
- "HTTP/1.1 400 Bad Request\r\n"
- "Server: winetest\r\n"
-@@ -2438,6 +2446,32 @@ static DWORD CALLBACK server_thread(LPVOID param)
- else
- send(c, noauthmsg, sizeof noauthmsg-1, 0);
- }
-+ if (strstr(buffer, "/test_cookie_path1"))
-+ {
-+ if (strstr(buffer, "subcookie=data"))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, notokmsg, sizeof notokmsg-1, 0);
-+ }
-+ if (strstr(buffer, "/test_cookie_path2"))
-+ {
-+ if (strstr(buffer, "subcookie2=data"))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, notokmsg, sizeof notokmsg-1, 0);
-+ }
-+ if (strstr(buffer, "/test_cookie_set_path"))
-+ {
-+ send(c, okmsg_cookie_path, sizeof okmsg_cookie_path-1, 0);
-+ }
-+ if (strstr(buffer, "/test_cookie_merge"))
-+ {
-+ if (strstr(buffer, "subcookie=data") &&
-+ !strstr(buffer, "manual_cookie=test"))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, notokmsg, sizeof notokmsg-1, 0);
-+ }
- if (strstr(buffer, "/test_host_override"))
- {
- if (strstr(buffer, host_header_override))
-@@ -3816,7 +3850,7 @@ static void test_cookie_header(int port)
- HINTERNET ses, con, req;
- DWORD size, error;
- BOOL ret;
-- char buffer[64];
-+ char buffer[256];
-
- ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,
0);
- ok(ses != NULL, "InternetOpen failed\n");
-@@ -3844,7 +3878,7 @@ static void test_cookie_header(int port)
- size = sizeof(buffer);
- ret = HttpQueryInfoA(req, HTTP_QUERY_COOKIE | HTTP_QUERY_FLAG_REQUEST_HEADERS,
buffer, &size, NULL);
- ok(ret, "HttpQueryInfo failed: %u\n", GetLastError());
-- ok(!strcmp(buffer, "cookie=not biscuit"), "got '%s' expected
\'cookie=not biscuit\'\n", buffer);
-+ ok(!!strstr(buffer, "cookie=not biscuit"), "got '%s' expected
\'cookie=not biscuit\'\n", buffer);
-
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed: %u\n", GetLastError());
-@@ -3855,9 +3889,61 @@ static void test_cookie_header(int port)
- size = sizeof(buffer);
- ret = HttpQueryInfoA(req, HTTP_QUERY_COOKIE | HTTP_QUERY_FLAG_REQUEST_HEADERS,
buffer, &size, NULL);
- ok(ret, "HttpQueryInfo failed: %u\n", GetLastError());
-- ok(!strcmp(buffer, "cookie=biscuit"), "got '%s' expected
\'cookie=biscuit\'\n", buffer);
-+ ok(!strstr(buffer, "cookie=not biscuit"), "'%s' should not
contain \'cookie=not biscuit\'\n", buffer);
-+ ok(!!strstr(buffer, "cookie=biscuit"), "'%s' should contain
\'cookie=biscuit\'\n", buffer);
-+
-+ InternetCloseHandle(req);
-+
-+ InternetSetCookieA("http://localhost/testCCCC", "subcookie",
"data");
-+
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_path1", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+ InternetCloseHandle(req);
-+
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_path1/abc", NULL, NULL,
NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+ InternetCloseHandle(req);
-+
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_set_path", NULL, NULL,
NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+ InternetCloseHandle(req);
-+
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_path2", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 400);
- InternetCloseHandle(req);
-+
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_merge", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpAddRequestHeadersA(req, "Cookie: manual_cookie=test\r\n", ~0u,
HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed: %u\n", GetLastError());
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+ InternetCloseHandle(req);
-+
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
- }
---
-2.23.0
-
diff --git
a/sdk/tools/winesync/wininet_staging/0002-wininet-tests-Test-auth-credential-reusage-with-host.patch
b/sdk/tools/winesync/wininet_staging/0002-wininet-tests-Test-auth-credential-reusage-with-host.patch
deleted file mode 100644
index f24048f8b82..00000000000
---
a/sdk/tools/winesync/wininet_staging/0002-wininet-tests-Test-auth-credential-reusage-with-host.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 303a7d54eca11f350f200bf3747646349a84536f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael(a)fds-team.de>
-Date: Fri, 15 May 2015 21:18:37 +0200
-Subject: [PATCH] wininet/tests: Test auth credential reusage with host
- override.
-
----
- modules/rostests/winetests/wininet/http.c | 93 +++++++++++++++++++++++++++++++++++++++
- 1 file changed, 93 insertions(+)
-
-diff --git a/modules/rostests/winetests/wininet/http.c
b/modules/rostests/winetests/wininet/http.c
-index b06bd6c04d1..59689baf87e 100644
---- a/modules/rostests/winetests/wininet/http.c
-+++ b/modules/rostests/winetests/wininet/http.c
-@@ -2496,12 +2496,27 @@ static DWORD CALLBACK server_thread(LPVOID param)
- {
- send(c, okmsg, sizeof(okmsg)-1, 0);
- }
-+
- if (strstr(buffer, "HEAD /test_large_content"))
- {
- char msg[sizeof(largemsg) + 16];
- sprintf(msg, largemsg, content_length);
- send(c, msg, strlen(msg), 0);
- }
-+ if (strstr(buffer, "HEAD /test_auth_host1"))
-+ {
-+ if (strstr(buffer, "Authorization: Basic dGVzdDE6cGFzcw=="))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, noauthmsg, sizeof noauthmsg-1, 0);
-+ }
-+ if (strstr(buffer, "HEAD /test_auth_host2"))
-+ {
-+ if (strstr(buffer, "Authorization: Basic dGVzdDE6cGFzczI="))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, noauthmsg, sizeof noauthmsg-1, 0);
-+ }
- shutdown(c, 2);
- closesocket(c);
- c = -1;
-@@ -3200,6 +3215,84 @@ static void test_header_override(int port)
- InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-+
-+ ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,
0);
-+ ok(ses != NULL, "InternetOpenA failed\n");
-+
-+ con = InternetConnectA(ses, "localhost", port, "test1",
"pass", INTERNET_SERVICE_HTTP, 0, 0);
-+ ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-+
-+ req = HttpOpenRequestA( con, "HEAD", "/test_auth_host1", NULL,
NULL, NULL, 0, 0);
-+ ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ InternetCloseHandle(con);
-+ InternetCloseHandle(ses);
-+
-+ ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,
0);
-+ ok(ses != NULL, "InternetOpenA failed\n");
-+
-+ con = InternetConnectA( ses, "localhost", port, NULL, NULL,
INTERNET_SERVICE_HTTP, 0, 0);
-+ ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-+
-+ req = HttpOpenRequestA(con, "HEAD", "/test_auth_host1", NULL,
NULL, NULL, 0, 0);
-+ ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA( req, NULL, 0, NULL, 0 );
-+ ok( ret, "HttpSendRequestA failed %u\n", GetLastError() );
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ InternetCloseHandle(con);
-+ InternetCloseHandle(ses);
-+
-+ ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,
0);
-+ ok(ses != NULL, "InternetOpenA failed\n");
-+
-+ con = InternetConnectA(ses, "localhost", port, "test1",
"pass2", INTERNET_SERVICE_HTTP, 0, 0);
-+ ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-+
-+ req = HttpOpenRequestA(con, "HEAD", "/test_auth_host2", NULL,
NULL, NULL, 0, 0);
-+ ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ InternetCloseHandle(con);
-+ InternetCloseHandle(ses);
-+
-+ ses = InternetOpenA("winetest", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,
0);
-+ ok(ses != NULL, "InternetOpenA failed\n");
-+
-+ con = InternetConnectA(ses, "localhost", port, NULL, NULL,
INTERNET_SERVICE_HTTP, 0, 0);
-+ ok(con != NULL, "InternetConnectA failed %u\n", GetLastError());
-+
-+ req = HttpOpenRequestA(con, "HEAD", "/test_auth_host2", NULL,
NULL, NULL, 0, 0);
-+ ok(req != NULL, "HttpOpenRequestA failed %u\n", GetLastError());
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequestA failed %u\n", GetLastError());
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ InternetCloseHandle(con);
-+ InternetCloseHandle(ses);
- }
-
- static void test_connection_closing(int port)
---
-2.17.1
-
diff --git
a/sdk/tools/winesync/wininet_staging/0003-wininet-tests-Check-cookie-behaviour-when-overriding.patch
b/sdk/tools/winesync/wininet_staging/0003-wininet-tests-Check-cookie-behaviour-when-overriding.patch
deleted file mode 100644
index 4aa7802cb67..00000000000
---
a/sdk/tools/winesync/wininet_staging/0003-wininet-tests-Check-cookie-behaviour-when-overriding.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 21ca3efb2a8a1f505f9e3f3ed2126a766d4a127f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael(a)fds-team.de>
-Date: Fri, 15 May 2015 23:09:20 +0200
-Subject: wininet/tests: Check cookie behaviour when overriding host.
-
----
- modules/rostests/winetests/wininet/http.c | 95
+++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 95 insertions(+)
-
-diff --git a/modules/rostests/winetests/wininet/http.c
b/modules/rostests/winetests/wininet/http.c
-index 546e473..0121aa5 100644
---- a/modules/rostests/winetests/wininet/http.c
-+++ b/modules/rostests/winetests/wininet/http.c
-@@ -2000,6 +2000,14 @@ static const char okmsg_cookie_path[] =
- "Set-Cookie: subcookie2=data; path=/test_cookie_set_path\r\n"
- "\r\n";
-
-+static const char okmsg_cookie[] =
-+"HTTP/1.1 200 OK\r\n"
-+"Date: Mon, 01 Dec 2008 13:44:34 GMT\r\n"
-+"Server: winetest\r\n"
-+"Content-Length: 0\r\n"
-+"Set-Cookie: testcookie=testvalue\r\n"
-+"\r\n";
-+
- static const char notokmsg[] =
- "HTTP/1.1 400 Bad Request\r\n"
- "Server: winetest\r\n"
-@@ -2391,6 +2399,25 @@ static DWORD CALLBACK server_thread(LPVOID param)
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
- }
-+ if (strstr(buffer, "/test_cookie_set_host_override"))
-+ {
-+ send(c, okmsg_cookie, sizeof okmsg_cookie-1, 0);
-+ }
-+ if (strstr(buffer, "/test_cookie_check_host_override"))
-+ {
-+ if (strstr(buffer, "Cookie:") && strstr(buffer,
"testcookie=testvalue"))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, notokmsg, sizeof notokmsg-1, 0);
-+ }
-+ if (strstr(buffer, "/test_cookie_check_different_host"))
-+ {
-+ if (!strstr(buffer, "foo") &&
-+ strstr(buffer, "cookie=biscuit"))
-+ send(c, okmsg, sizeof okmsg-1, 0);
-+ else
-+ send(c, notokmsg, sizeof notokmsg-1, 0);
-+ }
- if (strstr(buffer, "/test_host_override"))
- {
- if (strstr(buffer, host_header_override))
-@@ -3130,6 +3157,74 @@ static void test_header_override(int port)
- }
-
- InternetCloseHandle(req);
-+ InternetSetCookieA("http://localhost", "cookie",
"biscuit");
-+ req = HttpOpenRequestA(con, NULL, "/testC", NULL, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_set_host_override", NULL,
NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_check_host_override",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code_todo(req, 200);
-+
-+ InternetCloseHandle(req);
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_check_host_override",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code_todo(req, 200);
-+
-+ InternetCloseHandle(req);
-+ InternetSetCookieA("http://test.local", "foo",
"bar");
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_check_different_host",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
-+ req = HttpOpenRequestA(con, NULL, "/test_cookie_check_different_host",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-+ ok(req != NULL, "HttpOpenRequest failed\n");
-+
-+ ret = HttpAddRequestHeadersA(req, host_header_override, ~0u, HTTP_ADDREQ_FLAG_ADD);
-+ ok(ret, "HttpAddRequestHeaders failed\n");
-+
-+ ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
-+ ok(ret, "HttpSendRequest failed\n");
-+
-+ test_status_code(req, 200);
-+
-+ InternetCloseHandle(req);
- InternetCloseHandle(con);
- InternetCloseHandle(ses);
-
---
-2.8.0
-
diff --git
a/sdk/tools/winesync/wininet_staging/0004-wininet-Strip-filename-if-no-path-is-set-in-cookie.patch
b/sdk/tools/winesync/wininet_staging/0004-wininet-Strip-filename-if-no-path-is-set-in-cookie.patch
deleted file mode 100644
index 7d4dbf3888d..00000000000
---
a/sdk/tools/winesync/wininet_staging/0004-wininet-Strip-filename-if-no-path-is-set-in-cookie.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From a283ad7a863862caf312843950b88bdfd9faeacc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael(a)fds-team.de>
-Date: Sat, 16 May 2015 00:24:35 +0200
-Subject: wininet: Strip filename if no path is set in cookie.
-
-The order of the stored cookies doesn't match in /testC, so
-be a bit less strict in the test.
----
- dll/win32/wininet/http.c | 11 ++++++++++-
- modules/rostests/winetests/wininet/http.c | 6 +++---
- 2 files changed, 13 insertions(+), 4 deletions(-)
-
-diff --git a/dll/win32/wininet/http.c b/dll/win32/wininet/http.c
-index c44156c..7281512 100644
---- a/dll/win32/wininet/http.c
-+++ b/dll/win32/wininet/http.c
-@@ -764,10 +764,18 @@ static void HTTP_ProcessCookies( http_request_t *request )
- int HeaderIndex;
- int numCookies = 0;
- LPHTTPHEADERW setCookieHeader;
-+ WCHAR *path, *tmp;
-
- if(request->hdr.dwFlags & INTERNET_FLAG_NO_COOKIES)
- return;
-
-+ path = heap_strdupW(request->path);
-+ if (!path)
-+ return;
-+
-+ tmp = strrchrW(path, '/');
-+ if (tmp && tmp[1]) tmp[1] = 0;
-+
- EnterCriticalSection( &request->headers_section );
-
- while((HeaderIndex = HTTP_GetCustomHeaderIndex(request, szSet_Cookie, numCookies++,
FALSE)) != -1)
-@@ -786,10 +794,11 @@ static void HTTP_ProcessCookies( http_request_t *request )
-
- name = substr(setCookieHeader->lpszValue, data -
setCookieHeader->lpszValue);
- data++;
-- set_cookie(substrz(request->server->name), substrz(request->path),
name, substrz(data), INTERNET_COOKIE_HTTPONLY);
-+ set_cookie(substrz(request->server->name), substrz(path), name,
substrz(data), INTERNET_COOKIE_HTTPONLY);
- }
-
- LeaveCriticalSection( &request->headers_section );
-+ heap_free(path);
- }
-
- static void strip_spaces(LPWSTR start)
-diff --git a/modules/rostests/winetests/wininet/http.c
b/modules/rostests/winetests/wininet/http.c
-index b3826bb..910a0b4 100644
---- a/modules/rostests/winetests/wininet/http.c
-+++ b/modules/rostests/winetests/wininet/http.c
-@@ -2226,7 +2226,7 @@ static DWORD CALLBACK server_thread(LPVOID param)
- }
- if (strstr(buffer, "/testC"))
- {
-- if (strstr(buffer, "Cookie: cookie=biscuit"))
-+ if (strstr(buffer, "cookie=biscuit"))
- send(c, okmsg, sizeof okmsg-1, 0);
- else
- send(c, notokmsg, sizeof notokmsg-1, 0);
-@@ -3196,7 +3196,7 @@ static void test_header_override(int port)
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
-- test_status_code_todo(req, 200);
-+ test_status_code(req, 200);
-
- InternetCloseHandle(req);
- req = HttpOpenRequestA(con, NULL, "/test_cookie_check_host_override",
NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
-@@ -3205,7 +3205,7 @@ static void test_header_override(int port)
- ret = HttpSendRequestA(req, NULL, 0, NULL, 0);
- ok(ret, "HttpSendRequest failed\n");
-
-- test_status_code_todo(req, 200);
-+ test_status_code(req, 200);
-
- InternetCloseHandle(req);
- InternetSetCookieA("http://test.local", "foo",
"bar");
---
-2.8.0
-
diff --git
a/sdk/tools/winesync/wininet_staging/0005-wininet-Replacing-header-fields-should-fail-if-they-.patch
b/sdk/tools/winesync/wininet_staging/0005-wininet-Replacing-header-fields-should-fail-if-they-.patch
deleted file mode 100644
index 74f59297d72..00000000000
---
a/sdk/tools/winesync/wininet_staging/0005-wininet-Replacing-header-fields-should-fail-if-they-.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-From 0b022db2f23f61313004bdf0e2e42e9fd9b2f81d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael(a)fds-team.de>
-Date: Sat, 16 May 2015 03:16:15 +0200
-Subject: wininet: Replacing header fields should fail if they do not exist
- yet.
-
-A lot of details are not properly covered by tests yet and were
-marked with FIXME comments. The implementation was written in such
-a way that it behaves identical to the old code in such situations.
----
- dll/win32/wininet/http.c | 185 ++++++++++++++++++++++++++--------------------------
- 1 file changed, 93 insertions(+), 92 deletions(-)
-
-diff --git a/dll/win32/wininet/http.c b/dll/win32/wininet/http.c
-index 6f01244..5419786 100644
---- a/dll/win32/wininet/http.c
-+++ b/dll/win32/wininet/http.c
-@@ -6166,127 +6166,128 @@ static LPWSTR * HTTP_InterpretHttpHeader(LPCWSTR buffer)
-
- static DWORD HTTP_ProcessHeader(http_request_t *request, LPCWSTR field, LPCWSTR value,
DWORD dwModifier)
- {
-- LPHTTPHEADERW lphttpHdr = NULL;
-+ LPHTTPHEADERW lphttpHdr;
- INT index;
- BOOL request_only = !!(dwModifier & HTTP_ADDHDR_FLAG_REQ);
-- DWORD res = ERROR_HTTP_INVALID_HEADER;
-+ DWORD res = ERROR_SUCCESS;
-
- TRACE("--> %s: %s - 0x%08x\n", debugstr_w(field), debugstr_w(value),
dwModifier);
-
- EnterCriticalSection( &request->headers_section );
-
-- /* REPLACE wins out over ADD */
-- if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
-- dwModifier &= ~HTTP_ADDHDR_FLAG_ADD;
--
-- if (dwModifier & HTTP_ADDHDR_FLAG_ADD)
-- index = -1;
-- else
-- index = HTTP_GetCustomHeaderIndex(request, field, 0, request_only);
--
-+ index = HTTP_GetCustomHeaderIndex(request, field, 0, request_only);
- if (index >= 0)
- {
-- if (dwModifier & HTTP_ADDHDR_FLAG_ADD_IF_NEW)
-- {
-- LeaveCriticalSection( &request->headers_section );
-- return ERROR_HTTP_INVALID_HEADER;
-- }
- lphttpHdr = &request->custHeaders[index];
-- }
-- else if (value)
-- {
-- HTTPHEADERW hdr;
-
-- hdr.lpszField = (LPWSTR)field;
-- hdr.lpszValue = (LPWSTR)value;
-- hdr.wFlags = hdr.wCount = 0;
-+ /* replace existing header if FLAG_REPLACE is given */
-+ if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
-+ {
-+ HTTP_DeleteCustomHeader( request, index );
-
-- if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
-- hdr.wFlags |= HDR_ISREQUEST;
-+ if (value && value[0])
-+ {
-+ HTTPHEADERW hdr;
-
-- res = HTTP_InsertCustomHeader(request, &hdr);
-- LeaveCriticalSection( &request->headers_section );
-- return res;
-- }
-- /* no value to delete */
-- else
-- {
-- LeaveCriticalSection( &request->headers_section );
-- return ERROR_SUCCESS;
-- }
-+ hdr.lpszField = (LPWSTR)field;
-+ hdr.lpszValue = (LPWSTR)value;
-+ hdr.wFlags = hdr.wCount = 0;
-
-- if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
-- lphttpHdr->wFlags |= HDR_ISREQUEST;
-- else
-- lphttpHdr->wFlags &= ~HDR_ISREQUEST;
-+ if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
-+ hdr.wFlags |= HDR_ISREQUEST;
-
-- if (dwModifier & HTTP_ADDHDR_FLAG_REPLACE)
-- {
-- HTTP_DeleteCustomHeader( request, index );
-+ res = HTTP_InsertCustomHeader( request, &hdr );
-+ }
-
-- if (value && value[0])
-+ goto out;
-+ }
-+
-+ /* do not add new header if FLAG_ADD_IF_NEW is set */
-+ if (dwModifier & HTTP_ADDHDR_FLAG_ADD_IF_NEW)
- {
-- HTTPHEADERW hdr;
-+ res = ERROR_HTTP_INVALID_HEADER; /* FIXME */
-+ goto out;
-+ }
-
-- hdr.lpszField = (LPWSTR)field;
-- hdr.lpszValue = (LPWSTR)value;
-- hdr.wFlags = hdr.wCount = 0;
-+ /* handle appending to existing header */
-+ if (dwModifier & COALESCEFLAGS)
-+ {
-+ LPWSTR lpsztmp;
-+ WCHAR ch = 0;
-+ INT len = 0;
-+ INT origlen = strlenW(lphttpHdr->lpszValue);
-+ INT valuelen = strlenW(value);
-
-+ /* FIXME: Should it really clear HDR_ISREQUEST? */
- if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
-- hdr.wFlags |= HDR_ISREQUEST;
--
-- res = HTTP_InsertCustomHeader(request, &hdr);
-- LeaveCriticalSection( &request->headers_section );
-- return res;
-- }
-+ lphttpHdr->wFlags |= HDR_ISREQUEST;
-+ else
-+ lphttpHdr->wFlags &= ~HDR_ISREQUEST;
-
-- LeaveCriticalSection( &request->headers_section );
-- return ERROR_SUCCESS;
-- }
-- else if (dwModifier & COALESCEFLAGS)
-- {
-- LPWSTR lpsztmp;
-- WCHAR ch = 0;
-- INT len = 0;
-- INT origlen = strlenW(lphttpHdr->lpszValue);
-- INT valuelen = strlenW(value);
-+ if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_COMMA)
-+ {
-+ ch = ',';
-+ lphttpHdr->wFlags |= HDR_COMMADELIMITED;
-+ }
-+ else if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_SEMICOLON)
-+ {
-+ ch = ';';
-+ lphttpHdr->wFlags |= HDR_COMMADELIMITED;
-+ }
-
-- if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_COMMA)
-- {
-- ch = ',';
-- lphttpHdr->wFlags |= HDR_COMMADELIMITED;
-- }
-- else if (dwModifier & HTTP_ADDHDR_FLAG_COALESCE_WITH_SEMICOLON)
-- {
-- ch = ';';
-- lphttpHdr->wFlags |= HDR_COMMADELIMITED;
-- }
-+ len = origlen + valuelen + ((ch > 0) ? 2 : 0);
-
-- len = origlen + valuelen + ((ch > 0) ? 2 : 0);
-+ lpsztmp = heap_realloc(lphttpHdr->lpszValue, (len+1)*sizeof(WCHAR));
-+ if (lpsztmp)
-+ {
-+ lphttpHdr->lpszValue = lpsztmp;
-+ /* FIXME: Increment lphttpHdr->wCount. Perhaps lpszValue should be an
array */
-+ if (ch > 0)
-+ {
-+ lphttpHdr->lpszValue[origlen] = ch;
-+ origlen++;
-+ lphttpHdr->lpszValue[origlen] = ' ';
-+ origlen++;
-+ }
-
-- lpsztmp = heap_realloc(lphttpHdr->lpszValue, (len+1)*sizeof(WCHAR));
-- if (lpsztmp)
-- {
-- lphttpHdr->lpszValue = lpsztmp;
-- /* FIXME: Increment lphttpHdr->wCount. Perhaps lpszValue should be an array */
-- if (ch > 0)
-+ memcpy(&lphttpHdr->lpszValue[origlen], value,
valuelen*sizeof(WCHAR));
-+ lphttpHdr->lpszValue[len] = '\0';
-+ }
-+ else
- {
-- lphttpHdr->lpszValue[origlen] = ch;
-- origlen++;
-- lphttpHdr->lpszValue[origlen] = ' ';
-- origlen++;
-+ WARN("heap_realloc (%d bytes) failed\n",len+1);
-+ res = ERROR_OUTOFMEMORY;
- }
-
-- memcpy(&lphttpHdr->lpszValue[origlen], value,
valuelen*sizeof(WCHAR));
-- lphttpHdr->lpszValue[len] = '\0';
-- res = ERROR_SUCCESS;
-- }
-- else
-- {
-- WARN("heap_realloc (%d bytes) failed\n",len+1);
-- res = ERROR_OUTOFMEMORY;
-+ goto out;
- }
- }
-+
-+ /* FIXME: What about other combinations? */
-+ if ((dwModifier & ~HTTP_ADDHDR_FLAG_REQ) == HTTP_ADDHDR_FLAG_REPLACE)
-+ {
-+ res = ERROR_HTTP_HEADER_NOT_FOUND;
-+ goto out;
-+ }
-+
-+ /* FIXME: What if value == ""? */
-+ if (value)
-+ {
-+ HTTPHEADERW hdr;
-+
-+ hdr.lpszField = (LPWSTR)field;
-+ hdr.lpszValue = (LPWSTR)value;
-+ hdr.wFlags = hdr.wCount = 0;
-+
-+ if (dwModifier & HTTP_ADDHDR_FLAG_REQ)
-+ hdr.wFlags |= HDR_ISREQUEST;
-+
-+ res = HTTP_InsertCustomHeader( request, &hdr );
-+ goto out;
-+ }
-+
-+ /* FIXME: What if value == NULL? */
-+out:
- TRACE("<-- %d\n", res);
- LeaveCriticalSection( &request->headers_section );
- return res;
---
-2.8.0
-