Daniel Stenberg
1f9b0e70ab
Based on Joerg Mueller-Tolk's patch, this introduces support for
...
CURLINFO_HTTPAUTH_AVAIL and CURLINFO_PROXYAUTH_AVAIL
2003-09-04 10:55:20 +00:00
Daniel Stenberg
f2d422235b
Early Ehlinger's CURLOPT_FTP_RESPONSE_TIMEOUT patch applied.
2003-09-03 22:02:40 +00:00
Daniel Stenberg
d00e4a377b
store the FTP response code in the httpcode variable
2003-08-20 15:41:45 +00:00
Daniel Stenberg
27619fc450
Added support for CURLINFO_HTTP_CONNECTCODE
2003-08-11 23:15:41 +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
f9f1f0e316
Early Ehlinger's CURLOPT_FTP_CREATE_MISSING_DIRS patch was applied
2003-08-08 09:13:19 +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
1c35cbcc07
Reverted the 'filetime' struct field back to a 'long' as time_t is sometimes
...
unsigned and we want this to be able to hold -1 for illegal/unset values.
2003-07-30 07:22:28 +00:00
Daniel Stenberg
6f2a4d290f
Added a separate struct for the proxyntlm data, as it will/can be different
...
than the remote server's. That is, both the server and the proxy can in
fact require NTLM auth.
2003-07-22 09:58:18 +00:00
Daniel Stenberg
071c95128e
moved the proxyuser and proxypasswd fields from the sessionhandle to the
...
connectdata to work as expected
2003-07-21 13:16:30 +00:00
Daniel Stenberg
2f0bc9d1f7
No longer stores user+password in the sessionhandle, now doing that in the
...
connectdata struct instead. Each being an allocated pointer.
The passwdgiven field was turned into a local variable in the only
function it was being used.
2003-07-19 23:55:15 +00:00
Daniel Stenberg
06c86d1a8c
Moved the NTLM credentials to the connectdata struct instead, as NTLM
...
authenticates connections and not single requests. This should make it work
better when we mix requests from multiple hosts. Problem pointed out by
Cris Bailiff.
2003-07-15 23:36:50 +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
6f02ddfce8
new httpauth support, changed filetime variable kind
2003-06-26 11:31:50 +00:00
Daniel Stenberg
d13202f43b
modified
2003-06-12 23:03:08 +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
09df1cd41e
to support "redirects" after the full body is transfered
2003-06-11 15:31:40 +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
d0cc92a01a
Set auth type differently, we use one CURLOPT_HTTPAUTH instead as we plan
...
to add more method in the future.
2003-06-10 12:49:16 +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
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
d5043133e6
Gisle Vanem made curl build with djgpp on DOS.
2003-05-21 08:08:48 +00:00
Daniel Stenberg
94a157d0b0
support for CURLOPT_FTP_USE_EPRT added
2003-05-09 07:39:29 +00:00
Daniel Stenberg
836aaa1647
changes need for the new ftp path treatment and the new cookie code
2003-04-30 17:01:00 +00:00
Daniel Stenberg
019c4088cf
Dan Fandrich's gzip patch applied
2003-04-11 08:49:20 +00:00
Daniel Stenberg
9558f229db
Fixup after talks with Richard Bramante. We should now make better
...
comparisons before re-using SSL connections and re-using SSL connection IDs.
2003-03-31 05:13:26 +00:00
Daniel Stenberg
25f611ca42
Guillaume Cottenceau's patch that adds CURLOPT_UNRESTRICTED_AUTH that
...
disables the host name check in the FOLLOWLOCATION code. With that option
set, libcurl will send user+password to all hosts.
2003-03-31 04:41:05 +00:00
Daniel Stenberg
89721ff04a
Richard Bramante's provided a fix for a handle re-use problem seen when you
...
change options on an SSL-enabled connection between requests.
2003-03-24 23:10:38 +00:00
Daniel Stenberg
de11f5e53a
make the ENGINE depend on the USE_SSLEAY define too
2003-03-19 21:28:39 +00:00
Daniel Stenberg
bb6d0e37e3
Sort out the ENGINE problems people seem to be having. Now we put all ENGINE
...
related stuff within HAVE_OPENSSL_ENGINE_H and we don't make any private
typedef or similar if the header is missing...
2003-03-15 16:51:43 +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
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
9a2de6e6ee
if userpwd is "username:", this now implies a blank password while only
...
"username" will cause libcurl to prompt for password. Bryan Kemp noticed.
test case 136 is added for this
2003-01-09 16:47:09 +00:00
Daniel Stenberg
9a239edb52
updated to use the modified share-types
2003-01-08 15:50:52 +00:00
Daniel Stenberg
ec24efda74
Simon Liu's HTTP200ALIASES-patch!
2003-01-07 16:15:53 +00:00
Daniel Stenberg
b528bde470
conn->bits.tcpconnect now keeps track of if this connection is connected
...
or not
2002-12-13 16:15:19 +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
49f75ee8ce
A normal POST now provides data to the main transfer loop via the usual
...
read callback, and thus won't put a lot of stress on the request sending
code (which currently does an ugly loop).
2002-12-09 16:05:57 +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
d0b97f7e1f
Curl_GetFTPResponse() takes a different set of parameters and now return a
...
proper CURLcode. The default timeout for reading one response is now also
possible to change while running.
2002-12-03 10:25:31 +00:00
Daniel Stenberg
8bca5e05b8
Kjetil Jacobsen's patch that introduces CURLOPT_PRIVATE and CURLINFO_PRIVATE
...
for storage and retrieval of private data in the curl handle.
2002-11-20 19:11: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
Daniel Stenberg
03c22b4576
Now supports "Transfer-Encoding: chunked" for HTTP PUT operations where the
...
size of the uploaded file is unknown.
2002-11-11 08:40:37 +00:00
Daniel Stenberg
2cff251863
Curl_resolv() now returns a different struct, and it contains a reference
...
counter so that the caller needs to decrease that counter when done with
the returned data.
If compiled with MALLOCDEBUG I've added some extra checking that the counter
is decreased before a handle is closed etc.
2002-11-05 10:51:41 +00:00
Daniel Stenberg
b5a74715cf
bad headers can come in two kinds, we either treat everything as one big
...
badly assumed header, or we think that parts of the buffer is a bad header
and the rest is treated as a normal body part
2002-10-23 13:48:37 +00:00
Daniel Stenberg
156aad198f
Make the COOKIESESSION work better by creating a list of cookie files files
...
when given in the curl_easy_setopt() and then parse them all on the first
curl_easy_perform() call instead.
2002-10-17 07:10:39 +00:00
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