Commit 5e0d9aea authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Support for FTP third party transfers is now dropped

parent ae13c93b
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -6,6 +6,27 @@

                                  Changelog

Daniel (29 September 2006)
- Removed a few other no-longer present options from the header file.

- Support for FTP third party transfers was removed. Here's why:

  o The recent multi interface changes broke it and the design of the 3rd party
    transfers made it very hard to fix the problems
  o It was still blocking and thus nasty for the multi interface
  o It was a lot of extra code for a very rarely used feature
  o It didn't use the same code as for "plain" FTP transfers, so it didn't work
    fine for IPv6 and it didn't properly re-use connections and more
  o There's nobody around who's willing to work on and improve the existing
    code

  This does not mean that third party transfers are banned forever, only that
  they need to be done better if they are to be re-added in the future.

  The CURLOPT_SOURCE_* options are removed from the lib and so are the --3p*
  options from the command line tool. For this reason, I also bumped the
  version info for the lib.

Daniel (28 September 2006)
- Reported in #1561470 (http://curl.haxx.se/bug/view.cgi?id=1561470), libcurl
  would crash if a bad function sequence was used when shutting down after
+4 −2
Original line number Diff line number Diff line
@@ -2,8 +2,8 @@ Curl and libcurl 7.16.0

 Public curl release number:               96
 Releases counted from the very beginning: 123
 Available command line options:           117
 Available curl_easy_setopt() options:     138
 Available command line options:           112
 Available curl_easy_setopt() options:     133
 Number of public functions in libcurl:    54
 Amount of public web site mirrors:        33
 Number of known libcurl bindings:         34
@@ -11,6 +11,8 @@ Curl and libcurl 7.16.0

This release includes the following changes:

 o The CURLOPT_SOURCE_* options are removed and so are the --3p* command line
   options
 o curl_multi_socket() and family are suitable to start using
 o uses WSAPoll() on Windows Vista
 o (FTP) --ftp-ssl-control was added
+0 −11
Original line number Diff line number Diff line
@@ -1242,17 +1242,6 @@ Forces curl to use SSL version 2 when negotiating with a remote SSL server.
.IP "-3/--sslv3"
(SSL)
Forces curl to use SSL version 3 when negotiating with a remote SSL server.
.IP "--3p-quote"
(FTP) Specify arbitrary commands to send to the source server. See the
\fI-Q/--quote\fP option for details. (Added in 7.13.0)
.IP "--3p-url"
(FTP) Activates a FTP 3rd party transfer. Specifies the source URL to get a
file from, while the "normal" URL will be used as target URL, the file that
will be written/created.

Note that not all FTP server allow 3rd party transfers. (Added in 7.13.0)
.IP "--3p-user"
(FTP) Specify user:password for the source URL transfer. (Added in 7.13.0)
.IP "-4/--ipv4"
If libcurl is capable of resolving an address to multiple IP versions (which
it is if it is ipv6-capable), this option tells libcurl to resolve names to
+0 −12
Original line number Diff line number Diff line
@@ -917,18 +917,6 @@ Try "AUTH SSL" first, and only if that fails try "AUTH TLS"
.IP CURLFTPAUTH_TLS
Try "AUTH TLS" first, and only if that fails try "AUTH SSL"
.RE
.IP CURLOPT_SOURCE_URL
When set, it enables a FTP third party transfer, using the set URL as source,
while \fICURLOPT_URL\fP is the target.
.IP CURLOPT_SOURCE_USERPWD
Set "username:password" to use for the source connection when doing FTP third
party transfers.
.IP CURLOPT_SOURCE_QUOTE
Exactly like \fICURLOPT_QUOTE\fP, but for the source host.
.IP CURLOPT_SOURCE_PREQUOTE
Exactly like \fICURLOPT_PREQUOTE\fP, but for the source host.
.IP CURLOPT_SOURCE_POSTQUOTE
Exactly like \fICURLOPT_POSTQUOTE\fP, but for the source host.
.IP CURLOPT_FTP_ACCOUNT
Pass a pointer to a zero-terminated string (or NULL to disable). When an FTP
server asks for "account data" after user name and password has been provided,
+5 −31
Original line number Diff line number Diff line
@@ -941,22 +941,12 @@ typedef enum {
  CINIT(TCP_NODELAY, LONG, 121),

  /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */

  /* When doing 3rd party transfer, set the source user and password with
     this */
  CINIT(SOURCE_USERPWD, OBJECTPOINT, 123),

  /* 123 OBSOLETE. Gone in 7.16.0 */
  /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
  /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
  /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */

  /* When doing 3rd party transfer, set the source pre-quote linked list
     of commands with this */
  CINIT(SOURCE_PREQUOTE, OBJECTPOINT, 127),

  /* When doing 3rd party transfer, set the source post-quote linked list
     of commands with this */
  CINIT(SOURCE_POSTQUOTE, OBJECTPOINT, 128),
  /* 127 OBSOLETE. Gone in 7.16.0 */
  /* 128 OBSOLETE. Gone in 7.16.0 */

  /* When FTP over SSL/TLS is selected (with CURLOPT_FTP_SSL), this option
     can be used to change libcurl's default action which is to first try
@@ -973,12 +963,8 @@ typedef enum {
  CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130),
  CINIT(IOCTLDATA, OBJECTPOINT, 131),

  /* To make a 3rd party transfer, set the source URL with this */
  CINIT(SOURCE_URL, OBJECTPOINT, 132),

  /* When doing 3rd party transfer, set the source quote linked list of
     commands with this */
  CINIT(SOURCE_QUOTE, OBJECTPOINT, 133),
  /* 132 OBSOLETE. Gone in 7.16.0 */
  /* 133 OBSOLETE. Gone in 7.16.0 */

  /* zero terminated string for pass on to the FTP server when asked for
     "account" info */
@@ -1059,18 +1045,6 @@ typedef enum {

#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
                          the obsolete stuff removed! */
#define CURLOPT_HTTPREQUEST    -1
#define CURLOPT_FTPASCII       CURLOPT_TRANSFERTEXT
#define CURLOPT_MUTE           -2
#define CURLOPT_PASSWDFUNCTION -3
#define CURLOPT_PASSWDDATA     -4
#define CURLOPT_CLOSEFUNCTION  -5

#define CURLOPT_SOURCE_HOST    -6
#define CURLOPT_SOURCE_PATH    -7
#define CURLOPT_SOURCE_PORT    -8
#define CURLOPT_PASV_HOST      -9

#else
/* This is set if CURL_NO_OLDIES is defined at compile-time */
#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */
Loading