1 /* -*- buffer-read-only: t -*- vi: set ro:
3 * DO NOT EDIT THIS FILE (cli-args.c)
5 * It has been AutoGen-ed
6 * From the definitions cli-args.def
7 * and the template file options
9 * Generated from AutoOpts 41:1:16 templates.
11 * AutoOpts is a copyrighted work. This source file is not encumbered
12 * by AutoOpts licensing, but is provided under the licensing terms chosen
13 * by the gnutls-cli author or copyright holder. AutoOpts is
14 * licensed under the terms of the LGPL. The redistributable library
15 * (``libopts'') is licensed under the terms of either the LGPL or, at the
16 * users discretion, the BSD license. See the AutoOpts and/or libopts sources
19 * The gnutls-cli program is copyrighted and licensed
20 * under the following terms:
22 * Copyright (C) 2000-2016 Free Software Foundation, and others, all rights reserved.
23 * This is free software. It is licensed for use, modification and
24 * redistribution under the terms of the GNU General Public License,
25 * version 3 or later <http://gnu.org/licenses/gpl.html>
27 * gnutls-cli is free software: you can redistribute it and/or modify it
28 * under the terms of the GNU General Public License as published by the
29 * Free Software Foundation, either version 3 of the License, or
30 * (at your option) any later version.
32 * gnutls-cli is distributed in the hope that it will be useful, but
33 * WITHOUT ANY WARRANTY; without even the implied warranty of
34 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
35 * See the GNU General Public License for more details.
37 * You should have received a copy of the GNU General Public License along
38 * with this program. If not, see <http://www.gnu.org/licenses/>.
42 #define OPTION_CODE_COMPILE 1
44 #include <sys/types.h>
54 extern FILE * option_usage_fp;
55 #define zCopyright (gnutls_cli_opt_strs+0)
56 #define zLicenseDescrip (gnutls_cli_opt_strs+286)
64 * static const strings for gnutls-cli options
66 static char const gnutls_cli_opt_strs[4643] =
67 /* 0 */ "gnutls-cli 3.4.11\n"
68 "Copyright (C) 2000-2016 Free Software Foundation, and others, all rights reserved.\n"
69 "This is free software. It is licensed for use, modification and\n"
70 "redistribution under the terms of the GNU General Public License,\n"
71 "version 3 or later <http://gnu.org/licenses/gpl.html>\n\0"
72 /* 286 */ "gnutls-cli is free software: you can redistribute it and/or modify it under\n"
73 "the terms of the GNU General Public License as published by the Free\n"
74 "Software Foundation, either version 3 of the License, or (at your option)\n"
75 "any later version.\n\n"
76 "gnutls-cli is distributed in the hope that it will be useful, but WITHOUT\n"
77 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n"
78 "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\n"
80 "You should have received a copy of the GNU General Public License along\n"
81 "with this program. If not, see <http://www.gnu.org/licenses/>.\n\0"
82 /* 895 */ "Enable debugging\0"
85 /* 924 */ "More verbose output\0"
88 /* 960 */ "Enable trust on first use authentication\0"
90 /* 1006 */ "no-tofu\0"
92 /* 1017 */ "Fail to connect if a known certificate has changed\0"
93 /* 1068 */ "STRICT_TOFU\0"
94 /* 1080 */ "no-strict-tofu\0"
95 /* 1095 */ "Enable DANE certificate verification (DNSSEC)\0"
97 /* 1146 */ "no-dane\0"
98 /* 1154 */ "Use the local DNS server for DNSSEC resolving\0"
99 /* 1200 */ "LOCAL_DNS\0"
100 /* 1210 */ "no-local-dns\0"
101 /* 1223 */ "Enable CA certificate verification\0"
102 /* 1258 */ "CA_VERIFICATION\0"
103 /* 1274 */ "no-ca-verification\0"
104 /* 1293 */ "Enable OCSP certificate verification\0"
106 /* 1335 */ "no-ocsp\0"
107 /* 1343 */ "Establish a session and resume\0"
108 /* 1374 */ "RESUME\0"
109 /* 1381 */ "resume\0"
110 /* 1388 */ "Establish a session and rehandshake\0"
111 /* 1424 */ "REHANDSHAKE\0"
112 /* 1436 */ "rehandshake\0"
113 /* 1448 */ "Connect, establish a plain session and start TLS\0"
114 /* 1497 */ "STARTTLS\0"
115 /* 1506 */ "starttls\0"
116 /* 1515 */ "an alias for the 'starttls-proto' option\0"
117 /* 1556 */ "app-proto\0"
118 /* 1566 */ "The application protocol to be used to obtain the server's certificate\n"
119 "(https, ftp, smtp, imap, ldap, xmpp)\0"
120 /* 1674 */ "STARTTLS_PROTO\0"
121 /* 1689 */ "starttls-proto\0"
122 /* 1704 */ "Use DTLS (datagram TLS) over UDP\0"
125 /* 1745 */ "Set MTU for datagram TLS\0"
128 /* 1778 */ "Send CR LF instead of LF\0"
131 /* 1813 */ "Use DER format for certificates to read from\0"
132 /* 1858 */ "X509FMTDER\0"
133 /* 1869 */ "x509fmtder\0"
134 /* 1880 */ "Send the openpgp fingerprint, instead of the key\0"
135 /* 1929 */ "FINGERPRINT\0"
136 /* 1941 */ "fingerprint\0"
137 /* 1953 */ "Print peer's certificate in PEM format\0"
138 /* 1992 */ "PRINT_CERT\0"
139 /* 2003 */ "print-cert\0"
140 /* 2014 */ "Save the peer's certificate chain in the specified file in PEM format\0"
141 /* 2084 */ "SAVE_CERT\0"
142 /* 2094 */ "save-cert\0"
143 /* 2104 */ "Save the peer's OCSP status response in the provided file\0"
144 /* 2162 */ "SAVE_OCSP\0"
145 /* 2172 */ "save-ocsp\0"
146 /* 2182 */ "The minimum number of bits allowed for DH\0"
147 /* 2224 */ "DH_BITS\0"
148 /* 2232 */ "dh-bits\0"
149 /* 2240 */ "Priorities string\0"
150 /* 2258 */ "PRIORITY\0"
151 /* 2267 */ "priority\0"
152 /* 2276 */ "Certificate file or PKCS #11 URL to use\0"
153 /* 2316 */ "X509CAFILE\0"
154 /* 2327 */ "x509cafile\0"
155 /* 2338 */ "CRL file to use\0"
156 /* 2354 */ "X509CRLFILE\0"
157 /* 2366 */ "x509crlfile\0"
158 /* 2378 */ "PGP Key file to use\0"
159 /* 2398 */ "PGPKEYFILE\0"
160 /* 2409 */ "pgpkeyfile\0"
161 /* 2420 */ "PGP Key ring file to use\0"
162 /* 2445 */ "PGPKEYRING\0"
163 /* 2456 */ "pgpkeyring\0"
164 /* 2467 */ "PGP Public Key (certificate) file to use\0"
165 /* 2508 */ "PGPCERTFILE\0"
166 /* 2520 */ "pgpcertfile\0"
167 /* 2532 */ "X.509 key file or PKCS #11 URL to use\0"
168 /* 2570 */ "X509KEYFILE\0"
169 /* 2582 */ "x509keyfile\0"
170 /* 2594 */ "X.509 Certificate file or PKCS #11 URL to use\0"
171 /* 2640 */ "X509CERTFILE\0"
172 /* 2653 */ "x509certfile\0"
173 /* 2666 */ "PGP subkey to use (hex or auto)\0"
174 /* 2698 */ "PGPSUBKEY\0"
175 /* 2708 */ "pgpsubkey\0"
176 /* 2718 */ "SRP username to use\0"
177 /* 2738 */ "SRPUSERNAME\0"
178 /* 2750 */ "srpusername\0"
179 /* 2762 */ "SRP password to use\0"
180 /* 2782 */ "SRPPASSWD\0"
181 /* 2792 */ "srppasswd\0"
182 /* 2802 */ "PSK username to use\0"
183 /* 2822 */ "PSKUSERNAME\0"
184 /* 2834 */ "pskusername\0"
185 /* 2846 */ "PSK key (in hex) to use\0"
186 /* 2870 */ "PSKKEY\0"
187 /* 2877 */ "pskkey\0"
188 /* 2884 */ "The port or service to connect to\0"
191 /* 2928 */ "Don't abort program if server certificate can't be validated\0"
192 /* 2989 */ "INSECURE\0"
193 /* 2998 */ "insecure\0"
194 /* 3007 */ "Use length-hiding padding to prevent traffic analysis\0"
195 /* 3061 */ "RANGES\0"
196 /* 3068 */ "ranges\0"
197 /* 3075 */ "Benchmark individual ciphers\0"
198 /* 3104 */ "BENCHMARK_CIPHERS\0"
199 /* 3122 */ "benchmark-ciphers\0"
200 /* 3140 */ "Benchmark TLS key exchange methods\0"
201 /* 3175 */ "BENCHMARK_TLS_KX\0"
202 /* 3192 */ "benchmark-tls-kx\0"
203 /* 3209 */ "Benchmark TLS ciphers\0"
204 /* 3231 */ "BENCHMARK_TLS_CIPHERS\0"
205 /* 3253 */ "benchmark-tls-ciphers\0"
206 /* 3275 */ "Print a list of the supported algorithms and modes\0"
209 /* 3336 */ "Print a list of the supported priority strings\0"
210 /* 3383 */ "PRIORITY_LIST\0"
211 /* 3397 */ "priority-list\0"
212 /* 3411 */ "Don't allow session tickets\0"
213 /* 3439 */ "NOTICKET\0"
214 /* 3448 */ "noticket\0"
215 /* 3457 */ "Offer SRTP profiles\0"
216 /* 3477 */ "SRTP_PROFILES\0"
217 /* 3491 */ "srtp-profiles\0"
218 /* 3505 */ "Application layer protocol\0"
221 /* 3542 */ "Activate heartbeat support\0"
222 /* 3569 */ "HEARTBEAT\0"
223 /* 3579 */ "heartbeat\0"
224 /* 3589 */ "The maximum record size to advertize\0"
225 /* 3626 */ "RECORDSIZE\0"
226 /* 3637 */ "recordsize\0"
227 /* 3648 */ "Do not send a Server Name Indication (SNI)\0"
228 /* 3691 */ "DISABLE_SNI\0"
229 /* 3703 */ "disable-sni\0"
230 /* 3715 */ "Disable all the TLS extensions\0"
231 /* 3746 */ "DISABLE_EXTENSIONS\0"
232 /* 3765 */ "disable-extensions\0"
233 /* 3784 */ "Inline commands of the form ^<cmd>^\0"
234 /* 3820 */ "INLINE_COMMANDS\0"
235 /* 3836 */ "inline-commands\0"
236 /* 3852 */ "Change the default delimiter for inline commands.\0"
237 /* 3902 */ "INLINE_COMMANDS_PREFIX\0"
238 /* 3925 */ "inline-commands-prefix\0"
239 /* 3948 */ "Specify the PKCS #11 provider library\0"
240 /* 3986 */ "PROVIDER\0"
241 /* 3995 */ "provider\0"
242 /* 4004 */ "Reports the status of the FIPS140-2 mode in gnutls library\0"
243 /* 4063 */ "FIPS140_MODE\0"
244 /* 4076 */ "fips140-mode\0"
245 /* 4089 */ "display extended usage information and exit\0"
247 /* 4138 */ "extended usage information passed thru pager\0"
248 /* 4183 */ "more-help\0"
249 /* 4193 */ "output version information and exit\0"
250 /* 4229 */ "version\0"
251 /* 4237 */ "GNUTLS_CLI\0"
252 /* 4248 */ "gnutls-cli - GnuTLS client\n"
253 "Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [hostname]\n\0"
254 /* 4344 */ "bugs@gnutls.org\0"
256 /* 4362 */ "Simple client program to set up a TLS connection to some other computer. It\n"
257 "sets up a TLS connection and forwards data from the standard input to the\n"
258 "secured socket and vice versa.\n\0"
259 /* 4545 */ "gnutls-cli 3.4.11\0"
260 /* 4563 */ "Usage: gnutls-cli [options] hostname\n"
261 "gnutls-cli --help for usage instructions.\n";
264 * debug option description:
266 /** Descriptive text for the debug option */
267 #define DEBUG_DESC (gnutls_cli_opt_strs+895)
268 /** Upper-cased name for the debug option */
269 #define DEBUG_NAME (gnutls_cli_opt_strs+912)
270 /** Name string for the debug option */
271 #define DEBUG_name (gnutls_cli_opt_strs+918)
272 /** Compiled in flag settings for the debug option */
273 #define DEBUG_FLAGS (OPTST_DISABLED \
274 | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC))
277 * verbose option description:
279 /** Descriptive text for the verbose option */
280 #define VERBOSE_DESC (gnutls_cli_opt_strs+924)
281 /** Upper-cased name for the verbose option */
282 #define VERBOSE_NAME (gnutls_cli_opt_strs+944)
283 /** Name string for the verbose option */
284 #define VERBOSE_name (gnutls_cli_opt_strs+952)
285 /** Compiled in flag settings for the verbose option */
286 #define VERBOSE_FLAGS (OPTST_DISABLED)
289 * tofu option description:
291 /** Descriptive text for the tofu option */
292 #define TOFU_DESC (gnutls_cli_opt_strs+960)
293 /** Upper-cased name for the tofu option */
294 #define TOFU_NAME (gnutls_cli_opt_strs+1001)
295 /** disablement name for the tofu option */
296 #define NOT_TOFU_name (gnutls_cli_opt_strs+1006)
297 /** disablement prefix for the tofu option */
298 #define NOT_TOFU_PFX (gnutls_cli_opt_strs+1014)
299 /** Name string for the tofu option */
300 #define TOFU_name (NOT_TOFU_name + 3)
301 /** Compiled in flag settings for the tofu option */
302 #define TOFU_FLAGS (OPTST_DISABLED)
305 * strict-tofu option description:
307 /** Descriptive text for the strict-tofu option */
308 #define STRICT_TOFU_DESC (gnutls_cli_opt_strs+1017)
309 /** Upper-cased name for the strict-tofu option */
310 #define STRICT_TOFU_NAME (gnutls_cli_opt_strs+1068)
311 /** disablement name for the strict-tofu option */
312 #define NOT_STRICT_TOFU_name (gnutls_cli_opt_strs+1080)
313 /** disablement prefix for the strict-tofu option */
314 #define NOT_STRICT_TOFU_PFX (gnutls_cli_opt_strs+1014)
315 /** Name string for the strict-tofu option */
316 #define STRICT_TOFU_name (NOT_STRICT_TOFU_name + 3)
317 /** Compiled in flag settings for the strict-tofu option */
318 #define STRICT_TOFU_FLAGS (OPTST_DISABLED)
321 * dane option description:
323 /** Descriptive text for the dane option */
324 #define DANE_DESC (gnutls_cli_opt_strs+1095)
325 /** Upper-cased name for the dane option */
326 #define DANE_NAME (gnutls_cli_opt_strs+1141)
327 /** disablement name for the dane option */
328 #define NOT_DANE_name (gnutls_cli_opt_strs+1146)
329 /** disablement prefix for the dane option */
330 #define NOT_DANE_PFX (gnutls_cli_opt_strs+1014)
331 /** Name string for the dane option */
332 #define DANE_name (NOT_DANE_name + 3)
333 /** Compiled in flag settings for the dane option */
334 #define DANE_FLAGS (OPTST_DISABLED)
337 * local-dns option description:
339 /** Descriptive text for the local-dns option */
340 #define LOCAL_DNS_DESC (gnutls_cli_opt_strs+1154)
341 /** Upper-cased name for the local-dns option */
342 #define LOCAL_DNS_NAME (gnutls_cli_opt_strs+1200)
343 /** disablement name for the local-dns option */
344 #define NOT_LOCAL_DNS_name (gnutls_cli_opt_strs+1210)
345 /** disablement prefix for the local-dns option */
346 #define NOT_LOCAL_DNS_PFX (gnutls_cli_opt_strs+1014)
347 /** Name string for the local-dns option */
348 #define LOCAL_DNS_name (NOT_LOCAL_DNS_name + 3)
349 /** Compiled in flag settings for the local-dns option */
350 #define LOCAL_DNS_FLAGS (OPTST_DISABLED)
353 * ca-verification option description:
355 /** Descriptive text for the ca-verification option */
356 #define CA_VERIFICATION_DESC (gnutls_cli_opt_strs+1223)
357 /** Upper-cased name for the ca-verification option */
358 #define CA_VERIFICATION_NAME (gnutls_cli_opt_strs+1258)
359 /** disablement name for the ca-verification option */
360 #define NOT_CA_VERIFICATION_name (gnutls_cli_opt_strs+1274)
361 /** disablement prefix for the ca-verification option */
362 #define NOT_CA_VERIFICATION_PFX (gnutls_cli_opt_strs+1014)
363 /** Name string for the ca-verification option */
364 #define CA_VERIFICATION_name (NOT_CA_VERIFICATION_name + 3)
365 /** Compiled in flag settings for the ca-verification option */
366 #define CA_VERIFICATION_FLAGS (OPTST_INITENABLED)
369 * ocsp option description:
371 /** Descriptive text for the ocsp option */
372 #define OCSP_DESC (gnutls_cli_opt_strs+1293)
373 /** Upper-cased name for the ocsp option */
374 #define OCSP_NAME (gnutls_cli_opt_strs+1330)
375 /** disablement name for the ocsp option */
376 #define NOT_OCSP_name (gnutls_cli_opt_strs+1335)
377 /** disablement prefix for the ocsp option */
378 #define NOT_OCSP_PFX (gnutls_cli_opt_strs+1014)
379 /** Name string for the ocsp option */
380 #define OCSP_name (NOT_OCSP_name + 3)
381 /** Compiled in flag settings for the ocsp option */
382 #define OCSP_FLAGS (OPTST_DISABLED)
385 * resume option description:
387 /** Descriptive text for the resume option */
388 #define RESUME_DESC (gnutls_cli_opt_strs+1343)
389 /** Upper-cased name for the resume option */
390 #define RESUME_NAME (gnutls_cli_opt_strs+1374)
391 /** Name string for the resume option */
392 #define RESUME_name (gnutls_cli_opt_strs+1381)
393 /** Compiled in flag settings for the resume option */
394 #define RESUME_FLAGS (OPTST_DISABLED)
397 * rehandshake option description:
399 /** Descriptive text for the rehandshake option */
400 #define REHANDSHAKE_DESC (gnutls_cli_opt_strs+1388)
401 /** Upper-cased name for the rehandshake option */
402 #define REHANDSHAKE_NAME (gnutls_cli_opt_strs+1424)
403 /** Name string for the rehandshake option */
404 #define REHANDSHAKE_name (gnutls_cli_opt_strs+1436)
405 /** Compiled in flag settings for the rehandshake option */
406 #define REHANDSHAKE_FLAGS (OPTST_DISABLED)
409 * starttls option description:
411 /** Descriptive text for the starttls option */
412 #define STARTTLS_DESC (gnutls_cli_opt_strs+1448)
413 /** Upper-cased name for the starttls option */
414 #define STARTTLS_NAME (gnutls_cli_opt_strs+1497)
415 /** Name string for the starttls option */
416 #define STARTTLS_name (gnutls_cli_opt_strs+1506)
417 /** Compiled in flag settings for the starttls option */
418 #define STARTTLS_FLAGS (OPTST_DISABLED)
421 * app-proto option description:
423 /** Descriptive text for the app-proto option */
424 #define APP_PROTO_DESC (gnutls_cli_opt_strs+1515)
425 #define APP_PROTO_NAME NULL
426 /** Unmodified name string for the app-proto option */
427 #define APP_PROTO_name (gnutls_cli_opt_strs+1556)
428 /** Compiled in flag settings for the app-proto option */
429 #define APP_PROTO_FLAGS (STARTTLS_PROTO_FLAGS | OPTST_ALIAS)
432 * starttls-proto option description with
433 * "Must also have options" and "Incompatible options":
435 /** Descriptive text for the starttls-proto option */
436 #define STARTTLS_PROTO_DESC (gnutls_cli_opt_strs+1566)
437 /** Upper-cased name for the starttls-proto option */
438 #define STARTTLS_PROTO_NAME (gnutls_cli_opt_strs+1674)
439 /** Name string for the starttls-proto option */
440 #define STARTTLS_PROTO_name (gnutls_cli_opt_strs+1689)
441 /** Other options that appear in conjunction with the starttls-proto option */
442 static int const aStarttls_ProtoCantList[] = {
443 INDEX_OPT_STARTTLS, NO_EQUIVALENT };
444 /** Compiled in flag settings for the starttls-proto option */
445 #define STARTTLS_PROTO_FLAGS (OPTST_DISABLED \
446 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
449 * udp option description:
451 /** Descriptive text for the udp option */
452 #define UDP_DESC (gnutls_cli_opt_strs+1704)
453 /** Upper-cased name for the udp option */
454 #define UDP_NAME (gnutls_cli_opt_strs+1737)
455 /** Name string for the udp option */
456 #define UDP_name (gnutls_cli_opt_strs+1741)
457 /** Compiled in flag settings for the udp option */
458 #define UDP_FLAGS (OPTST_DISABLED)
461 * mtu option description:
463 /** Descriptive text for the mtu option */
464 #define MTU_DESC (gnutls_cli_opt_strs+1745)
465 /** Upper-cased name for the mtu option */
466 #define MTU_NAME (gnutls_cli_opt_strs+1770)
467 /** Name string for the mtu option */
468 #define MTU_name (gnutls_cli_opt_strs+1774)
469 /** Compiled in flag settings for the mtu option */
470 #define MTU_FLAGS (OPTST_DISABLED \
471 | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC))
474 * crlf option description:
476 /** Descriptive text for the crlf option */
477 #define CRLF_DESC (gnutls_cli_opt_strs+1778)
478 /** Upper-cased name for the crlf option */
479 #define CRLF_NAME (gnutls_cli_opt_strs+1803)
480 /** Name string for the crlf option */
481 #define CRLF_name (gnutls_cli_opt_strs+1808)
482 /** Compiled in flag settings for the crlf option */
483 #define CRLF_FLAGS (OPTST_DISABLED)
486 * x509fmtder option description:
488 /** Descriptive text for the x509fmtder option */
489 #define X509FMTDER_DESC (gnutls_cli_opt_strs+1813)
490 /** Upper-cased name for the x509fmtder option */
491 #define X509FMTDER_NAME (gnutls_cli_opt_strs+1858)
492 /** Name string for the x509fmtder option */
493 #define X509FMTDER_name (gnutls_cli_opt_strs+1869)
494 /** Compiled in flag settings for the x509fmtder option */
495 #define X509FMTDER_FLAGS (OPTST_DISABLED)
498 * fingerprint option description:
500 /** Descriptive text for the fingerprint option */
501 #define FINGERPRINT_DESC (gnutls_cli_opt_strs+1880)
502 /** Upper-cased name for the fingerprint option */
503 #define FINGERPRINT_NAME (gnutls_cli_opt_strs+1929)
504 /** Name string for the fingerprint option */
505 #define FINGERPRINT_name (gnutls_cli_opt_strs+1941)
506 /** Compiled in flag settings for the fingerprint option */
507 #define FINGERPRINT_FLAGS (OPTST_DISABLED)
510 * print-cert option description:
512 /** Descriptive text for the print-cert option */
513 #define PRINT_CERT_DESC (gnutls_cli_opt_strs+1953)
514 /** Upper-cased name for the print-cert option */
515 #define PRINT_CERT_NAME (gnutls_cli_opt_strs+1992)
516 /** Name string for the print-cert option */
517 #define PRINT_CERT_name (gnutls_cli_opt_strs+2003)
518 /** Compiled in flag settings for the print-cert option */
519 #define PRINT_CERT_FLAGS (OPTST_DISABLED)
522 * save-cert option description:
524 /** Descriptive text for the save-cert option */
525 #define SAVE_CERT_DESC (gnutls_cli_opt_strs+2014)
526 /** Upper-cased name for the save-cert option */
527 #define SAVE_CERT_NAME (gnutls_cli_opt_strs+2084)
528 /** Name string for the save-cert option */
529 #define SAVE_CERT_name (gnutls_cli_opt_strs+2094)
530 /** Compiled in flag settings for the save-cert option */
531 #define SAVE_CERT_FLAGS (OPTST_DISABLED \
532 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
535 * save-ocsp option description:
537 /** Descriptive text for the save-ocsp option */
538 #define SAVE_OCSP_DESC (gnutls_cli_opt_strs+2104)
539 /** Upper-cased name for the save-ocsp option */
540 #define SAVE_OCSP_NAME (gnutls_cli_opt_strs+2162)
541 /** Name string for the save-ocsp option */
542 #define SAVE_OCSP_name (gnutls_cli_opt_strs+2172)
543 /** Compiled in flag settings for the save-ocsp option */
544 #define SAVE_OCSP_FLAGS (OPTST_DISABLED \
545 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
548 * dh-bits option description:
550 /** Descriptive text for the dh-bits option */
551 #define DH_BITS_DESC (gnutls_cli_opt_strs+2182)
552 /** Upper-cased name for the dh-bits option */
553 #define DH_BITS_NAME (gnutls_cli_opt_strs+2224)
554 /** Name string for the dh-bits option */
555 #define DH_BITS_name (gnutls_cli_opt_strs+2232)
556 /** Compiled in flag settings for the dh-bits option */
557 #define DH_BITS_FLAGS (OPTST_DISABLED \
558 | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC))
561 * priority option description:
563 /** Descriptive text for the priority option */
564 #define PRIORITY_DESC (gnutls_cli_opt_strs+2240)
565 /** Upper-cased name for the priority option */
566 #define PRIORITY_NAME (gnutls_cli_opt_strs+2258)
567 /** Name string for the priority option */
568 #define PRIORITY_name (gnutls_cli_opt_strs+2267)
569 /** Compiled in flag settings for the priority option */
570 #define PRIORITY_FLAGS (OPTST_DISABLED \
571 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
574 * x509cafile option description:
576 /** Descriptive text for the x509cafile option */
577 #define X509CAFILE_DESC (gnutls_cli_opt_strs+2276)
578 /** Upper-cased name for the x509cafile option */
579 #define X509CAFILE_NAME (gnutls_cli_opt_strs+2316)
580 /** Name string for the x509cafile option */
581 #define X509CAFILE_name (gnutls_cli_opt_strs+2327)
582 /** Compiled in flag settings for the x509cafile option */
583 #define X509CAFILE_FLAGS (OPTST_DISABLED \
584 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
587 * x509crlfile option description:
589 /** Descriptive text for the x509crlfile option */
590 #define X509CRLFILE_DESC (gnutls_cli_opt_strs+2338)
591 /** Upper-cased name for the x509crlfile option */
592 #define X509CRLFILE_NAME (gnutls_cli_opt_strs+2354)
593 /** Name string for the x509crlfile option */
594 #define X509CRLFILE_name (gnutls_cli_opt_strs+2366)
595 /** Compiled in flag settings for the x509crlfile option */
596 #define X509CRLFILE_FLAGS (OPTST_DISABLED \
597 | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE))
600 * pgpkeyfile option description:
602 /** Descriptive text for the pgpkeyfile option */
603 #define PGPKEYFILE_DESC (gnutls_cli_opt_strs+2378)
604 /** Upper-cased name for the pgpkeyfile option */
605 #define PGPKEYFILE_NAME (gnutls_cli_opt_strs+2398)
606 /** Name string for the pgpkeyfile option */
607 #define PGPKEYFILE_name (gnutls_cli_opt_strs+2409)
608 /** Compiled in flag settings for the pgpkeyfile option */
609 #define PGPKEYFILE_FLAGS (OPTST_DISABLED \
610 | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE))
613 * pgpkeyring option description:
615 /** Descriptive text for the pgpkeyring option */
616 #define PGPKEYRING_DESC (gnutls_cli_opt_strs+2420)
617 /** Upper-cased name for the pgpkeyring option */
618 #define PGPKEYRING_NAME (gnutls_cli_opt_strs+2445)
619 /** Name string for the pgpkeyring option */
620 #define PGPKEYRING_name (gnutls_cli_opt_strs+2456)
621 /** Compiled in flag settings for the pgpkeyring option */
622 #define PGPKEYRING_FLAGS (OPTST_DISABLED \
623 | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE))
626 * pgpcertfile option description with
627 * "Must also have options" and "Incompatible options":
629 /** Descriptive text for the pgpcertfile option */
630 #define PGPCERTFILE_DESC (gnutls_cli_opt_strs+2467)
631 /** Upper-cased name for the pgpcertfile option */
632 #define PGPCERTFILE_NAME (gnutls_cli_opt_strs+2508)
633 /** Name string for the pgpcertfile option */
634 #define PGPCERTFILE_name (gnutls_cli_opt_strs+2520)
635 /** Other options that are required by the pgpcertfile option */
636 static int const aPgpcertfileMustList[] = {
637 INDEX_OPT_PGPKEYFILE, NO_EQUIVALENT };
638 /** Compiled in flag settings for the pgpcertfile option */
639 #define PGPCERTFILE_FLAGS (OPTST_DISABLED \
640 | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE))
643 * x509keyfile option description:
645 /** Descriptive text for the x509keyfile option */
646 #define X509KEYFILE_DESC (gnutls_cli_opt_strs+2532)
647 /** Upper-cased name for the x509keyfile option */
648 #define X509KEYFILE_NAME (gnutls_cli_opt_strs+2570)
649 /** Name string for the x509keyfile option */
650 #define X509KEYFILE_name (gnutls_cli_opt_strs+2582)
651 /** Compiled in flag settings for the x509keyfile option */
652 #define X509KEYFILE_FLAGS (OPTST_DISABLED \
653 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
656 * x509certfile option description with
657 * "Must also have options" and "Incompatible options":
659 /** Descriptive text for the x509certfile option */
660 #define X509CERTFILE_DESC (gnutls_cli_opt_strs+2594)
661 /** Upper-cased name for the x509certfile option */
662 #define X509CERTFILE_NAME (gnutls_cli_opt_strs+2640)
663 /** Name string for the x509certfile option */
664 #define X509CERTFILE_name (gnutls_cli_opt_strs+2653)
665 /** Other options that are required by the x509certfile option */
666 static int const aX509certfileMustList[] = {
667 INDEX_OPT_X509KEYFILE, NO_EQUIVALENT };
668 /** Compiled in flag settings for the x509certfile option */
669 #define X509CERTFILE_FLAGS (OPTST_DISABLED \
670 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
673 * pgpsubkey option description:
675 /** Descriptive text for the pgpsubkey option */
676 #define PGPSUBKEY_DESC (gnutls_cli_opt_strs+2666)
677 /** Upper-cased name for the pgpsubkey option */
678 #define PGPSUBKEY_NAME (gnutls_cli_opt_strs+2698)
679 /** Name string for the pgpsubkey option */
680 #define PGPSUBKEY_name (gnutls_cli_opt_strs+2708)
681 /** Compiled in flag settings for the pgpsubkey option */
682 #define PGPSUBKEY_FLAGS (OPTST_DISABLED \
683 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
686 * srpusername option description:
688 /** Descriptive text for the srpusername option */
689 #define SRPUSERNAME_DESC (gnutls_cli_opt_strs+2718)
690 /** Upper-cased name for the srpusername option */
691 #define SRPUSERNAME_NAME (gnutls_cli_opt_strs+2738)
692 /** Name string for the srpusername option */
693 #define SRPUSERNAME_name (gnutls_cli_opt_strs+2750)
694 /** Compiled in flag settings for the srpusername option */
695 #define SRPUSERNAME_FLAGS (OPTST_DISABLED \
696 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
699 * srppasswd option description:
701 /** Descriptive text for the srppasswd option */
702 #define SRPPASSWD_DESC (gnutls_cli_opt_strs+2762)
703 /** Upper-cased name for the srppasswd option */
704 #define SRPPASSWD_NAME (gnutls_cli_opt_strs+2782)
705 /** Name string for the srppasswd option */
706 #define SRPPASSWD_name (gnutls_cli_opt_strs+2792)
707 /** Compiled in flag settings for the srppasswd option */
708 #define SRPPASSWD_FLAGS (OPTST_DISABLED \
709 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
712 * pskusername option description:
714 /** Descriptive text for the pskusername option */
715 #define PSKUSERNAME_DESC (gnutls_cli_opt_strs+2802)
716 /** Upper-cased name for the pskusername option */
717 #define PSKUSERNAME_NAME (gnutls_cli_opt_strs+2822)
718 /** Name string for the pskusername option */
719 #define PSKUSERNAME_name (gnutls_cli_opt_strs+2834)
720 /** Compiled in flag settings for the pskusername option */
721 #define PSKUSERNAME_FLAGS (OPTST_DISABLED \
722 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
725 * pskkey option description:
727 /** Descriptive text for the pskkey option */
728 #define PSKKEY_DESC (gnutls_cli_opt_strs+2846)
729 /** Upper-cased name for the pskkey option */
730 #define PSKKEY_NAME (gnutls_cli_opt_strs+2870)
731 /** Name string for the pskkey option */
732 #define PSKKEY_name (gnutls_cli_opt_strs+2877)
733 /** Compiled in flag settings for the pskkey option */
734 #define PSKKEY_FLAGS (OPTST_DISABLED \
735 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
738 * port option description:
740 /** Descriptive text for the port option */
741 #define PORT_DESC (gnutls_cli_opt_strs+2884)
742 /** Upper-cased name for the port option */
743 #define PORT_NAME (gnutls_cli_opt_strs+2918)
744 /** Name string for the port option */
745 #define PORT_name (gnutls_cli_opt_strs+2923)
746 /** Compiled in flag settings for the port option */
747 #define PORT_FLAGS (OPTST_DISABLED \
748 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
751 * insecure option description:
753 /** Descriptive text for the insecure option */
754 #define INSECURE_DESC (gnutls_cli_opt_strs+2928)
755 /** Upper-cased name for the insecure option */
756 #define INSECURE_NAME (gnutls_cli_opt_strs+2989)
757 /** Name string for the insecure option */
758 #define INSECURE_name (gnutls_cli_opt_strs+2998)
759 /** Compiled in flag settings for the insecure option */
760 #define INSECURE_FLAGS (OPTST_DISABLED)
763 * ranges option description:
765 /** Descriptive text for the ranges option */
766 #define RANGES_DESC (gnutls_cli_opt_strs+3007)
767 /** Upper-cased name for the ranges option */
768 #define RANGES_NAME (gnutls_cli_opt_strs+3061)
769 /** Name string for the ranges option */
770 #define RANGES_name (gnutls_cli_opt_strs+3068)
771 /** Compiled in flag settings for the ranges option */
772 #define RANGES_FLAGS (OPTST_DISABLED)
775 * benchmark-ciphers option description:
777 /** Descriptive text for the benchmark-ciphers option */
778 #define BENCHMARK_CIPHERS_DESC (gnutls_cli_opt_strs+3075)
779 /** Upper-cased name for the benchmark-ciphers option */
780 #define BENCHMARK_CIPHERS_NAME (gnutls_cli_opt_strs+3104)
781 /** Name string for the benchmark-ciphers option */
782 #define BENCHMARK_CIPHERS_name (gnutls_cli_opt_strs+3122)
783 /** Compiled in flag settings for the benchmark-ciphers option */
784 #define BENCHMARK_CIPHERS_FLAGS (OPTST_DISABLED)
787 * benchmark-tls-kx option description:
789 /** Descriptive text for the benchmark-tls-kx option */
790 #define BENCHMARK_TLS_KX_DESC (gnutls_cli_opt_strs+3140)
791 /** Upper-cased name for the benchmark-tls-kx option */
792 #define BENCHMARK_TLS_KX_NAME (gnutls_cli_opt_strs+3175)
793 /** Name string for the benchmark-tls-kx option */
794 #define BENCHMARK_TLS_KX_name (gnutls_cli_opt_strs+3192)
795 /** Compiled in flag settings for the benchmark-tls-kx option */
796 #define BENCHMARK_TLS_KX_FLAGS (OPTST_DISABLED)
799 * benchmark-tls-ciphers option description:
801 /** Descriptive text for the benchmark-tls-ciphers option */
802 #define BENCHMARK_TLS_CIPHERS_DESC (gnutls_cli_opt_strs+3209)
803 /** Upper-cased name for the benchmark-tls-ciphers option */
804 #define BENCHMARK_TLS_CIPHERS_NAME (gnutls_cli_opt_strs+3231)
805 /** Name string for the benchmark-tls-ciphers option */
806 #define BENCHMARK_TLS_CIPHERS_name (gnutls_cli_opt_strs+3253)
807 /** Compiled in flag settings for the benchmark-tls-ciphers option */
808 #define BENCHMARK_TLS_CIPHERS_FLAGS (OPTST_DISABLED)
811 * list option description with
812 * "Must also have options" and "Incompatible options":
814 /** Descriptive text for the list option */
815 #define LIST_DESC (gnutls_cli_opt_strs+3275)
816 /** Upper-cased name for the list option */
817 #define LIST_NAME (gnutls_cli_opt_strs+3326)
818 /** Name string for the list option */
819 #define LIST_name (gnutls_cli_opt_strs+3331)
820 /** Other options that appear in conjunction with the list option */
821 static int const aListCantList[] = {
822 INDEX_OPT_PORT, NO_EQUIVALENT };
823 /** Compiled in flag settings for the list option */
824 #define LIST_FLAGS (OPTST_DISABLED)
827 * priority-list option description:
829 /** Descriptive text for the priority-list option */
830 #define PRIORITY_LIST_DESC (gnutls_cli_opt_strs+3336)
831 /** Upper-cased name for the priority-list option */
832 #define PRIORITY_LIST_NAME (gnutls_cli_opt_strs+3383)
833 /** Name string for the priority-list option */
834 #define PRIORITY_LIST_name (gnutls_cli_opt_strs+3397)
835 /** Compiled in flag settings for the priority-list option */
836 #define PRIORITY_LIST_FLAGS (OPTST_DISABLED)
839 * noticket option description:
841 /** Descriptive text for the noticket option */
842 #define NOTICKET_DESC (gnutls_cli_opt_strs+3411)
843 /** Upper-cased name for the noticket option */
844 #define NOTICKET_NAME (gnutls_cli_opt_strs+3439)
845 /** Name string for the noticket option */
846 #define NOTICKET_name (gnutls_cli_opt_strs+3448)
847 /** Compiled in flag settings for the noticket option */
848 #define NOTICKET_FLAGS (OPTST_DISABLED)
851 * srtp_profiles option description:
853 /** Descriptive text for the srtp_profiles option */
854 #define SRTP_PROFILES_DESC (gnutls_cli_opt_strs+3457)
855 /** Upper-cased name for the srtp_profiles option */
856 #define SRTP_PROFILES_NAME (gnutls_cli_opt_strs+3477)
857 /** Name string for the srtp_profiles option */
858 #define SRTP_PROFILES_name (gnutls_cli_opt_strs+3491)
859 /** Compiled in flag settings for the srtp_profiles option */
860 #define SRTP_PROFILES_FLAGS (OPTST_DISABLED \
861 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
864 * alpn option description:
866 /** Descriptive text for the alpn option */
867 #define ALPN_DESC (gnutls_cli_opt_strs+3505)
868 /** Upper-cased name for the alpn option */
869 #define ALPN_NAME (gnutls_cli_opt_strs+3532)
870 /** Name string for the alpn option */
871 #define ALPN_name (gnutls_cli_opt_strs+3537)
872 /** Compiled in flag settings for the alpn option */
873 #define ALPN_FLAGS (OPTST_DISABLED | OPTST_STACKED \
874 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
877 * heartbeat option description:
879 /** Descriptive text for the heartbeat option */
880 #define HEARTBEAT_DESC (gnutls_cli_opt_strs+3542)
881 /** Upper-cased name for the heartbeat option */
882 #define HEARTBEAT_NAME (gnutls_cli_opt_strs+3569)
883 /** Name string for the heartbeat option */
884 #define HEARTBEAT_name (gnutls_cli_opt_strs+3579)
885 /** Compiled in flag settings for the heartbeat option */
886 #define HEARTBEAT_FLAGS (OPTST_DISABLED)
889 * recordsize option description:
891 /** Descriptive text for the recordsize option */
892 #define RECORDSIZE_DESC (gnutls_cli_opt_strs+3589)
893 /** Upper-cased name for the recordsize option */
894 #define RECORDSIZE_NAME (gnutls_cli_opt_strs+3626)
895 /** Name string for the recordsize option */
896 #define RECORDSIZE_name (gnutls_cli_opt_strs+3637)
897 /** Compiled in flag settings for the recordsize option */
898 #define RECORDSIZE_FLAGS (OPTST_DISABLED \
899 | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC))
902 * disable-sni option description:
904 /** Descriptive text for the disable-sni option */
905 #define DISABLE_SNI_DESC (gnutls_cli_opt_strs+3648)
906 /** Upper-cased name for the disable-sni option */
907 #define DISABLE_SNI_NAME (gnutls_cli_opt_strs+3691)
908 /** Name string for the disable-sni option */
909 #define DISABLE_SNI_name (gnutls_cli_opt_strs+3703)
910 /** Compiled in flag settings for the disable-sni option */
911 #define DISABLE_SNI_FLAGS (OPTST_DISABLED)
914 * disable-extensions option description:
916 /** Descriptive text for the disable-extensions option */
917 #define DISABLE_EXTENSIONS_DESC (gnutls_cli_opt_strs+3715)
918 /** Upper-cased name for the disable-extensions option */
919 #define DISABLE_EXTENSIONS_NAME (gnutls_cli_opt_strs+3746)
920 /** Name string for the disable-extensions option */
921 #define DISABLE_EXTENSIONS_name (gnutls_cli_opt_strs+3765)
922 /** Compiled in flag settings for the disable-extensions option */
923 #define DISABLE_EXTENSIONS_FLAGS (OPTST_DISABLED)
926 * inline-commands option description:
928 /** Descriptive text for the inline-commands option */
929 #define INLINE_COMMANDS_DESC (gnutls_cli_opt_strs+3784)
930 /** Upper-cased name for the inline-commands option */
931 #define INLINE_COMMANDS_NAME (gnutls_cli_opt_strs+3820)
932 /** Name string for the inline-commands option */
933 #define INLINE_COMMANDS_name (gnutls_cli_opt_strs+3836)
934 /** Compiled in flag settings for the inline-commands option */
935 #define INLINE_COMMANDS_FLAGS (OPTST_DISABLED)
938 * inline-commands-prefix option description:
940 /** Descriptive text for the inline-commands-prefix option */
941 #define INLINE_COMMANDS_PREFIX_DESC (gnutls_cli_opt_strs+3852)
942 /** Upper-cased name for the inline-commands-prefix option */
943 #define INLINE_COMMANDS_PREFIX_NAME (gnutls_cli_opt_strs+3902)
944 /** Name string for the inline-commands-prefix option */
945 #define INLINE_COMMANDS_PREFIX_name (gnutls_cli_opt_strs+3925)
946 /** Compiled in flag settings for the inline-commands-prefix option */
947 #define INLINE_COMMANDS_PREFIX_FLAGS (OPTST_DISABLED \
948 | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING))
951 * provider option description:
953 /** Descriptive text for the provider option */
954 #define PROVIDER_DESC (gnutls_cli_opt_strs+3948)
955 /** Upper-cased name for the provider option */
956 #define PROVIDER_NAME (gnutls_cli_opt_strs+3986)
957 /** Name string for the provider option */
958 #define PROVIDER_name (gnutls_cli_opt_strs+3995)
959 /** Compiled in flag settings for the provider option */
960 #define PROVIDER_FLAGS (OPTST_DISABLED \
961 | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE))
964 * fips140-mode option description:
966 /** Descriptive text for the fips140-mode option */
967 #define FIPS140_MODE_DESC (gnutls_cli_opt_strs+4004)
968 /** Upper-cased name for the fips140-mode option */
969 #define FIPS140_MODE_NAME (gnutls_cli_opt_strs+4063)
970 /** Name string for the fips140-mode option */
971 #define FIPS140_MODE_name (gnutls_cli_opt_strs+4076)
972 /** Compiled in flag settings for the fips140-mode option */
973 #define FIPS140_MODE_FLAGS (OPTST_DISABLED)
976 * Help/More_Help/Version option descriptions:
978 #define HELP_DESC (gnutls_cli_opt_strs+4089)
979 #define HELP_name (gnutls_cli_opt_strs+4133)
980 #ifdef HAVE_WORKING_FORK
981 #define MORE_HELP_DESC (gnutls_cli_opt_strs+4138)
982 #define MORE_HELP_name (gnutls_cli_opt_strs+4183)
983 #define MORE_HELP_FLAGS (OPTST_IMM | OPTST_NO_INIT)
985 #define MORE_HELP_DESC HELP_DESC
986 #define MORE_HELP_name HELP_name
987 #define MORE_HELP_FLAGS (OPTST_OMITTED | OPTST_NO_INIT)
989 #ifdef NO_OPTIONAL_OPT_ARGS
990 # define VER_FLAGS (OPTST_IMM | OPTST_NO_INIT)
992 # define VER_FLAGS (OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) | \
993 OPTST_ARG_OPTIONAL | OPTST_IMM | OPTST_NO_INIT)
995 #define VER_DESC (gnutls_cli_opt_strs+4193)
996 #define VER_name (gnutls_cli_opt_strs+4229)
998 * Declare option callback procedures
1001 optionBooleanVal, optionNestedVal, optionNumericVal,
1002 optionPagedUsage, optionPrintVersion, optionResetOpt,
1003 optionStackArg, optionTimeDate, optionTimeVal,
1004 optionUnstackArg, optionVendorOption;
1006 doOptApp_Proto, doOptDebug, doOptMtu, doOptPgpcertfile,
1007 doOptPgpkeyfile, doOptPgpkeyring, doOptProvider, doOptRecordsize,
1008 doOptX509crlfile, doUsageOpt;
1009 #define VER_PROC optionPrintVersion
1011 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1013 * Define the gnutls-cli Option Descriptions.
1014 * This is an array of OPTION_CT entries, one for each
1015 * option that the gnutls-cli program responds to.
1017 static tOptDesc optDesc[OPTION_CT] = {
1018 { /* entry idx, value */ 0, VALUE_OPT_DEBUG,
1019 /* equiv idx, value */ 0, VALUE_OPT_DEBUG,
1020 /* equivalenced to */ NO_EQUIVALENT,
1021 /* min, max, act ct */ 0, 1, 0,
1022 /* opt state flags */ DEBUG_FLAGS, 0,
1023 /* last opt argumnt */ { NULL }, /* --debug */
1024 /* arg list/cookie */ NULL,
1025 /* must/cannot opts */ NULL, NULL,
1026 /* option proc */ doOptDebug,
1027 /* desc, NAME, name */ DEBUG_DESC, DEBUG_NAME, DEBUG_name,
1028 /* disablement strs */ NULL, NULL },
1030 { /* entry idx, value */ 1, VALUE_OPT_VERBOSE,
1031 /* equiv idx, value */ 1, VALUE_OPT_VERBOSE,
1032 /* equivalenced to */ NO_EQUIVALENT,
1033 /* min, max, act ct */ 0, NOLIMIT, 0,
1034 /* opt state flags */ VERBOSE_FLAGS, 0,
1035 /* last opt argumnt */ { NULL }, /* --verbose */
1036 /* arg list/cookie */ NULL,
1037 /* must/cannot opts */ NULL, NULL,
1038 /* option proc */ NULL,
1039 /* desc, NAME, name */ VERBOSE_DESC, VERBOSE_NAME, VERBOSE_name,
1040 /* disablement strs */ NULL, NULL },
1042 { /* entry idx, value */ 2, VALUE_OPT_TOFU,
1043 /* equiv idx, value */ 2, VALUE_OPT_TOFU,
1044 /* equivalenced to */ NO_EQUIVALENT,
1045 /* min, max, act ct */ 0, 1, 0,
1046 /* opt state flags */ TOFU_FLAGS, 0,
1047 /* last opt argumnt */ { NULL }, /* --tofu */
1048 /* arg list/cookie */ NULL,
1049 /* must/cannot opts */ NULL, NULL,
1050 /* option proc */ NULL,
1051 /* desc, NAME, name */ TOFU_DESC, TOFU_NAME, TOFU_name,
1052 /* disablement strs */ NOT_TOFU_name, NOT_TOFU_PFX },
1054 { /* entry idx, value */ 3, VALUE_OPT_STRICT_TOFU,
1055 /* equiv idx, value */ 3, VALUE_OPT_STRICT_TOFU,
1056 /* equivalenced to */ NO_EQUIVALENT,
1057 /* min, max, act ct */ 0, 1, 0,
1058 /* opt state flags */ STRICT_TOFU_FLAGS, 0,
1059 /* last opt argumnt */ { NULL }, /* --strict-tofu */
1060 /* arg list/cookie */ NULL,
1061 /* must/cannot opts */ NULL, NULL,
1062 /* option proc */ NULL,
1063 /* desc, NAME, name */ STRICT_TOFU_DESC, STRICT_TOFU_NAME, STRICT_TOFU_name,
1064 /* disablement strs */ NOT_STRICT_TOFU_name, NOT_STRICT_TOFU_PFX },
1066 { /* entry idx, value */ 4, VALUE_OPT_DANE,
1067 /* equiv idx, value */ 4, VALUE_OPT_DANE,
1068 /* equivalenced to */ NO_EQUIVALENT,
1069 /* min, max, act ct */ 0, 1, 0,
1070 /* opt state flags */ DANE_FLAGS, 0,
1071 /* last opt argumnt */ { NULL }, /* --dane */
1072 /* arg list/cookie */ NULL,
1073 /* must/cannot opts */ NULL, NULL,
1074 /* option proc */ NULL,
1075 /* desc, NAME, name */ DANE_DESC, DANE_NAME, DANE_name,
1076 /* disablement strs */ NOT_DANE_name, NOT_DANE_PFX },
1078 { /* entry idx, value */ 5, VALUE_OPT_LOCAL_DNS,
1079 /* equiv idx, value */ 5, VALUE_OPT_LOCAL_DNS,
1080 /* equivalenced to */ NO_EQUIVALENT,
1081 /* min, max, act ct */ 0, 1, 0,
1082 /* opt state flags */ LOCAL_DNS_FLAGS, 0,
1083 /* last opt argumnt */ { NULL }, /* --local-dns */
1084 /* arg list/cookie */ NULL,
1085 /* must/cannot opts */ NULL, NULL,
1086 /* option proc */ NULL,
1087 /* desc, NAME, name */ LOCAL_DNS_DESC, LOCAL_DNS_NAME, LOCAL_DNS_name,
1088 /* disablement strs */ NOT_LOCAL_DNS_name, NOT_LOCAL_DNS_PFX },
1090 { /* entry idx, value */ 6, VALUE_OPT_CA_VERIFICATION,
1091 /* equiv idx, value */ 6, VALUE_OPT_CA_VERIFICATION,
1092 /* equivalenced to */ NO_EQUIVALENT,
1093 /* min, max, act ct */ 0, 1, 0,
1094 /* opt state flags */ CA_VERIFICATION_FLAGS, 0,
1095 /* last opt argumnt */ { NULL }, /* --ca-verification */
1096 /* arg list/cookie */ NULL,
1097 /* must/cannot opts */ NULL, NULL,
1098 /* option proc */ NULL,
1099 /* desc, NAME, name */ CA_VERIFICATION_DESC, CA_VERIFICATION_NAME, CA_VERIFICATION_name,
1100 /* disablement strs */ NOT_CA_VERIFICATION_name, NOT_CA_VERIFICATION_PFX },
1102 { /* entry idx, value */ 7, VALUE_OPT_OCSP,
1103 /* equiv idx, value */ 7, VALUE_OPT_OCSP,
1104 /* equivalenced to */ NO_EQUIVALENT,
1105 /* min, max, act ct */ 0, 1, 0,
1106 /* opt state flags */ OCSP_FLAGS, 0,
1107 /* last opt argumnt */ { NULL }, /* --ocsp */
1108 /* arg list/cookie */ NULL,
1109 /* must/cannot opts */ NULL, NULL,
1110 /* option proc */ NULL,
1111 /* desc, NAME, name */ OCSP_DESC, OCSP_NAME, OCSP_name,
1112 /* disablement strs */ NOT_OCSP_name, NOT_OCSP_PFX },
1114 { /* entry idx, value */ 8, VALUE_OPT_RESUME,
1115 /* equiv idx, value */ 8, VALUE_OPT_RESUME,
1116 /* equivalenced to */ NO_EQUIVALENT,
1117 /* min, max, act ct */ 0, 1, 0,
1118 /* opt state flags */ RESUME_FLAGS, 0,
1119 /* last opt argumnt */ { NULL }, /* --resume */
1120 /* arg list/cookie */ NULL,
1121 /* must/cannot opts */ NULL, NULL,
1122 /* option proc */ NULL,
1123 /* desc, NAME, name */ RESUME_DESC, RESUME_NAME, RESUME_name,
1124 /* disablement strs */ NULL, NULL },
1126 { /* entry idx, value */ 9, VALUE_OPT_REHANDSHAKE,
1127 /* equiv idx, value */ 9, VALUE_OPT_REHANDSHAKE,
1128 /* equivalenced to */ NO_EQUIVALENT,
1129 /* min, max, act ct */ 0, 1, 0,
1130 /* opt state flags */ REHANDSHAKE_FLAGS, 0,
1131 /* last opt argumnt */ { NULL }, /* --rehandshake */
1132 /* arg list/cookie */ NULL,
1133 /* must/cannot opts */ NULL, NULL,
1134 /* option proc */ NULL,
1135 /* desc, NAME, name */ REHANDSHAKE_DESC, REHANDSHAKE_NAME, REHANDSHAKE_name,
1136 /* disablement strs */ NULL, NULL },
1138 { /* entry idx, value */ 10, VALUE_OPT_STARTTLS,
1139 /* equiv idx, value */ 10, VALUE_OPT_STARTTLS,
1140 /* equivalenced to */ NO_EQUIVALENT,
1141 /* min, max, act ct */ 0, 1, 0,
1142 /* opt state flags */ STARTTLS_FLAGS, 0,
1143 /* last opt argumnt */ { NULL }, /* --starttls */
1144 /* arg list/cookie */ NULL,
1145 /* must/cannot opts */ NULL, NULL,
1146 /* option proc */ NULL,
1147 /* desc, NAME, name */ STARTTLS_DESC, STARTTLS_NAME, STARTTLS_name,
1148 /* disablement strs */ NULL, NULL },
1150 { /* entry idx, value */ 11, VALUE_OPT_APP_PROTO,
1151 /* equiv idx, value */ 11, VALUE_OPT_APP_PROTO,
1152 /* equivalenced to */ NO_EQUIVALENT,
1153 /* min, max, act ct */ 0, 1, 0,
1154 /* opt state flags */ APP_PROTO_FLAGS, 0,
1155 /* last opt argumnt */ { NULL }, /* --app-proto */
1156 /* arg list/cookie */ NULL,
1157 /* must/cannot opts */ NULL, NULL,
1158 /* option proc */ doOptApp_Proto,
1159 /* desc, NAME, name */ APP_PROTO_DESC, APP_PROTO_NAME, APP_PROTO_name,
1160 /* disablement strs */ 0, 0 },
1162 { /* entry idx, value */ 12, VALUE_OPT_STARTTLS_PROTO,
1163 /* equiv idx, value */ 12, VALUE_OPT_STARTTLS_PROTO,
1164 /* equivalenced to */ NO_EQUIVALENT,
1165 /* min, max, act ct */ 0, 1, 0,
1166 /* opt state flags */ STARTTLS_PROTO_FLAGS, 0,
1167 /* last opt argumnt */ { NULL }, /* --starttls-proto */
1168 /* arg list/cookie */ NULL,
1169 /* must/cannot opts */ NULL, aStarttls_ProtoCantList,
1170 /* option proc */ NULL,
1171 /* desc, NAME, name */ STARTTLS_PROTO_DESC, STARTTLS_PROTO_NAME, STARTTLS_PROTO_name,
1172 /* disablement strs */ NULL, NULL },
1174 { /* entry idx, value */ 13, VALUE_OPT_UDP,
1175 /* equiv idx, value */ 13, VALUE_OPT_UDP,
1176 /* equivalenced to */ NO_EQUIVALENT,
1177 /* min, max, act ct */ 0, 1, 0,
1178 /* opt state flags */ UDP_FLAGS, 0,
1179 /* last opt argumnt */ { NULL }, /* --udp */
1180 /* arg list/cookie */ NULL,
1181 /* must/cannot opts */ NULL, NULL,
1182 /* option proc */ NULL,
1183 /* desc, NAME, name */ UDP_DESC, UDP_NAME, UDP_name,
1184 /* disablement strs */ NULL, NULL },
1186 { /* entry idx, value */ 14, VALUE_OPT_MTU,
1187 /* equiv idx, value */ 14, VALUE_OPT_MTU,
1188 /* equivalenced to */ NO_EQUIVALENT,
1189 /* min, max, act ct */ 0, 1, 0,
1190 /* opt state flags */ MTU_FLAGS, 0,
1191 /* last opt argumnt */ { NULL }, /* --mtu */
1192 /* arg list/cookie */ NULL,
1193 /* must/cannot opts */ NULL, NULL,
1194 /* option proc */ doOptMtu,
1195 /* desc, NAME, name */ MTU_DESC, MTU_NAME, MTU_name,
1196 /* disablement strs */ NULL, NULL },
1198 { /* entry idx, value */ 15, VALUE_OPT_CRLF,
1199 /* equiv idx, value */ 15, VALUE_OPT_CRLF,
1200 /* equivalenced to */ NO_EQUIVALENT,
1201 /* min, max, act ct */ 0, 1, 0,
1202 /* opt state flags */ CRLF_FLAGS, 0,
1203 /* last opt argumnt */ { NULL }, /* --crlf */
1204 /* arg list/cookie */ NULL,
1205 /* must/cannot opts */ NULL, NULL,
1206 /* option proc */ NULL,
1207 /* desc, NAME, name */ CRLF_DESC, CRLF_NAME, CRLF_name,
1208 /* disablement strs */ NULL, NULL },
1210 { /* entry idx, value */ 16, VALUE_OPT_X509FMTDER,
1211 /* equiv idx, value */ 16, VALUE_OPT_X509FMTDER,
1212 /* equivalenced to */ NO_EQUIVALENT,
1213 /* min, max, act ct */ 0, 1, 0,
1214 /* opt state flags */ X509FMTDER_FLAGS, 0,
1215 /* last opt argumnt */ { NULL }, /* --x509fmtder */
1216 /* arg list/cookie */ NULL,
1217 /* must/cannot opts */ NULL, NULL,
1218 /* option proc */ NULL,
1219 /* desc, NAME, name */ X509FMTDER_DESC, X509FMTDER_NAME, X509FMTDER_name,
1220 /* disablement strs */ NULL, NULL },
1222 { /* entry idx, value */ 17, VALUE_OPT_FINGERPRINT,
1223 /* equiv idx, value */ 17, VALUE_OPT_FINGERPRINT,
1224 /* equivalenced to */ NO_EQUIVALENT,
1225 /* min, max, act ct */ 0, 1, 0,
1226 /* opt state flags */ FINGERPRINT_FLAGS, 0,
1227 /* last opt argumnt */ { NULL }, /* --fingerprint */
1228 /* arg list/cookie */ NULL,
1229 /* must/cannot opts */ NULL, NULL,
1230 /* option proc */ NULL,
1231 /* desc, NAME, name */ FINGERPRINT_DESC, FINGERPRINT_NAME, FINGERPRINT_name,
1232 /* disablement strs */ NULL, NULL },
1234 { /* entry idx, value */ 18, VALUE_OPT_PRINT_CERT,
1235 /* equiv idx, value */ 18, VALUE_OPT_PRINT_CERT,
1236 /* equivalenced to */ NO_EQUIVALENT,
1237 /* min, max, act ct */ 0, 1, 0,
1238 /* opt state flags */ PRINT_CERT_FLAGS, 0,
1239 /* last opt argumnt */ { NULL }, /* --print-cert */
1240 /* arg list/cookie */ NULL,
1241 /* must/cannot opts */ NULL, NULL,
1242 /* option proc */ NULL,
1243 /* desc, NAME, name */ PRINT_CERT_DESC, PRINT_CERT_NAME, PRINT_CERT_name,
1244 /* disablement strs */ NULL, NULL },
1246 { /* entry idx, value */ 19, VALUE_OPT_SAVE_CERT,
1247 /* equiv idx, value */ 19, VALUE_OPT_SAVE_CERT,
1248 /* equivalenced to */ NO_EQUIVALENT,
1249 /* min, max, act ct */ 0, 1, 0,
1250 /* opt state flags */ SAVE_CERT_FLAGS, 0,
1251 /* last opt argumnt */ { NULL }, /* --save-cert */
1252 /* arg list/cookie */ NULL,
1253 /* must/cannot opts */ NULL, NULL,
1254 /* option proc */ NULL,
1255 /* desc, NAME, name */ SAVE_CERT_DESC, SAVE_CERT_NAME, SAVE_CERT_name,
1256 /* disablement strs */ NULL, NULL },
1258 { /* entry idx, value */ 20, VALUE_OPT_SAVE_OCSP,
1259 /* equiv idx, value */ 20, VALUE_OPT_SAVE_OCSP,
1260 /* equivalenced to */ NO_EQUIVALENT,
1261 /* min, max, act ct */ 0, 1, 0,
1262 /* opt state flags */ SAVE_OCSP_FLAGS, 0,
1263 /* last opt argumnt */ { NULL }, /* --save-ocsp */
1264 /* arg list/cookie */ NULL,
1265 /* must/cannot opts */ NULL, NULL,
1266 /* option proc */ NULL,
1267 /* desc, NAME, name */ SAVE_OCSP_DESC, SAVE_OCSP_NAME, SAVE_OCSP_name,
1268 /* disablement strs */ NULL, NULL },
1270 { /* entry idx, value */ 21, VALUE_OPT_DH_BITS,
1271 /* equiv idx, value */ 21, VALUE_OPT_DH_BITS,
1272 /* equivalenced to */ NO_EQUIVALENT,
1273 /* min, max, act ct */ 0, 1, 0,
1274 /* opt state flags */ DH_BITS_FLAGS, 0,
1275 /* last opt argumnt */ { NULL }, /* --dh-bits */
1276 /* arg list/cookie */ NULL,
1277 /* must/cannot opts */ NULL, NULL,
1278 /* option proc */ optionNumericVal,
1279 /* desc, NAME, name */ DH_BITS_DESC, DH_BITS_NAME, DH_BITS_name,
1280 /* disablement strs */ NULL, NULL },
1282 { /* entry idx, value */ 22, VALUE_OPT_PRIORITY,
1283 /* equiv idx, value */ 22, VALUE_OPT_PRIORITY,
1284 /* equivalenced to */ NO_EQUIVALENT,
1285 /* min, max, act ct */ 0, 1, 0,
1286 /* opt state flags */ PRIORITY_FLAGS, 0,
1287 /* last opt argumnt */ { NULL }, /* --priority */
1288 /* arg list/cookie */ NULL,
1289 /* must/cannot opts */ NULL, NULL,
1290 /* option proc */ NULL,
1291 /* desc, NAME, name */ PRIORITY_DESC, PRIORITY_NAME, PRIORITY_name,
1292 /* disablement strs */ NULL, NULL },
1294 { /* entry idx, value */ 23, VALUE_OPT_X509CAFILE,
1295 /* equiv idx, value */ 23, VALUE_OPT_X509CAFILE,
1296 /* equivalenced to */ NO_EQUIVALENT,
1297 /* min, max, act ct */ 0, 1, 0,
1298 /* opt state flags */ X509CAFILE_FLAGS, 0,
1299 /* last opt argumnt */ { NULL }, /* --x509cafile */
1300 /* arg list/cookie */ NULL,
1301 /* must/cannot opts */ NULL, NULL,
1302 /* option proc */ NULL,
1303 /* desc, NAME, name */ X509CAFILE_DESC, X509CAFILE_NAME, X509CAFILE_name,
1304 /* disablement strs */ NULL, NULL },
1306 { /* entry idx, value */ 24, VALUE_OPT_X509CRLFILE,
1307 /* equiv idx, value */ 24, VALUE_OPT_X509CRLFILE,
1308 /* equivalenced to */ NO_EQUIVALENT,
1309 /* min, max, act ct */ 0, 1, 0,
1310 /* opt state flags */ X509CRLFILE_FLAGS, 0,
1311 /* last opt argumnt */ { NULL }, /* --x509crlfile */
1312 /* arg list/cookie */ NULL,
1313 /* must/cannot opts */ NULL, NULL,
1314 /* option proc */ doOptX509crlfile,
1315 /* desc, NAME, name */ X509CRLFILE_DESC, X509CRLFILE_NAME, X509CRLFILE_name,
1316 /* disablement strs */ NULL, NULL },
1318 { /* entry idx, value */ 25, VALUE_OPT_PGPKEYFILE,
1319 /* equiv idx, value */ 25, VALUE_OPT_PGPKEYFILE,
1320 /* equivalenced to */ NO_EQUIVALENT,
1321 /* min, max, act ct */ 0, 1, 0,
1322 /* opt state flags */ PGPKEYFILE_FLAGS, 0,
1323 /* last opt argumnt */ { NULL }, /* --pgpkeyfile */
1324 /* arg list/cookie */ NULL,
1325 /* must/cannot opts */ NULL, NULL,
1326 /* option proc */ doOptPgpkeyfile,
1327 /* desc, NAME, name */ PGPKEYFILE_DESC, PGPKEYFILE_NAME, PGPKEYFILE_name,
1328 /* disablement strs */ NULL, NULL },
1330 { /* entry idx, value */ 26, VALUE_OPT_PGPKEYRING,
1331 /* equiv idx, value */ 26, VALUE_OPT_PGPKEYRING,
1332 /* equivalenced to */ NO_EQUIVALENT,
1333 /* min, max, act ct */ 0, 1, 0,
1334 /* opt state flags */ PGPKEYRING_FLAGS, 0,
1335 /* last opt argumnt */ { NULL }, /* --pgpkeyring */
1336 /* arg list/cookie */ NULL,
1337 /* must/cannot opts */ NULL, NULL,
1338 /* option proc */ doOptPgpkeyring,
1339 /* desc, NAME, name */ PGPKEYRING_DESC, PGPKEYRING_NAME, PGPKEYRING_name,
1340 /* disablement strs */ NULL, NULL },
1342 { /* entry idx, value */ 27, VALUE_OPT_PGPCERTFILE,
1343 /* equiv idx, value */ 27, VALUE_OPT_PGPCERTFILE,
1344 /* equivalenced to */ NO_EQUIVALENT,
1345 /* min, max, act ct */ 0, 1, 0,
1346 /* opt state flags */ PGPCERTFILE_FLAGS, 0,
1347 /* last opt argumnt */ { NULL }, /* --pgpcertfile */
1348 /* arg list/cookie */ NULL,
1349 /* must/cannot opts */ aPgpcertfileMustList, NULL,
1350 /* option proc */ doOptPgpcertfile,
1351 /* desc, NAME, name */ PGPCERTFILE_DESC, PGPCERTFILE_NAME, PGPCERTFILE_name,
1352 /* disablement strs */ NULL, NULL },
1354 { /* entry idx, value */ 28, VALUE_OPT_X509KEYFILE,
1355 /* equiv idx, value */ 28, VALUE_OPT_X509KEYFILE,
1356 /* equivalenced to */ NO_EQUIVALENT,
1357 /* min, max, act ct */ 0, 1, 0,
1358 /* opt state flags */ X509KEYFILE_FLAGS, 0,
1359 /* last opt argumnt */ { NULL }, /* --x509keyfile */
1360 /* arg list/cookie */ NULL,
1361 /* must/cannot opts */ NULL, NULL,
1362 /* option proc */ NULL,
1363 /* desc, NAME, name */ X509KEYFILE_DESC, X509KEYFILE_NAME, X509KEYFILE_name,
1364 /* disablement strs */ NULL, NULL },
1366 { /* entry idx, value */ 29, VALUE_OPT_X509CERTFILE,
1367 /* equiv idx, value */ 29, VALUE_OPT_X509CERTFILE,
1368 /* equivalenced to */ NO_EQUIVALENT,
1369 /* min, max, act ct */ 0, 1, 0,
1370 /* opt state flags */ X509CERTFILE_FLAGS, 0,
1371 /* last opt argumnt */ { NULL }, /* --x509certfile */
1372 /* arg list/cookie */ NULL,
1373 /* must/cannot opts */ aX509certfileMustList, NULL,
1374 /* option proc */ NULL,
1375 /* desc, NAME, name */ X509CERTFILE_DESC, X509CERTFILE_NAME, X509CERTFILE_name,
1376 /* disablement strs */ NULL, NULL },
1378 { /* entry idx, value */ 30, VALUE_OPT_PGPSUBKEY,
1379 /* equiv idx, value */ 30, VALUE_OPT_PGPSUBKEY,
1380 /* equivalenced to */ NO_EQUIVALENT,
1381 /* min, max, act ct */ 0, 1, 0,
1382 /* opt state flags */ PGPSUBKEY_FLAGS, 0,
1383 /* last opt argumnt */ { NULL }, /* --pgpsubkey */
1384 /* arg list/cookie */ NULL,
1385 /* must/cannot opts */ NULL, NULL,
1386 /* option proc */ NULL,
1387 /* desc, NAME, name */ PGPSUBKEY_DESC, PGPSUBKEY_NAME, PGPSUBKEY_name,
1388 /* disablement strs */ NULL, NULL },
1390 { /* entry idx, value */ 31, VALUE_OPT_SRPUSERNAME,
1391 /* equiv idx, value */ 31, VALUE_OPT_SRPUSERNAME,
1392 /* equivalenced to */ NO_EQUIVALENT,
1393 /* min, max, act ct */ 0, 1, 0,
1394 /* opt state flags */ SRPUSERNAME_FLAGS, 0,
1395 /* last opt argumnt */ { NULL }, /* --srpusername */
1396 /* arg list/cookie */ NULL,
1397 /* must/cannot opts */ NULL, NULL,
1398 /* option proc */ NULL,
1399 /* desc, NAME, name */ SRPUSERNAME_DESC, SRPUSERNAME_NAME, SRPUSERNAME_name,
1400 /* disablement strs */ NULL, NULL },
1402 { /* entry idx, value */ 32, VALUE_OPT_SRPPASSWD,
1403 /* equiv idx, value */ 32, VALUE_OPT_SRPPASSWD,
1404 /* equivalenced to */ NO_EQUIVALENT,
1405 /* min, max, act ct */ 0, 1, 0,
1406 /* opt state flags */ SRPPASSWD_FLAGS, 0,
1407 /* last opt argumnt */ { NULL }, /* --srppasswd */
1408 /* arg list/cookie */ NULL,
1409 /* must/cannot opts */ NULL, NULL,
1410 /* option proc */ NULL,
1411 /* desc, NAME, name */ SRPPASSWD_DESC, SRPPASSWD_NAME, SRPPASSWD_name,
1412 /* disablement strs */ NULL, NULL },
1414 { /* entry idx, value */ 33, VALUE_OPT_PSKUSERNAME,
1415 /* equiv idx, value */ 33, VALUE_OPT_PSKUSERNAME,
1416 /* equivalenced to */ NO_EQUIVALENT,
1417 /* min, max, act ct */ 0, 1, 0,
1418 /* opt state flags */ PSKUSERNAME_FLAGS, 0,
1419 /* last opt argumnt */ { NULL }, /* --pskusername */
1420 /* arg list/cookie */ NULL,
1421 /* must/cannot opts */ NULL, NULL,
1422 /* option proc */ NULL,
1423 /* desc, NAME, name */ PSKUSERNAME_DESC, PSKUSERNAME_NAME, PSKUSERNAME_name,
1424 /* disablement strs */ NULL, NULL },
1426 { /* entry idx, value */ 34, VALUE_OPT_PSKKEY,
1427 /* equiv idx, value */ 34, VALUE_OPT_PSKKEY,
1428 /* equivalenced to */ NO_EQUIVALENT,
1429 /* min, max, act ct */ 0, 1, 0,
1430 /* opt state flags */ PSKKEY_FLAGS, 0,
1431 /* last opt argumnt */ { NULL }, /* --pskkey */
1432 /* arg list/cookie */ NULL,
1433 /* must/cannot opts */ NULL, NULL,
1434 /* option proc */ NULL,
1435 /* desc, NAME, name */ PSKKEY_DESC, PSKKEY_NAME, PSKKEY_name,
1436 /* disablement strs */ NULL, NULL },
1438 { /* entry idx, value */ 35, VALUE_OPT_PORT,
1439 /* equiv idx, value */ 35, VALUE_OPT_PORT,
1440 /* equivalenced to */ NO_EQUIVALENT,
1441 /* min, max, act ct */ 0, 1, 0,
1442 /* opt state flags */ PORT_FLAGS, 0,
1443 /* last opt argumnt */ { NULL }, /* --port */
1444 /* arg list/cookie */ NULL,
1445 /* must/cannot opts */ NULL, NULL,
1446 /* option proc */ NULL,
1447 /* desc, NAME, name */ PORT_DESC, PORT_NAME, PORT_name,
1448 /* disablement strs */ NULL, NULL },
1450 { /* entry idx, value */ 36, VALUE_OPT_INSECURE,
1451 /* equiv idx, value */ 36, VALUE_OPT_INSECURE,
1452 /* equivalenced to */ NO_EQUIVALENT,
1453 /* min, max, act ct */ 0, 1, 0,
1454 /* opt state flags */ INSECURE_FLAGS, 0,
1455 /* last opt argumnt */ { NULL }, /* --insecure */
1456 /* arg list/cookie */ NULL,
1457 /* must/cannot opts */ NULL, NULL,
1458 /* option proc */ NULL,
1459 /* desc, NAME, name */ INSECURE_DESC, INSECURE_NAME, INSECURE_name,
1460 /* disablement strs */ NULL, NULL },
1462 { /* entry idx, value */ 37, VALUE_OPT_RANGES,
1463 /* equiv idx, value */ 37, VALUE_OPT_RANGES,
1464 /* equivalenced to */ NO_EQUIVALENT,
1465 /* min, max, act ct */ 0, 1, 0,
1466 /* opt state flags */ RANGES_FLAGS, 0,
1467 /* last opt argumnt */ { NULL }, /* --ranges */
1468 /* arg list/cookie */ NULL,
1469 /* must/cannot opts */ NULL, NULL,
1470 /* option proc */ NULL,
1471 /* desc, NAME, name */ RANGES_DESC, RANGES_NAME, RANGES_name,
1472 /* disablement strs */ NULL, NULL },
1474 { /* entry idx, value */ 38, VALUE_OPT_BENCHMARK_CIPHERS,
1475 /* equiv idx, value */ 38, VALUE_OPT_BENCHMARK_CIPHERS,
1476 /* equivalenced to */ NO_EQUIVALENT,
1477 /* min, max, act ct */ 0, 1, 0,
1478 /* opt state flags */ BENCHMARK_CIPHERS_FLAGS, 0,
1479 /* last opt argumnt */ { NULL }, /* --benchmark-ciphers */
1480 /* arg list/cookie */ NULL,
1481 /* must/cannot opts */ NULL, NULL,
1482 /* option proc */ NULL,
1483 /* desc, NAME, name */ BENCHMARK_CIPHERS_DESC, BENCHMARK_CIPHERS_NAME, BENCHMARK_CIPHERS_name,
1484 /* disablement strs */ NULL, NULL },
1486 { /* entry idx, value */ 39, VALUE_OPT_BENCHMARK_TLS_KX,
1487 /* equiv idx, value */ 39, VALUE_OPT_BENCHMARK_TLS_KX,
1488 /* equivalenced to */ NO_EQUIVALENT,
1489 /* min, max, act ct */ 0, 1, 0,
1490 /* opt state flags */ BENCHMARK_TLS_KX_FLAGS, 0,
1491 /* last opt argumnt */ { NULL }, /* --benchmark-tls-kx */
1492 /* arg list/cookie */ NULL,
1493 /* must/cannot opts */ NULL, NULL,
1494 /* option proc */ NULL,
1495 /* desc, NAME, name */ BENCHMARK_TLS_KX_DESC, BENCHMARK_TLS_KX_NAME, BENCHMARK_TLS_KX_name,
1496 /* disablement strs */ NULL, NULL },
1498 { /* entry idx, value */ 40, VALUE_OPT_BENCHMARK_TLS_CIPHERS,
1499 /* equiv idx, value */ 40, VALUE_OPT_BENCHMARK_TLS_CIPHERS,
1500 /* equivalenced to */ NO_EQUIVALENT,
1501 /* min, max, act ct */ 0, 1, 0,
1502 /* opt state flags */ BENCHMARK_TLS_CIPHERS_FLAGS, 0,
1503 /* last opt argumnt */ { NULL }, /* --benchmark-tls-ciphers */
1504 /* arg list/cookie */ NULL,
1505 /* must/cannot opts */ NULL, NULL,
1506 /* option proc */ NULL,
1507 /* desc, NAME, name */ BENCHMARK_TLS_CIPHERS_DESC, BENCHMARK_TLS_CIPHERS_NAME, BENCHMARK_TLS_CIPHERS_name,
1508 /* disablement strs */ NULL, NULL },
1510 { /* entry idx, value */ 41, VALUE_OPT_LIST,
1511 /* equiv idx, value */ 41, VALUE_OPT_LIST,
1512 /* equivalenced to */ NO_EQUIVALENT,
1513 /* min, max, act ct */ 0, 1, 0,
1514 /* opt state flags */ LIST_FLAGS, 0,
1515 /* last opt argumnt */ { NULL }, /* --list */
1516 /* arg list/cookie */ NULL,
1517 /* must/cannot opts */ NULL, aListCantList,
1518 /* option proc */ NULL,
1519 /* desc, NAME, name */ LIST_DESC, LIST_NAME, LIST_name,
1520 /* disablement strs */ NULL, NULL },
1522 { /* entry idx, value */ 42, VALUE_OPT_PRIORITY_LIST,
1523 /* equiv idx, value */ 42, VALUE_OPT_PRIORITY_LIST,
1524 /* equivalenced to */ NO_EQUIVALENT,
1525 /* min, max, act ct */ 0, 1, 0,
1526 /* opt state flags */ PRIORITY_LIST_FLAGS, 0,
1527 /* last opt argumnt */ { NULL }, /* --priority-list */
1528 /* arg list/cookie */ NULL,
1529 /* must/cannot opts */ NULL, NULL,
1530 /* option proc */ NULL,
1531 /* desc, NAME, name */ PRIORITY_LIST_DESC, PRIORITY_LIST_NAME, PRIORITY_LIST_name,
1532 /* disablement strs */ NULL, NULL },
1534 { /* entry idx, value */ 43, VALUE_OPT_NOTICKET,
1535 /* equiv idx, value */ 43, VALUE_OPT_NOTICKET,
1536 /* equivalenced to */ NO_EQUIVALENT,
1537 /* min, max, act ct */ 0, 1, 0,
1538 /* opt state flags */ NOTICKET_FLAGS, 0,
1539 /* last opt argumnt */ { NULL }, /* --noticket */
1540 /* arg list/cookie */ NULL,
1541 /* must/cannot opts */ NULL, NULL,
1542 /* option proc */ NULL,
1543 /* desc, NAME, name */ NOTICKET_DESC, NOTICKET_NAME, NOTICKET_name,
1544 /* disablement strs */ NULL, NULL },
1546 { /* entry idx, value */ 44, VALUE_OPT_SRTP_PROFILES,
1547 /* equiv idx, value */ 44, VALUE_OPT_SRTP_PROFILES,
1548 /* equivalenced to */ NO_EQUIVALENT,
1549 /* min, max, act ct */ 0, 1, 0,
1550 /* opt state flags */ SRTP_PROFILES_FLAGS, 0,
1551 /* last opt argumnt */ { NULL }, /* --srtp_profiles */
1552 /* arg list/cookie */ NULL,
1553 /* must/cannot opts */ NULL, NULL,
1554 /* option proc */ NULL,
1555 /* desc, NAME, name */ SRTP_PROFILES_DESC, SRTP_PROFILES_NAME, SRTP_PROFILES_name,
1556 /* disablement strs */ NULL, NULL },
1558 { /* entry idx, value */ 45, VALUE_OPT_ALPN,
1559 /* equiv idx, value */ 45, VALUE_OPT_ALPN,
1560 /* equivalenced to */ NO_EQUIVALENT,
1561 /* min, max, act ct */ 0, NOLIMIT, 0,
1562 /* opt state flags */ ALPN_FLAGS, 0,
1563 /* last opt argumnt */ { NULL }, /* --alpn */
1564 /* arg list/cookie */ NULL,
1565 /* must/cannot opts */ NULL, NULL,
1566 /* option proc */ optionStackArg,
1567 /* desc, NAME, name */ ALPN_DESC, ALPN_NAME, ALPN_name,
1568 /* disablement strs */ NULL, NULL },
1570 { /* entry idx, value */ 46, VALUE_OPT_HEARTBEAT,
1571 /* equiv idx, value */ 46, VALUE_OPT_HEARTBEAT,
1572 /* equivalenced to */ NO_EQUIVALENT,
1573 /* min, max, act ct */ 0, 1, 0,
1574 /* opt state flags */ HEARTBEAT_FLAGS, 0,
1575 /* last opt argumnt */ { NULL }, /* --heartbeat */
1576 /* arg list/cookie */ NULL,
1577 /* must/cannot opts */ NULL, NULL,
1578 /* option proc */ NULL,
1579 /* desc, NAME, name */ HEARTBEAT_DESC, HEARTBEAT_NAME, HEARTBEAT_name,
1580 /* disablement strs */ NULL, NULL },
1582 { /* entry idx, value */ 47, VALUE_OPT_RECORDSIZE,
1583 /* equiv idx, value */ 47, VALUE_OPT_RECORDSIZE,
1584 /* equivalenced to */ NO_EQUIVALENT,
1585 /* min, max, act ct */ 0, 1, 0,
1586 /* opt state flags */ RECORDSIZE_FLAGS, 0,
1587 /* last opt argumnt */ { NULL }, /* --recordsize */
1588 /* arg list/cookie */ NULL,
1589 /* must/cannot opts */ NULL, NULL,
1590 /* option proc */ doOptRecordsize,
1591 /* desc, NAME, name */ RECORDSIZE_DESC, RECORDSIZE_NAME, RECORDSIZE_name,
1592 /* disablement strs */ NULL, NULL },
1594 { /* entry idx, value */ 48, VALUE_OPT_DISABLE_SNI,
1595 /* equiv idx, value */ 48, VALUE_OPT_DISABLE_SNI,
1596 /* equivalenced to */ NO_EQUIVALENT,
1597 /* min, max, act ct */ 0, 1, 0,
1598 /* opt state flags */ DISABLE_SNI_FLAGS, 0,
1599 /* last opt argumnt */ { NULL }, /* --disable-sni */
1600 /* arg list/cookie */ NULL,
1601 /* must/cannot opts */ NULL, NULL,
1602 /* option proc */ NULL,
1603 /* desc, NAME, name */ DISABLE_SNI_DESC, DISABLE_SNI_NAME, DISABLE_SNI_name,
1604 /* disablement strs */ NULL, NULL },
1606 { /* entry idx, value */ 49, VALUE_OPT_DISABLE_EXTENSIONS,
1607 /* equiv idx, value */ 49, VALUE_OPT_DISABLE_EXTENSIONS,
1608 /* equivalenced to */ NO_EQUIVALENT,
1609 /* min, max, act ct */ 0, 1, 0,
1610 /* opt state flags */ DISABLE_EXTENSIONS_FLAGS, 0,
1611 /* last opt argumnt */ { NULL }, /* --disable-extensions */
1612 /* arg list/cookie */ NULL,
1613 /* must/cannot opts */ NULL, NULL,
1614 /* option proc */ NULL,
1615 /* desc, NAME, name */ DISABLE_EXTENSIONS_DESC, DISABLE_EXTENSIONS_NAME, DISABLE_EXTENSIONS_name,
1616 /* disablement strs */ NULL, NULL },
1618 { /* entry idx, value */ 50, VALUE_OPT_INLINE_COMMANDS,
1619 /* equiv idx, value */ 50, VALUE_OPT_INLINE_COMMANDS,
1620 /* equivalenced to */ NO_EQUIVALENT,
1621 /* min, max, act ct */ 0, 1, 0,
1622 /* opt state flags */ INLINE_COMMANDS_FLAGS, 0,
1623 /* last opt argumnt */ { NULL }, /* --inline-commands */
1624 /* arg list/cookie */ NULL,
1625 /* must/cannot opts */ NULL, NULL,
1626 /* option proc */ NULL,
1627 /* desc, NAME, name */ INLINE_COMMANDS_DESC, INLINE_COMMANDS_NAME, INLINE_COMMANDS_name,
1628 /* disablement strs */ NULL, NULL },
1630 { /* entry idx, value */ 51, VALUE_OPT_INLINE_COMMANDS_PREFIX,
1631 /* equiv idx, value */ 51, VALUE_OPT_INLINE_COMMANDS_PREFIX,
1632 /* equivalenced to */ NO_EQUIVALENT,
1633 /* min, max, act ct */ 0, 1, 0,
1634 /* opt state flags */ INLINE_COMMANDS_PREFIX_FLAGS, 0,
1635 /* last opt argumnt */ { NULL }, /* --inline-commands-prefix */
1636 /* arg list/cookie */ NULL,
1637 /* must/cannot opts */ NULL, NULL,
1638 /* option proc */ NULL,
1639 /* desc, NAME, name */ INLINE_COMMANDS_PREFIX_DESC, INLINE_COMMANDS_PREFIX_NAME, INLINE_COMMANDS_PREFIX_name,
1640 /* disablement strs */ NULL, NULL },
1642 { /* entry idx, value */ 52, VALUE_OPT_PROVIDER,
1643 /* equiv idx, value */ 52, VALUE_OPT_PROVIDER,
1644 /* equivalenced to */ NO_EQUIVALENT,
1645 /* min, max, act ct */ 0, 1, 0,
1646 /* opt state flags */ PROVIDER_FLAGS, 0,
1647 /* last opt argumnt */ { NULL }, /* --provider */
1648 /* arg list/cookie */ NULL,
1649 /* must/cannot opts */ NULL, NULL,
1650 /* option proc */ doOptProvider,
1651 /* desc, NAME, name */ PROVIDER_DESC, PROVIDER_NAME, PROVIDER_name,
1652 /* disablement strs */ NULL, NULL },
1654 { /* entry idx, value */ 53, VALUE_OPT_FIPS140_MODE,
1655 /* equiv idx, value */ 53, VALUE_OPT_FIPS140_MODE,
1656 /* equivalenced to */ NO_EQUIVALENT,
1657 /* min, max, act ct */ 0, 1, 0,
1658 /* opt state flags */ FIPS140_MODE_FLAGS, 0,
1659 /* last opt argumnt */ { NULL }, /* --fips140-mode */
1660 /* arg list/cookie */ NULL,
1661 /* must/cannot opts */ NULL, NULL,
1662 /* option proc */ NULL,
1663 /* desc, NAME, name */ FIPS140_MODE_DESC, FIPS140_MODE_NAME, FIPS140_MODE_name,
1664 /* disablement strs */ NULL, NULL },
1666 { /* entry idx, value */ INDEX_OPT_VERSION, VALUE_OPT_VERSION,
1667 /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_VERSION,
1668 /* equivalenced to */ NO_EQUIVALENT,
1669 /* min, max, act ct */ 0, 1, 0,
1670 /* opt state flags */ VER_FLAGS, AOUSE_VERSION,
1671 /* last opt argumnt */ { NULL },
1672 /* arg list/cookie */ NULL,
1673 /* must/cannot opts */ NULL, NULL,
1674 /* option proc */ VER_PROC,
1675 /* desc, NAME, name */ VER_DESC, NULL, VER_name,
1676 /* disablement strs */ NULL, NULL },
1680 { /* entry idx, value */ INDEX_OPT_HELP, VALUE_OPT_HELP,
1681 /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_HELP,
1682 /* equivalenced to */ NO_EQUIVALENT,
1683 /* min, max, act ct */ 0, 1, 0,
1684 /* opt state flags */ OPTST_IMM | OPTST_NO_INIT, AOUSE_HELP,
1685 /* last opt argumnt */ { NULL },
1686 /* arg list/cookie */ NULL,
1687 /* must/cannot opts */ NULL, NULL,
1688 /* option proc */ doUsageOpt,
1689 /* desc, NAME, name */ HELP_DESC, NULL, HELP_name,
1690 /* disablement strs */ NULL, NULL },
1692 { /* entry idx, value */ INDEX_OPT_MORE_HELP, VALUE_OPT_MORE_HELP,
1693 /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_MORE_HELP,
1694 /* equivalenced to */ NO_EQUIVALENT,
1695 /* min, max, act ct */ 0, 1, 0,
1696 /* opt state flags */ MORE_HELP_FLAGS, AOUSE_MORE_HELP,
1697 /* last opt argumnt */ { NULL },
1698 /* arg list/cookie */ NULL,
1699 /* must/cannot opts */ NULL, NULL,
1700 /* option proc */ optionPagedUsage,
1701 /* desc, NAME, name */ MORE_HELP_DESC, NULL, MORE_HELP_name,
1702 /* disablement strs */ NULL, NULL }
1706 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1707 /** Reference to the upper cased version of gnutls-cli. */
1708 #define zPROGNAME (gnutls_cli_opt_strs+4237)
1709 /** Reference to the title line for gnutls-cli usage. */
1710 #define zUsageTitle (gnutls_cli_opt_strs+4248)
1711 /** There is no gnutls-cli configuration file. */
1712 #define zRcName NULL
1713 /** There are no directories to search for gnutls-cli config files. */
1714 #define apzHomeList NULL
1715 /** The gnutls-cli program bug email address. */
1716 #define zBugsAddr (gnutls_cli_opt_strs+4344)
1717 /** Clarification/explanation of what gnutls-cli does. */
1718 #define zExplain (gnutls_cli_opt_strs+4360)
1719 /** Extra detail explaining what gnutls-cli does. */
1720 #define zDetail (gnutls_cli_opt_strs+4362)
1721 /** The full version string for gnutls-cli. */
1722 #define zFullVersion (gnutls_cli_opt_strs+4545)
1723 /* extracted from optcode.tlib near line 364 */
1725 #if defined(ENABLE_NLS)
1726 # define OPTPROC_BASE OPTPROC_TRANSLATE | OPTPROC_NXLAT_OPT
1727 static tOptionXlateProc translate_option_strings;
1729 # define OPTPROC_BASE OPTPROC_NONE
1730 # define translate_option_strings NULL
1731 #endif /* ENABLE_NLS */
1733 #define gnutls_cli_full_usage (NULL)
1734 #define gnutls_cli_short_usage (gnutls_cli_opt_strs+4563)
1736 #endif /* not defined __doxygen__ */
1739 * Create the static procedure(s) declared above.
1742 * The callout function that invokes the optionUsage function.
1744 * @param[in] opts the AutoOpts option description structure
1745 * @param[in] od the descriptor for the "help" (usage) option.
1749 doUsageOpt(tOptions * opts, tOptDesc * od)
1752 ex_code = GNUTLS_CLI_EXIT_SUCCESS;
1753 optionUsage(&gnutls_cliOptions, ex_code);
1755 exit(GNUTLS_CLI_EXIT_FAILURE);
1760 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1762 * Code to handle the debug option.
1763 * Specifies the debug level.
1764 * @param[in] pOptions the gnutls-cli options data structure
1765 * @param[in,out] pOptDesc the option descriptor for this option.
1768 doOptDebug(tOptions* pOptions, tOptDesc* pOptDesc)
1770 static struct {long rmin, rmax;} const rng[1] = {
1774 if (pOptions <= OPTPROC_EMIT_LIMIT)
1776 optionNumericVal(pOptions, pOptDesc);
1778 for (ix = 0; ix < 1; ix++) {
1779 if (pOptDesc->optArg.argInt < rng[ix].rmin)
1780 continue; /* ranges need not be ordered. */
1781 if (pOptDesc->optArg.argInt == rng[ix].rmin)
1783 if (rng[ix].rmax == LONG_MIN)
1785 if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1789 option_usage_fp = stderr;
1792 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1795 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1797 * Code to handle the app-proto option.
1799 * @param[in] pOptions the gnutls-cli options data structure
1800 * @param[in,out] pOptDesc the option descriptor for this option.
1803 doOptApp_Proto(tOptions* pOptions, tOptDesc* pOptDesc)
1805 int res = optionAlias(pOptions, pOptDesc, INDEX_OPT_STARTTLS_PROTO);
1806 if ((res != 0) && ((pOptions->fOptSet & OPTPROC_ERRSTOP) != 0))
1807 USAGE(GNUTLS_CLI_EXIT_USAGE_ERROR);
1811 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1813 * Code to handle the mtu option.
1815 * @param[in] pOptions the gnutls-cli options data structure
1816 * @param[in,out] pOptDesc the option descriptor for this option.
1819 doOptMtu(tOptions* pOptions, tOptDesc* pOptDesc)
1821 static struct {long rmin, rmax;} const rng[1] = {
1825 if (pOptions <= OPTPROC_EMIT_LIMIT)
1827 optionNumericVal(pOptions, pOptDesc);
1829 for (ix = 0; ix < 1; ix++) {
1830 if (pOptDesc->optArg.argInt < rng[ix].rmin)
1831 continue; /* ranges need not be ordered. */
1832 if (pOptDesc->optArg.argInt == rng[ix].rmin)
1834 if (rng[ix].rmax == LONG_MIN)
1836 if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1840 option_usage_fp = stderr;
1843 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1846 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1848 * Code to handle the x509crlfile option.
1850 * @param[in] pOptions the gnutls-cli options data structure
1851 * @param[in,out] pOptDesc the option descriptor for this option.
1854 doOptX509crlfile(tOptions* pOptions, tOptDesc* pOptDesc)
1856 static teOptFileType const type =
1857 FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1858 static tuFileMode mode;
1860 # define O_CLOEXEC 0
1862 mode.file_flags = O_CLOEXEC;
1865 * This function handles special invalid values for "pOptions"
1867 optionFileCheck(pOptions, pOptDesc, type, mode);
1870 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1872 * Code to handle the pgpkeyfile option.
1874 * @param[in] pOptions the gnutls-cli options data structure
1875 * @param[in,out] pOptDesc the option descriptor for this option.
1878 doOptPgpkeyfile(tOptions* pOptions, tOptDesc* pOptDesc)
1880 static teOptFileType const type =
1881 FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1882 static tuFileMode mode;
1884 # define O_CLOEXEC 0
1886 mode.file_flags = O_CLOEXEC;
1889 * This function handles special invalid values for "pOptions"
1891 optionFileCheck(pOptions, pOptDesc, type, mode);
1894 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1896 * Code to handle the pgpkeyring option.
1898 * @param[in] pOptions the gnutls-cli options data structure
1899 * @param[in,out] pOptDesc the option descriptor for this option.
1902 doOptPgpkeyring(tOptions* pOptions, tOptDesc* pOptDesc)
1904 static teOptFileType const type =
1905 FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1906 static tuFileMode mode;
1908 # define O_CLOEXEC 0
1910 mode.file_flags = O_CLOEXEC;
1913 * This function handles special invalid values for "pOptions"
1915 optionFileCheck(pOptions, pOptDesc, type, mode);
1918 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1920 * Code to handle the pgpcertfile option.
1922 * @param[in] pOptions the gnutls-cli options data structure
1923 * @param[in,out] pOptDesc the option descriptor for this option.
1926 doOptPgpcertfile(tOptions* pOptions, tOptDesc* pOptDesc)
1928 static teOptFileType const type =
1929 FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1930 static tuFileMode mode;
1932 # define O_CLOEXEC 0
1934 mode.file_flags = O_CLOEXEC;
1937 * This function handles special invalid values for "pOptions"
1939 optionFileCheck(pOptions, pOptDesc, type, mode);
1942 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1944 * Code to handle the recordsize option.
1946 * @param[in] pOptions the gnutls-cli options data structure
1947 * @param[in,out] pOptDesc the option descriptor for this option.
1950 doOptRecordsize(tOptions* pOptions, tOptDesc* pOptDesc)
1952 static struct {long rmin, rmax;} const rng[1] = {
1956 if (pOptions <= OPTPROC_EMIT_LIMIT)
1958 optionNumericVal(pOptions, pOptDesc);
1960 for (ix = 0; ix < 1; ix++) {
1961 if (pOptDesc->optArg.argInt < rng[ix].rmin)
1962 continue; /* ranges need not be ordered. */
1963 if (pOptDesc->optArg.argInt == rng[ix].rmin)
1965 if (rng[ix].rmax == LONG_MIN)
1967 if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1971 option_usage_fp = stderr;
1974 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1977 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1979 * Code to handle the provider option.
1980 * This will override the default options in /etc/gnutls/pkcs11.conf
1981 * @param[in] pOptions the gnutls-cli options data structure
1982 * @param[in,out] pOptDesc the option descriptor for this option.
1985 doOptProvider(tOptions* pOptions, tOptDesc* pOptDesc)
1987 static teOptFileType const type =
1988 FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1989 static tuFileMode mode;
1991 # define O_CLOEXEC 0
1993 mode.file_flags = O_CLOEXEC;
1996 * This function handles special invalid values for "pOptions"
1998 optionFileCheck(pOptions, pOptDesc, type, mode);
2000 /* extracted from optmain.tlib near line 1250 */
2003 * The directory containing the data associated with gnutls-cli.
2006 # define PKGDATADIR ""
2010 * Information about the person or institution that packaged gnutls-cli
2011 * for the current distribution.
2013 #ifndef WITH_PACKAGER
2014 # define gnutls_cli_packager_info NULL
2016 /** Packager information for gnutls-cli. */
2017 static char const gnutls_cli_packager_info[] =
2018 "Packaged by " WITH_PACKAGER
2020 # ifdef WITH_PACKAGER_VERSION
2021 " ("WITH_PACKAGER_VERSION")"
2024 # ifdef WITH_PACKAGER_BUG_REPORTS
2025 "\nReport gnutls_cli bugs to " WITH_PACKAGER_BUG_REPORTS
2031 #endif /* __doxygen__ */
2033 * The option definitions for gnutls-cli. The one structure that
2036 tOptions gnutls_cliOptions = {
2037 OPTIONS_STRUCT_VERSION,
2038 0, NULL, /* original argc + argv */
2043 + OPTPROC_NO_REQ_OPT
2048 0, NULL, /* current option index, current option */
2049 NULL, NULL, zPROGNAME,
2050 zRcName, zCopyright, zLicenseDescrip,
2051 zFullVersion, apzHomeList, zUsageTitle,
2052 zExplain, zDetail, optDesc,
2053 zBugsAddr, /* address to send bugs to */
2054 NULL, NULL, /* extensions/saved state */
2055 optionUsage, /* usage procedure */
2056 translate_option_strings, /* translation procedure */
2058 * Indexes to special options
2060 { INDEX_OPT_MORE_HELP, /* more-help option index */
2061 NO_EQUIVALENT, /* save option index */
2062 NO_EQUIVALENT, /* '-#' option index */
2063 NO_EQUIVALENT /* index of default opt */
2065 57 /* full option count */, 54 /* user option count */,
2066 gnutls_cli_full_usage, gnutls_cli_short_usage,
2068 PKGDATADIR, gnutls_cli_packager_info
2073 * This code is designed to translate translatable option text for the
2074 * gnutls-cli program. These translations happen upon entry
2075 * to optionProcess().
2081 #ifdef HAVE_DCGETTEXT
2082 # include <gettext.h>
2084 #include <autoopts/usage-txt.h>
2086 static char * AO_gettext(char const * pz);
2087 static void coerce_it(void ** s);
2090 * AutoGen specific wrapper function for gettext. It relies on the macro _()
2091 * to convert from English to the target language, then strdup-duplicates the
2092 * result string. It tries the "libopts" domain first, then whatever has been
2093 * set via the \a textdomain(3) call.
2095 * @param[in] pz the input text used as a lookup key.
2096 * @returns the translated text (if there is one),
2097 * or the original text (if not).
2100 AO_gettext(char const * pz)
2105 #ifdef HAVE_DCGETTEXT
2107 * While processing the option_xlateable_txt data, try to use the
2108 * "libopts" domain. Once we switch to the option descriptor data,
2109 * do *not* use that domain.
2111 if (option_xlateable_txt.field_ct != 0) {
2112 res = dgettext("libopts", pz);
2114 res = (char *)VOIDP(_(pz));
2116 res = (char *)VOIDP(_(pz));
2118 res = (char *)VOIDP(_(pz));
2124 fputs(_("No memory for duping translated strings\n"), stderr);
2125 exit(GNUTLS_CLI_EXIT_FAILURE);
2131 * All the pointers we use are marked "* const", but they are stored in
2132 * writable memory. Coerce the mutability and set the pointer.
2134 static void coerce_it(void ** s) { *s = AO_gettext(*s);
2138 * Translate all the translatable strings in the gnutls_cliOptions
2139 * structure defined above. This is done only once.
2142 translate_option_strings(void)
2144 tOptions * const opts = &gnutls_cliOptions;
2147 * Guard against re-translation. It won't work. The strings will have
2148 * been changed by the first pass through this code. One shot only.
2150 if (option_xlateable_txt.field_ct != 0) {
2152 * Do the translations. The first pointer follows the field count
2153 * field. The field count field is the size of a pointer.
2155 char ** ppz = (char**)VOIDP(&(option_xlateable_txt));
2156 int ix = option_xlateable_txt.field_ct;
2159 ppz++; /* skip over field_ct */
2160 *ppz = AO_gettext(*ppz);
2162 /* prevent re-translation and disable "libopts" domain lookup */
2163 option_xlateable_txt.field_ct = 0;
2165 coerce_it(VOIDP(&(opts->pzCopyright)));
2166 coerce_it(VOIDP(&(opts->pzCopyNotice)));
2167 coerce_it(VOIDP(&(opts->pzFullVersion)));
2168 coerce_it(VOIDP(&(opts->pzUsageTitle)));
2169 coerce_it(VOIDP(&(opts->pzExplain)));
2170 coerce_it(VOIDP(&(opts->pzDetail)));
2172 tOptDesc * od = opts->pOptDesc;
2173 for (ix = opts->optCt; ix > 0; ix--, od++)
2174 coerce_it(VOIDP(&(od->pzText)));
2178 #endif /* ENABLE_NLS */
2180 #ifdef DO_NOT_COMPILE_THIS_CODE_IT_IS_FOR_GETTEXT
2181 /** I18N function strictly for xgettext. Do not compile. */
2182 static void bogus_function(void) {
2185 The following dummy function was crated solely so that xgettext can
2186 extract the correct strings. These strings are actually referenced
2187 by a field name in the gnutls_cliOptions structure noted in the
2188 comments below. The literal text is defined in gnutls_cli_opt_strs.
2190 NOTE: the strings below are segmented with respect to the source string
2191 gnutls_cli_opt_strs. The strings above are handed off for translation
2192 at run time a paragraph at a time. Consequently, they are presented here
2193 for translation a paragraph at a time.
2195 ALSO: often the description for an option will reference another option
2196 by name. These are set off with apostrophe quotes (I hope). Do not
2197 translate option names.
2199 /* referenced via gnutls_cliOptions.pzCopyright */
2200 puts(_("gnutls-cli 3.4.11\n\
2201 Copyright (C) 2000-2016 Free Software Foundation, and others, all rights reserved.\n\
2202 This is free software. It is licensed for use, modification and\n\
2203 redistribution under the terms of the GNU General Public License,\n\
2204 version 3 or later <http://gnu.org/licenses/gpl.html>\n"));
2206 /* referenced via gnutls_cliOptions.pzCopyNotice */
2207 puts(_("gnutls-cli is free software: you can redistribute it and/or modify it under\n\
2208 the terms of the GNU General Public License as published by the Free\n\
2209 Software Foundation, either version 3 of the License, or (at your option)\n\
2210 any later version.\n\n"));
2211 puts(_("gnutls-cli is distributed in the hope that it will be useful, but WITHOUT\n\
2212 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n\
2213 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\n\
2214 more details.\n\n"));
2215 puts(_("You should have received a copy of the GNU General Public License along\n\
2216 with this program. If not, see <http://www.gnu.org/licenses/>.\n"));
2218 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2219 puts(_("Enable debugging"));
2221 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2222 puts(_("More verbose output"));
2224 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2225 puts(_("Enable trust on first use authentication"));
2227 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2228 puts(_("Fail to connect if a known certificate has changed"));
2230 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2231 puts(_("Enable DANE certificate verification (DNSSEC)"));
2233 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2234 puts(_("Use the local DNS server for DNSSEC resolving"));
2236 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2237 puts(_("Enable CA certificate verification"));
2239 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2240 puts(_("Enable OCSP certificate verification"));
2242 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2243 puts(_("Establish a session and resume"));
2245 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2246 puts(_("Establish a session and rehandshake"));
2248 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2249 puts(_("Connect, establish a plain session and start TLS"));
2251 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2252 puts(_("an alias for the 'starttls-proto' option"));
2254 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2255 puts(_("The application protocol to be used to obtain the server's certificate\n\
2256 (https, ftp, smtp, imap, ldap, xmpp)"));
2258 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2259 puts(_("Use DTLS (datagram TLS) over UDP"));
2261 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2262 puts(_("Set MTU for datagram TLS"));
2264 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2265 puts(_("Send CR LF instead of LF"));
2267 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2268 puts(_("Use DER format for certificates to read from"));
2270 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2271 puts(_("Send the openpgp fingerprint, instead of the key"));
2273 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2274 puts(_("Print peer's certificate in PEM format"));
2276 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2277 puts(_("Save the peer's certificate chain in the specified file in PEM format"));
2279 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2280 puts(_("Save the peer's OCSP status response in the provided file"));
2282 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2283 puts(_("The minimum number of bits allowed for DH"));
2285 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2286 puts(_("Priorities string"));
2288 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2289 puts(_("Certificate file or PKCS #11 URL to use"));
2291 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2292 puts(_("CRL file to use"));
2294 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2295 puts(_("PGP Key file to use"));
2297 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2298 puts(_("PGP Key ring file to use"));
2300 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2301 puts(_("PGP Public Key (certificate) file to use"));
2303 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2304 puts(_("X.509 key file or PKCS #11 URL to use"));
2306 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2307 puts(_("X.509 Certificate file or PKCS #11 URL to use"));
2309 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2310 puts(_("PGP subkey to use (hex or auto)"));
2312 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2313 puts(_("SRP username to use"));
2315 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2316 puts(_("SRP password to use"));
2318 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2319 puts(_("PSK username to use"));
2321 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2322 puts(_("PSK key (in hex) to use"));
2324 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2325 puts(_("The port or service to connect to"));
2327 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2328 puts(_("Don't abort program if server certificate can't be validated"));
2330 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2331 puts(_("Use length-hiding padding to prevent traffic analysis"));
2333 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2334 puts(_("Benchmark individual ciphers"));
2336 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2337 puts(_("Benchmark TLS key exchange methods"));
2339 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2340 puts(_("Benchmark TLS ciphers"));
2342 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2343 puts(_("Print a list of the supported algorithms and modes"));
2345 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2346 puts(_("Print a list of the supported priority strings"));
2348 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2349 puts(_("Don't allow session tickets"));
2351 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2352 puts(_("Offer SRTP profiles"));
2354 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2355 puts(_("Application layer protocol"));
2357 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2358 puts(_("Activate heartbeat support"));
2360 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2361 puts(_("The maximum record size to advertize"));
2363 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2364 puts(_("Do not send a Server Name Indication (SNI)"));
2366 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2367 puts(_("Disable all the TLS extensions"));
2369 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2370 puts(_("Inline commands of the form ^<cmd>^"));
2372 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2373 puts(_("Change the default delimiter for inline commands."));
2375 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2376 puts(_("Specify the PKCS #11 provider library"));
2378 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2379 puts(_("Reports the status of the FIPS140-2 mode in gnutls library"));
2381 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2382 puts(_("display extended usage information and exit"));
2384 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2385 puts(_("extended usage information passed thru pager"));
2387 /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2388 puts(_("output version information and exit"));
2390 /* referenced via gnutls_cliOptions.pzUsageTitle */
2391 puts(_("gnutls-cli - GnuTLS client\n\
2392 Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [hostname]\n"));
2394 /* referenced via gnutls_cliOptions.pzExplain */
2397 /* referenced via gnutls_cliOptions.pzDetail */
2398 puts(_("Simple client program to set up a TLS connection to some other computer. It\n\
2399 sets up a TLS connection and forwards data from the standard input to the\n\
2400 secured socket and vice versa.\n"));
2402 /* referenced via gnutls_cliOptions.pzFullVersion */
2403 puts(_("gnutls-cli 3.4.11"));
2405 /* referenced via gnutls_cliOptions.pzFullUsage */
2406 puts(_("<<<NOT-FOUND>>>"));
2408 /* referenced via gnutls_cliOptions.pzShortUsage */
2409 puts(_("Usage: gnutls-cli [options] hostname\n\
2410 gnutls-cli --help for usage instructions.\n"));
2411 /* LIBOPTS-MESSAGES: */
2412 #line 67 "../autoopts.c"
2413 puts(_("allocation of %d bytes failed\n"));
2414 #line 93 "../autoopts.c"
2415 puts(_("allocation of %d bytes failed\n"));
2416 #line 53 "../init.c"
2417 puts(_("AutoOpts function called without option descriptor\n"));
2418 #line 86 "../init.c"
2419 puts(_("\tThis exceeds the compiled library version: "));
2420 #line 84 "../init.c"
2421 puts(_("Automated Options Processing Error!\n"
2422 "\t%s called AutoOpts function with structure version %d:%d:%d.\n"));
2423 #line 80 "../autoopts.c"
2424 puts(_("realloc of %d bytes at 0x%p failed\n"));
2425 #line 88 "../init.c"
2426 puts(_("\tThis is less than the minimum library version: "));
2427 #line 121 "../version.c"
2428 puts(_("Automated Options version %s\n"
2429 "\tCopyright (C) 1999-2014 by Bruce Korb - all rights reserved\n"));
2430 #line 87 "../makeshell.c"
2431 puts(_("(AutoOpts bug): %s.\n"));
2432 #line 90 "../reset.c"
2433 puts(_("optionResetOpt() called, but reset-option not configured"));
2434 #line 292 "../usage.c"
2435 puts(_("could not locate the 'help' option"));
2436 #line 336 "../autoopts.c"
2437 puts(_("optionProcess() was called with invalid data"));
2438 #line 748 "../usage.c"
2439 puts(_("invalid argument type specified"));
2440 #line 598 "../find.c"
2441 puts(_("defaulted to option with optional arg"));
2442 #line 76 "../alias.c"
2443 puts(_("aliasing option is out of range."));
2444 #line 235 "../enum.c"
2445 puts(_("%s error: the keyword '%s' is ambiguous for %s\n"));
2446 #line 108 "../find.c"
2447 puts(_(" The following options match:\n"));
2448 #line 293 "../find.c"
2449 puts(_("%s: ambiguous option name: %s (matches %d options)\n"));
2450 #line 161 "../check.c"
2451 puts(_("%s: Command line arguments required\n"));
2452 #line 43 "../alias.c"
2453 puts(_("%d %s%s options allowed\n"));
2454 #line 94 "../makeshell.c"
2455 puts(_("%s error %d (%s) calling %s for '%s'\n"));
2456 #line 306 "../makeshell.c"
2457 puts(_("interprocess pipe"));
2458 #line 168 "../version.c"
2459 puts(_("error: version option argument '%c' invalid. Use:\n"
2460 "\t'v' - version only\n"
2461 "\t'c' - version and copyright\n"
2462 "\t'n' - version and full copyright notice\n"));
2463 #line 58 "../check.c"
2464 puts(_("%s error: the '%s' and '%s' options conflict\n"));
2465 #line 217 "../find.c"
2466 puts(_("%s: The '%s' option has been disabled."));
2467 #line 430 "../find.c"
2468 puts(_("%s: The '%s' option has been disabled."));
2469 #line 38 "../alias.c"
2470 puts(_("-equivalence"));
2471 #line 469 "../find.c"
2472 puts(_("%s: illegal option -- %c\n"));
2473 #line 110 "../reset.c"
2474 puts(_("%s: illegal option -- %c\n"));
2475 #line 271 "../find.c"
2476 puts(_("%s: illegal option -- %s\n"));
2477 #line 755 "../find.c"
2478 puts(_("%s: illegal option -- %s\n"));
2479 #line 118 "../reset.c"
2480 puts(_("%s: illegal option -- %s\n"));
2481 #line 335 "../find.c"
2482 puts(_("%s: unknown vendor extension option -- %s\n"));
2483 #line 160 "../enum.c"
2484 puts(_(" or an integer from %d through %d\n"));
2485 #line 170 "../enum.c"
2486 puts(_(" or an integer from %d through %d\n"));
2487 #line 747 "../usage.c"
2488 puts(_("%s error: invalid option descriptor for %s\n"));
2489 #line 1081 "../usage.c"
2490 puts(_("%s error: invalid option descriptor for %s\n"));
2491 #line 385 "../find.c"
2492 puts(_("%s: invalid option name: %s\n"));
2493 #line 527 "../find.c"
2494 puts(_("%s: The '%s' option requires an argument.\n"));
2495 #line 156 "../autoopts.c"
2496 puts(_("(AutoOpts bug): Equivalenced option '%s' was equivalenced to both\n"
2497 "\t'%s' and '%s'."));
2498 #line 94 "../check.c"
2499 puts(_("%s error: The %s option is required\n"));
2500 #line 632 "../find.c"
2501 puts(_("%s: The '%s' option cannot have an argument.\n"));
2502 #line 151 "../check.c"
2503 puts(_("%s: Command line arguments are not allowed.\n"));
2504 #line 535 "../save.c"
2505 puts(_("error %d (%s) creating %s\n"));
2506 #line 235 "../enum.c"
2507 puts(_("%s error: '%s' does not match any %s keywords.\n"));
2508 #line 93 "../reset.c"
2509 puts(_("%s error: The '%s' option requires an argument.\n"));
2510 #line 186 "../save.c"
2511 puts(_("error %d (%s) stat-ing %s\n"));
2512 #line 238 "../save.c"
2513 puts(_("error %d (%s) stat-ing %s\n"));
2514 #line 143 "../restore.c"
2515 puts(_("%s error: no saved option state\n"));
2516 #line 231 "../autoopts.c"
2517 puts(_("'%s' is not a command line option.\n"));
2518 #line 113 "../time.c"
2519 puts(_("%s error: '%s' is not a recognizable date/time.\n"));
2520 #line 131 "../save.c"
2521 puts(_("'%s' not defined\n"));
2522 #line 50 "../time.c"
2523 puts(_("%s error: '%s' is not a recognizable time duration.\n"));
2524 #line 92 "../check.c"
2525 puts(_("%s error: The %s option must appear %d times.\n"));
2526 #line 165 "../numeric.c"
2527 puts(_("%s error: '%s' is not a recognizable number.\n"));
2528 #line 201 "../enum.c"
2529 puts(_("%s error: %s exceeds %s keyword count\n"));
2530 #line 330 "../usage.c"
2531 puts(_("Try '%s %s' for more information.\n"));
2532 #line 45 "../alias.c"
2533 puts(_("one %s%s option allowed\n"));
2534 #line 208 "../makeshell.c"
2535 puts(_("standard output"));
2536 #line 943 "../makeshell.c"
2537 puts(_("standard output"));
2538 #line 274 "../usage.c"
2539 puts(_("standard output"));
2540 #line 415 "../usage.c"
2541 puts(_("standard output"));
2542 #line 625 "../usage.c"
2543 puts(_("standard output"));
2544 #line 175 "../version.c"
2545 puts(_("standard output"));
2546 #line 274 "../usage.c"
2547 puts(_("standard error"));
2548 #line 415 "../usage.c"
2549 puts(_("standard error"));
2550 #line 625 "../usage.c"
2551 puts(_("standard error"));
2552 #line 175 "../version.c"
2553 puts(_("standard error"));
2554 #line 208 "../makeshell.c"
2556 #line 943 "../makeshell.c"
2558 #line 273 "../usage.c"
2560 #line 414 "../usage.c"
2562 #line 624 "../usage.c"
2564 #line 174 "../version.c"
2566 #line 60 "../numeric.c"
2567 puts(_("%s error: %s option value %ld is out of range.\n"));
2568 #line 44 "../check.c"
2569 puts(_("%s error: %s option requires the %s option\n"));
2570 #line 130 "../save.c"
2571 puts(_("%s warning: cannot save options - %s not regular file\n"));
2572 #line 185 "../save.c"
2573 puts(_("%s warning: cannot save options - %s not regular file\n"));
2574 #line 237 "../save.c"
2575 puts(_("%s warning: cannot save options - %s not regular file\n"));
2576 #line 256 "../save.c"
2577 puts(_("%s warning: cannot save options - %s not regular file\n"));
2578 #line 534 "../save.c"
2579 puts(_("%s warning: cannot save options - %s not regular file\n"));
2580 /* END-LIBOPTS-MESSAGES */
2583 #line 873 "../usage.c"
2584 puts(_("\t\t\t\t- an alternate for '%s'\n"));
2585 #line 1148 "../usage.c"
2586 puts(_("Version, usage and configuration options:"));
2587 #line 924 "../usage.c"
2588 puts(_("\t\t\t\t- default option for unnamed options\n"));
2589 #line 837 "../usage.c"
2590 puts(_("\t\t\t\t- disabled as '--%s'\n"));
2591 #line 1117 "../usage.c"
2592 puts(_(" --- %-14s %s\n"));
2593 #line 1115 "../usage.c"
2594 puts(_("This option has been disabled"));
2595 #line 864 "../usage.c"
2596 puts(_("\t\t\t\t- enabled by default\n"));
2597 #line 40 "../alias.c"
2598 puts(_("%s error: only "));
2599 #line 1194 "../usage.c"
2600 puts(_(" - examining environment variables named %s_*\n"));
2601 #line 168 "../file.c"
2602 puts(_("\t\t\t\t- file must not pre-exist\n"));
2603 #line 172 "../file.c"
2604 puts(_("\t\t\t\t- file must pre-exist\n"));
2605 #line 380 "../usage.c"
2606 puts(_("Options are specified by doubled hyphens and their name or by a single\n"
2607 "hyphen and the flag character.\n"));
2608 #line 921 "../makeshell.c"
2610 "= = = = = = = =\n\n"
2611 "This incarnation of genshell will produce\n"
2612 "a shell script to parse the options for %s:\n\n"));
2613 #line 167 "../enum.c"
2614 puts(_(" or an integer mask with any of the lower %d bits set\n"));
2615 #line 897 "../usage.c"
2616 puts(_("\t\t\t\t- is a set membership option\n"));
2617 #line 918 "../usage.c"
2618 puts(_("\t\t\t\t- must appear between %d and %d times\n"));
2619 #line 382 "../usage.c"
2620 puts(_("Options are specified by single or double hyphens and their name.\n"));
2621 #line 904 "../usage.c"
2622 puts(_("\t\t\t\t- may appear multiple times\n"));
2623 #line 891 "../usage.c"
2624 puts(_("\t\t\t\t- may not be preset\n"));
2625 #line 1309 "../usage.c"
2626 puts(_(" Arg Option-Name Description\n"));
2627 #line 1245 "../usage.c"
2628 puts(_(" Flg Arg Option-Name Description\n"));
2629 #line 1303 "../usage.c"
2630 puts(_(" Flg Arg Option-Name Description\n"));
2631 #line 1304 "../usage.c"
2633 #line 1310 "../usage.c"
2635 #line 387 "../usage.c"
2636 puts(_("The '-#<number>' option may omit the hash char\n"));
2637 #line 383 "../usage.c"
2638 puts(_("All arguments are named options.\n"));
2639 #line 971 "../usage.c"
2640 puts(_(" - reading file %s"));
2641 #line 409 "../usage.c"
2643 "Please send bug reports to: <%s>\n"));
2644 #line 100 "../version.c"
2646 "Please send bug reports to: <%s>\n"));
2647 #line 129 "../version.c"
2649 "Please send bug reports to: <%s>\n"));
2650 #line 903 "../usage.c"
2651 puts(_("\t\t\t\t- may NOT appear - preset only\n"));
2652 #line 944 "../usage.c"
2654 "The following option preset mechanisms are supported:\n"));
2655 #line 1192 "../usage.c"
2657 "The following option preset mechanisms are supported:\n"));
2658 #line 682 "../usage.c"
2659 puts(_("prohibits these options:\n"));
2660 #line 677 "../usage.c"
2661 puts(_("prohibits the option '%s'\n"));
2662 #line 81 "../numeric.c"
2663 puts(_("%s%ld to %ld"));
2664 #line 79 "../numeric.c"
2665 puts(_("%sgreater than or equal to %ld"));
2666 #line 75 "../numeric.c"
2667 puts(_("%s%ld exactly"));
2668 #line 68 "../numeric.c"
2669 puts(_("%sit must lie in one of the ranges:\n"));
2670 #line 68 "../numeric.c"
2671 puts(_("%sit must be in the range:\n"));
2672 #line 88 "../numeric.c"
2674 #line 66 "../numeric.c"
2675 puts(_("%sis scalable with a suffix: k/K/m/M/g/G/t/T\n"));
2676 #line 77 "../numeric.c"
2677 puts(_("%sless than or equal to %ld"));
2678 #line 390 "../usage.c"
2679 puts(_("Operands and options may be intermixed. They will be reordered.\n"));
2680 #line 652 "../usage.c"
2681 puts(_("requires the option '%s'\n"));
2682 #line 655 "../usage.c"
2683 puts(_("requires these options:\n"));
2684 #line 1321 "../usage.c"
2685 puts(_(" Arg Option-Name Req? Description\n"));
2686 #line 1315 "../usage.c"
2687 puts(_(" Flg Arg Option-Name Req? Description\n"));
2688 #line 168 "../enum.c"
2689 puts(_("or you may use a numeric representation. Preceding these with a '!'\n"
2690 "will clear the bits, specifying 'none' will clear all bits, and 'all'\n"
2691 "will set them all. Multiple entries may be passed as an option\n"
2692 "argument list.\n"));
2693 #line 910 "../usage.c"
2694 puts(_("\t\t\t\t- may appear up to %d times\n"));
2695 #line 77 "../enum.c"
2696 puts(_("The valid \"%s\" option keywords are:\n"));
2697 #line 1152 "../usage.c"
2698 puts(_("The next option supports vendor supported extra options:"));
2699 #line 773 "../usage.c"
2700 puts(_("These additional options are:"));
2701 /* END-USAGE-TEXT */
2703 #endif /* uncompilable code */
2707 /* cli-args.c ends here */