Commit 6e6ffab6 authored by Hans Leidekker's avatar Hans Leidekker Committed by Alexandre Julliard

winhttp: Option WINHTTP_OPTION_SERVER_CERT_CONTEXT must return a pointer.

parent a66ef8fa
...@@ -271,7 +271,7 @@ static BOOL request_query_option( object_header_t *hdr, DWORD option, LPVOID buf ...@@ -271,7 +271,7 @@ static BOOL request_query_option( object_header_t *hdr, DWORD option, LPVOID buf
request_t *request = (request_t *)hdr; request_t *request = (request_t *)hdr;
if (!(cert = netconn_get_certificate( &request->netconn ))) return FALSE; if (!(cert = netconn_get_certificate( &request->netconn ))) return FALSE;
memcpy( buffer, cert, sizeof(CERT_CONTEXT) ); *(CERT_CONTEXT **)buffer = (CERT_CONTEXT *)cert;
*buflen = sizeof(cert); *buflen = sizeof(cert);
return TRUE; return TRUE;
} }
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include <windef.h> #include <windef.h>
#include <winbase.h> #include <winbase.h>
#include <winhttp.h> #include <winhttp.h>
#include <wincrypt.h>
#include "wine/test.h" #include "wine/test.h"
...@@ -556,8 +557,9 @@ static void test_secure_connection(void) ...@@ -556,8 +557,9 @@ static void test_secure_connection(void)
static const WCHAR google[] = {'w','w','w','.','g','o','o','g','l','e','.','c','o','m',0}; static const WCHAR google[] = {'w','w','w','.','g','o','o','g','l','e','.','c','o','m',0};
HANDLE ses, con, req; HANDLE ses, con, req;
DWORD size, status, policy; DWORD size, status, policy, bitness;
BOOL ret; BOOL ret;
CERT_CONTEXT *cert;
ses = WinHttpOpen(test_useragent, 0, NULL, NULL, 0); ses = WinHttpOpen(test_useragent, 0, NULL, NULL, 0);
ok(ses != NULL, "failed to open session %u\n", GetLastError()); ok(ses != NULL, "failed to open session %u\n", GetLastError());
...@@ -591,6 +593,14 @@ static void test_secure_connection(void) ...@@ -591,6 +593,14 @@ static void test_secure_connection(void)
ret = WinHttpSendRequest(req, NULL, 0, NULL, 0, 0, 0); ret = WinHttpSendRequest(req, NULL, 0, NULL, 0, 0, 0);
ok(ret, "failed to send request %u\n", GetLastError()); ok(ret, "failed to send request %u\n", GetLastError());
size = sizeof(cert);
ret = WinHttpQueryOption(req, WINHTTP_OPTION_SERVER_CERT_CONTEXT, &cert, &size );
ok(ret, "failed to retrieve certificate context %u\n", GetLastError());
size = sizeof(bitness);
ret = WinHttpQueryOption(req, WINHTTP_OPTION_SECURITY_KEY_BITNESS, &bitness, &size );
ok(ret, "failed to retrieve key bitness %u\n", GetLastError());
ret = WinHttpReceiveResponse(req, NULL); ret = WinHttpReceiveResponse(req, NULL);
ok(ret, "failed to receive response %u\n", GetLastError()); ok(ret, "failed to receive response %u\n", GetLastError());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment