mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
Philippe Hameau found out that -Q "+[command]" didn't work, although some code
was written for it. I fixed and added test case 227 to verify it. The curl.1 man page didn't mention the '+' so I added it.
This commit is contained in:
parent
b5065e462b
commit
7472ede32a
5
CHANGES
5
CHANGES
@ -7,6 +7,11 @@
|
|||||||
Changelog
|
Changelog
|
||||||
|
|
||||||
|
|
||||||
|
Daniel (20 January 2005)
|
||||||
|
- Philippe Hameau found out that -Q "+[command]" didn't work, although some
|
||||||
|
code was written for it. I fixed and added test case 227 to verify it.
|
||||||
|
The curl.1 man page didn't mention the '+' so I added it.
|
||||||
|
|
||||||
Daniel (19 January 2005)
|
Daniel (19 January 2005)
|
||||||
- Stephan Bergmann made libcurl return CURLE_URL_MALFORMAT if an FTP URL
|
- Stephan Bergmann made libcurl return CURLE_URL_MALFORMAT if an FTP URL
|
||||||
contains %0a or %0d in the user, password or CWD parts. (A future fix would
|
contains %0a or %0d in the user, password or CWD parts. (A future fix would
|
||||||
|
@ -10,6 +10,7 @@ Curl and libcurl 7.12.4
|
|||||||
|
|
||||||
This release includes the following changes:
|
This release includes the following changes:
|
||||||
|
|
||||||
|
o -Q "+[command]" was added
|
||||||
o src/getpass.c license issue sorted (code was rewritten)
|
o src/getpass.c license issue sorted (code was rewritten)
|
||||||
o curl -w now supports 'http_connect' for the proxy's response to CONNECT
|
o curl -w now supports 'http_connect' for the proxy's response to CONNECT
|
||||||
o introducing "curl-config --protocols"
|
o introducing "curl-config --protocols"
|
||||||
@ -42,6 +43,6 @@ advice from friends like these:
|
|||||||
Werner Koch, Gisle Vanem, Alex Neblett, Kai Sommerfeld, Marty Kuhrt,
|
Werner Koch, Gisle Vanem, Alex Neblett, Kai Sommerfeld, Marty Kuhrt,
|
||||||
Hzhijun, Pavel Orehov, Bruce Mitchener, Cyrill Osterwalder, Dan Torop,
|
Hzhijun, Pavel Orehov, Bruce Mitchener, Cyrill Osterwalder, Dan Torop,
|
||||||
Martijn Koster, Alex aka WindEagle, Cody Jones, Samuel Díaz García,
|
Martijn Koster, Alex aka WindEagle, Cody Jones, Samuel Díaz García,
|
||||||
Stephan Bergmann
|
Stephan Bergmann, Philippe Hameau
|
||||||
|
|
||||||
Thanks! (and sorry if I forgot to mention someone)
|
Thanks! (and sorry if I forgot to mention someone)
|
||||||
|
12
docs/curl.1
12
docs/curl.1
@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@ -21,7 +21,7 @@
|
|||||||
.\" * $Id$
|
.\" * $Id$
|
||||||
.\" **************************************************************************
|
.\" **************************************************************************
|
||||||
.\"
|
.\"
|
||||||
.TH curl 1 "7 Dec 2004" "Curl 7.12.3" "Curl Manual"
|
.TH curl 1 "20 Jan 2005" "Curl 7.12.4" "Curl Manual"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
curl \- transfer a URL
|
curl \- transfer a URL
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@ -677,9 +677,11 @@ If used as the first parameter on the command line, the \fI$HOME/.curlrc\fP
|
|||||||
file will not be read and used as a config file.
|
file will not be read and used as a config file.
|
||||||
.IP "-Q/--quote <comand>"
|
.IP "-Q/--quote <comand>"
|
||||||
(FTP) Send an arbitrary command to the remote FTP server. Quote commands are
|
(FTP) Send an arbitrary command to the remote FTP server. Quote commands are
|
||||||
sent BEFORE the transfer is taking place. To make commands take place after a
|
sent BEFORE the transfer is taking place (just after the initial PWD command
|
||||||
successful transfer, prefix them with a dash '-'. You may specify any amount
|
to be exact). To make commands take place after a successful transfer, prefix
|
||||||
of commands to be run before and after the transfer. If the server returns
|
them with a dash '-'. To make commands get sent after libcurl has changed
|
||||||
|
working directory, just before the transfer command(s), prefix the command
|
||||||
|
with '+'. You may specify any amount of commands. If the server returns
|
||||||
failure for one of the commands, the entire operation will be aborted. You
|
failure for one of the commands, the entire operation will be aborted. You
|
||||||
must send syntactically correct FTP commands as RFC959 defines.
|
must send syntactically correct FTP commands as RFC959 defines.
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@ -2784,8 +2784,9 @@ static void free_config_fields(struct Configurable *config)
|
|||||||
free(config->cookiejar);
|
free(config->cookiejar);
|
||||||
|
|
||||||
curl_slist_free_all(config->quote); /* checks for config->quote == NULL */
|
curl_slist_free_all(config->quote); /* checks for config->quote == NULL */
|
||||||
curl_slist_free_all(config->postquote); /* */
|
curl_slist_free_all(config->prequote);
|
||||||
curl_slist_free_all(config->headers); /* */
|
curl_slist_free_all(config->postquote);
|
||||||
|
curl_slist_free_all(config->headers);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(WIN32) && !defined(__CYGWIN32__)
|
#if defined(WIN32) && !defined(__CYGWIN32__)
|
||||||
@ -3490,6 +3491,7 @@ operate(struct Configurable *config, int argc, char *argv[])
|
|||||||
curl_easy_setopt(curl, CURLOPT_CRLF, config->crlf);
|
curl_easy_setopt(curl, CURLOPT_CRLF, config->crlf);
|
||||||
curl_easy_setopt(curl, CURLOPT_QUOTE, config->quote);
|
curl_easy_setopt(curl, CURLOPT_QUOTE, config->quote);
|
||||||
curl_easy_setopt(curl, CURLOPT_POSTQUOTE, config->postquote);
|
curl_easy_setopt(curl, CURLOPT_POSTQUOTE, config->postquote);
|
||||||
|
curl_easy_setopt(curl, CURLOPT_PREQUOTE, config->prequote);
|
||||||
curl_easy_setopt(curl, CURLOPT_WRITEHEADER,
|
curl_easy_setopt(curl, CURLOPT_WRITEHEADER,
|
||||||
config->headerfile?&heads:NULL);
|
config->headerfile?&heads:NULL);
|
||||||
curl_easy_setopt(curl, CURLOPT_COOKIEFILE, config->cookiefile);
|
curl_easy_setopt(curl, CURLOPT_COOKIEFILE, config->cookiefile);
|
||||||
|
@ -31,7 +31,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \
|
|||||||
test517 test518 test210 test211 test212 test220 test221 test222 \
|
test517 test518 test210 test211 test212 test220 test221 test222 \
|
||||||
test223 test224 test206 test207 test208 test209 test213 test240 \
|
test223 test224 test206 test207 test208 test209 test213 test240 \
|
||||||
test241 test242 test519 test214 test215 test216 test217 test218 \
|
test241 test242 test519 test214 test215 test216 test217 test218 \
|
||||||
test199 test225 test226
|
test199 test225 test226 test227
|
||||||
|
|
||||||
# The following tests have been removed from the dist since they no longer
|
# The following tests have been removed from the dist since they no longer
|
||||||
# work. We need to fix the test suite's FTPS server first, then bring them
|
# work. We need to fix the test suite's FTPS server first, then bring them
|
||||||
|
46
tests/data/test227
Normal file
46
tests/data/test227
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# Server-side
|
||||||
|
<reply>
|
||||||
|
<data>
|
||||||
|
data
|
||||||
|
to
|
||||||
|
see
|
||||||
|
that FTP
|
||||||
|
works
|
||||||
|
so does it?
|
||||||
|
</data>
|
||||||
|
</reply>
|
||||||
|
|
||||||
|
# Client-side
|
||||||
|
<client>
|
||||||
|
<server>
|
||||||
|
ftp
|
||||||
|
</server>
|
||||||
|
<name>
|
||||||
|
FTP with quote ops
|
||||||
|
</name>
|
||||||
|
<command>
|
||||||
|
ftp://%HOSTIP:%FTPPORT/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3"
|
||||||
|
</command>
|
||||||
|
</test>
|
||||||
|
<file name="log/ftpserver.cmd">
|
||||||
|
REPLY EPSV 500 no such command
|
||||||
|
</file>
|
||||||
|
|
||||||
|
|
||||||
|
# Verify data after the test has been "shot"
|
||||||
|
<verify>
|
||||||
|
<protocol>
|
||||||
|
USER anonymous
|
||||||
|
PASS curl_by_daniel@haxx.se
|
||||||
|
PWD
|
||||||
|
NOOP 1
|
||||||
|
EPSV
|
||||||
|
PASV
|
||||||
|
TYPE I
|
||||||
|
NOOP 2
|
||||||
|
SIZE 227
|
||||||
|
RETR 227
|
||||||
|
NOOP 3
|
||||||
|
QUIT
|
||||||
|
</protocol>
|
||||||
|
</verify>
|
Loading…
Reference in New Issue
Block a user