Commit Graph

277 Commits

Author SHA1 Message Date
Daniel Stenberg c19844a0a3 better deal with HTTP(S) servers that respond with no headers at all, test
case 306 added to verify that we do right
2002-09-13 12:40:36 +00:00
Daniel Stenberg cac5251a98 Lukasz Czekierda correctly pointed out that curl used a bad Host: header
when talking to a IPv6-server using IPv6 IP address only.
2002-09-11 10:32:37 +00:00
Daniel Stenberg ba4e69bebc updated source code boilerplate/header 2002-09-03 11:52:59 +00:00
Daniel Stenberg 64bbe9dfaf James Gallagher's Content-Encoding work 2002-09-02 22:31:18 +00:00
Daniel Stenberg 0e0caf7c06 CURLE_SSL_INSECURE is removed again and so is CURLOPT_SSL_INSECURE, we
proceed fine with the already existing options, just having a different
internal library default for capath.
2002-08-30 11:09:49 +00:00
Daniel Stenberg 8aa3f14303 SOCKS5 support added (contributed by a still unnamed person). Not properly
working for "IPv6 enabled" libcurls yet, but should be pretty easy for
someone to adjust.
2002-08-30 09:20:11 +00:00
Daniel Stenberg 7140baae72 remove the data and conn fields from the Curl_transfer_keeper struct, they
weren't used anyway and mostly caused confusion
2002-08-29 06:09:21 +00:00
Daniel Stenberg 27a2e590cd SSL_INSECURE support and usage added 2002-08-26 23:13:25 +00:00
Daniel Stenberg 74be55a477 Markus F.X.J. Oberhumer's added comment 2002-08-22 19:38:50 +00:00
Daniel Stenberg 6dfe0ec31e Sterling Hughes brings the share interface 2002-08-13 14:20:47 +00:00
Daniel Stenberg cb895ec335 Initial fix to make the multi interface return control while waiting for
the initial connect to "come through".

This should work fine for connect and for FTP-PASV connects. Needs massive
testing.
2002-08-12 09:43:20 +00:00
Daniel Stenberg 4cf953678d Markus F.X.J. Oberhumer's CURLOPT_NOSIGNAL patch 2002-08-08 22:52:50 +00:00
Daniel Stenberg 108cb14d1f Make SessionHandle keep record if it is used with the multi interface or
the easy interface, it CANNOT be used by a mixture.
2002-08-05 17:04:39 +00:00
Daniel Stenberg e54e0c7877 CURLOPT_BUFFERSIZE allows an application to set a prefered buffer size
for receiving data from the network. It is meant as a hint, not as a forced
limit.
2002-06-15 21:00:54 +00:00
Daniel Stenberg 93f1784526 Remade the FTP not-check status line and not-attempt-to-read-status-line
variables, conditions and things.
2002-06-14 06:57:00 +00:00
Daniel Stenberg 3c63e1d8d9 Added 'dont_check' to be set during an FTP operation if the final status
message is supposed to be ignored.
2002-06-13 09:21:08 +00:00
Daniel Stenberg 105ec79b2b James Cone's efforts to add another netrc parsing "mode" 2002-05-21 22:17:19 +00:00
Daniel Stenberg 980a47b42b support for ingoring session cookies added 2002-05-07 09:58:13 +00:00
Daniel Stenberg d9a1a59f22 CURL_MAX_WRITE_SIZE is a new exported define that informs about the biggest
sized buffer that may be passed to a write callback
2002-05-03 14:50:29 +00:00
Daniel Stenberg 8e50d6b6f3 added two pointers to the fd_set variables to read/write from, as sometimes
we need to point to user-provided fd_sets
2002-05-02 22:13:35 +00:00
Daniel Stenberg 8927ddec16 In order to not get problems with DNS cache pruning, we no longer store
any name resolved data in any curl handle struct. That way, we won't mind
if the cache entries are pruned for the next time we need them. We'll just
resolve them again instead.

