Daniel Stenberg
2e32d415c0
myalarm() is history, we now use HAVE_ALARM and we now do our very best to
...
1 - restore the previous sigaction struct as soon as we are about to shut
off our timeout
2 - restore the previous alarm() timeout, in case an application or similar
had it running before we "borrowed" it for a while.
No, this does not fix the multi-thread problem you get with alarm(). This
patch should correct bug report #478780 :
//sourceforge.net/tracker/?func=detail&atid=100976&aid=478780&group_id=976
If not, please post details!
2001-11-06 19:33:13 +00:00
Daniel Stenberg
4163b86cd2
failf() now only overwrites the error buffer the first time it gets called
...
for each *_perform(). It makes things a lot easier, as the first one that
detects the error get to write the final error reason...
2001-11-02 22:30:34 +00:00
Daniel Stenberg
617d6eb7ce
Update the byte counters in the loop so that aborted transfers have the
...
information as well. Improves debug outputs etc.
2001-11-01 12:18:53 +00:00
Daniel Stenberg
542055074b
If Curl_do() fails with CURLE_WRITE_ERROR on a re-used connection, this
...
new logic can retry the same operation on a new connection!
2001-10-31 15:13:19 +00:00
Daniel Stenberg
29b76a52fb
failed transfers will now close the connection
2001-10-22 06:34:14 +00:00
Daniel Stenberg
4e37187e44
now counts header size return from server and if nothing is returned from a
...
HTTP server we return error
2001-10-19 11:58:32 +00:00
Daniel Stenberg
45cc78fdbc
CURLOPT_FAILONERROR now only returns error if the HTTP code is 400 or above
...
unconditionalliy. Previously, the code check was for >= 300 unless follow-
location was enabled...
2001-10-19 06:27:24 +00:00
Daniel Stenberg
db0e3cc60c
call Curl_done() in Curl_perform() after Transfer() was called, even it it
...
returned an error as there might be stuff in there we must free/cleanup.
This fixes the memory leak Yanick Pelletier posted about 16 Oct 2001
2001-10-17 12:24:51 +00:00
Daniel Stenberg
2c5e416591
better check for absolute URL redirects, adjusted to new Curl_tvdiff() proto
2001-10-12 12:30:06 +00:00
Sterling Hughes
8e91d5de8e
looks nicer and is better compatible with older vim versions
2001-10-11 09:32:19 +00:00
Daniel Stenberg
5cd267b2be
removed obsoletetd myalarm() calls
2001-10-01 11:35:29 +00:00
Daniel Stenberg
e9aa07f660
filetime should be -1 if the remote time was unknown as 0 is actually a
...
valid time. we now store the filetime as a long to know for sure it can
hold -1 (there exist some unsigned time_t cases)
2001-09-28 11:04:43 +00:00
Daniel Stenberg
598e8dfbfb
Now we're setting a default domain for received cookies so that we can
...
properly match those cookies in subsequent requests
2001-09-26 07:08:29 +00:00
Daniel Stenberg
2cb893575d
moved a 100K buffer from the transfer loop to the urlstate struct, as it
...
seriously decreases the amount of used stack space
2001-09-12 12:02:12 +00:00
Sterling Hughes
6147879837
Added formatting sections for emacs and vim
2001-09-07 04:01:32 +00:00
Daniel Stenberg
0ece1b5c34
Major rename and redesign of the internal "backbone" structs. Details will
...
be posted in a minute to the libcurl list.
2001-08-30 22:48:34 +00:00
Daniel Stenberg
9835629801
Georg Huettenegger added code to deal with error 417 when doing form posts.
...
NOTE: we might do this for *ALL* errors when doing form posts.
2001-08-28 08:54:09 +00:00
Daniel Stenberg
3c52c53ddd
Added SSL session ID caching, moved some SSL code from url.c to ssluse.c
2001-08-28 08:37:54 +00:00
Daniel Stenberg
08655d8d5d
Georg Huettenegger's patch curl-7.8.1-pre5-patch-20010819
2001-08-21 13:18:07 +00:00
Daniel Stenberg
db9bb9221f
calls Curl_initinfo() in perform().
2001-08-15 06:53:10 +00:00
Daniel Stenberg
85bb25e628
const and (un)signed fixes
2001-08-14 08:39:01 +00:00
Daniel Stenberg
f8c357e4ff
corrected minor source indentation error
2001-08-10 14:10:19 +00:00
Daniel Stenberg
47bb09e908
- Sergio Ballestrero provided a patch for reading responses from NCSA httpd
...
1.5.x servers, as they return really screwed up response headers when asked
for with HTTP 1.1.
2001-08-05 12:30:57 +00:00
Daniel Stenberg
8987244758
httpreq cleanup fix
2001-08-03 11:52:53 +00:00
Daniel Stenberg
3e0a95bb78
FD_ZERO() the keepfd variables properly when keepon is modified (Tomasz Lacki
...
reported 12 Jul 2001)
2001-08-02 16:52:12 +00:00
Daniel Stenberg
2966ef6661
store httpcode _before_ doing the FAILONERROR check so that getinfo works
...
afterwards (bug #426442 )
2001-05-22 21:09:09 +00:00
Daniel Stenberg
adc0edc44b
slightly "hackish" approach to disable SSL during download if the connection
...
is a FTPS connection as the data transfer is then done unencrypted!
2001-05-21 13:30:01 +00:00
Daniel Stenberg
c7c942861a
Added tons of comments all over
2001-05-12 16:11:14 +00:00
Daniel Stenberg
291075b12f
checkheader() added to check headers+contents instead of the previous
...
strnequal() approach that really didn't follow the RFC properly
2001-05-11 07:52:58 +00:00
Daniel Stenberg
fef1fc0d32
Ingo Wilken's redirect fixes
2001-05-11 06:10:48 +00:00
Daniel Stenberg
dc6da007ad
Ingo Wilken's patch to support multiple spaces after "Location:"
2001-05-10 11:29:47 +00:00
Daniel Stenberg
a33eb9881c
Cris Bailiff's fix to never attempt to get the body of a 304-reply!
2001-05-03 10:45:39 +00:00
Daniel Stenberg
2eb94acb95
When Content-Length:0 is received, we now bail now and return success
...
directly after all the headers are received!
2001-04-27 18:03:44 +00:00
Daniel Stenberg
3974f30ed4
improved treatment of "Content-Length: 0", which is done by having
...
maxdownload set to -1 when not used
2001-04-27 08:02:10 +00:00
Daniel Stenberg
3fd65fb7d8
Remade resume stuff to keep data in the connectdata struct instead of the
...
main handle struct to work with persistant connections
2001-04-18 07:25:11 +00:00
Daniel Stenberg
879c6c5711
calling curl_easy_perform() with no URL set, now returns an error as
...
early as possible
2001-04-11 14:14:28 +00:00
Daniel Stenberg
6bd1ed034a
bugfixed the Location: following that must've been bad since the persistant
...
connections were introduced
2001-04-03 13:37:53 +00:00
Daniel Stenberg
fa491ed910
- disabling port on absolute redirects is wrong
...
- removed #ifdefed code
2001-04-03 13:18:41 +00:00
Daniel Stenberg
28497e7ee4
better error checks for failure conditions (based on Puneet Pawaia's reports)
2001-04-03 10:20:23 +00:00
Daniel Stenberg
3e65062be2
make sure the alarm is off when returning from curl_easy_perform()
2001-03-27 21:24:46 +00:00
Daniel Stenberg
31f9d4016d
'Connection: keep-alive' is now understood when sent by a HTTP/1.0 server
...
as an indication of a persistant connection
2001-03-26 06:19:11 +00:00
Daniel Stenberg
1e14f8d4c7
DONT TOUCH the data->url as it may point to read-only memory!!!
2001-03-23 08:24:47 +00:00
Daniel Stenberg
02f6894af5
now always stops reading a HEAD reply after all the headers have been returned
...
RFC 2616, section 9.4 says: "The HEAD method is identical to GET except that
the server MUST NOT return a message-body in the response."
2001-03-23 07:52:45 +00:00
Daniel Stenberg
ec1f42a154
Treat 302-redirects the same way we treat 303-redirects
2001-03-22 20:02:52 +00:00
Daniel Stenberg
aa1c3bb46d
reset the follow location counter in Curl_perform() so that we can follow
...
new locations on the same connection that was previously followed on
2001-03-22 19:14:35 +00:00
Daniel Stenberg
78b4851da1
Added support for HTTP code 100 continue, as 8.2.3 in RFC2616 defines
2001-03-19 07:47:57 +00:00
Daniel Stenberg
38c47803dd
detect if chunked transfers are aborted
2001-03-16 15:45:12 +00:00
Daniel Stenberg
f9cde0646f
Added a failf() error message when the chunked read returns failure
2001-03-13 22:20:14 +00:00
Daniel Stenberg
46c9075eab
updated the comment for the chunked reading
2001-03-12 15:21:11 +00:00
Daniel Stenberg
d774b10afb
Added infof() calls for persistant connection info, we are very likely to
...
need these at least for debugging 7.7 and probably later as well...
2001-03-12 13:58:03 +00:00
Daniel Stenberg
67d5c0a970
for HTTP/1.0 we default to non keep-alive connections, but when we get a
...
1.0-reply from a proxy we use and the Proxy-Connection: keep-alive header
is used, we switch it on and live happily ever after
2001-03-09 16:02:59 +00:00
Daniel Stenberg
781dd7a9bf
prefix changes curl_ to Curl_
...
made it work (partly) with persistant connections for HTTP/1.0 replies
moved the 'newurl' struct field for Location: to the connectdata struct
2001-03-09 15:16:28 +00:00
Daniel Stenberg
5cd4c3ed24
return from transfer when all headers have been received and nobody is set,
...
as is the case when doing HEAD requests
2001-03-08 10:32:27 +00:00
Daniel Stenberg
a23db7b7c7
"Transfer-Encoding: chunked" support added
2001-03-07 23:51:41 +00:00
Daniel Stenberg
91e4da7ddb
initial chunked transfer-encoding support
2001-03-07 17:12:12 +00:00
Daniel Stenberg
07ce7539a8
set download size properly for HTTP downloads
2001-03-05 13:40:31 +00:00
Daniel Stenberg
d1cfbd51b5
remade the port number stuff so that following locations work and doing
...
intermixed HTTP and FTP persistant connections also work!
2001-03-02 15:34:15 +00:00
Daniel Stenberg
1f17fb5f89
Now persistant connection download works thanks to the Content-Length taken
...
into account
2001-02-22 23:32:41 +00:00
Daniel Stenberg
a1d6ad2610
multiple connection support initial commit
2001-02-20 17:35:51 +00:00
Daniel Stenberg
58d70db92e
no longer #includes "getenv.h"
2001-02-07 08:36:23 +00:00
Daniel Stenberg
9464c5430d
Curl_read() uses ssize_t now
2001-01-31 15:06:56 +00:00
Daniel Stenberg
a14aaaf23f
fixed up the telnet to work (using support from Linus Nielsen)
2001-01-31 15:05:44 +00:00
Daniel Stenberg
1bcd3e601a
changed order of the range and follow-location checks so that a range-request
...
will work even when following a Location:
2001-01-30 11:52:59 +00:00
Daniel Stenberg
c69c79dd04
bettersupport for HTTP return codes 300-399
2001-01-27 20:31:51 +00:00
Daniel Stenberg
c331ef02f9
The check for that content-range is received must only be made if we requested
...
GET resume. Other resumes are upload-wise and don't care about this header
in the download stream
2001-01-26 15:50:56 +00:00
Daniel Stenberg
e49a82b06c
converted to use Curl_read() and Curl_write()
2001-01-25 12:23:12 +00:00
Daniel Stenberg
faa5c14aee
No more URL length restrictions
2001-01-19 12:15:23 +00:00
Daniel Stenberg
e09eda9c7c
download and highlevel are replaced with transfer
2001-01-17 13:19:01 +00:00