Commit Graph

297 Commits

Author SHA1 Message Date
Alexandre Julliard 07062b0340 winhttp: Fix pointer cast warnings on 64-bit. 2009-12-24 12:15:40 +01:00
Juan Lang 888d1a2323 winhttp: Set error and fail if a secure connections certificate couldn't be verified. 2009-12-15 11:44:39 +01:00
Juan Lang 1308c4287f winhttp: Return error directly from netconn_verify_cert. 2009-12-15 11:44:28 +01:00
Juan Lang c02ee18869 winhttp/tests: Skip secure connection tests if the request fails. 2009-12-14 12:04:03 +01:00
Juan Lang 72025026db winhttp: Don't call a function whose result is never used. 2009-12-14 12:04:03 +01:00
Juan Lang 9352509eb2 winhttp: Free OpenSSL error strings at unload. 2009-12-11 17:47:30 +01:00
Juan Lang b0f5b96efe winhttp/tests: Only free a certificate context if retrieving it succeeded. 2009-12-09 13:13:49 +01:00
Juan Lang 1becda464d winhttp: Fix test error when run as non-administrator. 2009-12-09 12:02:39 +01:00
Marcus Meissner 298051ab37 winhttp: Check for endCert being NULL (Coverity). 2009-12-08 12:37:10 +01:00
Francois Gouget 0b9a4ae341 winhttp: Fix compilation on systems that don't support nameless unions. 2009-12-07 14:18:24 +01:00
Juan Lang a5facc9bda winhttp: Use sk_ functions rather than accessing an OpenSSL stack type directly. 2009-12-07 09:49:07 +01:00
Huw Davies 24b437942e winhttp: Load X509_STORE_CTX_get_ex_data from libcrypto not libssl. 2009-12-07 09:49:07 +01:00
Juan Lang 82d07c4051 winhttp: Check the certificate in an https connection using the crypto api. 2009-12-04 12:04:59 +01:00
Juan Lang 48a7580135 winhttp: Set callback to verify hostname with peer's certificate. 2009-12-04 12:03:55 +01:00
Juan Lang be8f2ae98e winhttp: Store hostname for secure connection in its SSL context. 2009-12-04 12:03:47 +01:00
Juan Lang a33c4bfd0b winhttp: Pass hostname to netconn_secure_connect. 2009-12-04 12:02:50 +01:00
Hans Leidekker 846cc2b157 winhttp: Implement WinHttpQueryHeaders(WINHTTP_QUERY_VERSION). 2009-10-29 13:51:20 +01:00
Hans Leidekker 39b1dbed7a winhttp: Accept empty headers parameter in WinHttpSendRequest. 2009-10-29 13:51:14 +01:00
Hans Leidekker 629fd8fcbc winhttp: Clean up locks after closing libssl and libcrypto.
SSL_CTX_free() triggers a call to the locking callback.
Found by valgrind.
2009-10-27 10:53:28 +01:00
Hans Leidekker 253d2c17d6 winhttp: Implement HTTP_OPTION_PARENT_HANDLE for connection handles. 2009-10-26 11:20:18 +01:00
Hans Leidekker ec0a0b372e winhttp: Fix two memory leaks.
Found by valgrind.
2009-10-21 17:05:38 +02:00
Hans Leidekker 45b6cf8355 winhttp/tests: Free the certificate context after use.
Found by valgrind.
2009-10-21 17:05:26 +02:00
Hans Leidekker 6732d5dfd7 winhttp: Correct SSL lock size and make sure we free as many as we allocated.
Found by valgrind.
2009-10-21 17:04:42 +02:00
Hans Leidekker 7c59b46890 winhttp: Fix a memory leak.
Found by valgrind.
2009-10-21 17:04:36 +02:00
Juan Lang 2f09686f6b winhttp: Set callbacks needed by OpenSSL for multithreaded use. 2009-10-08 12:03:07 +02:00
Juan Lang d7d8a0eec4 winhttp: Unload OpenSSL when unloading winhttp. 2009-10-05 13:23:17 +02:00
Juan Lang 349e825080 winhttp: Protect OpenSSL initialization with critical section. 2009-10-05 13:23:09 +02:00
Juan Lang 016d7c3c0a winhttp: Move initialization of SSL_CTX to library initialization time. 2009-10-05 13:22:59 +02:00
Michael Stefaniuc 59be8e519f winhttp: 'http1_1' is already defined in the private header. 2009-10-02 11:49:27 +02:00
Ge van Geldorp 40446600dc winhttp/tests: Fix tests on Win7. 2009-09-11 12:08:50 +02:00
Juan Lang 1dc145d05f winhttp: Add a fixme for WINHTTP_OPTION_SECURITY_FLAGS. 2009-09-09 12:07:36 +02:00
Hans Leidekker 6cde75646a winhttp: Make tests pass on Win7. Conform to the more recent behavior. 2009-09-08 12:12:22 +02:00
Alexandre Julliard f07ac99d9e winhttp/tests: Use the global wine_dbgstr_w instead of a local variant. 2009-08-19 13:37:09 +02:00
Gerald Pfeifer 8c189d78ee winhttp: Include <sys/socket.h> from winhttp_private.h. Remove now redundant inclusion from request.c. 2009-08-03 14:56:22 +02:00
Juan Lang 2b99adc2f1 winhttp: Only output fixme for unhandled resolve timeout. 2009-07-24 11:09:51 +02:00
Juan Lang 68039dcaff winhttp: Implement connect timeout. 2009-07-24 11:09:46 +02:00
Alexandre Julliard af77e9b388 winhttp: Avoid casting away const. 2009-07-22 14:48:09 +02:00
Marcus Meissner ee59879da0 winhttp: Check for NULL return from heap_alloc (Coverity). 2009-07-22 14:42:49 +02:00
Paul Vriens 47535030cc winhttp/tests: Fix a test failure on some W2K/XP systems. 2009-07-22 14:42:49 +02:00
Juan Lang 336ee2861d winhttp: Remove no-longer-used #defines. 2009-07-22 12:04:53 +02:00
Juan Lang 1229aa723a winhttp: Remove calls to SSL_CTX_set_timeout, as they affect the session's lifetime, not the read timeout. 2009-07-22 12:04:46 +02:00
Juan Lang 2418e82810 winhttp: Use connection's timeout rather than default timeout when reading a line. 2009-07-22 12:04:37 +02:00
Juan Lang 80100334f1 winhttp: Set a socket's timeouts when it's created. 2009-07-22 12:04:15 +02:00
Juan Lang 64d69b55f9 winhttp: Store send and receive timeouts in request_t, and only set them in a netconn_t if it's connected. 2009-07-22 12:04:09 +02:00
Juan Lang e5f4c802dc winhttp: If the default proxy settings are not found, delete the bogus ones after test. 2009-07-22 11:08:05 +02:00
Juan Lang 09ee823399 winhttp: Check environment if the registry settings are present but bogus. 2009-07-22 11:07:49 +02:00
Juan Lang 68fdc5cb2e winhttp: Strip scheme from http_proxy environment variable. 2009-07-22 11:07:35 +02:00
Juan Lang 2b460a6c5a winhttp: Fix crash when proxy bypass is unset. 2009-07-22 11:07:21 +02:00
Paul Vriens 4e370f74f7 winhttp: Fix a crash on Vista and higher. 2009-07-16 16:06:57 +02:00
Juan Lang 235c6c1e1e winhttp: Use the correct address length when connecting. 2009-07-16 11:08:06 +02:00
Juan Lang a4a3953b2f winhttp: Fix a comment typo. 2009-07-16 11:08:02 +02:00
Juan Lang bd7a2e70b0 winhttp: Issue CONNECT command to connect to a secure server through a proxy server. 2009-07-15 14:11:06 +02:00
Juan Lang c2ba725196 winhttp: Don't set port number to a default before scheme is known. 2009-07-15 14:10:50 +02:00
Juan Lang 5c24a1c824 winhttp: Allow full path in addition to relative path in headers to accomodate proxy servers. 2009-07-15 14:10:43 +02:00
Juan Lang 31545206fb winhttp: Use proxy server when redirecting. 2009-07-15 14:10:35 +02:00
Juan Lang de12987d7f winhttp: Use a helper function to set connect_t's servername and port. 2009-07-15 14:10:26 +02:00
Juan Lang 85579ebb4c winhttp: Connect to the proxy port rather than the host port. 2009-07-15 14:10:13 +02:00
Juan Lang 6fad52bd14 winhttp: When connecting via a proxy include full hostname and scheme in path. 2009-07-15 14:10:04 +02:00
Juan Lang 0080a7f8a2 winhttp: Set connect_t's servername and port based on proxy settings. 2009-07-15 14:09:55 +02:00
Juan Lang 5575957657 winhttp: Honor WINHTTP_ACCESS_TYPE_DEFAULT_PROXY in WinHttpOpen. 2009-07-15 14:09:39 +02:00
Juan Lang 51e54a8b75 winhttp: Support getting the default proxy settings from the http_proxy environment variable. 2009-07-15 14:09:29 +02:00
Juan Lang fd9aa244d3 winhttp: Implement WinHttpGetDefaultProxyConfiguration. 2009-07-15 14:06:53 +02:00
Juan Lang 3469a021be winhttp: Implement WinHttpSetDefaultProxyConfiguration. 2009-07-15 14:06:40 +02:00
Juan Lang 461b124015 winhttp: Add tests for WinHttpSetDefaultProxyConfiguration. 2009-07-15 14:06:32 +02:00
Juan Lang 3d9809b129 winhttp: Support IPv6 in netconn_resolve. 2009-07-09 12:01:16 +02:00
Juan Lang d48eade7fb winhttp: Support IPv6 addresses in open_connection. 2009-07-09 12:00:41 +02:00
Juan Lang 646b9cae80 winhttp: Convert connect_t's address type from a struct sockaddr_in to a struct sockaddr_storage. 2009-07-09 12:00:23 +02:00
Juan Lang 831c87c141 winhttp: Simplify netconn_resolve when using getaddrinfo. 2009-07-09 11:58:23 +02:00
Juan Lang cc619639d2 winhttp: Change type of netconn_resolve from struct sockaddr_in * to struct sockaddr *. 2009-07-09 11:53:16 +02:00
Hans Leidekker 9d9c505a27 winhttp: Implement WinHttpSetTimeouts. 2009-07-07 11:01:26 +02:00
Hans Leidekker a7b70911b3 winhttp, wininet: Load i2d_X509 from libcrypto.so. 2009-03-05 13:26:11 +01:00
Michael Stefaniuc 7dbba8c335 winhttp: Remove superfluous pointer casts. 2009-02-05 13:15:37 +01:00
Hans Leidekker c5fa3ec216 winhttp: Set last error for invalid URLs passed to WinHttpCrackUrl. 2009-01-05 16:37:40 +01:00
Alexandre Julliard 690d112182 winhttp: Use ~0u instead of ~0ul for DWORD values. 2009-01-05 12:40:34 +01:00
Alexandre Julliard 97f4bfa7ed winhttp/tests: Use ~0u instead of ~0ul for DWORD values. 2009-01-03 20:15:00 +01:00
Paul TBBle Hampson 04b8ec07a6 winhttp: Don't try and call a null callback. 2008-12-31 14:07:11 +01:00
Paul TBBle Hampson 4876375ab8 winhttp: Correctly parse specified ports in WinHttpCrackUrl. 2008-12-31 14:07:05 +01:00
Paul TBBle Hampson f093f9e8d5 winhttp/tests: Add tests for WinHttpCrackUrl port number handling. 2008-12-31 14:06:10 +01:00
Paul TBBle Hampson 83ea32ea02 winhttp: Fix resolution-failure TRACE in netconn_resolve to use input WCHAR* rather than already-freed CHAR*. 2008-12-31 13:18:52 +01:00
Austin English 87cc3e19bc winhttp: Fix a missing include for OpenBSD. 2008-12-29 11:38:36 +01:00
Alexandre Julliard dc1a9f19c1 libport: Replacement for poll(). 2008-12-22 18:00:13 +01:00
Francois Gouget a6c07ffba4 wininet & winhttp: Remove the MSG_WAITALL definition as it is not needed. 2008-12-12 11:46:50 +01:00
Hans Leidekker 0719b6ed86 winhttp: Resolve host port at the latest possible moment. 2008-12-11 14:32:18 +01:00
Hans Leidekker b527d9905c winhttp: Validate parameters per component in WinHttpCrackUrl. 2008-12-11 14:32:15 +01:00
Andrew Talbot 42a920144f winhttp: Sign-compare warning fix. 2008-12-08 22:02:56 +01:00
Hans Leidekker d3f7f5ebb6 winhttp: Prepend slash to request path if necessary. 2008-12-08 16:05:38 +01:00
Francois Gouget c1b2008d0c wininet & winhttp: Fix a pointer type mismatch warning when compiling on Windows. On Windows setsockopt() expects a char* while on Unix it accepts anything. 2008-12-08 12:05:57 +01:00
Hans Leidekker e4f7809cc9 winhttp: Prefer builtin over native. 2008-11-20 15:02:07 +01:00
Hans Leidekker 65c1e31dca winhttp: Add tests for WinHttpCrackUrl. 2008-11-18 11:53:02 +01:00
Hans Leidekker 2c850276a0 winhttp: Reimplement WinHttpCrackUrl. 2008-11-18 11:52:54 +01:00
Aric Stewart 3590a4227f winhttp: Correct another difference between InternetCrackurl and WinHttpCrackUrl. 2008-11-12 13:41:10 +01:00
Rob Shearman a14d34b2f6 winhttp: Fix compilation with MinGW/MSVC. 2008-10-01 11:43:19 -05:00
Hans Leidekker ee1a4650fd winhttp: Skip notifications that may arrive out of order. 2008-09-29 17:25:47 -05:00
Hans Leidekker 5d687f40ec winhttp: Add tests for WinHttpCreateUrl. 2008-09-23 14:03:19 +02:00
Hans Leidekker bba66c99b6 winhttp: Implement WinHttpCreateUrl. 2008-09-23 14:03:19 +02:00
Dmitry Timoshkov 24e426517e winhttp: Move common code to the upper level, avoid accessing the buffer before the buffer size check, make the code conform to existing rules. 2008-09-17 10:54:52 +02:00
Hans Leidekker 70f2f5d6a8 winhttp: Close the network connection if necessary. 2008-09-16 22:35:08 +02:00
Hans Leidekker d943ffa6f7 winhttp: Fix logic inversion bug in setting disable flags.
Spotted by Jeremy White.
2008-09-16 13:36:42 +02:00
Hans Leidekker 4a706aae70 winhttp: Manage a session global cookie cache. 2008-09-16 13:36:38 +02:00
Hans Leidekker 4ae5741c4e winhttp: Move handling of default request parameters back to WinHttpOpenRequest.
Avoids special casing all over the place.
2008-09-16 13:36:25 +02:00
Hans Leidekker 8df906f28e winhttp: Reset content length when all data has been read. 2008-09-16 13:36:09 +02:00
Dmitry Timoshkov 11da0ac8a7 winhttp: Add some tests for set/query option, make them pass under Wine. 2008-09-16 13:36:06 +02:00
Hans Leidekker 10090eb252 winhttp: Strip content-type/length headers from request on a redirect. 2008-09-11 14:37:59 +02:00
Hans Leidekker bddcb1b8bb winhttp: Preserve cookies on redirects. 2008-09-11 14:37:55 +02:00
Hans Leidekker 0451643e02 winhttp: Redirects are always GET requests. 2008-09-11 13:28:45 +02:00
Hans Leidekker 28ae1d4f0d winhttp: Handle relative redirects.
Spotted by Jeremy White.
2008-09-11 13:28:41 +02:00
Rob Shearman cd999b20de winhttp: Add version resource. 2008-09-10 12:08:55 +02:00
Juan Lang 12c1e067c6 winhttp: Don't reference past the attribute array. Fixes Coverity item 710. 2008-09-10 11:06:57 +02:00
Hans Leidekker 3cfa9c626f winhttp: Better diagnostics in the notification test. 2008-09-10 10:40:05 +02:00
Hans Leidekker ddbe713e6b winhttp: Increase sleep between two tests that connect to the same host. 2008-09-10 10:40:01 +02:00
Hans Leidekker f8f9c4cb9c winhttp: Don't loop on response codes other than 301 and 302. 2008-09-10 10:39:35 +02:00
Hans Leidekker 7f28c5f87e winhttp: Make sure not to read more data than expected on a redirect.
Fixes a bug in automatic redirects with content.
2008-09-09 11:02:17 +02:00
Hans Leidekker 01e7d12848 winhttp: WinHttpQueryDataAvailable should do a blocking read if more data is expected.
Spotted by Henri Verbeet.
2008-09-09 11:02:04 +02:00
Hans Leidekker 6e6ffab63f winhttp: Option WINHTTP_OPTION_SERVER_CERT_CONTEXT must return a pointer. 2008-09-09 11:01:53 +02:00
Hans Leidekker f3346a789e winhttp: Support asynchronous requests. 2008-09-08 12:47:21 +02:00
Hans Leidekker a4d0abb234 winhttp: Add the remaining completion notifications. 2008-09-08 12:47:21 +02:00
Hans Leidekker 2fb746783f winhttp: Use a process global SSL context instead of per connection. 2008-09-08 12:47:21 +02:00
Hans Leidekker 520b6e8153 winhttp: The last parameter of WinHttpWriteData is optional. 2008-09-08 12:47:21 +02:00
Hans Leidekker 64a7d23565 winhttp: Implement WINHTTP_OPTION_SERVER_CERT_CONTEXT. 2008-09-08 12:47:21 +02:00
Hans Leidekker 3d8a9564cd winhttp: Start sending async completion notifications. Add corresponding tests. 2008-09-08 12:47:21 +02:00
Hans Leidekker 6ecd01b8d1 winhttp: The last parameter of WinHttpQueryDataAvailable and WinHttpReadData is optional. 2008-09-05 16:00:53 +02:00
Hans Leidekker 6fe2edb5de winhttp: Implement WinHttpQueryHeaders(WINHTTP_QUERY_RAW_HEADERS). 2008-09-05 16:00:46 +02:00
Hans Leidekker b34e816f4a winhttp: Implement WinHttpQueryOption(WINHTTP_OPTION_SECURITY_FLAGS). 2008-09-05 16:00:40 +02:00
Hans Leidekker e078f618eb winhttp: Implement some more options. 2008-09-04 11:14:32 +02:00
Hans Leidekker 6bb3090732 winhttp: A non-standard port must be included in the host header. 2008-09-03 14:21:44 +02:00
Hans Leidekker 04a11bb117 winhttp: Add zero value content length header to POST requests without additional data. 2008-09-03 14:21:44 +02:00
Hans Leidekker 96bf72f27e winhttp: Add status notification tests. Make them pass. 2008-09-03 14:21:44 +02:00
Hans Leidekker a74b52cf38 winhttp: Add an initial implementation of WinHttpQueryOption and WinHttpSetOption. 2008-09-03 14:21:44 +02:00
Hans Leidekker 41a763629f winhttp: Handle redirects. 2008-09-03 14:21:44 +02:00
Hans Leidekker 8063f5cbd4 winhttp: Move handling of default request parameters into build_request_string(). 2008-09-03 14:21:44 +02:00
Hans Leidekker 9f8d4fe082 winhttp: WinHttpCrackUrl and InternetCrackUrlW use different scheme constants. 2008-09-03 14:21:44 +02:00
Hans Leidekker 20d06b2a4c winhttp: Allow reusing a secure connection. 2008-09-03 14:21:44 +02:00
Hans Leidekker 567e21e132 winhttp: Avoid testing errno when it isn't set. 2008-09-03 14:21:44 +02:00
Francois Gouget ffcb02696c winhttp/tests: Add a trailing '\n' to an ok() call. 2008-09-02 13:58:37 +02:00
Francois Gouget 4823b2c7bf Assorted spelling fixes. 2008-09-02 13:58:21 +02:00
Michael Stefaniuc 7c0d28b0da winhttp: Move the wine includes after the system includes. 2008-08-29 20:20:20 +02:00
Gerald Pfeifer c3818f5cd9 winhttp: Include <sys/socket.h>. 2008-08-29 13:44:49 +02:00
Hans Leidekker 13ba609b04 winhttp: Use default values when empty strings are passed for verb, object and version parameters. 2008-08-29 12:22:36 +02:00
Hans Leidekker f732065c4c winhttp: Test secure connections. Fix a crash when no response is returned. 2008-08-29 12:22:30 +02:00
Hans Leidekker 0b19e8559f winhttp: Add support for secure connections. 2008-08-29 12:22:23 +02:00
Hans Leidekker 70c6a8ac62 winhttp: Implement WinHttpSetCredentials.
Only supports the basic authentication scheme.
2008-08-27 13:21:20 +02:00
Hans Leidekker 3f85f4552b winhttp: Implement WinHttpQueryAuthSchemes. 2008-08-27 13:21:20 +02:00
Alexandre Julliard 220bc61c21 Include sys/filio.h to get the FIONREAD definition on Solaris. 2008-08-26 20:40:57 +02:00
Hans Leidekker 18677beb57 winhttp: Remove some unneeded includes. 2008-08-26 12:07:44 +02:00
Hans Leidekker 6619e54d1e winhttp: Implement WinHttpWriteData. 2008-08-26 12:07:43 +02:00
Hans Leidekker 728bf77c83 winhttp: Implement WinHttpReadData. 2008-08-26 12:07:43 +02:00
Hans Leidekker d7f5467652 winhttp: Implement WinHttpQueryDataAvailable. 2008-08-26 12:07:43 +02:00
Hans Leidekker b170ac20dd winhttp: Implement WinHttpReceiveResponse. 2008-08-26 12:07:43 +02:00
Hans Leidekker f07f2304b0 winhttp: Implement WinHttpSendRequest. 2008-08-26 12:07:43 +02:00
Hans Leidekker 266c4b2c04 winhttp: Add networking infrastructure. 2008-08-26 12:07:43 +02:00