Daniel Stenberg
fc6eff13b5
General HTTP authentication cleanup and fixes
2004-05-04 07:52:53 +00:00
Daniel Stenberg
4b9f8e766d
Made host name and proxy name get stored in a 'struct hostname' and set
...
all things up to work with encoded host names internally, as well as keeping
'display names' to show in debug messages. IDN resolves work for me now using
ipv6, ipv4 and ares resolving. Even cookies on IDN sites seem to do right.
2004-04-27 13:56:23 +00:00
Daniel Stenberg
712c67b4ae
no longer include curl/types.h, it serves no purpose
2004-04-26 14:02:51 +00:00
Daniel Stenberg
9befc682ee
added many comments
2004-04-26 07:12:52 +00:00
Daniel Stenberg
2ff30d067c
- David Byron found and fixed a small bug with the --fail and authentication
...
stuff added a few weeks ago. Turns out that if you specify --proxy-ntlm and
communicate with a proxy that requires basic authentication, the proxy
properly returns a 407, but the failure detection code doesn't realize it
should give up, so curl returns with exit code 0. Test case 162 verifies
this.
2004-04-22 20:07:41 +00:00
Daniel Stenberg
1401d909e8
Fix the "lingering close" problem when re-using a connection, as test case
...
160 shows.
We got no data and we attempted to re-use a connection. This might happen if
the connection was left alive when we were done using it before, but that was
closed when we wanted to read from it again. Bad luck. Retry the same request
on a fresh connect!
Deleted the sockerror variable again, it serves no purpose anymore.
2004-04-21 08:49:14 +00:00
Daniel Stenberg
b7a7600465
Cleaned up hostname/name/gname and path/ppath confusion. Removed the fixed-
...
length limit of the hostname part of the URL.
2004-04-20 07:53:24 +00:00
Daniel Stenberg
ee7d1d0701
remove an long time #defined struct member and use the actual "real" name
...
instead to make it easier to find/read
2004-04-13 07:37:28 +00:00
Daniel Stenberg
72b1144b8c
getting only a 100 Continue response and nothing else, when talking HTTP,
...
is now treated as an error by libcurl
2004-04-07 14:27:54 +00:00
Daniel Stenberg
cf1f46e1ca
renamed the strtoofft() macro to curlx_strtoofft() to adjust to the curlx_*
...
concept, and added lib/README.curlx to explain details about it
2004-04-07 07:30:40 +00:00
Daniel Stenberg
8ed44e8dfb
New authentication code added, particularly noticable when doing POST or PUT
...
with Digest or NTLM. libcurl will now use HEAD to negotiate the authentication
and when done perform the requested POST.
2004-04-06 15:14:10 +00:00
Daniel Stenberg
8e92600ddd
David Byron made CURLOPT_FAILONERROR work with authentications such as NTLM
...
or Digest.
2004-03-30 06:40:01 +00:00
Daniel Stenberg
76c36688d0
Makes CURLINFO_CONTENT_LENGTH_DOWNLOAD work even if CURLOPT_NOBODY is set
...
true.
2004-03-22 22:38:12 +00:00
Daniel Stenberg
fc67cca882
removed the min() macro define
2004-03-16 09:16:38 +00:00
Daniel Stenberg
e545e33d5f
Gisle Vanem's fixes to use CURL_SOCKET_BAD more instead of -1 for sockets.
2004-03-11 13:13:35 +00:00
Daniel Stenberg
0d1fc73f21
Use more curl_off_t variables when doing the progress meter calculations and
...
argument passing and try to convert to double only when providing data to the
external world.
2004-03-10 16:20:33 +00:00
Daniel Stenberg
7225b14002
curl_socket_t mistakes cleanup
2004-03-10 16:01:47 +00:00
Daniel Stenberg
ce5805a955
Use curl_socket_t instead of int for holding sockets. The typedefs and
...
defines are in setup.h.
2004-03-09 22:52:50 +00:00
Daniel Stenberg
6717240650
more fixing to make the progress/getinfo stuff to work properly when doing
...
file: transfers too
2004-03-05 09:40:16 +00:00
Daniel Stenberg
353f764119
Yet another curl_off_t printf format attempt, we now exclude the %-letter from
...
FORMAT_OFF_T to allow additional options to get specified, like with '"%5"
FORMAT_OFF_T'.
2004-03-02 09:31:18 +00:00
Daniel Stenberg
7ab3b5b3bb
use FORMAT_OFF_T instead of CURL_FORMAT_OFF_T to reduce the complexity of
...
having to redef that name
2004-03-02 07:25:39 +00:00
Daniel Stenberg
71d81f1f75
Now uses CURL_FORMAT_OFF_T instead of %Od
...
Fixed the check for bad resumes. Made test case 99 work and proved a bug
in test case ... eh, was it 32?
2004-03-01 16:27:34 +00:00
Daniel Stenberg
a39669198f
we call the macro CURLMAX() isntead of MAX(), just because it turned up
...
it collides with another MAX define on some platforms (like netbsd 1.6.1)
2004-02-20 08:47:23 +00:00
Daniel Stenberg
9efddfedab
removed some "jhrg" from comments
2004-02-18 15:28:56 +00:00
Daniel Stenberg
f3d91528a1
CURLcode/int cleanup to reduce IRIX warnings
...
Removed some dates/names in the comments.
2004-02-15 13:48:28 +00:00
Daniel Stenberg
e7d9ea8919
Greg Hewgill found out 'contentlength' wasn't big enough to hold a large file!
2004-02-13 07:12:40 +00:00
Daniel Stenberg
e5165af5a6
The MIPSPro compiler complains on constructs such as "(void)foo;" so
...
we avoid it where possible.
2004-02-06 07:59:16 +00:00
Daniel Stenberg
b84eaff1d5
set the 'retry' bit to TRUE when the connection is about to be retried,
...
this allows the HTTP code to *not* return a failure just because no data
has been received from the server
2004-02-02 14:49:54 +00:00
Daniel Stenberg
14cb9d296c
make sure the connection is closed when it was detected reset!
2004-01-30 12:41:27 +00:00
Daniel Stenberg
df750c236c
Somewhat crude attempt at fixing the test 91 failures. I commit this now
...
so that the automatic testing hosts will test these changes over the weekend.
2004-01-30 12:08:18 +00:00
Daniel Stenberg
958987c214
Chunked-transfers should have an additional CRLF after the final 0 CRLF
...
sequence.
2004-01-28 17:07:22 +00:00
Daniel Stenberg
b791e158f0
use curl_off_t instead of off_t!
2004-01-22 12:45:50 +00:00
Daniel Stenberg
e262a7265a
use the proper timecond defines, not the obsolete ones!
2004-01-21 08:47:21 +00:00
Daniel Stenberg
053f6c85ef
updated year in the copyright string
2004-01-07 09:19:33 +00:00
Daniel Stenberg
b60e0fa97e
David J Meyer's large file support.
2004-01-05 22:29:29 +00:00
Daniel Stenberg
6c6e5522cb
redirect from a bad url such as "www.com?moo=foo" to an absolute path didn't
...
work, as reported by John McGowan
2003-12-18 09:19:10 +00:00
Daniel Stenberg
a13f85fb33
assert that we get a good index to Curl_transfer()
2003-12-10 15:27:27 +00:00
Daniel Stenberg
0f4d042d3e
Ignore content-length when chunked transfer-encoding is transfered.
2003-12-03 07:52:00 +00:00
Daniel Stenberg
1b99d33b59
fix compiler warnings
2003-12-02 13:40:12 +00:00
Daniel Stenberg
2cf209d3f7
If HAVE_MSG_NOSIGNAL is set, we use MSG_NOSIGNAL when we call send() and
...
recv() and we no longer attempt to ignore the SIGPIPE signal.
2003-12-02 10:12:44 +00:00
Daniel Stenberg
1e98727c55
FTPS support added as RFC2228 and the murray-ftp-auth-ssl draft describe it
2003-11-24 07:15:37 +00:00
Daniel Stenberg
3fed12a203
combine the two identical cases
2003-11-20 14:16:18 +00:00
Daniel Stenberg
bd4c081157
unitialized variable fix, reported by both Marty Kuhrt and benjamin gerard
2003-11-06 07:55:45 +00:00
Daniel Stenberg
a5e22867c7
Resuming a download of an already downloaded document, that is trying to get
...
a range of a document beyond its size, caused libcurl to "hang" until the
server closed the connection and then it returned error 18.
This is bad. This way, we don't return any error at all, which isn't nice
either, as we need to alert the app somehow that the request range was out
of size.
2003-10-24 21:54:34 +00:00
Daniel Stenberg
b439e8ffb7
Do the auth stuff at the end-of-headers and not at the start-of-body, as
...
we might not get a body when we get a 401 with a set of WWW-Authenticate:
headers. This fixes the problem Kevin Roth detected in 7.10.8-pre4 and pre5.
Verified by test case 91.
2003-10-22 11:15:48 +00:00
Daniel Stenberg
80a06403e4
fixed gcc -Wshadow warnings
2003-10-18 20:28:53 +00:00
Daniel Stenberg
ce5db9a86e
Dominick Meglio implemented CURLOPT_MAXFILESIZE and --max-filesize.
2003-10-17 13:11:00 +00:00
Daniel Stenberg
22adcb9cd1
password promting support removed from libcurl
2003-10-16 14:08:59 +00:00
Daniel Stenberg
749f5387c1
Gisle Vanem's IPv6-on-Windows patch applied!
2003-10-14 12:00:45 +00:00
Daniel Stenberg
52ceab5e41
Re-arranged code to make the proxy-CONNECT loop able to do some of the
...
authentication negotiations needed for NTLM, Digest etc.
2003-09-03 21:51:28 +00:00
Daniel Stenberg
3938e0f58b
typecast to prevent compiler warning
2003-08-29 08:43:06 +00:00
Daniel Stenberg
734e8d6229
transfer fix for multi interface
2003-08-20 15:39:49 +00:00
Daniel Stenberg
acbcd68d89
Curl_SSL_InitSessions can return error, so check the return code and bail
...
out if necessary
2003-08-14 15:06:36 +00:00
Daniel Stenberg
7a19923afa
Serge Semashko added CURLOPT_PROXYAUTH support, and now NTLM for proxies
...
work.
2003-08-11 11:47:45 +00:00
Daniel Stenberg
96e217b496
the new cookie functions that require 'data' passed in
2003-08-11 09:56:06 +00:00
Daniel Stenberg
c704d1545c
include "share.h" for the cookie sharing
2003-08-06 15:26:24 +00:00
Daniel Stenberg
b73612392d
ares awareness/usage/support added. If configure --enable-ares is used, we
...
build libcurl to use ares for asynch name resolves.
2003-08-05 14:40:59 +00:00
Daniel Stenberg
41ae97e710
Dirk Manske's patch that introduces cookie support to the share interface.
2003-08-04 15:02:42 +00:00
Daniel Stenberg
f0278ca114
Removed #include <sys/resource.h>, as pointed out by Henry Bland we don't
...
need it.
2003-07-25 08:30:58 +00:00
Daniel Stenberg
fb731eb3e7
The NTLM functions now take a 'proxy' argument as well.
2003-07-22 09:58:57 +00:00
Daniel Stenberg
79749f8eb4
Fix to the endless loop of bad Basic authentication as reported in Cris
...
Bailiff's bug report 768275.
2003-07-15 23:06:02 +00:00
Daniel Stenberg
45fc760985
Peter Sylvester's patch was applied that introduces the following:
...
CURLOPT_SSL_CTX_FUNCTION to set a callback that gets called with the
OpenSSL's ssl_ctx pointer passed in and allow a callback to act on it. If
anything but CURLE_OK is returned, that will also be returned by libcurl
all the way back. If this function changes the CURLOPT_URL, libcurl will
detect this and instead go use the new URL.
CURLOPT_SSL_CTX_DATA is a pointer you set to get passed to the callback set
with CURLOPT_SSL_CTX_FUNCTION.
2003-07-04 16:29:23 +00:00
Daniel Stenberg
2d3734b8b5
Adjusted to work properly with the new authentication stuff
...
Added code to deal with white spaces in relocation headers.
2003-06-26 11:30:26 +00:00
Daniel Stenberg
d13202f43b
modified
2003-06-12 23:03:08 +00:00
Daniel Stenberg
bc67228576
corrected a comment
2003-06-12 17:40:56 +00:00
Daniel Stenberg
ecf32c964a
CURLHTTP* renamed to CURLAUTH* and NEGOTIATE is now GSSNEGOTIATE as there's
...
a "plain" Negotiate as well.
2003-06-12 17:34:27 +00:00
Daniel Stenberg
80d6d5c5c4
fixing details for NTLM
2003-06-11 16:14:45 +00:00
Daniel Stenberg
5ea04a852e
when we get the auth headers, we still need to read out the full body response
...
as otherwise we can re-send requests on the same connection nicely
2003-06-11 15:30:30 +00:00
Daniel Stenberg
73c5f24fa4
Initial take at NTLM authentication. It doesn't really work at this point
...
but the infrastructure is there.
2003-06-11 13:38:55 +00:00
Daniel Stenberg
e56ae1426c
Daniel Kouril's patch that adds HTTP negotiation support to libcurl was
...
added.
2003-06-10 12:22:19 +00:00
Daniel Stenberg
06984df5cb
Make the Content-Length info override the Connection: close header, so that
...
libcurl will stop reading when the number of bytes have arrived and not wait
for a closed socket.
2003-06-02 14:57:08 +00:00
Daniel Stenberg
4eb2a6c9a3
make a more descriptive error message when CURLE_HTTP_RETURNED_ERROR is
...
returned
2003-06-02 13:14:57 +00:00
Daniel Stenberg
b2ef79ef3d
Rudy Koento's problem fixed, test case 66 verifies this.
2003-05-23 09:47:57 +00:00
Daniel Stenberg
a39d77227f
Better Digest stuff
2003-05-22 22:39:38 +00:00
Daniel Stenberg
334d78cd18
Initial Digest support. At least partly working.
2003-05-22 16:09:54 +00:00
Daniel Stenberg
c0197f19cf
Dan Fandrich changed CURLOPT_ENCODING to select all supported encodings if
...
set to "". This frees the application from having to know which encodings
the library supports.
2003-05-12 12:45:14 +00:00
Daniel Stenberg
9371aed46c
avoid the write loop
2003-05-12 12:37:05 +00:00
Daniel Stenberg
19a4314e7f
corrected a comment about gzip not being supported
2003-05-01 17:49:47 +00:00
Daniel Stenberg
3fb257c39c
modified to the new cookie function proto
2003-04-30 17:05:19 +00:00
Daniel Stenberg
a84b0fbd52
Dan Fandrich corrected the error messages on "bad encoding".
2003-04-22 22:33:39 +00:00
Daniel Stenberg
019c4088cf
Dan Fandrich's gzip patch applied
2003-04-11 08:49:20 +00:00
Daniel Stenberg
1a2db0dfb1
James Bursa fixed a flaw in the content-type extracting code that could
...
miss the first letter
2003-04-08 14:48:38 +00:00
Daniel Stenberg
5ddc260fc2
No longer loop to read multiple times before returning back from the transfer
...
function, as this could easily end up looping for a very long time (more or
less until the whole transfer was done) and no library-using app would want
that.
Found thanks to a report by Kyle Sallee.
2003-02-26 12:42:25 +00:00
Daniel Stenberg
a6206a3aef
Fixes to bring back the the "Expect: 100-continue" functionality. If the
...
header is used, we must wait for a 100-code (or timeout), before we send the
data. The timeout is merely 1000 ms at this point. We may have reason to set
a longer timeout in the future.
2003-02-24 16:53:53 +00:00
Daniel Stenberg
b0b50bd12a
typecast the argument to isspace() to an int to prevent warnings on some
...
compilers
2003-01-30 06:06:24 +00:00
Daniel Stenberg
169b2eeb94
Fixes bug #669059 . We now extract the Content-Type better and more accurate.
2003-01-30 05:04:02 +00:00
Daniel Stenberg
30a46e1135
John McGowan found a problem where the DEBUGFUNCTION was called with bad
...
data on uploads.
2003-01-29 12:52:45 +00:00
Daniel Stenberg
a7c72b7abf
removed the local variables for emacs and vim, use the new sample.emacs
...
way for emacs, and vim users should provide a similar non-polluting style
2003-01-29 10:14:20 +00:00
Daniel Stenberg
2b054e5309
Bertrand Demiddelaer found and fixed this memory leak.
2003-01-24 11:13:59 +00:00
Daniel Stenberg
dee3163d95
when a chunked error is noticed, store the error number in the error string
...
to enable better error-tracking
2003-01-21 16:03:38 +00:00
Daniel Stenberg
5a83976c99
Markus F.X.J. Oberhumer's patch that reduces memory usage quite a bit by
...
only allocating the scratch memory buffer once it is needed and not always
in the handle.
2003-01-20 12:52:34 +00:00
Daniel Stenberg
f26a338a54
copyright year update in the source header
2003-01-16 21:08:12 +00:00
Daniel Stenberg
63667dfd96
no TABs in source code
2003-01-15 11:44:33 +00:00
Daniel Stenberg
ec24efda74
Simon Liu's HTTP200ALIASES-patch!
2003-01-07 16:15:53 +00:00
Daniel Stenberg
efbe930a69
CURLE_HTTP_NOT_FOUND => CURLE_HTTP_RETURNED_ERROR
2002-12-18 16:51:02 +00:00
Daniel Stenberg
db6ff224f8
The initial HTTP request can now be sent in multiple parts, as part of the
...
regular transfer process. This required some new tweaks, like for example
we need to be able to tell the tranfer loop to not chunky-encode uploads
while we're transferring the rest of the request...
2002-12-10 13:10:00 +00:00
Daniel Stenberg
4bcc866c52
The fread() callback pointer and associated pointer is now stored in the
...
connectdata struct instead, and is no longer modified within the 'set' struct
as previously (which was a really BAAAD thing).
2002-12-09 15:37:54 +00:00
Daniel Stenberg
f6cdb820af
read and write as much as possible until end of data or EWOULDBLOCK before
...
returning back to the select() loop. Consider this a test so far.
2002-12-05 14:26:30 +00:00
Daniel Stenberg
1c49a00d64
compareheader() was moved over to http.c and got a Curl_ prefix
...
The chunked transfer upload never stopped due to a silly add before we checked
for >0!
2002-11-28 15:46:22 +00:00
Daniel Stenberg
42acb00c81
moved the bools in the connectdata struct into the substruct named
...
ConnectBits where the other bools already are
2002-11-11 23:03:03 +00:00