7.5-pre3 commit

This commit is contained in:
Daniel Stenberg 2000-11-22 14:27:47 +00:00
parent 593df2f18a
commit 6f4f3c79b6
5 changed files with 271 additions and 224 deletions

18
CHANGES
View File

@ -6,6 +6,24 @@
History of Changes History of Changes
Daniel (22 November 2000)
- Added the libcurl CURLOPT_FILETIME setopt, when set it tries to get the
modified time of the remote document. This is a special option since it
involves an extra set of commands on FTP servers. (Using the MDTM command
which is not in the RFC959)
curl_easy_getinfo() got a corresponding CURLINFO_FILETIME to get the time
after a transfer. It'll return a zero if CURLOPT_FILETIME wasn't used or if
the time wasn't possible to get.
--head/-I used on a FTP server will now present a 'Last-Modified:' header
if curl could get the time of the specified file.
- Added the option '--cacert [file]' to curl, which allows a specified PEM
file to be used to verify the peer's certificate when doing HTTPS
connections. This has been requested, rather recently by Hulka Bohuslav but
others have asked for it before as well.
Daniel (21 November 2000) Daniel (21 November 2000)
- Numerous fixes the test suite has brought into the daylight: - Numerous fixes the test suite has brought into the daylight:

View File

@ -79,8 +79,8 @@
/* Define if you have the gethostname function. */ /* Define if you have the gethostname function. */
#undef HAVE_GETHOSTNAME #undef HAVE_GETHOSTNAME
/* Define if you have the getpass function. */ /* Define if you have the getpass_r function. */
#undef HAVE_GETPASS #undef HAVE_GETPASS_R
/* Define if you have the getservbyname function. */ /* Define if you have the getservbyname function. */
#undef HAVE_GETSERVBYNAME #undef HAVE_GETSERVBYNAME
@ -112,6 +112,12 @@
/* Define if you have the setvbuf function. */ /* Define if you have the setvbuf function. */
#undef HAVE_SETVBUF #undef HAVE_SETVBUF
/* Define if you have the sigaction function. */
#undef HAVE_SIGACTION
/* Define if you have the signal function. */
#undef HAVE_SIGNAL
/* Define if you have the socket function. */ /* Define if you have the socket function. */
#undef HAVE_SOCKET #undef HAVE_SOCKET

View File

@ -469,7 +469,7 @@ char *curl_getenv(char *variable);
char *curl_version(void); char *curl_version(void);
/* This is the version number */ /* This is the version number */
#define LIBCURL_VERSION "7.5-pre2" #define LIBCURL_VERSION "7.5-pre3"
#define LIBCURL_VERSION_NUM 0x070500 #define LIBCURL_VERSION_NUM 0x070500
/* linked-list structure for the CURLOPT_QUOTE option (and other) */ /* linked-list structure for the CURLOPT_QUOTE option (and other) */

View File

