7.3 commit

This commit is contained in:
Daniel Stenberg 2000-09-28 10:26:44 +00:00
parent 221f1c2ca2
commit 13962adcb5
13 changed files with 228 additions and 133 deletions

14
CHANGES
View File

@ -8,6 +8,18 @@
Version 7.3 Version 7.3
Daniel (28 September 2000)
- Removed the base64_krb.[ch] files. They've now replaced the former
base64.[ch] files.
Daniel (26 September 2000)
- Updated some docs.
- I changed the OpenSSL fix to work with older versions as well. The posted
patch was only working with 0.9.6 and no older ones.
Version 7.3-pre8
Daniel (25 September 2000) Daniel (25 September 2000)
- Erdmut Pfeifer informed us that curl didn't build with OpenSSL 0.9.6 and - Erdmut Pfeifer informed us that curl didn't build with OpenSSL 0.9.6 and
showed us what needed to get patched in order to make it build properly showed us what needed to get patched in order to make it build properly
@ -33,7 +45,7 @@ Daniel (21 September 2000)
Daniel (20 September 2000) Daniel (20 September 2000)
- Richard Prescott solved another name lookup buffer size problem. I took this - Richard Prescott solved another name lookup buffer size problem. I took this
opportunity to rewrite the GetHost() function. With these large buffer opportunity to rewrite the GetHost() function. With these large buffer
sizes, I think keeping them as local arrays quickly turn ugly. I know use sizes, I think keeping them as local arrays quickly turn ugly. I now use
malloc() to get the buffer memory. Thanks to this, I now can realloc() to a malloc() to get the buffer memory. Thanks to this, I now can realloc() to a
large buffer in case of demand (errno == ERANGE) in case a solution like large buffer in case of demand (errno == ERANGE) in case a solution like
that would become necessary. I still want to avoid that kind of nastiness. that would become necessary. I still want to avoid that kind of nastiness.

View File

@ -33,3 +33,6 @@
/* Define if you need the _REENTRANT define for some functions */ /* Define if you need the _REENTRANT define for some functions */
#undef NEED_REENTRANT #undef NEED_REENTRANT
/* Define if you have the Kerberos4 libraries (including -ldes) */
#undef KRB4

View File

@ -49,6 +49,9 @@
/* Define if you need the _REENTRANT define for some functions */ /* Define if you need the _REENTRANT define for some functions */
#undef NEED_REENTRANT #undef NEED_REENTRANT
/* Define if you have the Kerberos4 libraries (including -ldes) */
#undef KRB4
/* The number of bytes in a long double. */ /* The number of bytes in a long double. */
#undef SIZEOF_LONG_DOUBLE #undef SIZEOF_LONG_DOUBLE
@ -94,6 +97,9 @@
/* Define if you have the inet_ntoa_r function. */ /* Define if you have the inet_ntoa_r function. */
#undef HAVE_INET_NTOA_R #undef HAVE_INET_NTOA_R
/* Define if you have the krb_get_our_ip_for_realm function. */
#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
/* Define if you have the localtime_r function. */ /* Define if you have the localtime_r function. */
#undef HAVE_LOCALTIME_R #undef HAVE_LOCALTIME_R
@ -124,6 +130,9 @@
/* Define if you have the stricmp function. */ /* Define if you have the stricmp function. */
#undef HAVE_STRICMP #undef HAVE_STRICMP
/* Define if you have the strlcpy function. */
#undef HAVE_STRLCPY
/* Define if you have the strstr function. */ /* Define if you have the strstr function. */
#undef HAVE_STRSTR #undef HAVE_STRSTR
@ -145,6 +154,9 @@
/* Define if you have the <crypto.h> header file. */ /* Define if you have the <crypto.h> header file. */
#undef HAVE_CRYPTO_H #undef HAVE_CRYPTO_H
/* Define if you have the <des.h> header file. */
#undef HAVE_DES_H
/* Define if you have the <dlfcn.h> header file. */ /* Define if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H #undef HAVE_DLFCN_H
@ -160,6 +172,9 @@
/* Define if you have the <io.h> header file. */ /* Define if you have the <io.h> header file. */
#undef HAVE_IO_H #undef HAVE_IO_H
/* Define if you have the <krb.h> header file. */
#undef HAVE_KRB_H
/* Define if you have the <malloc.h> header file. */ /* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H #undef HAVE_MALLOC_H
@ -256,6 +271,9 @@
/* Define if you have the nsl library (-lnsl). */ /* Define if you have the nsl library (-lnsl). */
#undef HAVE_LIBNSL #undef HAVE_LIBNSL
/* Define if you have the resolv library (-lresolv). */
#undef HAVE_LIBRESOLV
/* Define if you have the resolve library (-lresolve). */ /* Define if you have the resolve library (-lresolve). */
#undef HAVE_LIBRESOLVE #undef HAVE_LIBRESOLVE

