• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /***************************************************************************
2  *                                  _   _ ____  _
3  *  Project                     ___| | | |  _ \| |
4  *                             / __| | | | |_) | |
5  *                            | (__| |_| |  _ <| |___
6  *                             \___|\___/|_| \_\_____|
7  *
8  * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
9  *
10  * This software is licensed as described in the file COPYING, which
11  * you should have received as part of this distribution. The terms
12  * are also available at https://curl.se/docs/copyright.html.
13  *
14  * You may opt to use, copy, modify, merge, publish, distribute and/or sell
15  * copies of the Software, and permit persons to whom the Software is
16  * furnished to do so, under the terms of the COPYING file.
17  *
18  * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
19  * KIND, either express or implied.
20  *
21  * SPDX-License-Identifier: curl
22  *
23  ***************************************************************************/
24 #include "tool_setup.h"
25 #include "tool_help.h"
26 
27 /*
28  * DO NOT edit tool_listhelp.c manually.
29  * This source file is generated with the following command in an autotools
30  * build:
31  *
32  * "make listhelp"
33  */
34 
35 const struct helptxt helptext[] = {
36   {"    --abstract-unix-socket <path>",
37    "Connect via abstract Unix domain socket",
38    CURLHELP_CONNECTION},
39   {"    --alt-svc <file name>",
40    "Enable alt-svc with this cache file",
41    CURLHELP_HTTP},
42   {"    --anyauth",
43    "Pick any authentication method",
44    CURLHELP_HTTP | CURLHELP_PROXY | CURLHELP_AUTH},
45   {"-a, --append",
46    "Append to target file when uploading",
47    CURLHELP_FTP | CURLHELP_SFTP},
48   {"    --aws-sigv4 <provider1[:provider2[:region[:service]]]>",
49    "Use AWS V4 signature authentication",
50    CURLHELP_AUTH | CURLHELP_HTTP},
51   {"    --basic",
52    "Use HTTP Basic Authentication",
53    CURLHELP_AUTH},
54   {"    --ca-native",
55    "Use CA certificates from the native OS",
56    CURLHELP_TLS},
57   {"    --cacert <file>",
58    "CA certificate to verify peer against",
59    CURLHELP_TLS},
60   {"    --capath <dir>",
61    "CA directory to verify peer against",
62    CURLHELP_TLS},
63   {"-E, --cert <certificate[:password]>",
64    "Client certificate file and password",
65    CURLHELP_TLS},
66   {"    --cert-status",
67    "Verify the status of the server cert via OCSP-staple",
68    CURLHELP_TLS},
69   {"    --cert-type <type>",
70    "Certificate type (DER/PEM/ENG/P12)",
71    CURLHELP_TLS},
72   {"    --ciphers <list of ciphers>",
73    "SSL ciphers to use",
74    CURLHELP_TLS},
75   {"    --compressed",
76    "Request compressed response",
77    CURLHELP_HTTP},
78   {"    --compressed-ssh",
79    "Enable SSH compression",
80    CURLHELP_SCP | CURLHELP_SSH},
81   {"-K, --config <file>",
82    "Read config from a file",
83    CURLHELP_CURL},
84   {"    --connect-timeout <fractional seconds>",
85    "Maximum time allowed for connection",
86    CURLHELP_CONNECTION},
87   {"    --connect-to <HOST1:PORT1:HOST2:PORT2>",
88    "Connect to host",
89    CURLHELP_CONNECTION},
90   {"-C, --continue-at <offset>",
91    "Resumed transfer offset",
92    CURLHELP_CONNECTION},
93   {"-b, --cookie <data|filename>",
94    "Send cookies from string/file",
95    CURLHELP_HTTP},
96   {"-c, --cookie-jar <filename>",
97    "Write cookies to <filename> after operation",
98    CURLHELP_HTTP},
99   {"    --create-dirs",
100    "Create necessary local directory hierarchy",
101    CURLHELP_CURL},
102   {"    --create-file-mode <mode>",
103    "File mode for created files",
104    CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_FILE | CURLHELP_UPLOAD},
105   {"    --crlf",
106    "Convert LF to CRLF in upload",
107    CURLHELP_FTP | CURLHELP_SMTP},
108   {"    --crlfile <file>",
109    "Use this CRL list",
110    CURLHELP_TLS},
111   {"    --curves <algorithm list>",
112    "(EC) TLS key exchange algorithm(s) to request",
113    CURLHELP_TLS},
114   {"-d, --data <data>",
115    "HTTP POST data",
116    CURLHELP_IMPORTANT | CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
117   {"    --data-ascii <data>",
118    "HTTP POST ASCII data",
119    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
120   {"    --data-binary <data>",
121    "HTTP POST binary data",
122    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
123   {"    --data-raw <data>",
124    "HTTP POST data, '@' allowed",
125    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
126   {"    --data-urlencode <data>",
127    "HTTP POST data URL encoded",
128    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
129   {"    --delegation <LEVEL>",
130    "GSS-API delegation permission",
131    CURLHELP_AUTH},
132   {"    --digest",
133    "Use HTTP Digest Authentication",
134    CURLHELP_PROXY | CURLHELP_AUTH | CURLHELP_HTTP},
135   {"-q, --disable",
136    "Disable .curlrc",
137    CURLHELP_CURL},
138   {"    --disable-eprt",
139    "Inhibit using EPRT or LPRT",
140    CURLHELP_FTP},
141   {"    --disable-epsv",
142    "Inhibit using EPSV",
143    CURLHELP_FTP},
144   {"    --disallow-username-in-url",
145    "Disallow username in URL",
146    CURLHELP_CURL},
147   {"    --dns-interface <interface>",
148    "Interface to use for DNS requests",
149    CURLHELP_DNS},
150   {"    --dns-ipv4-addr <address>",
151    "IPv4 address to use for DNS requests",
152    CURLHELP_DNS},
153   {"    --dns-ipv6-addr <address>",
154    "IPv6 address to use for DNS requests",
155    CURLHELP_DNS},
156   {"    --dns-servers <addresses>",
157    "DNS server addrs to use",
158    CURLHELP_DNS},
159   {"    --doh-cert-status",
160    "Verify the status of the DoH server cert via OCSP-staple",
161    CURLHELP_DNS | CURLHELP_TLS},
162   {"    --doh-insecure",
163    "Allow insecure DoH server connections",
164    CURLHELP_DNS | CURLHELP_TLS},
165   {"    --doh-url <URL>",
166    "Resolve host names over DoH",
167    CURLHELP_DNS},
168   {"-D, --dump-header <filename>",
169    "Write the received headers to <filename>",
170    CURLHELP_HTTP | CURLHELP_FTP},
171   {"    --egd-file <file>",
172    "EGD socket path for random data",
173    CURLHELP_TLS},
174   {"    --engine <name>",
175    "Crypto engine to use",
176    CURLHELP_TLS},
177   {"    --etag-compare <file>",
178    "Pass an ETag from a file as a custom header",
179    CURLHELP_HTTP},
180   {"    --etag-save <file>",
181    "Parse ETag from a request and save it to a file",
182    CURLHELP_HTTP},
183   {"    --expect100-timeout <seconds>",
184    "How long to wait for 100-continue",
185    CURLHELP_HTTP},
186   {"-f, --fail",
187    "Fail fast with no output on HTTP errors",
188    CURLHELP_IMPORTANT | CURLHELP_HTTP},
189   {"    --fail-early",
190    "Fail on first transfer error, do not continue",
191    CURLHELP_CURL},
192   {"    --fail-with-body",
193    "Fail on HTTP errors but save the body",
194    CURLHELP_HTTP | CURLHELP_OUTPUT},
195   {"    --false-start",
196    "Enable TLS False Start",
197    CURLHELP_TLS},
198   {"-F, --form <name=content>",
199    "Specify multipart MIME data",
200    CURLHELP_HTTP | CURLHELP_UPLOAD},
201   {"    --form-escape",
202    "Escape multipart form field/file names using backslash",
203    CURLHELP_HTTP | CURLHELP_UPLOAD},
204   {"    --form-string <name=string>",
205    "Specify multipart MIME data",
206    CURLHELP_HTTP | CURLHELP_UPLOAD},
207   {"    --ftp-account <data>",
208    "Account data string",
209    CURLHELP_FTP | CURLHELP_AUTH},
210   {"    --ftp-alternative-to-user <command>",
211    "String to replace USER [name]",
212    CURLHELP_FTP},
213   {"    --ftp-create-dirs",
214    "Create the remote dirs if not present",
215    CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_CURL},
216   {"    --ftp-method <method>",
217    "Control CWD usage",
218    CURLHELP_FTP},
219   {"    --ftp-pasv",
220    "Use PASV/EPSV instead of PORT",
221    CURLHELP_FTP},
222   {"-P, --ftp-port <address>",
223    "Use PORT instead of PASV",
224    CURLHELP_FTP},
225   {"    --ftp-pret",
226    "Send PRET before PASV",
227    CURLHELP_FTP},
228   {"    --ftp-skip-pasv-ip",
229    "Skip the IP address for PASV",
230    CURLHELP_FTP},
231   {"    --ftp-ssl-ccc",
232    "Send CCC after authenticating",
233    CURLHELP_FTP | CURLHELP_TLS},
234   {"    --ftp-ssl-ccc-mode <active/passive>",
235    "Set CCC mode",
236    CURLHELP_FTP | CURLHELP_TLS},
237   {"    --ftp-ssl-control",
238    "Require SSL/TLS for FTP login, clear for transfer",
239    CURLHELP_FTP | CURLHELP_TLS},
240   {"-G, --get",
241    "Put the post data in the URL and use GET",
242    CURLHELP_HTTP | CURLHELP_UPLOAD},
243   {"-g, --globoff",
244    "Disable URL sequences and ranges using {} and []",
245    CURLHELP_CURL},
246   {"    --happy-eyeballs-timeout-ms <milliseconds>",
247    "Time for IPv6 before trying IPv4",
248    CURLHELP_CONNECTION},
249   {"    --haproxy-clientip <IP address>",
250    "Sets client IP in HAProxy PROXY protocol v1 header",
251    CURLHELP_HTTP | CURLHELP_PROXY},
252   {"    --haproxy-protocol",
253    "Send HAProxy PROXY protocol v1 header",
254    CURLHELP_HTTP | CURLHELP_PROXY},
255   {"-I, --head",
256    "Show document info only",
257    CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_FILE},
258   {"-H, --header <header/@file>",
259    "Pass custom header(s) to server",
260    CURLHELP_HTTP | CURLHELP_IMAP | CURLHELP_SMTP},
261   {"-h, --help <category>",
262    "Get help for commands",
263    CURLHELP_IMPORTANT | CURLHELP_CURL},
264   {"    --hostpubmd5 <md5>",
265    "Acceptable MD5 hash of the host public key",
266    CURLHELP_SFTP | CURLHELP_SCP},
267   {"    --hostpubsha256 <sha256>",
268    "Acceptable SHA256 hash of the host public key",
269    CURLHELP_SFTP | CURLHELP_SCP},
270   {"    --hsts <file name>",
271    "Enable HSTS with this cache file",
272    CURLHELP_HTTP},
273   {"    --http0.9",
274    "Allow HTTP 0.9 responses",
275    CURLHELP_HTTP},
276   {"-0, --http1.0",
277    "Use HTTP 1.0",
278    CURLHELP_HTTP},
279   {"    --http1.1",
280    "Use HTTP 1.1",
281    CURLHELP_HTTP},
282   {"    --http2",
283    "Use HTTP/2",
284    CURLHELP_HTTP},
285   {"    --http2-prior-knowledge",
286    "Use HTTP 2 without HTTP/1.1 Upgrade",
287    CURLHELP_HTTP},
288   {"    --http3",
289    "Use HTTP v3",
290    CURLHELP_HTTP},
291   {"    --http3-only",
292    "Use HTTP v3 only",
293    CURLHELP_HTTP},
294   {"    --ignore-content-length",
295    "Ignore the size of the remote resource",
296    CURLHELP_HTTP | CURLHELP_FTP},
297   {"-i, --include",
298    "Include protocol response headers in the output",
299    CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
300   {"-k, --insecure",
301    "Allow insecure server connections",
302    CURLHELP_TLS | CURLHELP_SFTP | CURLHELP_SCP},
303   {"    --interface <name>",
304    "Use network INTERFACE (or address)",
305    CURLHELP_CONNECTION},
306   {"    --ipfs-gateway <URL>",
307    "Gateway for IPFS",
308    CURLHELP_IPFS},
309   {"-4, --ipv4",
310    "Resolve names to IPv4 addresses",
311    CURLHELP_CONNECTION | CURLHELP_DNS},
312   {"-6, --ipv6",
313    "Resolve names to IPv6 addresses",
314    CURLHELP_CONNECTION | CURLHELP_DNS},
315   {"    --json <data>",
316    "HTTP POST JSON",
317    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
318   {"-j, --junk-session-cookies",
319    "Ignore session cookies read from file",
320    CURLHELP_HTTP},
321   {"    --keepalive-time <seconds>",
322    "Interval time for keepalive probes",
323    CURLHELP_CONNECTION},
324   {"    --key <key>",
325    "Private key file name",
326    CURLHELP_TLS | CURLHELP_SSH},
327   {"    --key-type <type>",
328    "Private key file type (DER/PEM/ENG)",
329    CURLHELP_TLS},
330   {"    --krb <level>",
331    "Enable Kerberos with security <level>",
332    CURLHELP_FTP},
333   {"    --libcurl <file>",
334    "Dump libcurl equivalent code of this command line",
335    CURLHELP_CURL},
336   {"    --limit-rate <speed>",
337    "Limit transfer speed to RATE",
338    CURLHELP_CONNECTION},
339   {"-l, --list-only",
340    "List only mode",
341    CURLHELP_FTP | CURLHELP_POP3 | CURLHELP_SFTP},
342   {"    --local-port <num/range>",
343    "Force use of RANGE for local port numbers",
344    CURLHELP_CONNECTION},
345   {"-L, --location",
346    "Follow redirects",
347    CURLHELP_HTTP},
348   {"    --location-trusted",
349    "Like --location, and send auth to other hosts",
350    CURLHELP_HTTP | CURLHELP_AUTH},
351   {"    --login-options <options>",
352    "Server login options",
353    CURLHELP_IMAP | CURLHELP_POP3 | CURLHELP_SMTP | CURLHELP_AUTH},
354   {"    --mail-auth <address>",
355    "Originator address of the original email",
356    CURLHELP_SMTP},
357   {"    --mail-from <address>",
358    "Mail from this address",
359    CURLHELP_SMTP},
360   {"    --mail-rcpt <address>",
361    "Mail to this address",
362    CURLHELP_SMTP},
363   {"    --mail-rcpt-allowfails",
364    "Allow RCPT TO command to fail for some recipients",
365    CURLHELP_SMTP},
366   {"-M, --manual",
367    "Display the full manual",
368    CURLHELP_CURL},
369   {"    --max-filesize <bytes>",
370    "Maximum file size to download",
371    CURLHELP_CONNECTION},
372   {"    --max-redirs <num>",
373    "Maximum number of redirects allowed",
374    CURLHELP_HTTP},
375   {"-m, --max-time <fractional seconds>",
376    "Maximum time allowed for transfer",
377    CURLHELP_CONNECTION},
378   {"    --metalink",
379    "Process given URLs as metalink XML file",
380    CURLHELP_MISC},
381   {"    --negotiate",
382    "Use HTTP Negotiate (SPNEGO) authentication",
383    CURLHELP_AUTH | CURLHELP_HTTP},
384   {"-n, --netrc",
385    "Must read .netrc for user name and password",
386    CURLHELP_CURL},
387   {"    --netrc-file <filename>",
388    "Specify FILE for netrc",
389    CURLHELP_CURL},
390   {"    --netrc-optional",
391    "Use either .netrc or URL",
392    CURLHELP_CURL},
393   {"-:, --next",
394    "Make next URL use its separate set of options",
395    CURLHELP_CURL},
396   {"    --no-alpn",
397    "Disable the ALPN TLS extension",
398    CURLHELP_TLS | CURLHELP_HTTP},
399   {"-N, --no-buffer",
400    "Disable buffering of the output stream",
401    CURLHELP_CURL},
402   {"    --no-clobber",
403    "Do not overwrite files that already exist",
404    CURLHELP_CURL | CURLHELP_OUTPUT},
405   {"    --no-keepalive",
406    "Disable TCP keepalive on the connection",
407    CURLHELP_CONNECTION},
408   {"    --no-npn",
409    "Disable the NPN TLS extension",
410    CURLHELP_TLS | CURLHELP_HTTP},
411   {"    --no-progress-meter",
412    "Do not show the progress meter",
413    CURLHELP_VERBOSE},
414   {"    --no-sessionid",
415    "Disable SSL session-ID reusing",
416    CURLHELP_TLS},
417   {"    --noproxy <no-proxy-list>",
418    "List of hosts which do not use proxy",
419    CURLHELP_PROXY},
420   {"    --ntlm",
421    "Use HTTP NTLM authentication",
422    CURLHELP_AUTH | CURLHELP_HTTP},
423   {"    --ntlm-wb",
424    "Use HTTP NTLM authentication with winbind",
425    CURLHELP_AUTH | CURLHELP_HTTP},
426   {"    --oauth2-bearer <token>",
427    "OAuth 2 Bearer Token",
428    CURLHELP_AUTH},
429   {"-o, --output <file>",
430    "Write to file instead of stdout",
431    CURLHELP_IMPORTANT | CURLHELP_CURL},
432   {"    --output-dir <dir>",
433    "Directory to save files in",
434    CURLHELP_CURL},
435   {"-Z, --parallel",
436    "Perform transfers in parallel",
437    CURLHELP_CONNECTION | CURLHELP_CURL},
438   {"    --parallel-immediate",
439    "Do not wait for multiplexing (with --parallel)",
440    CURLHELP_CONNECTION | CURLHELP_CURL},
441   {"    --parallel-max <num>",
442    "Maximum concurrency for parallel transfers",
443    CURLHELP_CONNECTION | CURLHELP_CURL},
444   {"    --pass <phrase>",
445    "Pass phrase for the private key",
446    CURLHELP_SSH | CURLHELP_TLS | CURLHELP_AUTH},
447   {"    --path-as-is",
448    "Do not squash .. sequences in URL path",
449    CURLHELP_CURL},
450   {"    --pinnedpubkey <hashes>",
451    "FILE/HASHES Public key to verify peer against",
452    CURLHELP_TLS},
453   {"    --post301",
454    "Do not switch to GET after following a 301",
455    CURLHELP_HTTP | CURLHELP_POST},
456   {"    --post302",
457    "Do not switch to GET after following a 302",
458    CURLHELP_HTTP | CURLHELP_POST},
459   {"    --post303",
460    "Do not switch to GET after following a 303",
461    CURLHELP_HTTP | CURLHELP_POST},
462   {"    --preproxy [protocol://]host[:port]",
463    "Use this proxy first",
464    CURLHELP_PROXY},
465   {"-#, --progress-bar",
466    "Display transfer progress as a bar",
467    CURLHELP_VERBOSE},
468   {"    --proto <protocols>",
469    "Enable/disable PROTOCOLS",
470    CURLHELP_CONNECTION | CURLHELP_CURL},
471   {"    --proto-default <protocol>",
472    "Use PROTOCOL for any URL missing a scheme",
473    CURLHELP_CONNECTION | CURLHELP_CURL},
474   {"    --proto-redir <protocols>",
475    "Enable/disable PROTOCOLS on redirect",
476    CURLHELP_CONNECTION | CURLHELP_CURL},
477   {"-x, --proxy [protocol://]host[:port]",
478    "Use this proxy",
479    CURLHELP_PROXY},
480   {"    --proxy-anyauth",
481    "Pick any proxy authentication method",
482    CURLHELP_PROXY | CURLHELP_AUTH},
483   {"    --proxy-basic",
484    "Use Basic authentication on the proxy",
485    CURLHELP_PROXY | CURLHELP_AUTH},
486   {"    --proxy-ca-native",
487    "Use CA certificates from the native OS for proxy",
488    CURLHELP_TLS},
489   {"    --proxy-cacert <file>",
490    "CA certificate to verify peer against for proxy",
491    CURLHELP_PROXY | CURLHELP_TLS},
492   {"    --proxy-capath <dir>",
493    "CA directory to verify peer against for proxy",
494    CURLHELP_PROXY | CURLHELP_TLS},
495   {"    --proxy-cert <cert[:passwd]>",
496    "Set client certificate for proxy",
497    CURLHELP_PROXY | CURLHELP_TLS},
498   {"    --proxy-cert-type <type>",
499    "Client certificate type for HTTPS proxy",
500    CURLHELP_PROXY | CURLHELP_TLS},
501   {"    --proxy-ciphers <list>",
502    "SSL ciphers to use for proxy",
503    CURLHELP_PROXY | CURLHELP_TLS},
504   {"    --proxy-crlfile <file>",
505    "Set a CRL list for proxy",
506    CURLHELP_PROXY | CURLHELP_TLS},
507   {"    --proxy-digest",
508    "Use Digest authentication on the proxy",
509    CURLHELP_PROXY | CURLHELP_TLS},
510   {"    --proxy-header <header/@file>",
511    "Pass custom header(s) to proxy",
512    CURLHELP_PROXY},
513   {"    --proxy-http2",
514    "Use HTTP/2 with HTTPS proxy",
515    CURLHELP_HTTP | CURLHELP_PROXY},
516   {"    --proxy-insecure",
517    "Do HTTPS proxy connections without verifying the proxy",
518    CURLHELP_PROXY | CURLHELP_TLS},
519   {"    --proxy-key <key>",
520    "Private key for HTTPS proxy",
521    CURLHELP_PROXY | CURLHELP_TLS},
522   {"    --proxy-key-type <type>",
523    "Private key file type for proxy",
524    CURLHELP_PROXY | CURLHELP_TLS},
525   {"    --proxy-negotiate",
526    "Use HTTP Negotiate (SPNEGO) authentication on the proxy",
527    CURLHELP_PROXY | CURLHELP_AUTH},
528   {"    --proxy-ntlm",
529    "Use NTLM authentication on the proxy",
530    CURLHELP_PROXY | CURLHELP_AUTH},
531   {"    --proxy-pass <phrase>",
532    "Pass phrase for the private key for HTTPS proxy",
533    CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
534   {"    --proxy-pinnedpubkey <hashes>",
535    "FILE/HASHES public key to verify proxy with",
536    CURLHELP_PROXY | CURLHELP_TLS},
537   {"    --proxy-service-name <name>",
538    "SPNEGO proxy service name",
539    CURLHELP_PROXY | CURLHELP_TLS},
540   {"    --proxy-ssl-allow-beast",
541    "Allow security flaw for interop for HTTPS proxy",
542    CURLHELP_PROXY | CURLHELP_TLS},
543   {"    --proxy-ssl-auto-client-cert",
544    "Use auto client certificate for proxy (Schannel)",
545    CURLHELP_PROXY | CURLHELP_TLS},
546   {"    --proxy-tls13-ciphers <ciphersuite list>",
547    "TLS 1.3 proxy cipher suites",
548    CURLHELP_PROXY | CURLHELP_TLS},
549   {"    --proxy-tlsauthtype <type>",
550    "TLS authentication type for HTTPS proxy",
551    CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
552   {"    --proxy-tlspassword <string>",
553    "TLS password for HTTPS proxy",
554    CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
555   {"    --proxy-tlsuser <name>",
556    "TLS username for HTTPS proxy",
557    CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
558   {"    --proxy-tlsv1",
559    "Use TLSv1 for HTTPS proxy",
560    CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
561   {"-U, --proxy-user <user:password>",
562    "Proxy user and password",
563    CURLHELP_PROXY | CURLHELP_AUTH},
564   {"    --proxy1.0 <host[:port]>",
565    "Use HTTP/1.0 proxy on given port",
566    CURLHELP_PROXY},
567   {"-p, --proxytunnel",
568    "Operate through an HTTP proxy tunnel (using CONNECT)",
569    CURLHELP_PROXY},
570   {"    --pubkey <key>",
571    "SSH Public key file name",
572    CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_AUTH},
573   {"-Q, --quote <command>",
574    "Send command(s) to server before transfer",
575    CURLHELP_FTP | CURLHELP_SFTP},
576   {"    --random-file <file>",
577    "File for reading random data from",
578    CURLHELP_MISC},
579   {"-r, --range <range>",
580    "Retrieve only the bytes within RANGE",
581    CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_FILE},
582   {"    --rate <max request rate>",
583    "Request rate for serial transfers",
584    CURLHELP_CONNECTION},
585   {"    --raw",
586    "Do HTTP \"raw\"; no transfer decoding",
587    CURLHELP_HTTP},
588   {"-e, --referer <URL>",
589    "Referrer URL",
590    CURLHELP_HTTP},
591   {"-J, --remote-header-name",
592    "Use the header-provided filename",
593    CURLHELP_OUTPUT},
594   {"-O, --remote-name",
595    "Write output to a file named as the remote file",
596    CURLHELP_IMPORTANT | CURLHELP_OUTPUT},
597   {"    --remote-name-all",
598    "Use the remote file name for all URLs",
599    CURLHELP_OUTPUT},
600   {"-R, --remote-time",
601    "Set the remote file's time on the local output",
602    CURLHELP_OUTPUT},
603   {"    --remove-on-error",
604    "Remove output file on errors",
605    CURLHELP_CURL},
606   {"-X, --request <method>",
607    "Specify request method to use",
608    CURLHELP_CONNECTION},
609   {"    --request-target <path>",
610    "Specify the target for this request",
611    CURLHELP_HTTP},
612   {"    --resolve <[+]host:port:addr[,addr]...>",
613    "Resolve the host+port to this address",
614    CURLHELP_CONNECTION | CURLHELP_DNS},
615   {"    --retry <num>",
616    "Retry request if transient problems occur",
617    CURLHELP_CURL},
618   {"    --retry-all-errors",
619    "Retry all errors (use with --retry)",
620    CURLHELP_CURL},
621   {"    --retry-connrefused",
622    "Retry on connection refused (use with --retry)",
623    CURLHELP_CURL},
624   {"    --retry-delay <seconds>",
625    "Wait time between retries",
626    CURLHELP_CURL},
627   {"    --retry-max-time <seconds>",
628    "Retry only within this period",
629    CURLHELP_CURL},
630   {"    --sasl-authzid <identity>",
631    "Identity for SASL PLAIN authentication",
632    CURLHELP_AUTH},
633   {"    --sasl-ir",
634    "Enable initial response in SASL authentication",
635    CURLHELP_AUTH},
636   {"    --service-name <name>",
637    "SPNEGO service name",
638    CURLHELP_MISC},
639   {"-S, --show-error",
640    "Show error even when -s is used",
641    CURLHELP_CURL},
642   {"-s, --silent",
643    "Silent mode",
644    CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
645   {"    --socks4 <host[:port]>",
646    "SOCKS4 proxy on given host + port",
647    CURLHELP_PROXY},
648   {"    --socks4a <host[:port]>",
649    "SOCKS4a proxy on given host + port",
650    CURLHELP_PROXY},
651   {"    --socks5 <host[:port]>",
652    "SOCKS5 proxy on given host + port",
653    CURLHELP_PROXY},
654   {"    --socks5-basic",
655    "Enable username/password auth for SOCKS5 proxies",
656    CURLHELP_PROXY | CURLHELP_AUTH},
657   {"    --socks5-gssapi",
658    "Enable GSS-API auth for SOCKS5 proxies",
659    CURLHELP_PROXY | CURLHELP_AUTH},
660   {"    --socks5-gssapi-nec",
661    "Compatibility with NEC SOCKS5 server",
662    CURLHELP_PROXY | CURLHELP_AUTH},
663   {"    --socks5-gssapi-service <name>",
664    "SOCKS5 proxy service name for GSS-API",
665    CURLHELP_PROXY | CURLHELP_AUTH},
666   {"    --socks5-hostname <host[:port]>",
667    "SOCKS5 proxy, pass host name to proxy",
668    CURLHELP_PROXY},
669   {"-Y, --speed-limit <speed>",
670    "Stop transfers slower than this",
671    CURLHELP_CONNECTION},
672   {"-y, --speed-time <seconds>",
673    "Trigger 'speed-limit' abort after this time",
674    CURLHELP_CONNECTION},
675   {"    --ssl",
676    "Try SSL/TLS",
677    CURLHELP_TLS},
678   {"    --ssl-allow-beast",
679    "Allow security flaw to improve interop",
680    CURLHELP_TLS},
681   {"    --ssl-auto-client-cert",
682    "Use auto client certificate (Schannel)",
683    CURLHELP_TLS},
684   {"    --ssl-no-revoke",
685    "Disable cert revocation checks (Schannel)",
686    CURLHELP_TLS},
687   {"    --ssl-reqd",
688    "Require SSL/TLS",
689    CURLHELP_TLS},
690   {"    --ssl-revoke-best-effort",
691    "Ignore missing/offline cert CRL dist points (Schannel)",
692    CURLHELP_TLS},
693   {"-2, --sslv2",
694    "Use SSLv2",
695    CURLHELP_TLS},
696   {"-3, --sslv3",
697    "Use SSLv3",
698    CURLHELP_TLS},
699   {"    --stderr <file>",
700    "Where to redirect stderr",
701    CURLHELP_VERBOSE},
702   {"    --styled-output",
703    "Enable styled output for HTTP headers",
704    CURLHELP_VERBOSE},
705   {"    --suppress-connect-headers",
706    "Suppress proxy CONNECT response headers",
707    CURLHELP_PROXY},
708   {"    --tcp-fastopen",
709    "Use TCP Fast Open",
710    CURLHELP_CONNECTION},
711   {"    --tcp-nodelay",
712    "Use the TCP_NODELAY option",
713    CURLHELP_CONNECTION},
714   {"-t, --telnet-option <opt=val>",
715    "Set telnet option",
716    CURLHELP_TELNET},
717   {"    --tftp-blksize <value>",
718    "Set TFTP BLKSIZE option",
719    CURLHELP_TFTP},
720   {"    --tftp-no-options",
721    "Do not send any TFTP options",
722    CURLHELP_TFTP},
723   {"-z, --time-cond <time>",
724    "Transfer based on a time condition",
725    CURLHELP_HTTP | CURLHELP_FTP},
726   {"    --tls-max <VERSION>",
727    "Set maximum allowed TLS version",
728    CURLHELP_TLS},
729   {"    --tls13-ciphers <ciphersuite list>",
730    "TLS 1.3 cipher suites to use",
731    CURLHELP_TLS},
732   {"    --tlsauthtype <type>",
733    "TLS authentication type",
734    CURLHELP_TLS | CURLHELP_AUTH},
735   {"    --tlspassword <string>",
736    "TLS password",
737    CURLHELP_TLS | CURLHELP_AUTH},
738   {"    --tlsuser <name>",
739    "TLS user name",
740    CURLHELP_TLS | CURLHELP_AUTH},
741   {"-1, --tlsv1",
742    "Use TLSv1.0 or greater",
743    CURLHELP_TLS},
744   {"    --tlsv1.0",
745    "Use TLSv1.0 or greater",
746    CURLHELP_TLS},
747   {"    --tlsv1.1",
748    "Use TLSv1.1 or greater",
749    CURLHELP_TLS},
750   {"    --tlsv1.2",
751    "Use TLSv1.2 or greater",
752    CURLHELP_TLS},
753   {"    --tlsv1.3",
754    "Use TLSv1.3 or greater",
755    CURLHELP_TLS},
756   {"    --tr-encoding",
757    "Request compressed transfer encoding",
758    CURLHELP_HTTP},
759   {"    --trace <file>",
760    "Write a debug trace to FILE",
761    CURLHELP_VERBOSE},
762   {"    --trace-ascii <file>",
763    "Like --trace, but without hex output",
764    CURLHELP_VERBOSE},
765   {"    --trace-config <string>",
766    "Details to log in trace/verbose output",
767    CURLHELP_VERBOSE},
768   {"    --trace-ids",
769    "Add transfer and connection identifiers to trace/verbose output",
770    CURLHELP_VERBOSE},
771   {"    --trace-time",
772    "Add time stamps to trace/verbose output",
773    CURLHELP_VERBOSE},
774   {"    --unix-socket <path>",
775    "Connect through this Unix domain socket",
776    CURLHELP_CONNECTION},
777   {"-T, --upload-file <file>",
778    "Transfer local FILE to destination",
779    CURLHELP_IMPORTANT | CURLHELP_UPLOAD},
780   {"    --url <url>",
781    "URL to work with",
782    CURLHELP_CURL},
783   {"    --url-query <data>",
784    "Add a URL query part",
785    CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
786   {"-B, --use-ascii",
787    "Use ASCII/text transfer",
788    CURLHELP_MISC},
789   {"-u, --user <user:password>",
790    "Server user and password",
791    CURLHELP_IMPORTANT | CURLHELP_AUTH},
792   {"-A, --user-agent <name>",
793    "Send User-Agent <name> to server",
794    CURLHELP_IMPORTANT | CURLHELP_HTTP},
795   {"    --variable <[%]name=text/@file>",
796    "Set variable",
797    CURLHELP_CURL},
798   {"-v, --verbose",
799    "Make the operation more talkative",
800    CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
801   {"-V, --version",
802    "Show version number and quit",
803    CURLHELP_IMPORTANT | CURLHELP_CURL},
804   {"-w, --write-out <format>",
805    "Use output FORMAT after completion",
806    CURLHELP_VERBOSE},
807   {"    --xattr",
808    "Store metadata in extended file attributes",
809    CURLHELP_MISC},
810   { NULL, NULL, CURLHELP_HIDDEN }
811 };
812