Imported Upstream version 3.4.11
[platform/upstream/gnutls.git] / src / cli-args.c.bak
1 /*   -*- buffer-read-only: t -*- vi: set ro:
2  *
3  *  DO NOT EDIT THIS FILE   (cli-args.c)
4  *
5  *  It has been AutoGen-ed
6  *  From the definitions    cli-args.def
7  *  and the template file   options
8  *
9  * Generated from AutoOpts 41:1:16 templates.
10  *
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
17  *  for details.
18  *
19  * The gnutls-cli program is copyrighted and licensed
20  * under the following terms:
21  *
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>
26  *
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.
31  *
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.
36  *
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/>.
39  */
40
41 #ifndef __doxygen__
42 #define OPTION_CODE_COMPILE 1
43 #include "cli-args.h"
44 #include <sys/types.h>
45
46 #include <limits.h>
47 #include <stdio.h>
48 #include <stdlib.h>
49 #include <errno.h>
50
51 #ifdef  __cplusplus
52 extern "C" {
53 #endif
54 extern FILE * option_usage_fp;
55 #define zCopyright      (gnutls_cli_opt_strs+0)
56 #define zLicenseDescrip (gnutls_cli_opt_strs+286)
57
58
59 #ifndef NULL
60 #  define NULL 0
61 #endif
62
63 /**
64  *  static const strings for gnutls-cli options
65  */
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"
79             "more details.\n\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"
83 /*   912 */ "DEBUG\0"
84 /*   918 */ "debug\0"
85 /*   924 */ "More verbose output\0"
86 /*   944 */ "VERBOSE\0"
87 /*   952 */ "verbose\0"
88 /*   960 */ "Enable trust on first use authentication\0"
89 /*  1001 */ "TOFU\0"
90 /*  1006 */ "no-tofu\0"
91 /*  1014 */ "no\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"
96 /*  1141 */ "DANE\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"
105 /*  1330 */ "OCSP\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"
123 /*  1737 */ "UDP\0"
124 /*  1741 */ "udp\0"
125 /*  1745 */ "Set MTU for datagram TLS\0"
126 /*  1770 */ "MTU\0"
127 /*  1774 */ "mtu\0"
128 /*  1778 */ "Send CR LF instead of LF\0"
129 /*  1803 */ "CRLF\0"
130 /*  1808 */ "crlf\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"
189 /*  2918 */ "PORT\0"
190 /*  2923 */ "port\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"
207 /*  3326 */ "LIST\0"
208 /*  3331 */ "list\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"
219 /*  3532 */ "ALPN\0"
220 /*  3537 */ "alpn\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"
246 /*  4133 */ "help\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"
255 /*  4360 */ "\n\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";
262
263 /**
264  *  debug option description:
265  */
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))
275
276 /**
277  *  verbose option description:
278  */
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)
287
288 /**
289  *  tofu option description:
290  */
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)
303
304 /**
305  *  strict-tofu option description:
306  */
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)
319
320 /**
321  *  dane option description:
322  */
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)
335
336 /**
337  *  local-dns option description:
338  */
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)
351
352 /**
353  *  ca-verification option description:
354  */
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)
367
368 /**
369  *  ocsp option description:
370  */
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)
383
384 /**
385  *  resume option description:
386  */
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)
395
396 /**
397  *  rehandshake option description:
398  */
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)
407
408 /**
409  *  starttls option description:
410  */
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)
419
420 /**
421  *  app-proto option description:
422  */
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)
430
431 /**
432  *  starttls-proto option description with
433  *  "Must also have options" and "Incompatible options":
434  */
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))
447
448 /**
449  *  udp option description:
450  */
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)
459
460 /**
461  *  mtu option description:
462  */
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))
472
473 /**
474  *  crlf option description:
475  */
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)
484
485 /**
486  *  x509fmtder option description:
487  */
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)
496
497 /**
498  *  fingerprint option description:
499  */
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)
508
509 /**
510  *  print-cert option description:
511  */
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)
520
521 /**
522  *  save-cert option description:
523  */
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))
533
534 /**
535  *  save-ocsp option description:
536  */
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))
546
547 /**
548  *  dh-bits option description:
549  */
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))
559
560 /**
561  *  priority option description:
562  */
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))
572
573 /**
574  *  x509cafile option description:
575  */
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))
585
586 /**
587  *  x509crlfile option description:
588  */
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))
598
599 /**
600  *  pgpkeyfile option description:
601  */
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))
611
612 /**
613  *  pgpkeyring option description:
614  */
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))
624
625 /**
626  *  pgpcertfile option description with
627  *  "Must also have options" and "Incompatible options":
628  */
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))
641
642 /**
643  *  x509keyfile option description:
644  */
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))
654
655 /**
656  *  x509certfile option description with
657  *  "Must also have options" and "Incompatible options":
658  */
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))
671
672 /**
673  *  pgpsubkey option description:
674  */
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))
684
685 /**
686  *  srpusername option description:
687  */
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))
697
698 /**
699  *  srppasswd option description:
700  */
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))
710
711 /**
712  *  pskusername option description:
713  */
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))
723
724 /**
725  *  pskkey option description:
726  */
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))
736
737 /**
738  *  port option description:
739  */
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))
749
750 /**
751  *  insecure option description:
752  */
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)
761
762 /**
763  *  ranges option description:
764  */
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)
773
774 /**
775  *  benchmark-ciphers option description:
776  */
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)
785
786 /**
787  *  benchmark-tls-kx option description:
788  */
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)
797
798 /**
799  *  benchmark-tls-ciphers option description:
800  */
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)
809
810 /**
811  *  list option description with
812  *  "Must also have options" and "Incompatible options":
813  */
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)
825
826 /**
827  *  priority-list option description:
828  */
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)
837
838 /**
839  *  noticket option description:
840  */
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)
849
850 /**
851  *  srtp_profiles option description:
852  */
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))
862
863 /**
864  *  alpn option description:
865  */
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))
875
876 /**
877  *  heartbeat option description:
878  */
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)
887
888 /**
889  *  recordsize option description:
890  */
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))
900
901 /**
902  *  disable-sni option description:
903  */
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)
912
913 /**
914  *  disable-extensions option description:
915  */
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)
924
925 /**
926  *  inline-commands option description:
927  */
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)
936
937 /**
938  *  inline-commands-prefix option description:
939  */
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))
949
950 /**
951  *  provider option description:
952  */
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))
962
963 /**
964  *  fips140-mode option description:
965  */
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)
974
975 /*
976  *  Help/More_Help/Version option descriptions:
977  */
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)
984 #else
985 #define MORE_HELP_DESC  HELP_DESC
986 #define MORE_HELP_name  HELP_name
987 #define MORE_HELP_FLAGS (OPTST_OMITTED | OPTST_NO_INIT)
988 #endif
989 #ifdef NO_OPTIONAL_OPT_ARGS
990 #  define VER_FLAGS     (OPTST_IMM | OPTST_NO_INIT)
991 #else
992 #  define VER_FLAGS     (OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) | \
993                          OPTST_ARG_OPTIONAL | OPTST_IMM | OPTST_NO_INIT)
994 #endif
995 #define VER_DESC        (gnutls_cli_opt_strs+4193)
996 #define VER_name        (gnutls_cli_opt_strs+4229)
997 /**
998  *  Declare option callback procedures
999  */
1000 extern tOptProc
1001     optionBooleanVal,   optionNestedVal,    optionNumericVal,
1002     optionPagedUsage,   optionPrintVersion, optionResetOpt,
1003     optionStackArg,     optionTimeDate,     optionTimeVal,
1004     optionUnstackArg,   optionVendorOption;
1005 static tOptProc
1006     doOptApp_Proto,   doOptDebug,       doOptMtu,         doOptPgpcertfile,
1007     doOptPgpkeyfile,  doOptPgpkeyring,  doOptProvider,    doOptRecordsize,
1008     doOptX509crlfile, doUsageOpt;
1009 #define VER_PROC        optionPrintVersion
1010
1011 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1012 /**
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.
1016  */
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 },
1029
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 },
1041
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 },
1053
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 },
1065
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 },
1077
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 },
1089
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 },
1101
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 },
1113
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 },
1125
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 },
1137
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 },
1149
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 },
1161
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 },
1173
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 },
1185
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 },
1197
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 },
1209
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 },
1221
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 },
1233
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 },
1245
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 },
1257
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 },
1269
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 },
1281
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 },
1293
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 },
1305
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 },
1317
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 },
1329
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 },
1341
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 },
1353
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 },
1365
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 },
1377
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 },
1389
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 },
1401
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 },
1413
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 },
1425
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 },
1437
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 },
1449
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 },
1461
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 },
1473
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 },
1485
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 },
1497
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 },
1509
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 },
1521
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 },
1533
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 },
1545
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 },
1557
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 },
1569
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 },
1581
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 },
1593
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 },
1605
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 },
1617
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 },
1629
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 },
1641
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 },
1653
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 },
1665
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 },
1677
1678
1679
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 },
1691
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 }
1703 };
1704
1705
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 */
1724
1725 #if defined(ENABLE_NLS)
1726 # define OPTPROC_BASE OPTPROC_TRANSLATE | OPTPROC_NXLAT_OPT
1727   static tOptionXlateProc translate_option_strings;
1728 #else
1729 # define OPTPROC_BASE OPTPROC_NONE
1730 # define translate_option_strings NULL
1731 #endif /* ENABLE_NLS */
1732
1733 #define gnutls_cli_full_usage (NULL)
1734 #define gnutls_cli_short_usage (gnutls_cli_opt_strs+4563)
1735
1736 #endif /* not defined __doxygen__ */
1737
1738 /*
1739  *  Create the static procedure(s) declared above.
1740  */
1741 /**
1742  * The callout function that invokes the optionUsage function.
1743  *
1744  * @param[in] opts the AutoOpts option description structure
1745  * @param[in] od   the descriptor for the "help" (usage) option.
1746  * @noreturn
1747  */
1748 static void
1749 doUsageOpt(tOptions * opts, tOptDesc * od)
1750 {
1751     int ex_code;
1752     ex_code = GNUTLS_CLI_EXIT_SUCCESS;
1753     optionUsage(&gnutls_cliOptions, ex_code);
1754     /* NOTREACHED */
1755     exit(GNUTLS_CLI_EXIT_FAILURE);
1756     (void)opts;
1757     (void)od;
1758 }
1759
1760 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1761 /**
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.
1766  */
1767 static void
1768 doOptDebug(tOptions* pOptions, tOptDesc* pOptDesc)
1769 {
1770     static struct {long rmin, rmax;} const rng[1] = {
1771         { 0 ,  9999 } };
1772     int  ix;
1773
1774     if (pOptions <= OPTPROC_EMIT_LIMIT)
1775         goto emit_ranges;
1776     optionNumericVal(pOptions, pOptDesc);
1777
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)
1782             return;
1783         if (rng[ix].rmax == LONG_MIN)
1784             continue;
1785         if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1786             return;
1787     }
1788
1789     option_usage_fp = stderr;
1790
1791  emit_ranges:
1792 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1793 }
1794
1795 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1796 /**
1797  * Code to handle the app-proto option.
1798  *
1799  * @param[in] pOptions the gnutls-cli options data structure
1800  * @param[in,out] pOptDesc the option descriptor for this option.
1801  */
1802 static void
1803 doOptApp_Proto(tOptions* pOptions, tOptDesc* pOptDesc)
1804 {
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);
1808
1809 }
1810
1811 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1812 /**
1813  * Code to handle the mtu option.
1814  *
1815  * @param[in] pOptions the gnutls-cli options data structure
1816  * @param[in,out] pOptDesc the option descriptor for this option.
1817  */
1818 static void
1819 doOptMtu(tOptions* pOptions, tOptDesc* pOptDesc)
1820 {
1821     static struct {long rmin, rmax;} const rng[1] = {
1822         { 0, 17000 } };
1823     int  ix;
1824
1825     if (pOptions <= OPTPROC_EMIT_LIMIT)
1826         goto emit_ranges;
1827     optionNumericVal(pOptions, pOptDesc);
1828
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)
1833             return;
1834         if (rng[ix].rmax == LONG_MIN)
1835             continue;
1836         if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1837             return;
1838     }
1839
1840     option_usage_fp = stderr;
1841
1842  emit_ranges:
1843 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1844 }
1845
1846 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1847 /**
1848  * Code to handle the x509crlfile option.
1849  *
1850  * @param[in] pOptions the gnutls-cli options data structure
1851  * @param[in,out] pOptDesc the option descriptor for this option.
1852  */
1853 static void
1854 doOptX509crlfile(tOptions* pOptions, tOptDesc* pOptDesc)
1855 {
1856     static teOptFileType const  type =
1857         FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1858     static tuFileMode           mode;
1859 #ifndef O_CLOEXEC
1860 #  define O_CLOEXEC 0
1861 #endif
1862     mode.file_flags = O_CLOEXEC;
1863
1864     /*
1865      * This function handles special invalid values for "pOptions"
1866      */
1867     optionFileCheck(pOptions, pOptDesc, type, mode);
1868 }
1869
1870 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1871 /**
1872  * Code to handle the pgpkeyfile option.
1873  *
1874  * @param[in] pOptions the gnutls-cli options data structure
1875  * @param[in,out] pOptDesc the option descriptor for this option.
1876  */
1877 static void
1878 doOptPgpkeyfile(tOptions* pOptions, tOptDesc* pOptDesc)
1879 {
1880     static teOptFileType const  type =
1881         FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1882     static tuFileMode           mode;
1883 #ifndef O_CLOEXEC
1884 #  define O_CLOEXEC 0
1885 #endif
1886     mode.file_flags = O_CLOEXEC;
1887
1888     /*
1889      * This function handles special invalid values for "pOptions"
1890      */
1891     optionFileCheck(pOptions, pOptDesc, type, mode);
1892 }
1893
1894 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1895 /**
1896  * Code to handle the pgpkeyring option.
1897  *
1898  * @param[in] pOptions the gnutls-cli options data structure
1899  * @param[in,out] pOptDesc the option descriptor for this option.
1900  */
1901 static void
1902 doOptPgpkeyring(tOptions* pOptions, tOptDesc* pOptDesc)
1903 {
1904     static teOptFileType const  type =
1905         FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1906     static tuFileMode           mode;
1907 #ifndef O_CLOEXEC
1908 #  define O_CLOEXEC 0
1909 #endif
1910     mode.file_flags = O_CLOEXEC;
1911
1912     /*
1913      * This function handles special invalid values for "pOptions"
1914      */
1915     optionFileCheck(pOptions, pOptDesc, type, mode);
1916 }
1917
1918 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1919 /**
1920  * Code to handle the pgpcertfile option.
1921  *
1922  * @param[in] pOptions the gnutls-cli options data structure
1923  * @param[in,out] pOptDesc the option descriptor for this option.
1924  */
1925 static void
1926 doOptPgpcertfile(tOptions* pOptions, tOptDesc* pOptDesc)
1927 {
1928     static teOptFileType const  type =
1929         FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1930     static tuFileMode           mode;
1931 #ifndef O_CLOEXEC
1932 #  define O_CLOEXEC 0
1933 #endif
1934     mode.file_flags = O_CLOEXEC;
1935
1936     /*
1937      * This function handles special invalid values for "pOptions"
1938      */
1939     optionFileCheck(pOptions, pOptDesc, type, mode);
1940 }
1941
1942 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1943 /**
1944  * Code to handle the recordsize option.
1945  *
1946  * @param[in] pOptions the gnutls-cli options data structure
1947  * @param[in,out] pOptDesc the option descriptor for this option.
1948  */
1949 static void
1950 doOptRecordsize(tOptions* pOptions, tOptDesc* pOptDesc)
1951 {
1952     static struct {long rmin, rmax;} const rng[1] = {
1953         { 0, 4096 } };
1954     int  ix;
1955
1956     if (pOptions <= OPTPROC_EMIT_LIMIT)
1957         goto emit_ranges;
1958     optionNumericVal(pOptions, pOptDesc);
1959
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)
1964             return;
1965         if (rng[ix].rmax == LONG_MIN)
1966             continue;
1967         if (pOptDesc->optArg.argInt <= rng[ix].rmax)
1968             return;
1969     }
1970
1971     option_usage_fp = stderr;
1972
1973  emit_ranges:
1974 optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1);
1975 }
1976
1977 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1978 /**
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.
1983  */
1984 static void
1985 doOptProvider(tOptions* pOptions, tOptDesc* pOptDesc)
1986 {
1987     static teOptFileType const  type =
1988         FTYPE_MODE_MUST_EXIST + FTYPE_MODE_NO_OPEN;
1989     static tuFileMode           mode;
1990 #ifndef O_CLOEXEC
1991 #  define O_CLOEXEC 0
1992 #endif
1993     mode.file_flags = O_CLOEXEC;
1994
1995     /*
1996      * This function handles special invalid values for "pOptions"
1997      */
1998     optionFileCheck(pOptions, pOptDesc, type, mode);
1999 }
2000 /* extracted from optmain.tlib near line 1250 */
2001
2002 /**
2003  * The directory containing the data associated with gnutls-cli.
2004  */
2005 #ifndef  PKGDATADIR
2006 # define PKGDATADIR ""
2007 #endif
2008
2009 /**
2010  * Information about the person or institution that packaged gnutls-cli
2011  * for the current distribution.
2012  */
2013 #ifndef  WITH_PACKAGER
2014 # define gnutls_cli_packager_info NULL
2015 #else
2016 /** Packager information for gnutls-cli. */
2017 static char const gnutls_cli_packager_info[] =
2018     "Packaged by " WITH_PACKAGER
2019
2020 # ifdef WITH_PACKAGER_VERSION
2021         " ("WITH_PACKAGER_VERSION")"
2022 # endif
2023
2024 # ifdef WITH_PACKAGER_BUG_REPORTS
2025     "\nReport gnutls_cli bugs to " WITH_PACKAGER_BUG_REPORTS
2026 # endif
2027     "\n";
2028 #endif
2029 #ifndef __doxygen__
2030
2031 #endif /* __doxygen__ */
2032 /**
2033  * The option definitions for gnutls-cli.  The one structure that
2034  * binds them all.
2035  */
2036 tOptions gnutls_cliOptions = {
2037     OPTIONS_STRUCT_VERSION,
2038     0, NULL,                    /* original argc + argv    */
2039     ( OPTPROC_BASE
2040     + OPTPROC_ERRSTOP
2041     + OPTPROC_SHORTOPT
2042     + OPTPROC_LONGOPT
2043     + OPTPROC_NO_REQ_OPT
2044     + OPTPROC_NEGATIONS
2045     + OPTPROC_REORDER
2046     + OPTPROC_GNUUSAGE
2047     + OPTPROC_MISUSE ),
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 */
2057     /*
2058      *  Indexes to special options
2059      */
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 */
2064     },
2065     57 /* full option count */, 54 /* user option count */,
2066     gnutls_cli_full_usage, gnutls_cli_short_usage,
2067     NULL, NULL,
2068     PKGDATADIR, gnutls_cli_packager_info
2069 };
2070
2071 #if ENABLE_NLS
2072 /**
2073  * This code is designed to translate translatable option text for the
2074  * gnutls-cli program.  These translations happen upon entry
2075  * to optionProcess().
2076  */
2077 #include <stdio.h>
2078 #include <stdlib.h>
2079 #include <string.h>
2080 #include <unistd.h>
2081 #ifdef HAVE_DCGETTEXT
2082 # include <gettext.h>
2083 #endif
2084 #include <autoopts/usage-txt.h>
2085
2086 static char * AO_gettext(char const * pz);
2087 static void   coerce_it(void ** s);
2088
2089 /**
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.
2094  *
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).
2098  */
2099 static char *
2100 AO_gettext(char const * pz)
2101 {
2102     char * res;
2103     if (pz == NULL)
2104         return NULL;
2105 #ifdef HAVE_DCGETTEXT
2106     /*
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.
2110      */
2111     if (option_xlateable_txt.field_ct != 0) {
2112         res = dgettext("libopts", pz);
2113         if (res == pz)
2114             res = (char *)VOIDP(_(pz));
2115     } else
2116         res = (char *)VOIDP(_(pz));
2117 #else
2118     res = (char *)VOIDP(_(pz));
2119 #endif
2120     if (res == pz)
2121         return res;
2122     res = strdup(res);
2123     if (res == NULL) {
2124         fputs(_("No memory for duping translated strings\n"), stderr);
2125         exit(GNUTLS_CLI_EXIT_FAILURE);
2126     }
2127     return res;
2128 }
2129
2130 /**
2131  * All the pointers we use are marked "* const", but they are stored in
2132  * writable memory.  Coerce the mutability and set the pointer.
2133  */
2134 static void coerce_it(void ** s) { *s = AO_gettext(*s);
2135 }
2136
2137 /**
2138  * Translate all the translatable strings in the gnutls_cliOptions
2139  * structure defined above.  This is done only once.
2140  */
2141 static void
2142 translate_option_strings(void)
2143 {
2144     tOptions * const opts = &gnutls_cliOptions;
2145
2146     /*
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.
2149      */
2150     if (option_xlateable_txt.field_ct != 0) {
2151         /*
2152          *  Do the translations.  The first pointer follows the field count
2153          *  field.  The field count field is the size of a pointer.
2154          */
2155         char ** ppz = (char**)VOIDP(&(option_xlateable_txt));
2156         int     ix  = option_xlateable_txt.field_ct;
2157
2158         do {
2159             ppz++; /* skip over field_ct */
2160             *ppz = AO_gettext(*ppz);
2161         } while (--ix > 0);
2162         /* prevent re-translation and disable "libopts" domain lookup */
2163         option_xlateable_txt.field_ct = 0;
2164
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)));
2171         {
2172             tOptDesc * od = opts->pOptDesc;
2173             for (ix = opts->optCt; ix > 0; ix--, od++)
2174                 coerce_it(VOIDP(&(od->pzText)));
2175         }
2176     }
2177 }
2178 #endif /* ENABLE_NLS */
2179
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) {
2183   /* TRANSLATORS:
2184
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.
2189    
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.
2194    
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.
2198    */
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"));
2205
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"));
2217
2218   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2219   puts(_("Enable debugging"));
2220
2221   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2222   puts(_("More verbose output"));
2223
2224   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2225   puts(_("Enable trust on first use authentication"));
2226
2227   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2228   puts(_("Fail to connect if a known certificate has changed"));
2229
2230   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2231   puts(_("Enable DANE certificate verification (DNSSEC)"));
2232
2233   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2234   puts(_("Use the local DNS server for DNSSEC resolving"));
2235
2236   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2237   puts(_("Enable CA certificate verification"));
2238
2239   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2240   puts(_("Enable OCSP certificate verification"));
2241
2242   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2243   puts(_("Establish a session and resume"));
2244
2245   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2246   puts(_("Establish a session and rehandshake"));
2247
2248   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2249   puts(_("Connect, establish a plain session and start TLS"));
2250
2251   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2252   puts(_("an alias for the 'starttls-proto' option"));
2253
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)"));
2257
2258   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2259   puts(_("Use DTLS (datagram TLS) over UDP"));
2260
2261   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2262   puts(_("Set MTU for datagram TLS"));
2263
2264   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2265   puts(_("Send CR LF instead of LF"));
2266
2267   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2268   puts(_("Use DER format for certificates to read from"));
2269
2270   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2271   puts(_("Send the openpgp fingerprint, instead of the key"));
2272
2273   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2274   puts(_("Print peer's certificate in PEM format"));
2275
2276   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2277   puts(_("Save the peer's certificate chain in the specified file in PEM format"));
2278
2279   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2280   puts(_("Save the peer's OCSP status response in the provided file"));
2281
2282   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2283   puts(_("The minimum number of bits allowed for DH"));
2284
2285   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2286   puts(_("Priorities string"));
2287
2288   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2289   puts(_("Certificate file or PKCS #11 URL to use"));
2290
2291   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2292   puts(_("CRL file to use"));
2293
2294   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2295   puts(_("PGP Key file to use"));
2296
2297   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2298   puts(_("PGP Key ring file to use"));
2299
2300   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2301   puts(_("PGP Public Key (certificate) file to use"));
2302
2303   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2304   puts(_("X.509 key file or PKCS #11 URL to use"));
2305
2306   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2307   puts(_("X.509 Certificate file or PKCS #11 URL to use"));
2308
2309   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2310   puts(_("PGP subkey to use (hex or auto)"));
2311
2312   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2313   puts(_("SRP username to use"));
2314
2315   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2316   puts(_("SRP password to use"));
2317
2318   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2319   puts(_("PSK username to use"));
2320
2321   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2322   puts(_("PSK key (in hex) to use"));
2323
2324   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2325   puts(_("The port or service to connect to"));
2326
2327   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2328   puts(_("Don't abort program if server certificate can't be validated"));
2329
2330   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2331   puts(_("Use length-hiding padding to prevent traffic analysis"));
2332
2333   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2334   puts(_("Benchmark individual ciphers"));
2335
2336   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2337   puts(_("Benchmark TLS key exchange methods"));
2338
2339   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2340   puts(_("Benchmark TLS ciphers"));
2341
2342   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2343   puts(_("Print a list of the supported algorithms and modes"));
2344
2345   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2346   puts(_("Print a list of the supported priority strings"));
2347
2348   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2349   puts(_("Don't allow session tickets"));
2350
2351   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2352   puts(_("Offer SRTP profiles"));
2353
2354   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2355   puts(_("Application layer protocol"));
2356
2357   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2358   puts(_("Activate heartbeat support"));
2359
2360   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2361   puts(_("The maximum record size to advertize"));
2362
2363   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2364   puts(_("Do not send a Server Name Indication (SNI)"));
2365
2366   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2367   puts(_("Disable all the TLS extensions"));
2368
2369   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2370   puts(_("Inline commands of the form ^<cmd>^"));
2371
2372   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2373   puts(_("Change the default delimiter for inline commands."));
2374
2375   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2376   puts(_("Specify the PKCS #11 provider library"));
2377
2378   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2379   puts(_("Reports the status of the FIPS140-2 mode in gnutls library"));
2380
2381   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2382   puts(_("display extended usage information and exit"));
2383
2384   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2385   puts(_("extended usage information passed thru pager"));
2386
2387   /* referenced via gnutls_cliOptions.pOptDesc->pzText */
2388   puts(_("output version information and exit"));
2389
2390   /* referenced via gnutls_cliOptions.pzUsageTitle */
2391   puts(_("gnutls-cli - GnuTLS client\n\
2392 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [hostname]\n"));
2393
2394   /* referenced via gnutls_cliOptions.pzExplain */
2395   puts(_("\n"));
2396
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"));
2401
2402   /* referenced via gnutls_cliOptions.pzFullVersion */
2403   puts(_("gnutls-cli 3.4.11"));
2404
2405   /* referenced via gnutls_cliOptions.pzFullUsage */
2406   puts(_("<<<NOT-FOUND>>>"));
2407
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"
2555   puts(_("write"));
2556 #line 943 "../makeshell.c"
2557   puts(_("write"));
2558 #line 273 "../usage.c"
2559   puts(_("write"));
2560 #line 414 "../usage.c"
2561   puts(_("write"));
2562 #line 624 "../usage.c"
2563   puts(_("write"));
2564 #line 174 "../version.c"
2565   puts(_("write"));
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 */
2581
2582   /* USAGE-TEXT: */
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"
2609   puts(_("\n"
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"
2632   puts(_(" %3s %s"));
2633 #line 1310 "../usage.c"
2634   puts(_(" %3s %s"));
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"
2642   puts(_("\n"
2643        "Please send bug reports to:  <%s>\n"));
2644 #line 100 "../version.c"
2645   puts(_("\n"
2646        "Please send bug reports to:  <%s>\n"));
2647 #line 129 "../version.c"
2648   puts(_("\n"
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"
2653   puts(_("\n"
2654        "The following option preset mechanisms are supported:\n"));
2655 #line 1192 "../usage.c"
2656   puts(_("\n"
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"
2673   puts(_(", or\n"));
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 */
2702 }
2703 #endif /* uncompilable code */
2704 #ifdef  __cplusplus
2705 }
2706 #endif
2707 /* cli-args.c ends here */