View File

@ -2,7 +2,7 @@ dnl $Id$
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_INIT(lib/urldata.h) AC_INIT(lib/urldata.h)
AM_CONFIG_HEADER(config.h src/config.h) AM_CONFIG_HEADER(config.h src/config.h)
AM_INIT_AUTOMAKE(curl,"7.3-pre8") AM_INIT_AUTOMAKE(curl,"7.3")
AM_PROG_LIBTOOL AM_PROG_LIBTOOL
dnl dnl

View File

@ -141,6 +141,7 @@ FAQ
Solaris (native cc compiler) Solaris (native cc compiler)
HPUX (native cc compiler) HPUX (native cc compiler)
SGI IRIX (native cc compiler) SGI IRIX (native cc compiler)
SCO UNIX (native cc compiler)
When configuring curl, I specify --with-ssl. OpenSSL is installed in When configuring curl, I specify --with-ssl. OpenSSL is installed in
/usr/local/ssl Configure reports SSL in /usr/local/ssl, but fails to find /usr/local/ssl Configure reports SSL in /usr/local/ssl, but fails to find

View File

@ -2,7 +2,7 @@
.\" nroff -man [file] .\" nroff -man [file]
.\" Written by daniel@haxx.se .\" Written by daniel@haxx.se
.\" .\"
.TH curl_easy_init 3 "22 May 2000" "Curl 7.0" "libcurl Manual" .TH curl_easy_init 3 "26 September 2000" "Curl 7.0" "libcurl Manual"
.SH NAME .SH NAME
curl_easy_init - Start a libcurl "easy" session curl_easy_init - Start a libcurl "easy" session
.SH SYNOPSIS .SH SYNOPSIS
@ -16,6 +16,9 @@ that you shall use as input to the other easy-functions. The init calls
intializes curl and this call MUST have a corresponding call to intializes curl and this call MUST have a corresponding call to
.I curl_easy_cleanup .I curl_easy_cleanup
when the operation is complete. when the operation is complete.
On win32 systems, you need to init the winsock stuff manually, libcurl will
not do that for you. WSAStartup() and WSACleanup() should be used accordingly.
.SH RETURN VALUE .SH RETURN VALUE
If this function returns NULL, something went wrong and you cannot use the If this function returns NULL, something went wrong and you cannot use the
other curl functions. other curl functions.

View File

@ -442,7 +442,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.3-pre6" #define LIBCURL_VERSION "7.3"
#define LIBCURL_VERSION_NUM 0x070300 #define LIBCURL_VERSION_NUM 0x070300
/* linked-list structure for the CURLOPT_QUOTE option */ /* linked-list structure for the CURLOPT_QUOTE option */

View File

@ -2,7 +2,7 @@
# $Id$ # $Id$
# #
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign
lib_LTLIBRARIES = libcurl.la lib_LTLIBRARIES = libcurl.la
@ -23,7 +23,8 @@ download.c getdate.h ldap.c ssluse.c version.c \
download.h getenv.c ldap.h ssluse.h \ download.h getenv.c ldap.h ssluse.h \
escape.c getenv.h mprintf.c telnet.c \ escape.c getenv.h mprintf.c telnet.c \
escape.h getpass.c netrc.c telnet.h \ escape.h getpass.c netrc.c telnet.h \
writeout.c writeout.h highlevel.c strequal.c strequal.h easy.c writeout.c writeout.h highlevel.c strequal.c strequal.h easy.c \
security.h security.c krb4.c
# Say $(srcdir), so GNU make does not report an ambiguity with the .y.c rule. # Say $(srcdir), so GNU make does not report an ambiguity with the .y.c rule.
$(srcdir)/getdate.c: getdate.y $(srcdir)/getdate.c: getdate.y