This changes the Curl_resolv() proto. It modifies the SessionHandle struct
but perhaps most importantly, it'll make the internals somewhat dependent
on the DNS cache not being disabled as that will cripple operations somewhat.
Especially for persistant connections.
2002-04-25 19:00:57 +00:00
Daniel Stenberg 62d205a2ec Dirk Manske brought the patch that introduces two new CURLINFO_* values:
CURLINFO_REDIRECT_TIME and CURLINFO_REDIRECT_COUNT.
2002-04-16 07:59:20 +00:00
Daniel Stenberg 3f6133be27 Jean-Philippe Barrette-LaPierre provided his patch that introduces
CURLOPT_DEBUGFUNCTION and CURLOPT_DEBUGDATA.
2002-04-12 07:21:11 +00:00
Daniel Stenberg 974f314f57 copyright string (year) update 2002-03-19 07:54:55 +00:00
Daniel Stenberg 80b004a57d Wesley Laxton's CURLOPT_PREQUOTE work 2002-02-28 23:31:23 +00:00
Daniel Stenberg e88a2ec6fc no more adjustable upload buffer size, we use non-blocking sockets now so
this work-around is not needed anymore!
2002-01-29 20:28:26 +00:00
Daniel Stenberg 76c53c690c Giaslas Georgios introduced CURLINFO_CONTENT_TYPE 2002-01-29 10:49:32 +00:00
Daniel Stenberg 8d97792dbc - shrunk the BUFSIZE define from 50K to 20K
- made a separate buffer for uploads (due to the non-blocking stuff)
- added two connectdata struct fields for non-blocking uploads
2002-01-16 14:53:19 +00:00
Sterling Hughes c0bfe7be15 1) the dns_cache_timeout should be an integer, not a bool
2) in the curl_dns_cache_entry structure, timestamp should be
a time_t instead of an integer (although I doubt it matters).
2002-01-08 04:30:59 +00:00
Sterling Hughes 22ac08e06d Add support for DNS cache timeouts via the CURLOPT_DNS_CACHE_TIMEOUT option.
The default cache timeout for this is 60 seconds, which is arbitrary and
completely subject to change :)
2002-01-08 04:26:47 +00:00
Sterling Hughes 8d7f402efb Make cach'ing work with threads now, there are now three cases:
- Use a global dns cache (via setting the tentatively named,
    CURLOPT_DNS_USE_GLOBAL_CACHE option to true)
    - Use a per-handle dns cache, by default
    - Use a pooled dns cache when in the "multi" interface
