Robert Shearman
0590025e3c
wininet: Fix redirects with relative URIs instead of absolute URIs.
2006-03-09 22:45:18 +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
Robert Shearman
7a2357a480
wininet: Documentation fixes.
2006-02-14 11:34:14 +01:00
Aric Stewart
21712d3d15
wininet: Handle NULL lpBuffersIn in HttpSendRequestExW.
2006-01-13 13:52:38 +01:00
Jacek Caban
ad02317248
wininet: lpvStatusInfo in INTERNET_STATUS_NAME_RESOLVED,
...
INTERNET_STATUS_CONNECTING_TO_SERVER and
INTERNET_STATUS_CONNECTED_TO_SERVER should be strings, not
sockaddr_in.
2006-01-05 14:37:06 +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
Marcus Meissner
73893a74fd
wininet: Reinitialise NETCON on redirect.
2005-12-13 11:12:09 +01:00
Aric Stewart
7bca41a739
wininet: Handle HTTP_QUERY_CUSTOM.
...
In HttpQueryInfo if dwInfoLevel includes HTTP_QUERY_CUSTOM then
lpBuffer is In/Out because the header we are querying is there.
Additionally standard headers can be queried in this manner as well
(such as Set-Cookie).
2005-12-08 12:44:45 +01:00
Aric Stewart
d30cec77d3
wininet: A->W bugfix.
...
When converting SendRequestExA -> W we need to set the lpcszHeader
parameter to NULL if the original one is NULL.
2005-12-08 11:54:24 +01:00
Robert Shearman
efd067f2c3
wininet: Correctly set the last error when a called Unix network
...
function fails.
2005-12-03 18:10:14 +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
dc5f1cbd5d
Remove call to StrCatW by passing in NULL for lpszExtraInformation in
...
the call to InternetCrackUrl, which concatenates the params onto the
path.
Some other minor cleanups.
2005-11-30 12:01:50 +01:00
Robert Shearman
4350357634
HttpSendRequestExA/W doesn't touch lpBuffersIn->Next, so simplify the
...
code a bit.
Modify test case to demonstrate this.
2005-11-29 11:42:23 +01:00
Robert Shearman
8a8ce9c4c7
More lpszServerName -> lpszHostName fixes.
2005-11-29 11:35:19 +01:00
Robert Shearman
efac01b525
Fix redirects from secure to non-secure and vice versa.
2005-11-29 11:25:31 +01:00
Robert Shearman
de2666fd5f
Change all SendAsyncCallback calls into the synchronous
...
INTERNET_SendCallback where INTERNET_FLAG_ASYNC is already handled
properly.
2005-11-29 10:44:05 +01:00
Aric Stewart
1fc760d4a7
Allow HttpEndRequest to process 302 and 301 redirects. Append Host
...
port if non standard on the redirect host header and make sure to
append the extra information (parameters) and such to the location if
present. Additionally check to see if we are redirecting to https and
if so set the appropriate port.
2005-11-28 17:31:02 +01:00
Robert Shearman
0e7c41e979
Add support for using secure (SSL/TLS) connections through a proxy
...
server.
2005-11-28 11:55:16 +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
cc44f3a5c7
Fix "http://" prefix detection on the proxy URL.
2005-11-28 11:31:11 +01:00
Robert Shearman
0adec2b3dc
Replace some useless checks in HTTP_AddProxyInfo with asserts.
2005-11-28 11:28:06 +01:00
Robert Shearman
225a9facd4
Simplify and fix Set-Cookie handling.
2005-11-28 11:24:41 +01:00
Robert Shearman
22edb3e99e
Simplify HTTP_InsertProxyAuthorization.
2005-11-28 11:17:06 +01:00
Robert Shearman
29a436fd87
Add parsing of the Content-ID and Proxy-Connection headers.
...
Sort the table of header to option number mappings correctly.
Change a FIXME to a WARN because there are "X-..." headers that we
aren't supposed to parse.
2005-11-28 11:00: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
Aric Stewart
ed0eba24f9
HttpEndRequest does not actually send an extra NULL byte at the end of
...
the request. Help from Rob Shearman on this one.
2005-11-22 16:18:48 +00:00
Aric Stewart
9e68c651d6
Fix some logic to allow HTTP_ADDREQ_FLAG_ADD to replace existing
...
headers. Also adding a test for some header adding flags.
2005-11-22 14:53:30 +00:00
Robert Shearman
b27457c91c
Fix an incorrect entry in the HTTP header field table causing broken
...
Location field parsing.
2005-11-22 11:58:50 +00:00
Aric Stewart
be918f48b6
Implement HttpSendRequestEx and HttpEndRequest. Restructure, breaking
...
some things out of HTTP_SendRequestW to avoid duplicate code.
2005-11-21 15:17:55 +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
79dc136a37
INTERNET_STATUS_HANDLE_CREATED notifications just send the handle, not
...
an INTERNET_ASYNC_RESULT structure.
The source handle in HTTP_Connect should be the parent's handle.
2005-11-15 12:01:59 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Alexandre Julliard
dd281290e8
Authors: Marcus Meissner <marcus@jet.franken.de>, Walter Weiss <wjweiss@hotmail.com>
...
Added handling of more HTTP standard headers and binary search lists.
2005-11-01 18:06:54 +00:00
Jacek Caban
02708c6227
Make functions static.
2005-10-26 10:07:58 +00:00
Mike McCormack
403e58f5f4
Set the http port before figuring out whether we're using a proxy.
2005-10-19 19:07:08 +00:00
Aric Stewart
44cbdf2138
Use debugstr_a to prevent a buffer overflow when debugging.
2005-10-19 18:28:35 +00:00
Alexandre Julliard
7c1925a0f3
Remove the 'L' suffix on a number of constants to avoid comparison
...
errors on 64-bit platforms.
2005-09-13 15:00:32 +00:00
9c1d0cfc09
Wrong flags were being tested for INTERNET_FLAG_NO_AUTO_REDIRECT.
2005-09-07 11:26:34 +00:00
James Hawkins
92ba28851a
Avoid heap corruption by not accessing old HeapReAlloc'ed pointer.
2005-08-24 09:44:59 +00:00
Maarten Lankhorst
e325f7ed82
Changed setting default port number from HTTP_Connect to
...
HttpOpenRequestW.
2005-06-21 20:02:34 +00:00
Mike McCormack
9b95bb526d
Fix some warnings.
2005-06-13 19:05:42 +00:00
Peter Berg Larsen
e732fc023d
Janitorial: Get rid of strncpy/strncpyW.
2005-03-28 14:17:51 +00:00
Francois Gouget
93416cdaf7
Assorted spelling fixes.
2005-03-23 13:15:18 +00:00
Robert Shearman
7707a765b7
- Fully delete custom headers on connection opening.
...
- Free unneeded memory on clearing of standard headers.
- Fix index sanity test in delete function.
2005-03-10 11:14:24 +00:00
David McCullough
10ff5e1e81
HTTP_HttpSendRequestW was getting invoked with a null verb, default to
...
the GET method.
2005-02-02 09:56:35 +00:00
Hans Leidekker
6a367dbf8d
- Stub implementations for FtpGetFileSize, FtpCommand{A,W},
...
HttpSendRequestExW, InternetGetLastResponseInfoW,
InternetConfirmZoneCrossing{A,W}, InternetDial{A,W},
InternetGoOnline{A,W}, InternetHangUp, CreateMD5SSOHash,
InternetClearAllPerSiteCookieDecisions,
InternetEnumPerSiteCookieDecision{A,W}, InternetGetCookieEx{A,W},
InternetGetPerSiteCookieDecision{A,W},
InternetSetPerSiteCookieDecision{A,W}, InternetSetCookieEx{A,W},
ResumeSuspendedDownload, RetrieveUrlCacheEntryFileW,
UnlockUrlCacheEntryFileW, {Create,Delete}UrlCacheEntryW,
CommitUrlCacheEntryW, RetrieveUrlCacheEntryStreamW,
FindCloseUrlCache, FindFirstUrlCacheEntryEx{A,W},
FindFirstUrlCacheGroup, FindNextUrlCacheEntry{,Ex}{A,W},
FindNextUrlCacheGroup, SetUrlCacheEntryGroup{A,W},
{Get,Set}UrlCacheGroupAttribute{A,W}, SetUrlCacheConfigInfo{A,W}.
- Spec file stubs for new undocumented functions
ForceNexusLookup{,ExW}, Ftp{Get,Put}FileEx, HttpCheckDavCompliance,
InternetAlgIdToString{A,W}, InternetFortezzaCommand,
InternetGetCertByURLA, InternetQueryFortezzaStatus,
InternetSecurityProtocolToString{A,W}, InternetSetDialState{A,W},
InternetShowSecurityInfoByURL{A,W}, IsUrlCacheEntryExpired{A,W},
Privacy{Get,Set}ZonePreferenceW, RegisterUrlCacheNotification,
UrlZonesDetach.
- Use memcpy instead of strncpy in InternetGetLastResponseInfoA.
- Add and improve some traces.
- Fix my own coding style in InternetTimeToSystemTimeW.
- Fix a couple of signedness warnings.
2005-02-01 18:50:53 +00:00
Francois Gouget
da8b3dd7f2
Assorted spelling fixes.
2005-01-26 21:09:04 +00:00
Maxime Bellengé
e220907c71
Replace '\' with '/' in the URL in HTTP_HttpSendRequestW.
2005-01-25 16:43:17 +00:00
Diego Pettenò
869a66a8fd
Get rid of DPRINTF.
2005-01-07 17:09:39 +00:00
Michael Stefaniuc
15a308a9d7
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2005-01-03 14:56:42 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Michael Stefaniuc
7cb43c9dbe
Do not check for non NULL pointer before HeepFree'ing it. It's
...
redundant.
2004-12-21 14:42:35 +00:00
Mike McCormack
c72d956b90
Make sure to insert the proxy authentication header if necessary.
2004-12-06 11:40:57 +00:00
Robert Shearman
b72a682751
Use dynamically allocated heap allocated buffers in
...
HTTP_InterpretHTTPHeader to avoid buffer overflow on large headers.
2004-09-23 22:53:50 +00:00
Robert Shearman
890977a18d
Always replace whatever is already in the HTTP "Host" header.
2004-09-20 21:43:47 +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
Robert Shearman
0e74f851e8
Don't let applications add Connection header to request.
2004-09-14 19:38:59 +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
Robert Shearman
898baf674e
- Remove unused variable hIC.
...
- Remove check for HTTP signature in server reply.
- Fix stupid error with freeing the wrong buffer.
2004-09-13 19:17:47 +00:00
Uwe Bonnes
66af8b5f60
Strip dangling \r\n from HTTP_HttpSendRequest.
2004-09-10 21:11:22 +00:00
Uwe Bonnes
5f289e766f
Check for more standard headers.
2004-09-06 20:27:04 +00:00
Alexandre Julliard
754e7aa788
Added configure check for socklen_t.
2004-09-03 18:30:28 +00:00
Mike McCormack
08c6c698dd
Fix the processing of the lpszHeaders field in HttpSendRequest.
2004-08-10 23:41:35 +00:00
Mike McCormack
13b6ce6da8
Fix warnings generated with -Wsign-compare.
2004-08-09 18:54:23 +00:00
Alexandre Julliard
d7357a4956
Fixed a couple of off-by-one errors.
2004-07-22 20:36:36 +00:00
Robert Shearman
4385d305e1
HttpQueryInfo returns buffer length including null terminator on
...
insufficient buffer length and buffer length excluding null terminator
on success:
- Fix HTTP_HttpQueryInfoW for these semantics.
- Fix HttpQueryInfoA to correctly copy the null terminator in the call
to WideCharToMultiByte.
2004-07-21 21:17:03 +00:00
Mike McCormack
f1d7b14bf8
Fix HTTP POST requests.
2004-07-21 19:36:34 +00:00
Robert Shearman
907ac44aa7
Fix string length return from HttpQueryInfoA.
2004-07-20 01:21:08 +00:00
Mike McCormack
3a1391b8dd
Use pointers internally and refcount all objects.
2004-07-19 21:49:39 +00:00
Robert Shearman
d6315926e6
Honour INTERNET_FLAG_NO_COOKIES.
2004-07-19 21:18:33 +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
Francois Gouget
817c520909
Assorted spelling fixes.
2004-07-16 19:15:40 +00:00
Alexandre Julliard
48243e32b9
Authors: Mike McCormack <mike@codeweavers.com>, Robert Shearman <rob@codeweavers.com>
...
- Change the way that the response headers are reconstructed to reduce
the chance of memory being incorrectly allocated.
- Return the correct error when a header is not found.
- remove all the response headers before receiving new ones so that we
don't merge headers from two responses.
- Add extra standard fields.
- Split the status line into http version, status code and status text
and store those in the response data, without using use a fake
field.
2004-07-15 18:57:32 +00:00
Robert Shearman
4cd38b4829
Accept headers without \r\n ending in HttpAddRequestHeaders.
2004-07-13 23:34:28 +00:00
Mike McCormack
a496906336
Build http requests in a more consistent way.
...
Fix the size of the request buffer.
Don't try converting the optional information from W to A.
2004-07-04 00:24:47 +00:00
Dimitrie O. Paun
f3b681a2ad
Fix the function names in some of the comments.
2004-06-28 20:28:38 +00:00
Mike McCormack
b288f71e29
Pass pointers around internally instead of handles.
2004-06-14 17:57:26 +00:00
Mike McCormack
a9b405cf9a
Fix proxy support, remove typecasts.
2004-06-01 20:19:56 +00:00
Kevin Koltzau
917df92356
Prevent memory leak and superfluous status notifications.
2004-05-13 05:17:25 +00:00
Francois Gouget
8fc374d8b4
Make Unicode strings 'static const'.
2004-04-20 02:14:00 +00:00
Francois Gouget
6a6c85c6d8
Make Unicode const strings static so they are not copied to the stack
...
each time we enter the function.
2004-04-19 20:12:14 +00:00
Alexandre Julliard
286fe0af18
Fixed a warning.
2004-04-13 00:19:58 +00:00
Mike McCormack
3462299c55
Convert unicode strings to const.
2004-04-12 23:13:53 +00:00
Alexandre Julliard
a2bf4d009b
Fixed length handling in HttpQueryInfoW.
2004-03-31 20:09:54 +00:00
Mike McCormack
1baf39f95a
Fix the HttpQueryInfoA function buffer size.
2004-03-30 20:37:49 +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
Marcus Meissner
9d61aee357
Allocate the correct nr of bytes for lpszCookies in HTTP_HttpOpenRequestA.
...
Allocate the correct nr of bytes for request stringlen without options.
2004-03-22 21:31:44 +00:00
Marcus Meissner
8624ef4ab3
Allocate correct number of pointers for szAcceptTypes, since we need
...
it NULL terminated.
HeapReAlloc will modify the pointer, so store it there.
2004-03-22 20:40:46 +00:00
Uwe Bonnes
25efbc9dbc
HTTP_HttpSendRequestA: Remove \r and \n at the end of
...
lpwhr->lpszPath.
2004-03-16 01:06:30 +00:00
Francois Gouget
ad5ff7ceeb
Assorted spelling and case fixes.
2004-02-09 22:07:42 +00:00
Lionel Ulmer
1d5e6b6725
Better TRACEing in some functions.
2004-02-09 22:01:49 +00:00
Lionel Ulmer
e0e314780a
Implemented proper asynchronous InternetOpenUrl handling.
2004-02-09 21:45:38 +00:00
Lionel Ulmer
a29b4c7cde
Report real handles to the application, not Wine internal ones.
2004-02-09 20:55:58 +00:00
Mike McCormack
7cc70c0a8f
Implement proper HINTERNET handles.
2004-02-07 01:03:41 +00:00
Uwe Bonnes
599c4522a8
HTTP_DealWithProxy: Only add http:// to proxy string when needed.
2003-12-15 19:47:31 +00:00
Jeremy Shaw
3cd1cfeaf9
Add a '\r\n' to lpszHeaders if it is not already terminated by
...
'\r\n'.
2003-12-11 04:25:41 +00:00
Mike McCormack
b8921a24ab
Use unions instead of defines in async work requests.
2003-09-25 20:25:22 +00:00