View File

@ -77,7 +77,7 @@ RANLIB = @RANLIB@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign
lib_LTLIBRARIES = libcurl.la lib_LTLIBRARIES = libcurl.la
@ -86,7 +86,7 @@ lib_LTLIBRARIES = libcurl.la
INCLUDES = -I$(top_srcdir)/include INCLUDES = -I$(top_srcdir)/include
libcurl_la_SOURCES = arpa_telnet.h file.c getpass.h netrc.h timeval.c base64.c file.h hostip.c progress.c timeval.h base64.h formdata.c hostip.h progress.h cookie.c formdata.h http.c sendf.c cookie.h ftp.c http.h sendf.h url.c dict.c ftp.h if2ip.c speedcheck.c url.h dict.h getdate.c if2ip.h speedcheck.h urldata.h download.c getdate.h ldap.c ssluse.c version.c download.h getenv.c ldap.h ssluse.h escape.c getenv.h mprintf.c telnet.c escape.h getpass.c netrc.c telnet.h writeout.c writeout.h highlevel.c strequal.c strequal.h easy.c libcurl_la_SOURCES = arpa_telnet.h file.c getpass.h netrc.h timeval.c base64.c file.h hostip.c progress.c timeval.h base64.h formdata.c hostip.h progress.h cookie.c formdata.h http.c sendf.c cookie.h ftp.c http.h sendf.h url.c dict.c ftp.h if2ip.c speedcheck.c url.h dict.h getdate.c if2ip.h speedcheck.h urldata.h download.c getdate.h ldap.c ssluse.c version.c download.h getenv.c ldap.h ssluse.h escape.c getenv.h mprintf.c telnet.c escape.h getpass.c netrc.c telnet.h writeout.c writeout.h highlevel.c strequal.c strequal.h easy.c security.h security.c krb4.c
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h ../src/config.h CONFIG_HEADER = ../config.h ../src/config.h
@ -104,7 +104,7 @@ libcurl_la_OBJECTS = file.lo timeval.lo base64.lo hostip.lo progress.lo \
formdata.lo cookie.lo http.lo sendf.lo ftp.lo url.lo dict.lo if2ip.lo \ formdata.lo cookie.lo http.lo sendf.lo ftp.lo url.lo dict.lo if2ip.lo \
speedcheck.lo getdate.lo download.lo ldap.lo ssluse.lo version.lo \ speedcheck.lo getdate.lo download.lo ldap.lo ssluse.lo version.lo \
getenv.lo escape.lo mprintf.lo telnet.lo getpass.lo netrc.lo \ getenv.lo escape.lo mprintf.lo telnet.lo getpass.lo netrc.lo \
writeout.lo highlevel.lo strequal.lo easy.lo writeout.lo highlevel.lo strequal.lo easy.lo security.lo krb4.lo
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)

View File