2002-01-07 20:52:32 +00:00
Daniel Stenberg 8b6314ccfb merged the multi-dev branch back into MAIN again 2002-01-03 15:01:22 +00:00
Daniel Stenberg 6aaee5f23b minor changes 2002-01-03 09:43:17 +00:00
Daniel Stenberg 28027c2aa2 If nobody is set we won't download any FTP file. If include_header is set,
we return a set of headers not more. This enables FTP operations that don't
transfer any data, only perform FTP commands.
2001-12-20 11:22:01 +00:00
Daniel Stenberg af6c394785 Götz Babin-Ebell's OpenSSL ENGINE patch 2001-12-17 23:01:39 +00:00
Daniel Stenberg 779043f7a3 As Eric Lavigne pointed out, the ftp response reader MUST cache data that
is not dealt with when we find an end-of-response line, as there might be
important stuff even after the correct line. So on subsequent invokes, the
cached data must be used!
2001-12-03 13:48:59 +00:00
Daniel Stenberg c16c017f8b more careful re-use of connections when SSL is used over proxies 2001-12-02 14:16:34 +00:00
Daniel Stenberg 332eb7651a CURLOPT_FTP_USE_EPSV can now be set to FALSE to prevent libcurl from
attempting to use EPSV before the standard PASV.
2001-11-28 23:20:14 +00:00
Daniel Stenberg dccc77a325 Eric Lavigne updates 2001-11-27 07:27:32 +00:00
Daniel Stenberg ca0fd33d2d Georg Horn's STARTTRANSFER_TIME patch 2001-11-20 15:00:50 +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 42a9d96fae fixed conn->name error on connection re-use and enlarged the 'gname' array
to hold 512 bytes (for user+password+hostname)
2001-10-29 10:10:21 +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 b438c46764 progress meter fixes 2001-10-12 12:31:43 +00:00
Daniel Stenberg a9181f8f00 added the option CURLOPT_HTTP_VERSION that can specify which HTTP version
libcurl should use in its request
2001-10-09 06:52:37 +00:00
Daniel Stenberg 51ca5fcbe0 major connecting updates 2001-10-02 09:40:06 +00:00
Daniel Stenberg afc81ada0c renamed the stupid 'hp' to 'hostaddr' which actually says what it is 2001-10-01 22:31:10 +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 48dc74aecc more transparant support for IPv6 name resolving 2001-09-28 07:05:26 +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
Daniel Stenberg cc1a4edf3d added cipher_list 2001-09-11 22:21:26 +00:00
Daniel Stenberg c3b448dcea moved the session ID cache state variables into the UrlState struct within
the SessionHandle. It was previously wrongly put in UserDefined
2001-09-06 08:32:01 +00:00
Daniel Stenberg 67df4c9e6c removed unused #defines 2001-09-01 10:20:12 +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 26983053c4 take port numbers into account when finding a previous session from the
cache
2001-08-29 09:36:41 +00:00
Daniel Stenberg a2b6ef3478 cookie jar adjustments 2001-08-29 09:32:18 +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 5ad4a52281 Added two fields in the connectdata struct for kerberos fiddles 2001-08-17 10:13:32 +00:00
Daniel Stenberg 6e22b74253 removed protos that were moved to url.h and the new getinfo.h 2001-08-15 06:54:09 +00:00
Daniel Stenberg 94a3886455 minor fixes for compiler warnings 2001-08-14 08:40:39 +00:00
Daniel Stenberg 95837043e2 Patrick Bihan-Faou introduced CURLOPT_SSL_VERIFYHOST and code to deal with
it.
2001-08-08 07:16:47 +00:00
Daniel Stenberg 8987244758 httpreq cleanup fix 2001-08-03 11:52:53 +00:00
Daniel Stenberg fe82ddda46 CURLOPT_MUTE and data->bits.mute are history, removed, gone! 2001-05-31 13:50:28 +00:00
Daniel Stenberg 11f2464a22 when asking for a resumed FTP transfer, even though the entire file has
already been transfered no longer returns error but instead is OK. The
reasoning behind this is of course that no extra actions need to be taken
and it is as if a transfer had been successfully performed.
2001-05-11 11:38:13 +00:00
Daniel Stenberg 85631150ce fixed 'storefread' to not make a warning 2001-05-07 11:17:18 +00:00
Daniel Stenberg 9304055df5 'FILE *' changed to 'void *' in all callback functions 2001-05-04 07:47:11 +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 025fa762f6 Added new CURLOPT_HEADERFUNCTION callback for writing headers only 2001-04-10 06:49:32 +00:00
Daniel Stenberg b1328430c9 ftps:// support added 2001-03-29 08:16:55 +00:00
Daniel Stenberg d6c456db85 added connect timeout support 2001-03-15 14:38:30 +00:00
Daniel Stenberg f8e1fc32de Edin Kadribaic's bug report #408488 forced a rearrange of two struct fields
from urldata to connectdata, quite correctly.
2001-03-14 14:11:11 +00:00
Daniel Stenberg 70d0d9d4da Added 'created' to the connectdata struct to hold the creation date, to
be used for the close policy decision
2001-03-13 07:53:59 +00:00
Daniel Stenberg e6b40bb6ac two new random seed options for the ssl config struct 2001-03-12 15:47:41 +00:00
Daniel Stenberg 38c349f751 support for a few new libcurl 7.7 CURLOPT_* options added 2001-03-12 15:05:54 +00:00
Daniel Stenberg 580896d615 Added httpversion to the progress struct, we do read it, we can just as well
store it.
2001-03-09 15:58:36 +00:00
Daniel Stenberg 2b30bfc349 all comments for the former public "low level" interface have been removed
since they were out-of-date and not correct anymore.

