Commit Graph

170 Commits

Author SHA1 Message Date
Alexandre Julliard d1de5f37d0 wininet: Get rid of the SSL-specific read-ahead buffer. 2009-05-14 16:55:29 +02:00
Alexandre Julliard 3d02c42b39 wininet: Add a read-ahead buffer to allow InternetQueryDataAvailable to return the right values in chunked mode. 2009-05-14 16:45:38 +02:00
Alexandre Julliard e531ccd6b0 wininet: Centralize detection of chunked mode and add a flag for it in the http request structure. 2009-05-14 16:42:44 +02:00
Hans Leidekker 8077480b0e wininet: Support asynchronous HttpEndRequest. 2009-04-08 16:10:19 +02:00
Hans Leidekker 0fabf540e7 wininet: Keep track of the number of bytes written. 2009-04-08 16:10:00 +02:00
Andrew Talbot f815b68a30 wininet: Declare some functions static. 2009-02-02 12:11:51 +01:00
Hans Leidekker b013ad168b wininet: Implement InternetReadFileExW. 2009-01-16 12:34:26 +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
Alexandre Julliard 82280618db wininet: Include ws2tcpip.h before anything else for the Windows build. 2008-12-09 11:33:25 +01:00
Jacek Caban 7426e7e055 wininet: Moved more InternetQueryOption implementation to vtbl. 2008-07-21 12:18:48 +02:00
Alexandre Julliard 7c61679989 wininet: Include openssl/ssl.h before Windows headers. 2008-06-02 12:14:37 +02:00
Jacek Caban e2933c20d6 wininet: Move INTERNET_OPTION_HANDLE_TYPE to vtbl. 2008-03-12 11:59:41 +01:00
Rob Shearman bdc81d9963 wininet: Make the reference count of WININETHANDLEHEADER thread-safe by using InterlockedIncrement/InterlockedDecrement. 2008-03-10 19:12:54 +01:00
Rob Shearman 0aec3fcf86 wininet: Fix compile with MinGW. 2008-03-04 12:01:40 +01:00
Jacek Caban d597fd12fc wininet: Moved InternetReadFileExA to vtbl. 2008-03-03 20:45:31 +01:00
Jacek Caban ca39a55e88 wininet: Don't use INTERNET_ReadFile in HTTP_DrainContent. 2008-03-03 12:00:32 +01:00
Jacek Caban 352b4212a1 wininet: Move FTP structs and functions declarations from internet.h. 2008-03-03 12:00:27 +01:00
Jacek Caban 3b4ca69e18 wininet: Move InternetReadFile to vtbl. 2008-03-03 12:00:20 +01:00
Jacek Caban 9a5c046129 wininet: Move INTERNET_STATUS_REQUEST_COMPLETE call from INTERNET_ReadFile. 2008-03-03 12:00:06 +01:00
Jacek Caban 3314184597 wininet: Move InternetQueryDataAvailable to vtbl. 2008-02-29 20:07:13 +01:00
Jacek Caban 66259555ff wininet: Move WININETFTPFINDNEXTW declaration to ftp.c. 2008-02-28 10:44:50 +01:00
Jacek Caban 8c45eecca7 wininet: Moved InternetFindNextFileW implementation to vtbl. 2008-02-28 10:44:42 +01:00
Jacek Caban 0e33eee9a2 wininet: Use vtbl for InternetSetOption(INTERNET_OPTION_[SEND|RECEIVE]_TIMEOUT) implementation. 2008-02-27 14:52:25 +01:00
Jacek Caban 1ffcfbce85 wininet: Use vtbl in InternetWriteFile implementation. 2008-02-27 14:52:24 +01:00
Jacek Caban 7dc9bf677b wininet: Moved close_connection to vtbl. 2008-02-27 14:52:24 +01:00
Jacek Caban 5a535d6b23 wininet: Moved handle destructor to vtbl. 2008-02-27 14:52:24 +01:00
Jacek Caban d7a49e8147 wininet: Added beginning support for HTTP cache files. 2008-02-15 10:00:03 +01:00
Misha Koshelev 728e5fa559 wininet: Track child handles, free all child handles on WININET_FreeHandle as native. 2007-09-21 11:53:04 +02:00
Francois Gouget d4337f2b5e wininet: Fix many wininet prototypes: the context is a DWORD_PTR now. 2007-08-30 17:02:49 +02:00
Misha Koshelev 0f117e568f wininet: Separate connection closing from object destruction. 2007-08-23 13:13:24 +02:00
Misha Koshelev 4b2f9af998 wininet: Rename WININET_object_destructor to a more general WININET_object_function. 2007-08-23 13:13:14 +02:00
Francois Gouget 36d98a32eb wininet: #undef some macros to avoid a conflict between openssl/ssl.h and wincrypt.h. 2007-08-09 14:11:35 +02:00
Rob Shearman cb28969c2a wininet: Implement NTLM support for proxy authentication. 2007-06-06 12:11:34 +02:00
Rob Shearman 56267608f1 wininet: Add a new NETCON_query_data_available function.
Use it to implement the behaviour where InternetReadFileExA does a 
synchronous request if the data is available and asynchronous otherwise.
2007-05-29 14:00:20 +02:00
Rob Shearman 4b507685e8 wininet: Add support for SSPI authentication for HTTP. 2007-05-21 16:52:10 +02:00
Andrew Talbot 57746f9592 wininet: Replace inline static with static inline. 2007-03-26 12:20:03 +02:00
Paul Vriens 46812a4bba wininet: Remove unused function. 2007-02-06 12:30:45 +01:00
Bang Jun-Young b71e42b794 wininet: config.h police. 2007-02-05 12:25:55 +01:00
Rob Shearman 272954bd81 wininet: Change the HTTP code to not assume that the connection will be closed at the end of every request. 2007-01-04 21:17:34 +01:00
Rob Shearman ac1b527498 wininet: Use the Content-Length header to work out how much HTTP data there is left to be read
and don't try to read any more than what is available.
2007-01-04 21:17:12 +01:00
Rob Shearman 02c89e5c6f wininet: Remove the custom thread pool implementation and use QueueUserWorkItem instead. 2007-01-04 21:13:53 +01:00
Jacek Caban 49f5ee746c wininet: Get rid of ASYNC_FUNC enum. 2006-12-26 12:50:19 +01:00
Jacek Caban f08ff892be wininet: Use proc instead of enum in FTPFINDNEXTW request. 2006-12-26 12:50:09 +01:00
Jacek Caban 3a08f1f656 wininet: Use proc instead of enum in FTPRENAMEFILEW request. 2006-12-26 12:50:00 +01:00
Jacek Caban 97157ccee0 wininet: Use proc instead of enum in FTPREMOVEDIRECTORYW request. 2006-12-26 12:49:53 +01:00
Jacek Caban ee99b3f0c5 wininet: Use proc instead of enum in FTPDELETEFILEW request. 2006-12-26 12:49:47 +01:00
Jacek Caban 054108368e wininet: Use proc instead of enum in FTPGETFILEW request. 2006-12-26 12:49:41 +01:00
Jacek Caban 3c90016f2f wininet: Use proc instead of enum in FTPOPENFILEW request. 2006-12-26 12:49:32 +01:00
Jacek Caban 3b77ff24c2 wininet: Use proc instead of enum in FTPGETCURRENTDIRECTORYW request. 2006-12-26 12:49:27 +01:00
Jacek Caban 0d464ba8db wininet: Use proc instead of enum in FTPFINDFIRSTFILEW request. 2006-12-26 12:49:19 +01:00
Jacek Caban c4aa47badd wininet: Use proc instead of enum in FTPCREATEDIRECTORY request. 2006-12-26 12:49:08 +01:00
Jacek Caban f28b0e3b10 wininet: Use proc instead of enum in FTPSETCURRENTDIRECTORY request. 2006-12-26 12:49:01 +01:00
Jacek Caban 4adce67cf6 wininet: Use proc instead of enum in FTPUTFILE request. 2006-12-26 12:48:53 +01:00
Jacek Caban 662c885a0b wininet: Use proc instead of enum in INTERNETREADFILEEXA request. 2006-12-26 12:48:40 +01:00
Jacek Caban 8c3ca8d817 wininet: Use proc instead of enum in INTERNETOPENURLW request. 2006-12-26 12:48:30 +01:00
Jacek Caban 5dd5536a9a wininet: Remove not used HTTPOPENREQUESTW request. 2006-12-26 12:48:21 +01:00
Jacek Caban c156845560 wininet: Use proc instead of enum in HTTPSENDREQUESTW request. 2006-12-26 12:48:09 +01:00
Jacek Caban e30037f0d5 wininet: Use proc instead of enum in SENDCALLBACK request. 2006-12-26 12:47:57 +01:00
Jacek Caban 7bd385b714 wininet: Use handle stored in WININETHANDLEHEADER instead of WININET_FindHandle. 2006-10-31 11:46:47 +01:00
Jacek Caban ae430f9323 wininet: Store handle in WININETHANDLEHEADER and use it in SendCallback. 2006-10-30 11:36:09 +01:00
Jacek Caban 957516f8e6 wininet: Remove lpwhparent from WININETHANDLERHEADER. 2006-10-30 11:36:02 +01:00
Jacek Caban 550ffef212 wininet: Store WININETFTPSESSIONW pointer in WININETFTPFILEW. 2006-10-30 11:35:56 +01:00
Jacek Caban 51ba292716 wininet: Store WININETFTPSESSIONW pointer in WININETFTPFINDNEXTW. 2006-10-30 11:35:43 +01:00
Jacek Caban 91312d7d57 wininet: Move ftp FindNextFile implementation to ftp.c. 2006-10-30 11:35:36 +01:00
Jacek Caban 96c0c6c5d9 wininet: Store WININETAPPINFOW pointer in WININETFTPSESSIONW. 2006-10-30 11:35:09 +01:00
Jacek Caban a9bdc01e19 wininet: Store pointer to WININETHTTPSESSIONW in WININETHTTPREQUESTW. 2006-10-30 11:34:51 +01:00
Jacek Caban c250617d88 wininet: Store WININETAPPINFOW pointer in WININETHTTPSESSIONW. 2006-10-30 11:34:21 +01:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mike McCormack c1dce86f1f wininet: Fix peeking of http data with a nul byte in it. 2006-05-05 16:33:30 +02:00
Robert Shearman 5b5d45586e wininet: Implement setting of send and receive timeouts. 2006-03-14 17:50:41 +01:00
Robert Shearman 9981f337e3 wininet: Don't continue to connect to a secure server without SSL support since it won't work.
Don't continue to connect to a secure server without SSL support since
it won't work. Return an error back to the application instead.
2006-03-06 20:00:21 +01:00
Aric Stewart 8b0883576e wininet: INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT work.
Beginning of framework to implement handling of InternetQueryOption
for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT.
2006-01-20 20:16:56 +01:00
Aric Stewart 1e946d3e14 wininet: HTTP headers reworking.
Redo how headers are handled, eliminating the concept of Standard
Headers and allow all headers to be added multiple times.
Allow querying of headers with an index to get the multiple headers.
Respect response vs request headers in HttpQueryInfo.
Add a number of tests to extensively test header adding and replacing.
2005-12-13 17:07:41 +01:00
Robert Shearman 067f09604a wininet: global function/data cleanup
Make some functions and a structure static since they are only used in
one file.
2005-12-03 18:03:08 +01:00
Robert Shearman f6252cf43e Remove duplicated code by modifying HTTP_HttpSendRequest so that it
can be used by both HttpSendRequest and HttpSendRequestEx.
Also allow HttpSendRequestEx to be used asynchronously.
2005-11-30 12:31:22 +01:00
Robert Shearman 13d371da54 Move the initiation of the SSL connection into a separate function. 2005-11-28 11:54:31 +01:00
Robert Shearman 3592110af7 Add a host port field that preserves the requested port of the
destination URL.
2005-11-28 11:53:05 +01:00
Robert Shearman 7bb3463166 Add a new field "lpszHostName" to the session to track the host name
of the HTTP server, as opposed to the server that we will connect to
that could be a proxy server. Fixes the "Host:" header that we send to
servers.
2005-11-28 10:40:42 +01:00
Robert Shearman 756f197945 Rename SendAsyncCallback to INTERNET_SendCallback. 2005-11-22 11:59:07 +00:00
Robert Shearman e6157dde9d We shouldn't pass the struct hostent returned from gethostbyname as
it's not thread-safe and isn't needed anyway.
2005-11-15 18:16:55 +00:00
Robert Shearman 5b1fd2e58e SSL doesn't need to use a different socket to unsecure communications. 2005-11-15 12:01:40 +00:00
Robert Shearman 01e91e5f6c Implement InternetReadFileExA (based on a patch by Brian Gerst). 2005-11-12 19:10:56 +00:00
Jacek Caban 02708c6227 Make functions static. 2005-10-26 10:07:58 +00:00
Aric Stewart 4a38fb2b10 Move the peek_msg buffers for SSL connections into the
WININET_CONNECTION structure to prevent 2 threads from clobbering each
other's buffers.
2005-10-20 11:35:54 +00:00
Mike McCormack 9b95bb526d Fix some warnings. 2005-06-13 19:05:42 +00:00
Lionel Ulmer d792a6af7b Added/improved TRACEing. 2004-12-23 11:18:29 +00:00
Steven Edwards 191a91d44a MSVC porting fixes. 2004-12-20 18:50:33 +00:00
Eric Pouech 4056d7ef8c Fixed some errors in function prototypes. 2004-12-13 21:19:01 +00:00
Robert Shearman ed517f3a8b InternetSetStatusCallback can be used on any handle and callbacks are
inherited by derived handles.
2004-09-20 19:10:31 +00:00
Alexandre Julliard 60a8fcf4b0 Avoid using socklen_t. 2004-09-16 20:34:27 +00:00
Robert Shearman 37f2cc8274 Store HTTP host header in the same way as most other headers. 2004-09-13 19:33:17 +00:00
Steven Edwards c91ae456b8 Use Windows sockets when building Wininet on Mingw. 2004-09-03 18:57:19 +00:00
Mike McCormack 13b6ce6da8 Fix warnings generated with -Wsign-compare. 2004-08-09 18:54:23 +00:00
Mike McCormack 3a1391b8dd Use pointers internally and refcount all objects. 2004-07-19 21:49:39 +00:00
Robert Shearman dee8751ca8 Fix HttpQueryInfo(HTTP_QUERY_RAW_HEADERS*) so that it returns the
actual headers received, not just reconstituting them from processed
data.
2004-07-19 20:09:20 +00:00
Kevin Koltzau 1d2d2d6bf1 Move all FTP functions to unicode.
Improve FTP LIST parsing.
2004-05-25 04:02:05 +00:00
Kevin Koltzau 917df92356 Prevent memory leak and superfluous status notifications. 2004-05-13 05:17:25 +00:00
Mike McCormack a4e902cbe1 Convert the wininet HTTP functions to Unicode. 2004-03-30 04:36:09 +00:00
Mike McCormack 09d2d47721 Convert WININETAPPINFOA structure to unicode. 2004-03-25 05:29:47 +00:00
Lionel Ulmer 1d5e6b6725 Better TRACEing in some functions. 2004-02-09 22:01:49 +00:00