@ -295,7 +295,7 @@ CURLcode http(struct connectdata *conn)
!data->auth_host || !data->auth_host ||
strequal(data->auth_host, data->hostname)) { strequal(data->auth_host, data->hostname)) {
sprintf(data->buffer, "%s:%s", data->user, data->passwd); sprintf(data->buffer, "%s:%s", data->user, data->passwd);
if(base64Encode(data->buffer, 0, /* size zero makes it do strlen() */ if(base64_encode(data->buffer, strlen(data->buffer),
&authorization) >= 0) { &authorization) >= 0) {
data->ptr_userpwd = maprintf( "Authorization: Basic %s\015\012", data->ptr_userpwd = maprintf( "Authorization: Basic %s\015\012",
authorization); authorization);

View File

@ -1392,7 +1392,8 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)
if(data->bits.proxy_user_passwd) { if(data->bits.proxy_user_passwd) {
char *authorization; char *authorization;
sprintf(data->buffer, "%s:%s", data->proxyuser, data->proxypasswd); sprintf(data->buffer, "%s:%s", data->proxyuser, data->proxypasswd);
if(base64Encode(data->buffer, 0, &authorization) >= 0) { if(base64_encode(data->buffer, strlen(data->buffer),
&authorization) >= 0) {
data->ptr_proxyuserpwd = data->ptr_proxyuserpwd =
maprintf("Proxy-authorization: Basic %s\015\012", authorization); maprintf("Proxy-authorization: Basic %s\015\012", authorization);
free(authorization); free(authorization);

View File

@ -87,15 +87,15 @@ puts (
" sent to stdout to be in text mode for win32 systems.\n" " sent to stdout to be in text mode for win32 systems.\n"
"\n" "\n"
" -c/--continue\n" " -c/--continue\n"
" Continue/Resume a previous file transfer. This\n" " Deprecated. Use '-C -' instead. Continue/Resume a pre­\n"
" instructs curl to continue appending data on the file\n" " vious file transfer. This instructs curl to continue\n"
" where it was previously left, possibly because of a\n" " appending data on the file where it was previously\n"
" broken connection to the server. There must be a named\n" " left, possibly because of a broken connection to the\n"
" physical file to append to for this to work. Note:\n" " server. There must be a named physical file to append\n"
" Upload resume is depening on a command named SIZE not\n" " to for this to work. Note: Upload resume is depening\n"
" always present in all ftp servers! Upload resume is for\n" " on a command named SIZE not always present in all ftp\n"
" FTP only. HTTP resume is only possible with HTTP/1.1\n" " servers! Upload resume is for FTP only. HTTP resume is\n"
" or later servers.\n" " only possible with HTTP/1.1 or later servers.\n"
"\n" "\n"
" -C/--continue-at <offset>\n" " -C/--continue-at <offset>\n"
" Continue/Resume a previous file transfer at the given\n" " Continue/Resume a previous file transfer at the given\n"
@ -214,20 +214,34 @@ puts (
" (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"
" --interface <name>\n"
" Perform an operation using a specified interface. You\n"
" can enter interface name, IP address or host name. An\n"
" example could look like:\n"
"\n"
" curl --interface eth0:1 http://www.netscape.com/\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"
" feature the command HEAD which this uses to get nothing\n" " feature the command HEAD which this uses to get nothing\n"
" but the header of a document. When used on a FTP file,\n" " but the header of a document. When used on a FTP file,\n"
" curl displays the file size only.\n" " curl displays the file size only.\n"
"\n" "\n"
" --krb4 <level>\n"
" (FTP) Enable kerberos4 authentication and use. The\n"
);
puts(
" level must be entered and should be one of 'clear',\n"
" 'safe', 'confidential' or 'private'. Should you use a\n"
" level that is not one of these, 'private' will instead\n"
" be used.\n"
"\n"
" -K/--config <config file>\n" " -K/--config <config file>\n"
" Specify which config file to read curl arguments from.\n" " Specify which config file to read curl arguments from.\n"
" The config file is a text file in which command line\n" " The config file is a text file in which command line\n"
" arguments can be written which then will be used as if\n" " arguments can be written which then will be used as if\n"
" they were written on the actual command line. If the\n" " they were written on the actual command line. If the\n"
" first column of a config line is a '#' character, the\n" " first column of a config line is a '#' character, the\n"
);
puts(
" rest of the line will be treated as a comment.\n" " rest of the line will be treated as a comment.\n"
"\n" "\n"
" Specify the filename as '-' to make curl read the file\n" " Specify the filename as '-' to make curl read the file\n"
@ -302,6 +316,15 @@ puts (
" 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"
" the path is cut off.)\n" " the path is cut off.)\n"
"\n" "\n"
" -p/--proxytunnel\n"
" When an HTTP proxy is used, this option will cause non-\n"
" HTTP protocols to attempt to tunnel through the proxy\n"
" instead of merely using it to do HTTP-like operations.\n"
" The tunnel approach is made with the HTTP proxy CONNECT\n"
" request and requires that the proxy allows direct con­\n"
" nect to the remote port number curl wants to tunnel\n"
" through to.\n"
"\n"
" -P/--ftpport <address>\n" " -P/--ftpport <address>\n"
" (FTP) Reverses the initiator/listener roles when con­\n" " (FTP) Reverses the initiator/listener roles when con­\n"
" necting with ftp. This switch makes Curl use the PORT\n" " necting with ftp. This switch makes Curl use the PORT\n"
@ -320,6 +343,7 @@ puts (
"\n" "\n"
" - (any single-letter string) to make it pick\n" " - (any single-letter string) to make it pick\n"
" the machine's default\n" " the machine's default\n"
"\n"
" -q If used as the first parameter on the command line, the\n" " -q If used as the first parameter on the command line, the\n"
" $HOME/.curlrc file will not be read and used as a con­\n" " $HOME/.curlrc file will not be read and used as a con­\n"
" fig file.\n" " fig file.\n"
@ -347,8 +371,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 for­\n" " 9500 specifies the bytes from offset 9500 and\n"
" ward\n" " forward\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"
@ -372,15 +396,17 @@ puts (
" -s/--silent\n" " -s/--silent\n"
" Silent mode. Don't show progress meter or error mes­\n" " Silent mode. Don't show progress meter or error mes­\n"
" sages. Makes Curl mute.\n" " sages. Makes Curl mute.\n"
"\n"
" -S/--show-error\n" " -S/--show-error\n"
" When used with -s it makes curl show error message if\n" " When used with -s it makes curl show error message if\n"
" it fails.\n" " it fails.\n"
"\n" "\n"
" -t/--upload\n" " -t/--upload\n"
" Transfer the stdin data to the specified file. Curl\n" " Deprecated. Use '-T -' instead. Transfer the stdin\n"
" will read everything from stdin until EOF and store\n" " data to the specified file. Curl will read everything\n"
" with the supplied name. If this is used on a http(s)\n" " from stdin until EOF and store with the supplied name.\n"
" server, the PUT command will be used.\n" " If this is used on a http(s) server, the PUT command\n"
" will be used.\n"
"\n" "\n"
" -T/--upload-file <file>\n" " -T/--upload-file <file>\n"
" Like -t, but this transfers the specified local file.\n" " Like -t, but this transfers the specified local file.\n"
@ -398,7 +424,6 @@ 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"
@ -423,9 +448,9 @@ puts (
" particular file you specify it \"@filename\" and to tell\n" " particular file you specify it \"@filename\" and to tell\n"
" curl to read the format from stdin you write \"@-\".\n" " curl to read the format from stdin you write \"@-\".\n"
"\n" "\n"
" The variables present in the output format will be\n" " The variables present in the output format will be sub­\n"
" substituted by the value or text that curl thinks fit,\n" " stituted by the value or text that curl thinks fit, as\n"
" as described below. All variables are specified like\n" " described below. All variables are specified like\n"
" %{variable_name} and to output a normal % you just\n" " %{variable_name} and to output a normal % you just\n"
" write them like %%. You can output a newline by using\n" " write them like %%. You can output a newline by using\n"
" \\n, a carrige return with \\r and a tab space with \\t.\n" " \\n, a carrige return with \\r and a tab space with \\t.\n"
@ -441,6 +466,8 @@ puts (
" 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"
@ -451,7 +478,6 @@ 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"
@ -463,8 +489,6 @@ puts (
" transfer commands and negotiations that\n" " transfer commands and negotiations that\n"
" are specific to the particular proto­\n" " are specific to the particular proto­\n"
" col(s) involved.\n" " col(s) involved.\n"
);
puts(
"\n" "\n"
" size_download The total amount of bytes that were\n" " size_download The total amount of bytes that were\n"
" downloaded.\n" " downloaded.\n"
@ -477,6 +501,7 @@ puts (
"\n" "\n"
" speed_upload The average upload speed that curl mea­\n" " speed_upload The average upload speed that curl mea­\n"
" sured for the complete download.\n" " sured for the complete download.\n"
"\n"
" -x/--proxy <proxyhost[:port]>\n" " -x/--proxy <proxyhost[:port]>\n"
" Use specified proxy. If the port number is not speci­\n" " Use specified proxy. If the port number is not speci­\n"
" fied, it is assumed at port 1080.\n" " fied, it is assumed at port 1080.\n"
@ -580,6 +605,7 @@ puts (
"\n" "\n"
" 4 URL user malformatted. The user-part of the URL syntax\n" " 4 URL user malformatted. The user-part of the URL syntax\n"
" was not correct.\n" " was not correct.\n"
"\n"
" 5 Couldn't resolve proxy. The given proxy host could not\n" " 5 Couldn't resolve proxy. The given proxy host could not\n"
" be resolved.\n" " be resolved.\n"
"\n" "\n"
@ -607,7 +633,6 @@ puts (
"\n" "\n"
" 14 FTP weird 227 formay. Curl couldn't parse the 227-line\n" " 14 FTP weird 227 formay. Curl couldn't parse the 227-line\n"
" the server sent.\n" " the server sent.\n"
"\n"
" 15 FTP can't get host. Couldn't resolve the host IP we got\n" " 15 FTP can't get host. Couldn't resolve the host IP we got\n"
" in the 227-line.\n" " in the 227-line.\n"
"\n" "\n"
@ -632,6 +657,7 @@ puts (
"\n" "\n"
" 23 Write error. Curl couldn't write data to a local\n" " 23 Write error. Curl couldn't write data to a local\n"
" filesystem or similar.\n" " filesystem or similar.\n"
"\n"
" 24 Malformat user. User name badly specified.\n" " 24 Malformat user. User name badly specified.\n"
"\n" "\n"
" 25 FTP couldn't STOR file. The server denied the STOR\n" " 25 FTP couldn't STOR file. The server denied the STOR\n"
@ -659,7 +685,6 @@ puts (
"\n" "\n"
" 34 HTTP post error. Internal post-request generation\n" " 34 HTTP post error. Internal post-request generation\n"
" error.\n" " error.\n"
"\n"
" 35 SSL connect error. The SSL handshaking failed.\n" " 35 SSL connect error. The SSL handshaking failed.\n"
"\n" "\n"
" 36 FTP bad download resume. Couldn't continue an earlier\n" " 36 FTP bad download resume. Couldn't continue an earlier\n"
@ -683,6 +708,7 @@ puts (
"BUGS\n" "BUGS\n"
" If you do find any (or have other suggestions), mail Daniel\n" " If you do find any (or have other suggestions), mail Daniel\n"
" Stenberg <Daniel.Stenberg@haxx.se>.\n" " Stenberg <Daniel.Stenberg@haxx.se>.\n"
"\n"
"AUTHORS / CONTRIBUTORS\n" "AUTHORS / CONTRIBUTORS\n"
" - Daniel Stenberg <Daniel.Stenberg@haxx.se>\n" " - Daniel Stenberg <Daniel.Stenberg@haxx.se>\n"
" - Rafael Sagula <sagula@inf.ufrgs.br>\n" " - Rafael Sagula <sagula@inf.ufrgs.br>\n"
@ -722,6 +748,8 @@ puts (
" - Paul Marquis <pmarquis@iname.com>\n" " - Paul Marquis <pmarquis@iname.com>\n"
" - Ellis Pritchard <ellis@citria.com>\n" " - Ellis Pritchard <ellis@citria.com>\n"
" - Damien Adant <dams@usa.net>\n" " - Damien Adant <dams@usa.net>\n"
);
puts(
" - Chris <cbayliss@csc.come>\n" " - Chris <cbayliss@csc.come>\n"
" - Marco G. Salvagno <mgs@whiz.cjb.net>\n" " - Marco G. Salvagno <mgs@whiz.cjb.net>\n"
" - Paul Marquis <pmarquis@iname.com>\n" " - Paul Marquis <pmarquis@iname.com>\n"
@ -733,6 +761,10 @@ puts (
" - Fred Noz <FNoz@siac.com>\n" " - Fred Noz <FNoz@siac.com>\n"
" - Caolan McNamara <caolan@csn.ul.ie>\n" " - Caolan McNamara <caolan@csn.ul.ie>\n"
" - Albert Chin-A-Young <china@thewrittenword.com>\n" " - Albert Chin-A-Young <china@thewrittenword.com>\n"
" - Stephen Kick <skick@epicrealm.com>\n"
" - Martin Hedenfalk <mhe@stacken.kth.se>\n"
" - Richard Prescott\n"
"\n"
"WWW\n" "WWW\n"
" http://curl.haxx.se\n" " http://curl.haxx.se\n"
"\n" "\n"
@ -762,8 +794,6 @@ puts (
" Get a gopher document from funet's gopher server:\n" " Get a gopher document from funet's gopher server:\n"
"\n" "\n"
" curl gopher://gopher.funet.fi\n" " curl gopher://gopher.funet.fi\n"
);
puts(
"\n" "\n"
" Get a web page from a server using port 8000:\n" " Get a web page from a server using port 8000:\n"
"\n" "\n"
@ -885,9 +915,11 @@ puts (
"\n" "\n"
" curl -T localfile -a ftp://ftp.upload.com/remotefile\n" " curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
"\n" "\n"
" NOTE: Curl does not support ftp upload through a proxy! The reason for this\n" " Curl also supports ftp upload through a proxy, but only if the proxy is\n"
" is simply that proxies are seldomly configured to allow this and that no\n" " configured to allow that kind of tunneling. If it does, you can run curl in\n"
" author has supplied code that makes it possible!\n" " a fashion similar to:\n"
"\n"
" curl --proxytunnel -x proxy:port -T localfile ftp.upload.com\n"
"\n" "\n"
" HTTP\n" " HTTP\n"
"\n" "\n"
@ -1031,6 +1063,8 @@ puts (
" A HTTP request has the option to include information about the browser\n" " A HTTP request has the option to include information about the browser\n"
" that generated the request. Curl allows it to be specified on the command\n" " that generated the request. Curl allows it to be specified on the command\n"
" line. It is especially useful to fool or trick stupid servers or CGI\n" " line. It is especially useful to fool or trick stupid servers or CGI\n"
);
puts(
" scripts that only accept certain browsers.\n" " scripts that only accept certain browsers.\n"
"\n" "\n"
" Example:\n" " Example:\n"
@ -1058,8 +1092,6 @@ puts (
" headers that looks like 'Set-Cookie: <data>' where the data part then\n" " headers that looks like 'Set-Cookie: <data>' where the data part then\n"
" typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n" " typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n"
" like \"NAME1=VALUE1; NAME2=VALUE2;\"). The server can also specify for what\n" " like \"NAME1=VALUE1; NAME2=VALUE2;\"). The server can also specify for what\n"
);
puts(
" path the \"cookie\" should be used for (by specifying \"path=value\"), when the\n" " path the \"cookie\" should be used for (by specifying \"path=value\"), when the\n"
" cookie should expire (\"expire=DATE\"), for what domain to use it\n" " cookie should expire (\"expire=DATE\"), for what domain to use it\n"
" (\"domain=NAME\") and if it should be used on secure connections only\n" " (\"domain=NAME\") and if it should be used on secure connections only\n"
@ -1228,13 +1260,14 @@ puts (
" connect to the client on the given (as parameters to the PORT command) IP\n" " connect to the client on the given (as parameters to the PORT command) IP\n"
" number and port.\n" " number and port.\n"
"\n" "\n"
" The -P flag to curl allows for different options. Your machine may have\n" " The -P flag to curl supports a few different options. Your machine may have\n"
" several IP-addresses and/or network interfaces and curl allows you to select\n" " several IP-addresses and/or network interfaces and curl allows you to select\n"
" which of them to use. Default address can also be used:\n" " which of them to use. Default address can also be used:\n"
"\n" "\n"
" curl -P - ftp.download.com\n" " curl -P - ftp.download.com\n"
"\n" "\n"
" Download with PORT but use the IP address of our 'le0' interface:\n" " Download with PORT but use the IP address of our 'le0' interface (this does\n"
" not work on windows):\n"
"\n" "\n"
" curl -P le0 ftp.download.com\n" " curl -P le0 ftp.download.com\n"
"\n" "\n"
@ -1242,6 +1275,16 @@ puts (
"\n" "\n"
" curl -P 192.168.0.10 ftp.download.com\n" " curl -P 192.168.0.10 ftp.download.com\n"
"\n" "\n"
"NETWORK INTERFACE\n"
"\n"
" Get a web page from a server using a specified port for the interface:\n"
"\n"
" curl --interface eth0:1 http://www.netscape.com/\n"
"\n"
" or\n"
"\n"
" curl --interface 192.168.1.10 http://www.netscape.com/\n"
"\n"
"HTTPS\n" "HTTPS\n"
"\n" "\n"
" Secure HTTP requires SSL libraries to be installed and used when curl is\n" " Secure HTTP requires SSL libraries to be installed and used when curl is\n"
@ -1281,6 +1324,8 @@ puts (
" curl -2 https://secure.site.com/\n" " curl -2 https://secure.site.com/\n"
"\n" "\n"
" Otherwise, curl will first attempt to use v3 and then v2.\n" " Otherwise, curl will first attempt to use v3 and then v2.\n"
);
puts(
"\n" "\n"
" To use OpenSSL to convert your favourite browser's certificate into a PEM\n" " To use OpenSSL to convert your favourite browser's certificate into a PEM\n"
" formatted one that curl can use, do something like this (assuming netscape,\n" " formatted one that curl can use, do something like this (assuming netscape,\n"
@ -1328,8 +1373,6 @@ puts (
"TIME CONDITIONS\n" "TIME CONDITIONS\n"
"\n" "\n"
" HTTP allows a client to specify a time condition for the document it\n" " HTTP allows a client to specify a time condition for the document it\n"
);
puts(
" requests. It is If-Modified-Since or If-Unmodified-Since. Curl allow you to\n" " requests. It is If-Modified-Since or If-Unmodified-Since. Curl allow you to\n"
" specify them with the -z/--time-cond flag.\n" " specify them with the -z/--time-cond flag.\n"
"\n" "\n"
@ -1439,13 +1482,26 @@ puts (
"\n" "\n"
" curl -w 'We downloaded %{size_download} bytes\\n' www.download.com\n" " curl -w 'We downloaded %{size_download} bytes\\n' www.download.com\n"
"\n" "\n"
"KERBEROS4 FTP TRANSFER\n"
"\n"
" Curl supports kerberos4 for FTP transfers. You need the kerberos package\n"
" installed and used at curl build time for it to be used.\n"
"\n"
" First, get the krb-ticket the normal way, like with the kauth tool. Then use\n"
" curl in way similar to:\n"
"\n"
" curl --krb4 private ftp://krb4site.com -u username:fakepwd\n"
"\n"
" There's no use for a password on the -u switch, but a blank one will make\n"
" curl ask for one and you already entered the real password to kauth.\n"
"\n"
"MAILING LIST\n" "MAILING LIST\n"
"\n" "\n"
" We have an open mailing list to discuss curl, its development and things\n" " We have an open mailing list to discuss curl, its development and things\n"
" relevant to this.\n" " relevant to this.\n"
"\n" "\n"
" To subscribe, mail curl-request@contactor.se with \"subscribe <your email\n" " To subscribe, mail curl-request@contactor.se with \"subscribe <fill in your\n"
" address>\" in the body.\n" " email address>\" in the body.\n"
"\n" "\n"
" To post to the list, mail curl@contactor.se.\n" " To post to the list, mail curl@contactor.se.\n"
"\n" "\n"

View File

@ -1,3 +1,3 @@
#define CURL_NAME "curl" #define CURL_NAME "curl"
#define CURL_VERSION "7.2" #define CURL_VERSION "7.3"
#define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") " #define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") "