moved around some struct fields
2001-03-09 15:19:42 +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 5eba359b5d telnet without any static variables 2001-03-05 13:59:43 +00:00
Daniel Stenberg 84e94fda8b remade FILE:// support to look more as the other protocols 2001-03-05 13:39:01 +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 7c6562683a extending connectdata 2001-03-02 07:42:35 +00:00
Daniel Stenberg 584dbffe60 moved the dynamicly set pointers to the connectdata struct 2001-02-22 23:32:02 +00:00
Daniel Stenberg da06a6e7e3 IPv6-adjustments 2001-02-21 17:15:09 +00:00
Daniel Stenberg a1d6ad2610 multiple connection support initial commit 2001-02-20 17:35:51 +00:00
Daniel Stenberg 250df30e64 Moved a bunch of prototypes from curl.h here, they're no longer public and
I merely stuffed them here before I decide where they belong and if they
are to remain at all
2001-02-19 09:28:10 +00:00
Daniel Stenberg f6e2bfd464 Jun-ichiro itojun Hagino's IPv6 adjustments 2001-02-05 23:04:44 +00:00
Daniel Stenberg fcb347d124 Added a httpreq field in the main struct so that there's one field to check
for what HTTP request that is being used. The old bit-style fields are still
in there as well.
2001-01-26 15:52:01 +00:00
Daniel Stenberg 8bafc3692d fixed the comment for 'path' 2001-01-24 14:03:48 +00:00
Daniel Stenberg 3d96ee7423 extended the gname field one byte to avoid a possible overflow
added lots of explaining comments
2001-01-24 12:10:10 +00:00
Daniel Stenberg 24dee483e9 dual-license fix 2001-01-03 09:29:33 +00:00
Daniel Stenberg b8f7d94ef1 James Griffiths' max-redirs fix 2000-11-28 09:05:47 +00:00
Daniel Stenberg 86d4488cc7 Added struct fields to deal with time-of-document 2000-11-22 12:57:16 +00:00
Daniel Stenberg 42280e95bf removed URL size restrictions 2000-11-20 08:53:21 +00:00
Daniel Stenberg 2297bc4791 changed the 'port' field to long to better work with the va_arg() system 2000-11-17 09:48:21 +00:00
Daniel Stenberg 2bd70e1351 moved the followlocation field from the http struct to the urldata struct
since it has to survive http struct deletion
2000-11-13 18:23:21 +00:00
Daniel Stenberg 9f4f16b55d new getpass proto and function pointer usage 2000-11-06 22:53:50 +00:00
Daniel Stenberg 71fb701168 adjusted the time-keeping function to work better for location following
requests
2000-11-06 15:31:10 +00:00
Daniel Stenberg 0cff279063 new urldata ssl layout and T. Bharath brought the new SSL cert verify function 2000-10-30 11:53:40 +00:00
Daniel Stenberg 135cc036aa made the speedcheck actually work again 2000-10-17 14:53:03 +00:00
Daniel Stenberg 85174ed358 memory leak adjusts 2000-10-11 10:29:25 +00:00
Daniel Stenberg 03a56b3e56 HTTP resume fix, now the range pointer may be allocated 2000-10-06 06:28:39 +00:00
Daniel Stenberg 5865860ad6 counts header and request size 2000-10-04 13:07:43 +00:00
Daniel Stenberg 033263e696 added the new upload_bufsize to the connectdata struct 2000-10-03 11:05:09 +00:00
Daniel Stenberg f353258ff6 corrected bad data re-use and buffer problems 2000-09-25 21:49:37 +00:00
Daniel Stenberg 7bac857fdd krb4 fields structs and fields added 2000-09-21 08:50:48 +00:00
Daniel Stenberg c9c7fcf411 Stephen Kick's interface fixes 2000-09-18 21:54:08 +00:00
Daniel Stenberg 86ff2c46b7 introduced 'tunnel through http proxy' for ftp 2000-09-14 14:05:01 +00:00
Daniel Stenberg 1b1f143cd6 hostname and large file support added 2000-08-24 12:33:16 +00:00
Daniel Stenberg 18853542a1 curl_close is a new function pointer that can be set to a protocol-specific
function to get called in the curl_close() function for cleanup
auth_host is added to store the original (first) host name used
2000-07-25 21:14:12 +00:00
Daniel Stenberg 78686a5487 Added proxyport 2000-07-25 07:32:22 +00:00
Daniel Stenberg 1ef3600a07 haxx.nu => haxx.se 2000-06-20 15:31:26 +00:00
Daniel Stenberg f22717fe6c Added auto and free referer fields to the UrlData struct 2000-06-20 11:23:31 +00:00
Daniel Stenberg 6489735491 mode was replaced with callback in the progress struct 2000-06-16 13:17:44 +00:00
Daniel Stenberg e22d75cd6e Luong Dinh Dung's comments adjusted 2000-06-13 23:04:44 +00:00
Daniel Stenberg 4fd4a6888a added progress callback stuff, changed the callback typedefs to be public 2000-06-08 15:11:39 +00:00
Daniel Stenberg ecb2b95b1c struct HttpHeader changed to struct curl_slist 2000-06-05 08:23:50 +00:00
Daniel Stenberg 6d522c9c1d made getenv() more threadsafe for win32 2000-05-29 23:07:22 +00:00
Daniel Stenberg c35238e0a3 Jört Hartroth's updates 2000-05-22 17:18:55 +00:00
Daniel Stenberg 96dde76b99 moved here from the newlib branch 2000-05-22 14:12:12 +00:00
Daniel Stenberg cf23986a70 Added more variables to the progress struct targeted for statistics output 2000-03-01 22:06:57 +00:00
Daniel Stenberg dd11333fce new fields in the progress struct 2000-02-21 23:51:38 +00:00
Daniel Stenberg f4898981b0 added #include <timeval.h> on Jörn's advice
added lastshow to the progress struct
2000-02-16 00:02:40 +00:00
Daniel Stenberg f63c7b8d62 new stuff for the new progress meter 2000-02-14 23:13:15 +00:00
Daniel Stenberg 26e8ccc631 syncing with local edit 2000-01-10 23:36:14 +00:00
Daniel Stenberg ae1912cb0d Initial revision 1999-12-29 14:20:26 +00:00