remodeled the help text to avoid those annoying puts() problems when a

string reaches > 512 bytes...
This commit is contained in:
Daniel Stenberg 2003-08-11 12:04:46 +00:00
parent 1679993e3b
commit 1b39b53321

View file

@ -364,107 +364,111 @@ struct getout {
static void help(void) static void help(void)
{ {
printf(CURL_ID "%s\n" int i;
"Usage: curl [options...] <url>\n" const char *help[]={
"Options: (H) means HTTP/HTTPS only, (F) means FTP only\n" "Usage: curl [options...] <url>",
" -a/--append Append to target file when uploading (F)\n" "Options: (H) means HTTP/HTTPS only, (F) means FTP only",
" -A/--user-agent <string> User-Agent to send to server (H)\n" " -a/--append Append to target file when uploading (F)",
" --anyauth Tell curl to choose authentication method (H)\n" " -A/--user-agent <string> User-Agent to send to server (H)",
" -b/--cookie <name=string/file> Cookie string or file to read cookies from (H)\n" " --anyauth Tell curl to choose authentication method (H)",
" --basic Enable HTTP Basic Authentication (H)\n" " -b/--cookie <name=string/file> Cookie string or file to read cookies from (H)",
" -B/--use-ascii Use ASCII/text transfer\n", " --basic Enable HTTP Basic Authentication (H)",
curl_version()); " -B/--use-ascii Use ASCII/text transfer",
puts(" -c/--cookie-jar <file> Write all cookies to this file after operation (H)\n" " -c/--cookie-jar <file> Write all cookies to this file after operation (H)",
" -C/--continue-at <offset> Specify absolute resume offset\n" " -C/--continue-at <offset> Specify absolute resume offset",
" -d/--data <data> HTTP POST data (H)\n" " -d/--data <data> HTTP POST data (H)",
" --data-ascii <data> HTTP POST ASCII data (H)\n" " --data-ascii <data> HTTP POST ASCII data (H)",
" --data-binary <data> HTTP POST binary data (H)\n" " --data-binary <data> HTTP POST binary data (H)",
" --negotiate Enable HTTP Negotiate Authentication (H - req GSS-lib)\n" " --negotiate Enable HTTP Negotiate Authentication (H - req GSS-lib)",
" --digest Enable HTTP Digest Authentication (H)"); " --digest Enable HTTP Digest Authentication (H)",
puts(" --disable-eprt Prevents curl from using EPRT or LPRT (F)\n" " --disable-eprt Prevents curl from using EPRT or LPRT (F)",
" --disable-epsv Prevents curl from using EPSV (F)\n" " --disable-epsv Prevents curl from using EPSV (F)",
" -D/--dump-header <file> Write the headers to this file\n" " -D/--dump-header <file> Write the headers to this file",
" --egd-file <file> EGD socket path for random data (SSL)\n" " --egd-file <file> EGD socket path for random data (SSL)",
#ifdef USE_ENVIRONMENT #ifdef USE_ENVIRONMENT
" --environment Write result codes to environment variables (RISC OS)\n" " --environment Write result codes to environment variables (RISC OS)",
#endif #endif
" -e/--referer Referer page (H)"); " -e/--referer Referer page (H)",
puts(" -E/--cert <cert[:passwd]> Specifies your certificate file and password (HTTPS)\n" " -E/--cert <cert[:passwd]> Specifies your certificate file and password (SSL)",
" --cert-type <type> Specifies certificate file type (DER/PEM/ENG) (HTTPS)\n" " --cert-type <type> Specifies certificate file type (DER/PEM/ENG) (SSL)",
" --key <key> Specifies private key file (HTTPS)\n" " --key <key> Specifies private key file (SSL)",
" --key-type <type> Specifies private key file type (DER/PEM/ENG) (HTTPS)\n" " --key-type <type> Specifies private key file type (DER/PEM/ENG) (SSL)",
" --pass <pass> Specifies passphrase for the private key (HTTPS)"); " --pass <pass> Specifies passphrase for the private key (SSL)",
puts(" --engine <eng> Specifies the crypto engine to use (HTTPS)\n" " --engine <eng> Specifies the crypto engine to use (HTTPS)",
" --cacert <file> CA certificate to verify peer against (SSL)\n" " --cacert <file> CA certificate to verify peer against (SSL)",
" --capath <directory> CA directory (made using c_rehash) to verify\n" " --capath <directory> CA directory (made using c_rehash) to verify",
" peer against (SSL)\n" " peer against (SSL)",
" --ciphers <list> What SSL ciphers to use (SSL)\n" " --ciphers <list> What SSL ciphers to use (SSL)",
" --compressed Request a compressed response (using deflate or gzip)."); " --compressed Request a compressed response (using deflate or gzip).",
puts(" --connect-timeout <seconds> Maximum time allowed for connection\n" " --connect-timeout <seconds> Maximum time allowed for connection",
" --create-dirs Create the necessary local directory hierarchy\n" " --create-dirs Create the necessary local directory hierarchy",
" --crlf Convert LF to CRLF in upload. Useful for MVS (OS/390)\n" " --crlf Convert LF to CRLF in upload. Useful for MVS (OS/390)",
" -f/--fail Fail silently (no output at all) on errors (H)"); " -f/--fail Fail silently (no output at all) on errors (H)",
puts(" --ftp-create-dirs Create the remote dirs if not present (F)\n" " --ftp-create-dirs Create the remote dirs if not present (F)",
" -F/--form <name=content> Specify HTTP POST data (H)\n" " -F/--form <name=content> Specify HTTP POST data (H)",
" -g/--globoff Disable URL sequences and ranges using {} and []\n" " -g/--globoff Disable URL sequences and ranges using {} and []",
" -G/--get Send the -d data with a HTTP GET (H)"); " -G/--get Send the -d data with a HTTP GET (H)",
puts(" -h/--help This help text\n" " -h/--help This help text",
" -H/--header <line> Custom header to pass to server. (H)\n" " -H/--header <line> Custom header to pass to server. (H)",
" -i/--include Include the HTTP-header in the output (H)\n" " -i/--include Include the HTTP-header in the output (H)",
" -I/--head Fetch document info only (HTTP HEAD/FTP SIZE)"); " -I/--head Fetch document info only (HTTP HEAD/FTP SIZE)",
puts(" -j/--junk-session-cookies Ignore session cookies read from file (H)\n" " -j/--junk-session-cookies Ignore session cookies read from file (H)",
" --interface <interface> Specify the interface to be used\n" " --interface <interface> Specify the interface to be used",
" --krb4 <level> Enable krb4 with specified security level (F)\n" " --krb4 <level> Enable krb4 with specified security level (F)",
" -k/--insecure Allow curl to connect to SSL sites without certs (H)\n" " -k/--insecure Allow curl to connect to SSL sites without certs (H)",
" -K/--config Specify which config file to read\n" " -K/--config Specify which config file to read",
" -l/--list-only List only names of an FTP directory (F)\n" " -l/--list-only List only names of an FTP directory (F)",
" --limit-rate <rate> Limit how fast transfers to allow"); " --limit-rate <rate> Limit how fast transfers to allow",
puts(" -L/--location Follow Location: hints (H)\n" " -L/--location Follow Location: hints (H)",
" --location-trusted Same, and continue to send authentication when \n" " --location-trusted Same, and continue to send authentication when ",
" following locations, even when hostname changed\n" " following locations, even when hostname changed",
" -m/--max-time <seconds> Maximum time allowed for the transfer\n" " -m/--max-time <seconds> Maximum time allowed for the transfer",
" --max-redirs <num> Set maximum number of redirections allowed (H)"); " --max-redirs <num> Set maximum number of redirections allowed (H)",
puts(" -M/--manual Display huge help text\n" " -M/--manual Display huge help text",
" -n/--netrc Must read .netrc for user name and password\n" " -n/--netrc Must read .netrc for user name and password",
" --netrc-optional Use either .netrc or URL; overrides -n\n" " --netrc-optional Use either .netrc or URL; overrides -n",
" --ntlm Enable HTTP NTLM authentication (H)"); " --ntlm Enable HTTP NTLM authentication (H)",
puts(" -N/--no-buffer Disables the buffering of the output stream"); " -N/--no-buffer Disables the buffering of the output stream",
puts(" -o/--output <file> Write output to <file> instead of stdout\n" " -o/--output <file> Write output to <file> instead of stdout",
" -O/--remote-name Write output to a file named as the remote file\n" " -O/--remote-name Write output to a file named as the remote file",
" -p/--proxytunnel Perform non-HTTP services through a HTTP proxy\n" " -p/--proxytunnel Perform non-HTTP services through a HTTP proxy",
" -P/--ftpport <address> Use PORT with address instead of PASV when ftping (F)\n" " -P/--ftpport <address> Use PORT with address instead of PASV when ftping (F)",
" -q When used as the first parameter disables .curlrc\n" " -q When used as the first parameter disables .curlrc",
" -Q/--quote <cmd> Send QUOTE command to FTP before file transfer (F)"); " -Q/--quote <cmd> Send QUOTE command to FTP before file transfer (F)",
puts(" -r/--range <range> Retrieve a byte range from a HTTP/1.1 or FTP server\n" " -r/--range <range> Retrieve a byte range from a HTTP/1.1 or FTP server",
" --random-file <file> File to use for reading random data from (SSL)\n" " --random-file <file> File to use for reading random data from (SSL)",
" -R/--remote-time Set the remote file's time on the local output\n" " -R/--remote-time Set the remote file's time on the local output",
" -s/--silent Silent mode. Don't output anything\n" " -s/--silent Silent mode. Don't output anything",
" -S/--show-error Show error. With -s, make curl show errors when they occur"); " -S/--show-error Show error. With -s, make curl show errors when they occur",
puts(" --stderr <file> Where to redirect stderr. - means stdout.\n" " --stderr <file> Where to redirect stderr. - means stdout.",
" -t/--telnet-option <OPT=val> Set telnet option\n" " -t/--telnet-option <OPT=val> Set telnet option",
" --trace <file> Dump a network/debug trace to the given file\n" " --trace <file> Dump a network/debug trace to the given file",
" --trace-ascii <file> Like --trace but without the hex output\n" " --trace-ascii <file> Like --trace but without the hex output",
" -T/--upload-file <file> Transfer/upload <file> to remote site\n" " -T/--upload-file <file> Transfer/upload <file> to remote site",
" --url <URL> Another way to specify URL to work with"); " --url <URL> Another way to specify URL to work with",
puts(" -u/--user <user[:password]> Specify user and password to use\n" " -u/--user <user[:password]> Specify user and password to use",
" Overrides -n and --netrc-optional\n" " Overrides -n and --netrc-optional",
" -U/--proxy-user <user[:password]> Specify Proxy authentication\n" " -U/--proxy-user <user[:password]> Specify Proxy authentication",
" -v/--verbose Makes the operation more talkative\n" " -v/--verbose Makes the operation more talkative",
" -V/--version Outputs version number then quits"); " -V/--version Outputs version number then quits",
#ifdef __DJGPP__ #ifdef __DJGPP__
puts(" --wdebug Turns on WATT-32 debugging under DJGPP"); " --wdebug Turns on WATT-32 debugging under DJGPP",
#endif #endif
puts(" -w/--write-out [format] What to output after completion\n" " -w/--write-out [format] What to output after completion",
" -x/--proxy <host[:port]> Use proxy. (Default port is 1080)\n" " -x/--proxy <host[:port]> Use proxy. (Default port is 1080)",
" -X/--request <command> Specific request command to use"); " -X/--request <command> Specific request command to use",
puts(" -y/--speed-time Time needed to trig speed-limit abort. Defaults to 30\n" " -y/--speed-time Time needed to trig speed-limit abort. Defaults to 30",
" -Y/--speed-limit Stop transfer if below speed-limit for 'speed-time' secs\n" " -Y/--speed-limit Stop transfer if below speed-limit for 'speed-time' secs",
" -z/--time-cond <time> Includes a time condition to the server (H)\n" " -z/--time-cond <time> Includes a time condition to the server (H)",
" -0/--http1.0 Force usage of HTTP 1.0 (H)\n" " -0/--http1.0 Force usage of HTTP 1.0 (H)",
" -1/--tlsv1 Force usage of TLSv1 (H)\n" " -1/--tlsv1 Force usage of TLSv1 (H)",
" -2/--sslv2 Force usage of SSLv2 (H)\n" " -2/--sslv2 Force usage of SSLv2 (H)",
" -3/--sslv3 Force usage of SSLv3 (H)"); " -3/--sslv3 Force usage of SSLv3 (H)",
puts(" -#/--progress-bar Display transfer progress as a progress bar"); " -#/--progress-bar Display transfer progress as a progress bar",
NULL
};
for(i=0; help[i]; i++)
puts(help[i]);
} }
struct LongShort { struct LongShort {