xref: /third_party/curl/src/tool_listhelp.c (revision 13498266)
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
35const 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