@ -114,12 +114,17 @@ puts (
" cut off). The data is expected to be \"url-encoded\".\n" " cut off). The data is expected to be \"url-encoded\".\n"
" This will cause curl to pass the data to the server\n" " This will cause curl to pass the data to the server\n"
" using the content-type application/x-www-form-urlen­\n" " using the content-type application/x-www-form-urlen­\n"
" coded. Compare to -F.\n" " coded. Compare to -F. If more than one -d/--data option\n"
" is used on the same command line, the data pieces spec­\n"
" ified will be merged together with a separating &-let­\n"
" ter. Thus, using '-d name=daniel -d skill=lousy' would\n"
" generate a post chunk that looks like\n"
"\n" "\n"
" If you start the data with the letter @, the rest\n" " If you start the data with the letter @, the rest\n"
" should be a file name to read the data from, or - if\n" " should be a file name to read the data from, or - if\n"
" you want curl to read the data from stdin. The con­\n" " you want curl to read the data from stdin. The con­\n"
" tents of the file must already be url-encoded.\n" " tents of the file must already be url-encoded. Multiple\n"
" files can also be specified.\n"
"\n" "\n"
" To post data purely binary, you should instead use the\n" " To post data purely binary, you should instead use the\n"
" --data-binary option.\n" " --data-binary option.\n"
@ -162,6 +167,11 @@ puts (
" that this certificate is the private key and the pri­\n" " that this certificate is the private key and the pri­\n"
" vate certificate concatenated!\n" " vate certificate concatenated!\n"
"\n" "\n"
" --cacert <CA certificate>\n"
" (HTTPS) Tells curl to use the specified certificate\n"
" file to verify the peer. The certificate must be in PEM\n"
" format.\n"
"\n"
" -f/--fail\n" " -f/--fail\n"
" (HTTP) Fail silently (no output at all) on server\n" " (HTTP) Fail silently (no output at all) on server\n"
" errors. This is mostly done like this to better enable\n" " errors. This is mostly done like this to better enable\n"
@ -204,22 +214,25 @@ puts (
" as one of the internal ones curl would use, your exter­\n" " as one of the internal ones curl would use, your exter­\n"
" nally set header will be used instead of the internal\n" " nally set header will be used instead of the internal\n"
" one. This allows you to make even trickier stuff than\n" " one. This allows you to make even trickier stuff than\n"
" curl would normally do. You should not replace inter­\n" " curl would normally do. You should not replace\n"
" nally set headers without knowing perfectly well what\n" " internally set headers without knowing perfectly well\n"
" you're doing. Replacing an internal header with one\n" " what you're doing. Replacing an internal header with\n"
" without content on the right side of the colon will\n" " one without content on the right side of the colon will\n"
" prevent that header from appearing.\n" " prevent that header from appearing.\n"
"\n" "\n"
" -i/--include\n" " -i/--include\n"
" (HTTP) Include the HTTP-header in the output. The HTTP-\n" " (HTTP) Include the HTTP-header in the output. The HTTP-\n"
" header includes things like server-name, date of the\n" " header includes things like server-name, date of the\n"
" document, HTTP-version and more...\n" " document, HTTP-version and more...\n"
"\n"
" --interface <name>\n" " --interface <name>\n"
" Perform an operation using a specified interface. You\n" " Perform an operation using a specified interface. You\n"
" can enter interface name, IP address or host name. An\n" " can enter interface name, IP address or host name. An\n"
" example could look like:\n" " example could look like:\n"
"\n" "\n"
" curl --interface eth0:1 http://www.netscape.com/\n" " curl --interface eth0:1 http://www.netscape.com/\n"
);
puts(
"\n" "\n"
" -I/--head\n" " -I/--head\n"
" (HTTP/FTP) Fetch the HTTP-header only! HTTP-servers\n" " (HTTP/FTP) Fetch the HTTP-header only! HTTP-servers\n"
@ -229,8 +242,6 @@ puts (
"\n" "\n"
" --krb4 <level>\n" " --krb4 <level>\n"
" (FTP) Enable kerberos4 authentication and use. The\n" " (FTP) Enable kerberos4 authentication and use. The\n"
);
puts(
" level must be entered and should be one of 'clear',\n" " level must be entered and should be one of 'clear',\n"
" 'safe', 'confidential' or 'private'. Should you use a\n" " 'safe', 'confidential' or 'private'. Should you use a\n"
" level that is not one of these, 'private' will instead\n" " level that is not one of these, 'private' will instead\n"
@ -310,7 +321,6 @@ puts (
" or use several variables like:\n" " or use several variables like:\n"
"\n" "\n"
" curl http://{site,host}.host[1-5].com -o \"#1_#2\"\n" " curl http://{site,host}.host[1-5].com -o \"#1_#2\"\n"
"\n"
" -O/--remote-name\n" " -O/--remote-name\n"
" Write output to a local file named like the remote file\n" " Write output to a local file named like the remote file\n"
" we get. (Only the file part of the remote file is used,\n" " we get. (Only the file part of the remote file is used,\n"
@ -371,8 +381,8 @@ puts (
"\n" "\n"
" -500 specifies the last 500 bytes\n" " -500 specifies the last 500 bytes\n"
"\n" "\n"
" 9500 specifies the bytes from offset 9500 and\n" " 9500 specifies the bytes from offset 9500 and for­\n"
" forward\n" " ward\n"
"\n" "\n"
" 0-0,-1 specifies the first and last byte only(*)(H)\n" " 0-0,-1 specifies the first and last byte only(*)(H)\n"
"\n" "\n"
@ -424,11 +434,16 @@ puts (
" README.curl for detailed examples of how to use this.\n" " README.curl for detailed examples of how to use this.\n"
" If no password is specified, curl will ask for it\n" " If no password is specified, curl will ask for it\n"
" interactively.\n" " interactively.\n"
"\n"
" -U/--proxy-user <user:password>\n" " -U/--proxy-user <user:password>\n"
" Specify user and password to use for Proxy authentica­\n" " Specify user and password to use for Proxy authentica­\n"
" tion. If no password is specified, curl will ask for it\n" " tion. If no password is specified, curl will ask for it\n"
" interactively.\n" " interactively.\n"
"\n" "\n"
" --url <URL>\n"
" Set the URL to fetch. This option is mostly handy when\n"
" you wanna specify URL in a config file.\n"
"\n"
" -v/--verbose\n" " -v/--verbose\n"
" Makes the fetching more verbose/talkative. Mostly\n" " Makes the fetching more verbose/talkative. Mostly\n"
" usable for debugging. Lines starting with '>' means\n" " usable for debugging. Lines starting with '>' means\n"
@ -460,14 +475,14 @@ puts (
" doubled when using this option.\n" " doubled when using this option.\n"
"\n" "\n"
" Available variables are at this point:\n" " Available variables are at this point:\n"
);
puts(
"\n" "\n"
" url_effective The URL that was fetched last. This is\n" " url_effective The URL that was fetched last. This is\n"
" mostly meaningful if you've told curl to\n" " mostly meaningful if you've told curl to\n"
" follow location: headers.\n" " follow location: headers.\n"
"\n" "\n"
" http_code The numerical code that was found in the\n" " http_code The numerical code that was found in the\n"
);
puts(
" last retrieved HTTP(S) page.\n" " last retrieved HTTP(S) page.\n"
"\n" "\n"
" time_total The total time, in seconds, that the\n" " time_total The total time, in seconds, that the\n"
@ -478,6 +493,7 @@ puts (
" The time, in seconds, it took from the\n" " The time, in seconds, it took from the\n"
" start until the name resolving was com­\n" " start until the name resolving was com­\n"
" pleted.\n" " pleted.\n"
"\n"
" time_connect The time, in seconds, it took from the\n" " time_connect The time, in seconds, it took from the\n"
" start until the connect to the remote\n" " start until the connect to the remote\n"
" host (or proxy) was completed.\n" " host (or proxy) was completed.\n"
@ -567,7 +583,6 @@ puts (
" instead. If the file name is a plain '-', it is instead\n" " instead. If the file name is a plain '-', it is instead\n"
" written to stdout. This option has no point when you're\n" " written to stdout. This option has no point when you're\n"
" using a shell with decent redirecting capabilities.\n" " using a shell with decent redirecting capabilities.\n"
"\n"
"FILES\n" "FILES\n"
" ~/.curlrc\n" " ~/.curlrc\n"
" Default config file.\n" " Default config file.\n"
@ -581,6 +596,7 @@ puts (
"\n" "\n"
" FTP_PROXY [protocol://]<host>[:port]\n" " FTP_PROXY [protocol://]<host>[:port]\n"
" Sets proxy server to use for FTP.\n" " Sets proxy server to use for FTP.\n"
"\n"
" GOPHER_PROXY [protocol://]<host>[:port]\n" " GOPHER_PROXY [protocol://]<host>[:port]\n"
" Sets proxy server to use for GOPHER.\n" " Sets proxy server to use for GOPHER.\n"
"\n" "\n"
@ -618,7 +634,6 @@ puts (
" resolved.\n" " resolved.\n"
"\n" "\n"
" 7 Failed to connect to host.\n" " 7 Failed to connect to host.\n"
"\n"
" 8 FTP weird server reply. The server sent data curl\n" " 8 FTP weird server reply. The server sent data curl\n"
" couldn't parse.\n" " couldn't parse.\n"
"\n" "\n"
@ -632,6 +647,7 @@ puts (
"\n" "\n"
" 12 FTP weird USER reply. Curl couldn't parse the reply\n" " 12 FTP weird USER reply. Curl couldn't parse the reply\n"
" sent to the USER request.\n" " sent to the USER request.\n"
"\n"
" 13 FTP weird PASV reply, Curl couldn't parse the reply\n" " 13 FTP weird PASV reply, Curl couldn't parse the reply\n"
" sent to the PASV request.\n" " sent to the PASV request.\n"
"\n" "\n"
@ -669,7 +685,6 @@ puts (
" operation.\n" " operation.\n"
"\n" "\n"
" 26 Read error. Various reading problems.\n" " 26 Read error. Various reading problems.\n"
"\n"
" 27 Out of memory. A memory allocation request failed.\n" " 27 Out of memory. A memory allocation request failed.\n"
"\n" "\n"
" 28 Operation timeout. The specified time-out period was\n" " 28 Operation timeout. The specified time-out period was\n"
@ -712,8 +727,7 @@ puts (
" releases. The existing ones are meant to never change.\n" " releases. The existing ones are meant to never change.\n"
"\n" "\n"
"BUGS\n" "BUGS\n"
" If you do find any (or have other suggestions), mail Daniel\n" " If you do find bugs, mail them to curl-bug@haxx.se.\n"
" Stenberg <Daniel.Stenberg@haxx.se>.\n"
"\n" "\n"
"AUTHORS / CONTRIBUTORS\n" "AUTHORS / CONTRIBUTORS\n"
" - Daniel Stenberg <Daniel.Stenberg@haxx.se>\n" " - Daniel Stenberg <Daniel.Stenberg@haxx.se>\n"
@ -748,9 +762,9 @@ puts (
" - Linus Nielsen <Linus.Nielsen@haxx.se>\n" " - Linus Nielsen <Linus.Nielsen@haxx.se>\n"
" - Felix von Leitner <felix@convergence.de>\n" " - Felix von Leitner <felix@convergence.de>\n"
" - Dan Zitter <dzitter@zitter.net>\n" " - Dan Zitter <dzitter@zitter.net>\n"
" - Jongki Suwandi <Jongki.Suwandi@eng.sun.com>\n"
); );
puts( puts(
" - Jongki Suwandi <Jongki.Suwandi@eng.sun.com>\n"
" - Chris Maltby <chris@aurema.com>\n" " - Chris Maltby <chris@aurema.com>\n"
" - Ron Zapp <rzapper@yahoo.com>\n" " - Ron Zapp <rzapper@yahoo.com>\n"
" - Paul Marquis <pmarquis@iname.com>\n" " - Paul Marquis <pmarquis@iname.com>\n"
@ -771,10 +785,10 @@ puts (
" - Martin Hedenfalk <mhe@stacken.kth.se>\n" " - Martin Hedenfalk <mhe@stacken.kth.se>\n"
" - Richard Prescott\n" " - Richard Prescott\n"
" - Jason S. Priebe <priebe@wral-tv.com>\n" " - Jason S. Priebe <priebe@wral-tv.com>\n"
" - T. Bharath <TBharath@responsenetworks.com>\n"
"\n" "\n"
"WWW\n" "WWW\n"
" http://curl.haxx.se\n" " http://curl.haxx.se\n"
"\n"
"FTP\n" "FTP\n"
" ftp://ftp.sunet.se/pub/www/utilities/curl/\n" " ftp://ftp.sunet.se/pub/www/utilities/curl/\n"
"\n" "\n"
@ -1061,11 +1075,11 @@ puts (
" that referred to actual page, and curl allows the user to specify that\n" " that referred to actual page, and curl allows the user to specify that\n"
" referrer to get specified on the command line. It is especially useful to\n" " referrer to get specified on the command line. It is especially useful to\n"
" fool or trick stupid servers or CGI scripts that rely on that information\n" " fool or trick stupid servers or CGI scripts that rely on that information\n"
);
puts(
" being available or contain certain data.\n" " being available or contain certain data.\n"
"\n" "\n"
" curl -e www.coolsite.com http://www.showme.com/\n" " curl -e www.coolsite.com http://www.showme.com/\n"
);
puts(
"\n" "\n"
"USER AGENT\n" "USER AGENT\n"
"\n" "\n"
@ -1185,17 +1199,26 @@ puts (
"CONFIG FILE\n" "CONFIG FILE\n"
"\n" "\n"
" Curl automatically tries to read the .curlrc file (or _curlrc file on win32\n" " Curl automatically tries to read the .curlrc file (or _curlrc file on win32\n"
" systems) from the user's home dir on startup. The config file should be\n" " systems) from the user's home dir on startup.\n"
" made up with normal command line switches. Comments can be used within the\n" "\n"
" file. If the first letter on a line is a '#'-letter the rest of the line\n" " The config file could be made up with normal command line switches, but you\n"
" is treated as a comment.\n" " can also specify the long options without the dashes to make it more\n"
" readable. You can separate the options and the parameter with spaces, or\n"
" with = or :. Comments can be used within the file. If the first letter on a\n"
" line is a '#'-letter the rest of the line is treated as a comment.\n"
"\n"
" If you want the parameter to contain spaces, you must inclose the entire\n"
" parameter within double quotes (\"). Within those quotes, you specify a\n"
" quote as \\\".\n"
"\n"
" NOTE: You must specify options and their arguments on the same line.\n"
"\n" "\n"
" Example, set default time out and proxy in a config file:\n" " Example, set default time out and proxy in a config file:\n"
"\n" "\n"
" # We want a 30 minute timeout:\n" " # We want a 30 minute timeout:\n"
" -m 1800\n" " -m 1800\n"
" # ... and we use a proxy for all accesses:\n" " # ... and we use a proxy for all accesses:\n"
" -x proxy.our.domain.com:8080\n" " proxy = proxy.our.domain.com:8080\n"
"\n" "\n"
" White spaces ARE significant at the end of lines, but all white spaces\n" " White spaces ARE significant at the end of lines, but all white spaces\n"
" leading up to the first characters of each line are ignored.\n" " leading up to the first characters of each line are ignored.\n"
@ -1209,14 +1232,14 @@ puts (
" without URL by making a config file similar to:\n" " without URL by making a config file similar to:\n"
"\n" "\n"
" # default url to get\n" " # default url to get\n"
" http://help.with.curl.com/curlhelp.html\n" " url = \"http://help.with.curl.com/curlhelp.html\"\n"
"\n" "\n"
" You can specify another config file to be read by using the -K/--config\n" " You can specify another config file to be read by using the -K/--config\n"
" flag. If you set config file name to \"-\" it'll read the config from stdin,\n" " flag. If you set config file name to \"-\" it'll read the config from stdin,\n"
" which can be handy if you want to hide options from being visible in process\n" " which can be handy if you want to hide options from being visible in process\n"
" tables etc:\n" " tables etc:\n"
"\n" "\n"
" echo \"-u user:passwd\" | curl -K - http://that.secret.site.com\n" " echo \"user = user:passwd\" | curl -K - http://that.secret.site.com\n"
"\n" "\n"
"EXTRA HEADERS\n" "EXTRA HEADERS\n"
"\n" "\n"
@ -1313,6 +1336,8 @@ puts (
" included in recent versions of OpenSSL, and for older versions Dr Stephen\n" " included in recent versions of OpenSSL, and for older versions Dr Stephen\n"
" N. Henson has written a patch for SSLeay that adds this functionality. You\n" " N. Henson has written a patch for SSLeay that adds this functionality. You\n"
" can get his patch (that requires an SSLeay installation) from his site at:\n" " can get his patch (that requires an SSLeay installation) from his site at:\n"
);
puts(
" http://www.drh-consultancy.demon.co.uk/\n" " http://www.drh-consultancy.demon.co.uk/\n"
"\n" "\n"
" Example on how to automatically retrieve a document using a certificate with\n" " Example on how to automatically retrieve a document using a certificate with\n"
@ -1325,8 +1350,6 @@ puts (
"\n" "\n"
" Many older SSL-servers have problems with SSLv3 or TLS, that newer versions\n" " Many older SSL-servers have problems with SSLv3 or TLS, that newer versions\n"
" of OpenSSL etc is using, therefore it is sometimes useful to specify what\n" " of OpenSSL etc is using, therefore it is sometimes useful to specify what\n"
);
puts(
" SSL-version curl should use. Use -3 or -2 to specify that exact SSL version\n" " SSL-version curl should use. Use -3 or -2 to specify that exact SSL version\n"
" to use:\n" " to use:\n"
"\n" "\n"

View File

@ -1,3 +1,3 @@
#define CURL_NAME "curl" #define CURL_NAME "curl"
#define CURL_VERSION "7.4.1" #define CURL_VERSION "7.5-pre3"
#define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") " #define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") "