| Daniel Stenberg | 7c37c6a | 2000-05-22 17:35:35 +0000 | [diff] [blame] | 1 | _ _ ____ _ |
| 2 | ___| | | | _ \| | |
| 3 | / __| | | | |_) | | |
| 4 | | (__| |_| | _ <| |___ |
| 5 | \___|\___/|_| \_\_____| |
| 6 | |
| 7 | TODO |
| 8 | |
| Daniel Stenberg | 9d68fde | 2002-08-14 23:35:19 +0000 | [diff] [blame] | 9 | Things to do in project cURL. Please tell us what you think, contribute and |
| 10 | send us patches that improve things! Also check the http://curl.haxx.se/dev |
| 11 | web section for various technical development notes. |
| Daniel Stenberg | 7c37c6a | 2000-05-22 17:35:35 +0000 | [diff] [blame] | 12 | |
| Daniel Stenberg | 3660f67 | 2003-08-11 16:17:51 +0000 | [diff] [blame] | 13 | All bugs documented in the KNOWN_BUGS document are subject for fixing! |
| 14 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 15 | LIBCURL |
| Daniel Stenberg | 6704d44 | 2001-08-22 11:22:43 +0000 | [diff] [blame] | 16 | |
| Daniel Stenberg | 2d50391 | 2001-06-19 09:12:27 +0000 | [diff] [blame] | 17 | * Introduce another callback interface for upload/download that makes one |
| 18 | less copy of data and thus a faster operation. |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 19 | [http://curl.haxx.se/dev/no_copy_callbacks.txt] |
| 20 | |
| Daniel Stenberg | 3660f67 | 2003-08-11 16:17:51 +0000 | [diff] [blame] | 21 | * More data sharing. curl_share_* functions already exist and work, and they |
| Daniel Stenberg | 097938e | 2004-03-01 09:08:52 +0000 | [diff] [blame] | 22 | can be extended to share more. For example, enable sharing of the ares |
| Daniel Stenberg | 5ad2a25 | 2005-04-11 13:50:19 +0000 | [diff] [blame] | 23 | channel and the connection cache. |
| Daniel Stenberg | 097938e | 2004-03-01 09:08:52 +0000 | [diff] [blame] | 24 | |
| 25 | * Introduce a new error code indicating authentication problems (for proxy |
| 26 | CONNECT error 407 for example). This cannot be an error code, we must not |
| 27 | return informational stuff as errors, consider a new info returned by |
| Daniel Stenberg | a1287ec | 2005-09-16 07:18:25 +0000 | [diff] [blame] | 28 | curl_easy_getinfo() http://curl.haxx.se/bug/view.cgi?id=845941 |
| Daniel Stenberg | 01cfe67 | 2002-01-18 12:48:36 +0000 | [diff] [blame] | 29 | |
| Daniel Stenberg | 0d2cdd9 | 2004-10-08 09:57:33 +0000 | [diff] [blame] | 30 | * Use 'struct lifreq' and SIOCGLIFADDR instead of 'struct ifreq' and |
| 31 | SIOCGIFADDR on newer Solaris versions as they claim the latter is obsolete. |
| Daniel Stenberg | 5ad2a25 | 2005-04-11 13:50:19 +0000 | [diff] [blame] | 32 | To support ipv6 interface addresses properly. |
| Daniel Stenberg | 0d2cdd9 | 2004-10-08 09:57:33 +0000 | [diff] [blame] | 33 | |
| Daniel Stenberg | 9395cad | 2005-01-11 22:26:00 +0000 | [diff] [blame] | 34 | * Add the following to curl_easy_getinfo(): GET_HTTP_IP, GET_FTP_IP and |
| 35 | GET_FTP_DATA_IP. Return a string with the used IP. Suggested by Alan. |
| 36 | |
| Daniel Stenberg | 86660c7 | 2005-07-08 13:28:16 +0000 | [diff] [blame] | 37 | * Add option that changes the interval in which the progress callback is |
| 38 | called at most. |
| 39 | |
| Daniel Stenberg | b411336 | 2005-12-10 22:14:17 +0000 | [diff] [blame] | 40 | * Make libcurl built with c-ares use c-ares' IPv6 abilities. They weren't |
| 41 | present when we first added c-ares support but they have been added since! |
| 42 | When this is done and works, we can actually start considering making c-ares |
| 43 | powered libcurl the default build (which of course would require that we'd |
| 44 | bundle the c-ares source code in the libcurl source code releases). |
| 45 | |
| Daniel Stenberg | 16f3a32 | 2006-01-28 13:14:38 +0000 | [diff] [blame] | 46 | * Make the curl/*.h headers include the proper system includes based on what |
| 47 | was present at the time when configure was run. Currently, the sys/select.h |
| 48 | header is for example included by curl/multi.h only on specific platforms |
| 49 | we know MUST have it. This is error-prone. We therefore want the header |
| 50 | files to adapt to configure results. Those results must be stored in a new |
| 51 | header and they must use a curl name space, i.e not be HAVE_* prefix (as |
| 52 | that would risk collide with other apps that use libcurl and that runs |
| 53 | configure). |
| 54 | |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 55 | LIBCURL - multi interface |
| 56 | |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 57 | * Make sure we don't ever loop because of non-blocking sockets return |
| Daniel Stenberg | bcccd2f | 2006-05-30 08:45:59 +0000 | [diff] [blame] | 58 | EWOULDBLOCK or similar. The GnuTLS connection etc. |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 59 | |
| Daniel Stenberg | 065b87e | 2003-02-24 18:14:48 +0000 | [diff] [blame] | 60 | * Make transfers treated more carefully. We need a way to tell libcurl we |
| 61 | have data to write, as the current system expects us to upload data each |
| 62 | time the socket is writable and there is no way to say that we want to |
| 63 | upload data soon just not right now, without that aborting the upload. The |
| 64 | opposite situation should be possible as well, that we tell libcurl we're |
| 65 | ready to accept read data. Today libcurl feeds the data as soon as it is |
| 66 | available for reading, no matter what. |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 67 | |
| Daniel Stenberg | 57007e8 | 2005-07-30 23:48:07 +0000 | [diff] [blame] | 68 | * Make curl_easy_perform() a wrapper-function that simply creates a multi |
| 69 | handle, adds the easy handle to it, runs curl_multi_perform() until the |
| 70 | transfer is done, then detach the easy handle, destroy the multi handle and |
| 71 | return the easy handle's return code. This will thus make everything |
| 72 | internally use and assume the multi interface. The select()-loop should use |
| 73 | curl_multi_socket(). |
| 74 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 75 | DOCUMENTATION |
| 76 | |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 77 | * More and better |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 78 | |
| 79 | FTP |
| 80 | |
| Daniel Stenberg | 3050ae5 | 2005-01-19 21:56:02 +0000 | [diff] [blame] | 81 | * Make the detection of (bad) %0d and %0a codes in FTP url parts earlier in |
| 82 | the process to avoid doing a resolve and connect in vain. |
| 83 | |
| Daniel Stenberg | 338c2da | 2004-08-09 12:39:28 +0000 | [diff] [blame] | 84 | * Support GSS/Kerberos 5 for ftp file transfer. This will allow user |
| 85 | authentication and file encryption. Possible libraries and example clients |
| Dan Fandrich | 4d7f08a | 2005-10-18 18:15:01 +0000 | [diff] [blame] | 86 | are available from MIT or Heimdal. Requested by Markus Moeller. |
| Daniel Stenberg | 338c2da | 2004-08-09 12:39:28 +0000 | [diff] [blame] | 87 | |
| Daniel Stenberg | 3b491d0 | 2004-04-06 15:29:01 +0000 | [diff] [blame] | 88 | * REST fix for servers not behaving well on >2GB requests. This should fail |
| 89 | if the server doesn't set the pointer to the requested index. The tricky |
| Daniel Stenberg | 16e9a9e | 2004-11-28 13:04:34 +0000 | [diff] [blame] | 90 | (impossible?) part is to figure out if the server did the right thing or |
| 91 | not. |
| Daniel Stenberg | 3b491d0 | 2004-04-06 15:29:01 +0000 | [diff] [blame] | 92 | |
| Daniel Stenberg | 339f84f | 2003-07-30 13:41:59 +0000 | [diff] [blame] | 93 | * Support the most common FTP proxies, Philip Newton provided a list |
| 94 | allegedly from ncftp: |
| 95 | http://curl.haxx.se/mail/archive-2003-04/0126.html |
| 96 | |
| Daniel Stenberg | c0acaa5 | 2003-04-28 17:29:32 +0000 | [diff] [blame] | 97 | * Make CURLOPT_FTPPORT support an additional port number on the IP/if/name, |
| 98 | like "blabla:[port]" or possibly even "blabla:[portfirst]-[portsecond]". |
| 99 | |
| Daniel Stenberg | b756797 | 2003-05-26 08:19:06 +0000 | [diff] [blame] | 100 | * FTP ASCII transfers do not follow RFC959. They don't convert the data |
| 101 | accordingly. |
| Daniel Stenberg | 0058e87 | 2001-05-18 12:55:13 +0000 | [diff] [blame] | 102 | |
| Daniel Stenberg | eb6a14f | 2003-01-07 07:54:14 +0000 | [diff] [blame] | 103 | * Since USERPWD always override the user and password specified in URLs, we |
| 104 | might need another way to specify user+password for anonymous ftp logins. |
| 105 | |
| Daniel Stenberg | 7332350 | 2004-05-05 06:11:57 +0000 | [diff] [blame] | 106 | * The FTP code should get a way of returning errors that is known to still |
| 107 | have the control connection alive and sound. Currently, a returned error |
| 108 | from within ftp-functions does not tell if the control connection is still |
| 109 | OK to use or not. This causes libcurl to fail to re-use connections |
| 110 | slightly too often. |
| 111 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 112 | HTTP |
| Daniel Stenberg | 2c39a43 | 2001-07-02 08:21:25 +0000 | [diff] [blame] | 113 | |
| Daniel Stenberg | 2910880 | 2004-12-22 09:19:29 +0000 | [diff] [blame] | 114 | * When doing CONNECT to a HTTP proxy, libcurl always uses HTTP/1.0. This has |
| 115 | never been reported as causing trouble to anyone, but should be considered |
| 116 | to use the HTTP version the user has chosen. |
| 117 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 118 | TELNET |
| Daniel Stenberg | 7c37c6a | 2000-05-22 17:35:35 +0000 | [diff] [blame] | 119 | |
| Daniel Stenberg | 01cfe67 | 2002-01-18 12:48:36 +0000 | [diff] [blame] | 120 | * Reading input (to send to the remote server) on stdin is a crappy solution |
| 121 | for library purposes. We need to invent a good way for the application to |
| 122 | be able to provide the data to send. |
| 123 | |
| 124 | * Move the telnet support's network select() loop go away and merge the code |
| 125 | into the main transfer loop. Until this is done, the multi interface won't |
| 126 | work for telnet. |
| 127 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 128 | SSL |
| 129 | |
| Daniel Stenberg | 25411e0 | 2006-06-24 15:21:49 +0000 | [diff] [blame] | 130 | * Provide a libcurl API for setting mutex callbacks in the underlying SSL |
| 131 | library, so that the same application code can use mutex-locking |
| 132 | independently of OpenSSL or GnutTLS being used. |
| 133 | |
| Daniel Stenberg | 3b491d0 | 2004-04-06 15:29:01 +0000 | [diff] [blame] | 134 | * Anton Fedorov's "dumpcert" patch: |
| 135 | http://curl.haxx.se/mail/lib-2004-03/0088.html |
| 136 | |
| 137 | * Evaluate/apply Gertjan van Wingerde's SSL patches: |
| 138 | http://curl.haxx.se/mail/lib-2004-03/0087.html |
| 139 | |
| Daniel Stenberg | 9432bfe | 2004-08-27 07:17:52 +0000 | [diff] [blame] | 140 | * "Look at SSL cafile - quick traces look to me like these are done on every |
| 141 | request as well, when they should only be necessary once per ssl context |
| 142 | (or once per handle)". The major improvement we can rather easily do is to |
| 143 | make sure we don't create and kill a new SSL "context" for every request, |
| 144 | but instead make one for every connection and re-use that SSL context in |
| 145 | the same style connections are re-used. It will make us use slightly more |
| 146 | memory but it will libcurl do less creations and deletions of SSL contexts. |
| Daniel Stenberg | 5cffe05 | 2002-02-07 10:43:43 +0000 | [diff] [blame] | 147 | |
| Daniel Stenberg | 60f1926 | 2001-11-13 09:56:29 +0000 | [diff] [blame] | 148 | * Add an interface to libcurl that enables "session IDs" to get |
| 149 | exported/imported. Cris Bailiff said: "OpenSSL has functions which can |
| 150 | serialise the current SSL state to a buffer of your choice, and |
| 151 | recover/reset the state from such a buffer at a later date - this is used |
| Daniel Stenberg | 9432bfe | 2004-08-27 07:17:52 +0000 | [diff] [blame] | 152 | by mod_ssl for apache to implement and SSL session ID cache". |
| Daniel Stenberg | 60f1926 | 2001-11-13 09:56:29 +0000 | [diff] [blame] | 153 | |
| Daniel Stenberg | 5c4b422 | 2002-02-18 10:51:28 +0000 | [diff] [blame] | 154 | * OpenSSL supports a callback for customised verification of the peer |
| 155 | certificate, but this doesn't seem to be exposed in the libcurl APIs. Could |
| 156 | it be? There's so much that could be done if it were! (brought by Chris |
| 157 | Clark) |
| 158 | |
| Daniel Stenberg | 5ad2a25 | 2005-04-11 13:50:19 +0000 | [diff] [blame] | 159 | * Make curl's SSL layer capable of using other free SSL libraries. Such as |
| Daniel Stenberg | 60e2619 | 2005-05-11 11:56:04 +0000 | [diff] [blame] | 160 | Mozilla Security Services |
| 161 | (http://www.mozilla.org/projects/security/pki/nss/), MatrixSSL |
| 162 | (http://www.matrixssl.org/) or yaSSL (http://yassl.com/). At least the |
| 163 | latter two could be alternatives for those looking to reduce the footprint |
| 164 | of libcurl built with OpenSSL or GnuTLS. |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 165 | |
| Daniel Stenberg | 57007e8 | 2005-07-30 23:48:07 +0000 | [diff] [blame] | 166 | * Peter Sylvester's patch for SRP on the TLS layer. |
| 167 | Awaits OpenSSL support for this, no need to support this in libcurl before |
| 168 | there's an OpenSSL release that does it. |
| 169 | |
| Daniel Stenberg | 9853acb | 2005-08-29 06:59:44 +0000 | [diff] [blame] | 170 | * make the configure --with-ssl option first check for OpenSSL and then for |
| 171 | GnuTLS if OpenSSL wasn't detected. |
| 172 | |
| 173 | GnuTLS |
| 174 | |
| 175 | * Get NTLM working using the functions provided by libgcrypt, since GnuTLS |
| 176 | already depends on that to function. Not strictly SSL/TLS related, but |
| 177 | hey... Another option is to get available DES and MD4 source code from the |
| 178 | cryptopp library. They are fine license-wise, but are C++. |
| 179 | |
| 180 | * SSL engine stuff? |
| 181 | |
| 182 | * Work out a common method with Peter Sylvester's OpenSSL-patch for SRP |
| 183 | on the TLS to provide name and password |
| 184 | |
| Daniel Stenberg | bcccd2f | 2006-05-30 08:45:59 +0000 | [diff] [blame] | 185 | * Fix the connection phase to be non-blocking when multi interface is used |
| 186 | |
| Daniel Stenberg | 0e899d7 | 2006-12-19 14:28:01 +0000 | [diff] [blame^] | 187 | * Add a way to check if the connection seems to be alive, to correspond to |
| 188 | the SSL_peak() way we use with OpenSSL. |
| Daniel Stenberg | bcccd2f | 2006-05-30 08:45:59 +0000 | [diff] [blame] | 189 | |
| Daniel Stenberg | 01cfe67 | 2002-01-18 12:48:36 +0000 | [diff] [blame] | 190 | LDAP |
| 191 | |
| 192 | * Look over the implementation. The looping will have to "go away" from the |
| 193 | lib/ldap.c source file and get moved to the main network code so that the |
| 194 | multi interface and friends will work for LDAP as well. |
| 195 | |
| Daniel Stenberg | 2910880 | 2004-12-22 09:19:29 +0000 | [diff] [blame] | 196 | NEW PROTOCOLS |
| 197 | |
| Daniel Stenberg | 2910880 | 2004-12-22 09:19:29 +0000 | [diff] [blame] | 198 | * RTSP - RFC2326 (protocol - very HTTP-like, also contains URL description) |
| 199 | |
| Daniel Stenberg | 2910880 | 2004-12-22 09:19:29 +0000 | [diff] [blame] | 200 | * RSYNC (no RFCs for protocol nor URI/URL format). An implementation should |
| Daniel Stenberg | dbb6979 | 2004-12-22 09:21:04 +0000 | [diff] [blame] | 201 | most probably use an existing rsync library, such as librsync. |
| Daniel Stenberg | 2910880 | 2004-12-22 09:19:29 +0000 | [diff] [blame] | 202 | |
| Daniel Stenberg | 3e049a9 | 2001-11-13 09:06:32 +0000 | [diff] [blame] | 203 | CLIENT |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 204 | |
| Daniel Stenberg | 3392911 | 2004-09-09 06:58:01 +0000 | [diff] [blame] | 205 | * "curl --sync http://example.com/feed[1-100].rss" or |
| 206 | "curl --sync http://example.net/{index,calendar,history}.html" |
| 207 | |
| 208 | Downloads a range or set of URLs using the remote name, but only if the |
| 209 | remote file is newer than the local file. A Last-Modified HTTP date header |
| 210 | should also be used to set the mod date on the downloaded file. |
| 211 | (idea from "Brianiac") |
| 212 | |
| Daniel Stenberg | 84ec406 | 2004-08-13 12:06:30 +0000 | [diff] [blame] | 213 | * Globbing support for -d and -F, as in 'curl -d "name=foo[0-9]" URL'. |
| Daniel Stenberg | 9432bfe | 2004-08-27 07:17:52 +0000 | [diff] [blame] | 214 | Requested by Dane Jensen and others. This is easily scripted though. |
| Daniel Stenberg | 84ec406 | 2004-08-13 12:06:30 +0000 | [diff] [blame] | 215 | |
| Dan Fandrich | 4d7f08a | 2005-10-18 18:15:01 +0000 | [diff] [blame] | 216 | * Add an option that prevents cURL from overwriting existing local files. When |
| Daniel Stenberg | 87c4351 | 2002-08-26 22:32:46 +0000 | [diff] [blame] | 217 | used, and there already is an existing file with the target file name |
| 218 | (either -O or -o), a number should be appended (and increased if already |
| 219 | existing). So that index.html becomes first index.html.1 and then |
| 220 | index.html.2 etc. Jeff Pohlmeyer suggested. |
| 221 | |
| Daniel Stenberg | 3e049a9 | 2001-11-13 09:06:32 +0000 | [diff] [blame] | 222 | * "curl ftp://site.com/*.txt" |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 223 | |
| Daniel Stenberg | d095b20 | 2003-10-17 12:37:15 +0000 | [diff] [blame] | 224 | * The client could be told to use maximum N simultaneous transfers and then |
| 225 | just make sure that happens. It should of course not make more than one |
| 226 | connection to the same remote host. This would require the client to use |
| 227 | the multi interface. |
| Daniel Stenberg | d12fd89 | 2001-12-06 14:40:16 +0000 | [diff] [blame] | 228 | |
| Daniel Stenberg | 5c4b422 | 2002-02-18 10:51:28 +0000 | [diff] [blame] | 229 | * Extending the capabilities of the multipart formposting. How about leaving |
| 230 | the ';type=foo' syntax as it is and adding an extra tag (headers) which |
| 231 | works like this: curl -F "coolfiles=@fil1.txt;headers=@fil1.hdr" where |
| 232 | fil1.hdr contains extra headers like |
| 233 | |
| 234 | Content-Type: text/plain; charset=KOI8-R" |
| 235 | Content-Transfer-Encoding: base64 |
| 236 | X-User-Comment: Please don't use browser specific HTML code |
| 237 | |
| 238 | which should overwrite the program reasonable defaults (plain/text, |
| 239 | 8bit...) (Idea brough to us by kromJx) |
| 240 | |
| Daniel Stenberg | 4c3a231 | 2004-01-09 08:59:55 +0000 | [diff] [blame] | 241 | * ability to specify the classic computing suffixes on the range |
| 242 | specifications. For example, to download the first 500 Kilobytes of a file, |
| 243 | be able to specify the following for the -r option: "-r 0-500K" or for the |
| 244 | first 2 Megabytes of a file: "-r 0-2M". (Mark Smith suggested) |
| 245 | |
| Daniel Stenberg | 391a37e | 2003-12-08 13:48:23 +0000 | [diff] [blame] | 246 | * --data-encode that URL encodes the data before posting |
| 247 | http://curl.haxx.se/mail/archive-2003-11/0091.html (Kevin Roth suggested) |
| 248 | |
| Daniel Stenberg | f7f6b28 | 2004-05-25 14:39:53 +0000 | [diff] [blame] | 249 | * Provide a way to make options bound to a specific URL among several on the |
| Daniel Stenberg | b5cafc0 | 2004-08-09 12:36:17 +0000 | [diff] [blame] | 250 | command line. Possibly by letting ':' separate options between URLs, |
| 251 | similar to this: |
| Daniel Stenberg | f7f6b28 | 2004-05-25 14:39:53 +0000 | [diff] [blame] | 252 | |
| Daniel Stenberg | 9432bfe | 2004-08-27 07:17:52 +0000 | [diff] [blame] | 253 | curl --data foo --url url.com : \ |
| Daniel Stenberg | b5cafc0 | 2004-08-09 12:36:17 +0000 | [diff] [blame] | 254 | --url url2.com : \ |
| Daniel Stenberg | f7f6b28 | 2004-05-25 14:39:53 +0000 | [diff] [blame] | 255 | --url url3.com --data foo3 |
| 256 | |
| Daniel Stenberg | b5cafc0 | 2004-08-09 12:36:17 +0000 | [diff] [blame] | 257 | (More details: http://curl.haxx.se/mail/archive-2004-07/0133.html) |
| Daniel Stenberg | f7f6b28 | 2004-05-25 14:39:53 +0000 | [diff] [blame] | 258 | |
| 259 | The example would do a POST-GET-POST combination on a single command line. |
| 260 | |
| Daniel Stenberg | 7cb10a1 | 2004-03-02 10:08:04 +0000 | [diff] [blame] | 261 | BUILD |
| 262 | |
| 263 | * Consider extending 'roffit' to produce decent ASCII output, and use that |
| 264 | instead of (g)nroff when building src/hugehelp.c |
| Daniel Stenberg | 3de8577 | 2004-12-21 10:54:21 +0000 | [diff] [blame] | 265 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 266 | TEST SUITE |
| 267 | |
| Daniel Stenberg | 0e899d7 | 2006-12-19 14:28:01 +0000 | [diff] [blame^] | 268 | * Make our own version of stunnel for simple port forwarding to enable HTTPS |
| 269 | and FTP-SSL tests without the stunnel dependency, and it could allow us to |
| 270 | provide test tools built with either OpenSSL or GnuTLS |
| 271 | |
| Daniel Stenberg | 7cb10a1 | 2004-03-02 10:08:04 +0000 | [diff] [blame] | 272 | * Make the test servers able to serve multiple running test suites. Like if |
| 273 | two users run 'make test' at once. |
| 274 | |
| Daniel Stenberg | 96b7131 | 2003-03-15 15:08:55 +0000 | [diff] [blame] | 275 | * If perl wasn't found by the configure script, don't attempt to run the |
| 276 | tests but explain something nice why it doesn't. |
| 277 | |
| Daniel Stenberg | e60e741 | 2001-11-02 12:51:18 +0000 | [diff] [blame] | 278 | * Extend the test suite to include more protocols. The telnet could just do |
| 279 | ftp or http operations (for which we have test servers). |
| 280 | |
| 281 | * Make the test suite work on more platforms. OpenBSD and Mac OS. Remove |
| 282 | fork()s and it should become even more portable. |
| 283 | |
| Daniel Stenberg | 7cb10a1 | 2004-03-02 10:08:04 +0000 | [diff] [blame] | 284 | NEXT MAJOR RELEASE |
| Daniel Stenberg | 83a4638 | 2003-03-10 20:46:54 +0000 | [diff] [blame] | 285 | |
| 286 | * curl_easy_cleanup() returns void, but curl_multi_cleanup() returns a |
| 287 | CURLMcode. These should be changed to be the same. |
| 288 | |
| Daniel Stenberg | 7cb10a1 | 2004-03-02 10:08:04 +0000 | [diff] [blame] | 289 | * remove obsolete defines from curl/curl.h |
| 290 | |
| Daniel Stenberg | 35840a2 | 2004-07-01 08:22:52 +0000 | [diff] [blame] | 291 | * make several functions use size_t instead of int in their APIs |
| 292 | |
| Daniel Stenberg | 7cb10a1 | 2004-03-02 10:08:04 +0000 | [diff] [blame] | 293 | * remove the following functions from the public API: |
| 294 | curl_getenv |
| 295 | curl_mprintf (and variations) |
| 296 | curl_strequal |
| 297 | curl_strnequal |
| 298 | |
| 299 | They will instead become curlx_ - alternatives. That makes the curl app |
| 300 | still capable of building with them from source. |
| Daniel Stenberg | a00e7f0 | 2004-10-25 11:28:40 +0000 | [diff] [blame] | 301 | |
| 302 | * Remove support for CURLOPT_FAILONERROR, it has gotten too kludgy and weird |
| 303 | internally. Let the app judge success or not for itself. |