2000-05-22 19:35:35 +02:00
|
|
|
_ _ ____ _
|
|
|
|
___| | | | _ \| |
|
|
|
|
/ __| | | | |_) | |
|
|
|
|
| (__| |_| | _ <| |___
|
|
|
|
\___|\___/|_| \_\_____|
|
|
|
|
|
|
|
|
TODO
|
|
|
|
|
2001-03-08 13:32:03 +01:00
|
|
|
Things to do in project cURL. Please tell me what you think, contribute and
|
2001-06-19 11:12:27 +02:00
|
|
|
send me patches that improve things! Also check the http://curl.haxx.se/dev
|
|
|
|
web section for various development notes.
|
2000-05-22 19:35:35 +02:00
|
|
|
|
2001-05-18 14:55:13 +02:00
|
|
|
To do in a future release (random order):
|
2001-04-12 08:16:20 +02:00
|
|
|
|
2001-07-02 09:02:47 +02:00
|
|
|
* Make curl deal with cookies better. libcurl should be able to maintain a
|
|
|
|
"cookie jar". Updating it with cookies that is received, and using it to
|
|
|
|
pass cookies to the servers that have matching cookies in the jar.
|
|
|
|
http://curl.haxx.se/dev/cookie-jar.txt
|
|
|
|
|
2001-07-02 10:21:25 +02:00
|
|
|
* Consider an interface to libcurl that allows applications to easier get to
|
|
|
|
know what cookies that are sent back in the response headers.
|
|
|
|
|
|
|
|
* The win32_init() and win32_cleanup() functions that are present in
|
|
|
|
src/main.c (and docs/examples/win32sockets.c) would probably be fine to
|
|
|
|
add to curl_global_init() and performed if the correct flag is set. Makes
|
|
|
|
it easier for windows people.
|
|
|
|
|
2000-12-19 15:39:16 +01:00
|
|
|
* Make SSL session ids get used if multiple HTTPS documents from the same
|
2001-06-19 11:12:27 +02:00
|
|
|
host is requested. http://curl.haxx.se/dev/SSL_session_id.txt
|
|
|
|
|
|
|
|
* HTTP PUT for files passed on stdin. Requires libcurl to send the file
|
|
|
|
with chunked content encoding. http://curl.haxx.se/dev/HTTP-PUT-stdin.txt
|
|
|
|
|
|
|
|
* Introduce another callback interface for upload/download that makes one
|
|
|
|
less copy of data and thus a faster operation.
|
|
|
|
http://curl.haxx.se/dev/no_copy_callbacks.txt
|
2000-12-19 15:39:16 +01:00
|
|
|
|
2001-05-18 14:55:13 +02:00
|
|
|
* Suggested on the mailing list: CURLOPT_FTP_MKDIR...!
|
2001-03-15 15:45:03 +01:00
|
|
|
|
2001-03-13 16:44:31 +01:00
|
|
|
* Add configure options that disables certain protocols in libcurl to
|
|
|
|
decrease footprint. '--disable-[protocol]' where protocol is http, ftp,
|
|
|
|
telnet, ldap, dict or file.
|
|
|
|
|
2001-05-18 14:55:13 +02:00
|
|
|
* Extend the test suite to include telnet. The telnet could just do ftp or
|
|
|
|
http operations (for which we have test servers).
|
2001-03-08 13:32:03 +01:00
|
|
|
|
2001-07-02 10:21:25 +02:00
|
|
|
* Make TELNET work on windows!
|
|
|
|
|
2000-10-25 09:42:23 +02:00
|
|
|
* Add a command line option that allows the output file to get the same time
|
2001-02-16 14:41:34 +01:00
|
|
|
stamp as the remote file. libcurl already is capable of fetching the remote
|
2001-01-11 00:47:08 +01:00
|
|
|
file's date.
|
2000-10-25 09:42:23 +02:00
|
|
|
|
2001-03-20 11:13:47 +01:00
|
|
|
* Make curl's SSL layer option capable of using other free SSL libraries.
|
|
|
|
Such as the Mozilla Security Services
|
|
|
|
(http://www.mozilla.org/projects/security/pki/nss/) and GNUTLS
|
|
|
|
(http://gnutls.hellug.gr/)
|
2000-10-11 12:59:16 +02:00
|
|
|
|
2000-08-21 23:56:41 +02:00
|
|
|
* Add asynchronous name resolving, as this enables full timeout support for
|
2001-06-19 11:12:27 +02:00
|
|
|
fork() systems. http://curl.haxx.se/dev/async-resolver.txt
|
2000-08-21 23:56:41 +02:00
|
|
|
|
|
|
|
* Move non-URL related functions that are used by both the lib and the curl
|
|
|
|
application to a separate "portability lib".
|
|
|
|
|
2001-05-30 12:42:18 +02:00
|
|
|
* Add libcurl support/interfaces for more languages. C++ wrapper perhaps?
|
2000-08-21 23:56:41 +02:00
|
|
|
|
2001-03-08 13:32:03 +01:00
|
|
|
* "Content-Encoding: compress/gzip/zlib" HTTP 1.1 clearly defines how to get
|
|
|
|
and decode compressed documents. There is the zlib that is pretty good at
|
|
|
|
decompressing stuff. This work was started in October 1999 but halted again
|
|
|
|
since it proved more work than we thought. It is still a good idea to
|
|
|
|
implement though.
|
2000-05-22 19:35:35 +02:00
|
|
|
|
2001-03-08 13:32:03 +01:00
|
|
|
* Authentication: NTLM. Support for that MS crap called NTLM
|
2000-09-21 10:53:59 +02:00
|
|
|
authentication. MS proxies and servers sometime require that. Since that
|
|
|
|
protocol is a proprietary one, it involves reverse engineering and network
|
|
|
|
sniffing. This should however be a library-based functionality. There are a
|
|
|
|
few different efforts "out there" to make open source HTTP clients support
|
|
|
|
this and it should be possible to take advantage of other people's hard
|
2001-02-16 14:41:34 +01:00
|
|
|
work. http://modntlm.sourceforge.net/ is one. There's a web page at
|
|
|
|
http://www.innovation.ch/java/ntlm.html that contains detailed reverse-
|
|
|
|
engineered info.
|
2000-05-22 19:35:35 +02:00
|
|
|
|
|
|
|
* RFC2617 compliance, "Digest Access Authentication"
|
|
|
|
A valid test page seem to exist at:
|
2001-03-08 13:32:03 +01:00
|
|
|
http://hopf.math.nwu.edu/testpage/digest/
|
2000-05-22 19:35:35 +02:00
|
|
|
And some friendly person's server source code is available at
|
2001-03-08 13:32:03 +01:00
|
|
|
http://hopf.math.nwu.edu/digestauth/index.html
|
2000-05-22 19:35:35 +02:00
|
|
|
Then there's the Apache mod_digest source code too of course. It seems as
|
|
|
|
if Netscape doesn't support this, and not many servers do. Although this is
|
|
|
|
a lot better authentication method than the more common "Basic". Basic
|
|
|
|
sends the password in cleartext over the network, this "Digest" method uses
|
|
|
|
a challange-response protocol which increases security quite a lot.
|
|
|
|
|
|
|
|
* Other proxies
|
|
|
|
Ftp-kind proxy, Socks5, whatever kind of proxies are there?
|
|
|
|
|
2001-05-28 23:45:10 +02:00
|
|
|
* Full IPv6 Awareness and support. (This is partly done.) RFC 2428 "FTP
|
2001-03-06 13:50:42 +01:00
|
|
|
Extensions for IPv6 and NATs" is interesting. PORT should be replaced with
|
2001-05-28 23:45:10 +02:00
|
|
|
EPRT for IPv6 (done), and EPSV instead of PASV.
|
2000-05-22 19:35:35 +02:00
|
|
|
|