1ea906c41SOllivier Robert /* 2ea906c41SOllivier Robert * EDIT THIS FILE WITH CAUTION (ntp-keygen-opts.c) 3ea906c41SOllivier Robert * 4*09100258SXin LI * It has been AutoGen-ed February 27, 2018 at 05:15:44 PM by AutoGen 5.18.5 5ea906c41SOllivier Robert * From the definitions ntp-keygen-opts.def 6ea906c41SOllivier Robert * and the template file options 7ea906c41SOllivier Robert * 82b15cb3dSCy Schubert * Generated from AutoOpts 41:0:16 templates. 92b15cb3dSCy Schubert * 102b15cb3dSCy Schubert * AutoOpts is a copyrighted work. This source file is not encumbered 112b15cb3dSCy Schubert * by AutoOpts licensing, but is provided under the licensing terms chosen 122b15cb3dSCy Schubert * by the ntp-keygen author or copyright holder. AutoOpts is 132b15cb3dSCy Schubert * licensed under the terms of the LGPL. The redistributable library 142b15cb3dSCy Schubert * (``libopts'') is licensed under the terms of either the LGPL or, at the 152b15cb3dSCy Schubert * users discretion, the BSD license. See the AutoOpts and/or libopts sources 162b15cb3dSCy Schubert * for details. 172b15cb3dSCy Schubert * 182b15cb3dSCy Schubert * The ntp-keygen program is copyrighted and licensed 192b15cb3dSCy Schubert * under the following terms: 202b15cb3dSCy Schubert * 21f0574f5cSXin LI * Copyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved. 222b15cb3dSCy Schubert * This is free software. It is licensed for use, modification and 232b15cb3dSCy Schubert * redistribution under the terms of the NTP License, copies of which 242b15cb3dSCy Schubert * can be seen at: 252b15cb3dSCy Schubert * <http://ntp.org/license> 262b15cb3dSCy Schubert * <http://opensource.org/licenses/ntp-license.php> 272b15cb3dSCy Schubert * 282b15cb3dSCy Schubert * Permission to use, copy, modify, and distribute this software and its 292b15cb3dSCy Schubert * documentation for any purpose with or without fee is hereby granted, 302b15cb3dSCy Schubert * provided that the above copyright notice appears in all copies and that 312b15cb3dSCy Schubert * both the copyright notice and this permission notice appear in 322b15cb3dSCy Schubert * supporting documentation, and that the name The University of Delaware not be used in 332b15cb3dSCy Schubert * advertising or publicity pertaining to distribution of the software 342b15cb3dSCy Schubert * without specific, written prior permission. The University of Delaware and Network Time Foundation makes no 352b15cb3dSCy Schubert * representations about the suitability this software for any purpose. It 362b15cb3dSCy Schubert * is provided "as is" without express or implied warranty. 37ea906c41SOllivier Robert */ 38ea906c41SOllivier Robert 392b15cb3dSCy Schubert #ifndef __doxygen__ 402b15cb3dSCy Schubert #define OPTION_CODE_COMPILE 1 412b15cb3dSCy Schubert #include "ntp-keygen-opts.h" 422b15cb3dSCy Schubert #include <sys/types.h> 43ea906c41SOllivier Robert 44ea906c41SOllivier Robert #include <limits.h> 45ea906c41SOllivier Robert #include <stdio.h> 462b15cb3dSCy Schubert #include <stdlib.h> 472b15cb3dSCy Schubert #include <errno.h> 48ea906c41SOllivier Robert 49ea906c41SOllivier Robert #ifdef __cplusplus 50ea906c41SOllivier Robert extern "C" { 51ea906c41SOllivier Robert #endif 522b15cb3dSCy Schubert extern FILE * option_usage_fp; 532b15cb3dSCy Schubert #define zCopyright (ntp_keygen_opt_strs+0) 54f0574f5cSXin LI #define zLicenseDescrip (ntp_keygen_opt_strs+353) 55ea906c41SOllivier Robert 56ea906c41SOllivier Robert /* 57ea906c41SOllivier Robert * global included definitions 58ea906c41SOllivier Robert */ 59ea906c41SOllivier Robert #include <stdlib.h> 602b15cb3dSCy Schubert 61ea906c41SOllivier Robert #ifdef __windows 62ea906c41SOllivier Robert extern int atoi(const char*); 63ea906c41SOllivier Robert #else 64ea906c41SOllivier Robert # include <stdlib.h> 65ea906c41SOllivier Robert #endif 66ea906c41SOllivier Robert 67ea906c41SOllivier Robert #ifndef NULL 68ea906c41SOllivier Robert # define NULL 0 69ea906c41SOllivier Robert #endif 702b15cb3dSCy Schubert 712b15cb3dSCy Schubert /** 722b15cb3dSCy Schubert * static const strings for ntp-keygen options 73ea906c41SOllivier Robert */ 74*09100258SXin LI static char const ntp_keygen_opt_strs[2442] = 75*09100258SXin LI /* 0 */ "ntp-keygen (ntp) 4.2.8p11\n" 76f0574f5cSXin LI "Copyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved.\n" 772b15cb3dSCy Schubert "This is free software. It is licensed for use, modification and\n" 782b15cb3dSCy Schubert "redistribution under the terms of the NTP License, copies of which\n" 792b15cb3dSCy Schubert "can be seen at:\n" 802b15cb3dSCy Schubert " <http://ntp.org/license>\n" 812b15cb3dSCy Schubert " <http://opensource.org/licenses/ntp-license.php>\n\0" 82f0574f5cSXin LI /* 353 */ "Permission to use, copy, modify, and distribute this software and its\n" 832b15cb3dSCy Schubert "documentation for any purpose with or without fee is hereby granted,\n" 842b15cb3dSCy Schubert "provided that the above copyright notice appears in all copies and that\n" 852b15cb3dSCy Schubert "both the copyright notice and this permission notice appear in supporting\n" 862b15cb3dSCy Schubert "documentation, and that the name The University of Delaware not be used in\n" 872b15cb3dSCy Schubert "advertising or publicity pertaining to distribution of the software without\n" 882b15cb3dSCy Schubert "specific, written prior permission. The University of Delaware and Network\n" 892b15cb3dSCy Schubert "Time Foundation makes no representations about the suitability this\n" 902b15cb3dSCy Schubert "software for any purpose. It is provided \"as is\" without express or\n" 912b15cb3dSCy Schubert "implied warranty.\n\0" 92f0574f5cSXin LI /* 1021 */ "identity modulus bits\0" 93f0574f5cSXin LI /* 1043 */ "IMBITS\0" 94f0574f5cSXin LI /* 1050 */ "imbits\0" 95f0574f5cSXin LI /* 1057 */ "certificate scheme\0" 96f0574f5cSXin LI /* 1076 */ "CERTIFICATE\0" 97f0574f5cSXin LI /* 1088 */ "certificate\0" 98f0574f5cSXin LI /* 1100 */ "privatekey cipher\0" 99f0574f5cSXin LI /* 1118 */ "CIPHER\0" 100f0574f5cSXin LI /* 1125 */ "cipher\0" 101f0574f5cSXin LI /* 1132 */ "Increase debug verbosity level\0" 102f0574f5cSXin LI /* 1163 */ "DEBUG_LEVEL\0" 103f0574f5cSXin LI /* 1175 */ "debug-level\0" 104f0574f5cSXin LI /* 1187 */ "Set the debug verbosity level\0" 105f0574f5cSXin LI /* 1217 */ "SET_DEBUG_LEVEL\0" 106f0574f5cSXin LI /* 1233 */ "set-debug-level\0" 107f0574f5cSXin LI /* 1249 */ "Write IFF or GQ identity keys\0" 108f0574f5cSXin LI /* 1279 */ "ID_KEY\0" 109f0574f5cSXin LI /* 1286 */ "id-key\0" 110f0574f5cSXin LI /* 1293 */ "Generate GQ parameters and keys\0" 111f0574f5cSXin LI /* 1325 */ "GQ_PARAMS\0" 112f0574f5cSXin LI /* 1335 */ "gq-params\0" 113f0574f5cSXin LI /* 1345 */ "generate RSA host key\0" 114f0574f5cSXin LI /* 1367 */ "HOST_KEY\0" 115f0574f5cSXin LI /* 1376 */ "host-key\0" 116f0574f5cSXin LI /* 1385 */ "generate IFF parameters\0" 117f0574f5cSXin LI /* 1409 */ "IFFKEY\0" 118f0574f5cSXin LI /* 1416 */ "iffkey\0" 119f0574f5cSXin LI /* 1423 */ "set Autokey group name\0" 120f0574f5cSXin LI /* 1446 */ "IDENT\0" 121f0574f5cSXin LI /* 1452 */ "ident\0" 122f0574f5cSXin LI /* 1458 */ "set certificate lifetime\0" 123f0574f5cSXin LI /* 1483 */ "LIFETIME\0" 124f0574f5cSXin LI /* 1492 */ "lifetime\0" 125*09100258SXin LI /* 1501 */ "prime modulus\0" 126*09100258SXin LI /* 1515 */ "MODULUS\0" 127*09100258SXin LI /* 1523 */ "modulus\0" 128*09100258SXin LI /* 1531 */ "generate symmetric keys\0" 129*09100258SXin LI /* 1555 */ "MD5KEY\0" 130*09100258SXin LI /* 1562 */ "md5key\0" 131*09100258SXin LI /* 1569 */ "generate PC private certificate\0" 132*09100258SXin LI /* 1601 */ "PVT_CERT\0" 133*09100258SXin LI /* 1610 */ "pvt-cert\0" 134*09100258SXin LI /* 1619 */ "local private password\0" 135*09100258SXin LI /* 1642 */ "PASSWORD\0" 136*09100258SXin LI /* 1651 */ "password\0" 137*09100258SXin LI /* 1660 */ "export IFF or GQ group keys with password\0" 138*09100258SXin LI /* 1702 */ "EXPORT_PASSWD\0" 139*09100258SXin LI /* 1716 */ "export-passwd\0" 140*09100258SXin LI /* 1730 */ "set host and optionally group name\0" 141*09100258SXin LI /* 1765 */ "SUBJECT_NAME\0" 142*09100258SXin LI /* 1778 */ "subject-name\0" 143*09100258SXin LI /* 1791 */ "generate sign key (RSA or DSA)\0" 144*09100258SXin LI /* 1822 */ "SIGN_KEY\0" 145*09100258SXin LI /* 1831 */ "sign-key\0" 146*09100258SXin LI /* 1840 */ "trusted certificate (TC scheme)\0" 147*09100258SXin LI /* 1872 */ "TRUSTED_CERT\0" 148*09100258SXin LI /* 1885 */ "trusted-cert\0" 149*09100258SXin LI /* 1898 */ "generate <num> MV parameters\0" 150*09100258SXin LI /* 1927 */ "MV_PARAMS\0" 151*09100258SXin LI /* 1937 */ "mv-params\0" 152*09100258SXin LI /* 1947 */ "update <num> MV keys\0" 153*09100258SXin LI /* 1968 */ "MV_KEYS\0" 154*09100258SXin LI /* 1976 */ "mv-keys\0" 155*09100258SXin LI /* 1984 */ "display extended usage information and exit\0" 156*09100258SXin LI /* 2028 */ "help\0" 157*09100258SXin LI /* 2033 */ "extended usage information passed thru pager\0" 158*09100258SXin LI /* 2078 */ "more-help\0" 159*09100258SXin LI /* 2088 */ "output version information and exit\0" 160*09100258SXin LI /* 2124 */ "version\0" 161*09100258SXin LI /* 2132 */ "save the option state to a config file\0" 162*09100258SXin LI /* 2171 */ "save-opts\0" 163*09100258SXin LI /* 2181 */ "load options from a config file\0" 164*09100258SXin LI /* 2213 */ "LOAD_OPTS\0" 165*09100258SXin LI /* 2223 */ "no-load-opts\0" 166*09100258SXin LI /* 2236 */ "no\0" 167*09100258SXin LI /* 2239 */ "NTP_KEYGEN\0" 168*09100258SXin LI /* 2250 */ "ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p11\n" 1692b15cb3dSCy Schubert "Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0" 170*09100258SXin LI /* 2365 */ "$HOME\0" 171*09100258SXin LI /* 2371 */ ".\0" 172*09100258SXin LI /* 2373 */ ".ntprc\0" 173*09100258SXin LI /* 2380 */ "http://bugs.ntp.org, bugs@ntp.org\0" 174*09100258SXin LI /* 2414 */ "\n\0" 175*09100258SXin LI /* 2416 */ "ntp-keygen (ntp) 4.2.8p11"; 1762b15cb3dSCy Schubert 1772b15cb3dSCy Schubert /** 1782b15cb3dSCy Schubert * imbits option description: 1792b15cb3dSCy Schubert */ 1802b15cb3dSCy Schubert #ifdef AUTOKEY 1812b15cb3dSCy Schubert /** Descriptive text for the imbits option */ 182f0574f5cSXin LI #define IMBITS_DESC (ntp_keygen_opt_strs+1021) 1832b15cb3dSCy Schubert /** Upper-cased name for the imbits option */ 184f0574f5cSXin LI #define IMBITS_NAME (ntp_keygen_opt_strs+1043) 1852b15cb3dSCy Schubert /** Name string for the imbits option */ 186f0574f5cSXin LI #define IMBITS_name (ntp_keygen_opt_strs+1050) 1872b15cb3dSCy Schubert /** Compiled in flag settings for the imbits option */ 1882b15cb3dSCy Schubert #define IMBITS_FLAGS (OPTST_DISABLED \ 1892b15cb3dSCy Schubert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 1902b15cb3dSCy Schubert 1912b15cb3dSCy Schubert #else /* disable imbits */ 1922b15cb3dSCy Schubert #define IMBITS_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 1932b15cb3dSCy Schubert #define IMBITS_NAME NULL 1942b15cb3dSCy Schubert #define IMBITS_DESC NULL 1952b15cb3dSCy Schubert #define IMBITS_name NULL 1962b15cb3dSCy Schubert #endif /* AUTOKEY */ 1972b15cb3dSCy Schubert 1982b15cb3dSCy Schubert /** 1992b15cb3dSCy Schubert * certificate option description: 2002b15cb3dSCy Schubert */ 2012b15cb3dSCy Schubert #ifdef AUTOKEY 2022b15cb3dSCy Schubert /** Descriptive text for the certificate option */ 203f0574f5cSXin LI #define CERTIFICATE_DESC (ntp_keygen_opt_strs+1057) 2042b15cb3dSCy Schubert /** Upper-cased name for the certificate option */ 205f0574f5cSXin LI #define CERTIFICATE_NAME (ntp_keygen_opt_strs+1076) 2062b15cb3dSCy Schubert /** Name string for the certificate option */ 207f0574f5cSXin LI #define CERTIFICATE_name (ntp_keygen_opt_strs+1088) 2082b15cb3dSCy Schubert /** Compiled in flag settings for the certificate option */ 209ea906c41SOllivier Robert #define CERTIFICATE_FLAGS (OPTST_DISABLED \ 210ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 211ea906c41SOllivier Robert 2122b15cb3dSCy Schubert #else /* disable certificate */ 213ea906c41SOllivier Robert #define CERTIFICATE_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 2142b15cb3dSCy Schubert #define CERTIFICATE_NAME NULL 2152b15cb3dSCy Schubert #define CERTIFICATE_DESC NULL 2162b15cb3dSCy Schubert #define CERTIFICATE_name NULL 2172b15cb3dSCy Schubert #endif /* AUTOKEY */ 218ea906c41SOllivier Robert 2192b15cb3dSCy Schubert /** 2202b15cb3dSCy Schubert * cipher option description: 221ea906c41SOllivier Robert */ 2222b15cb3dSCy Schubert #ifdef AUTOKEY 2232b15cb3dSCy Schubert /** Descriptive text for the cipher option */ 224f0574f5cSXin LI #define CIPHER_DESC (ntp_keygen_opt_strs+1100) 2252b15cb3dSCy Schubert /** Upper-cased name for the cipher option */ 226f0574f5cSXin LI #define CIPHER_NAME (ntp_keygen_opt_strs+1118) 2272b15cb3dSCy Schubert /** Name string for the cipher option */ 228f0574f5cSXin LI #define CIPHER_name (ntp_keygen_opt_strs+1125) 2292b15cb3dSCy Schubert /** Compiled in flag settings for the cipher option */ 2302b15cb3dSCy Schubert #define CIPHER_FLAGS (OPTST_DISABLED \ 231ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 232ea906c41SOllivier Robert 2332b15cb3dSCy Schubert #else /* disable cipher */ 2342b15cb3dSCy Schubert #define CIPHER_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 2352b15cb3dSCy Schubert #define CIPHER_NAME NULL 2362b15cb3dSCy Schubert #define CIPHER_DESC NULL 2372b15cb3dSCy Schubert #define CIPHER_name NULL 2382b15cb3dSCy Schubert #endif /* AUTOKEY */ 239ea906c41SOllivier Robert 2402b15cb3dSCy Schubert /** 2412b15cb3dSCy Schubert * debug-level option description: 242ea906c41SOllivier Robert */ 2432b15cb3dSCy Schubert /** Descriptive text for the debug-level option */ 244f0574f5cSXin LI #define DEBUG_LEVEL_DESC (ntp_keygen_opt_strs+1132) 2452b15cb3dSCy Schubert /** Upper-cased name for the debug-level option */ 246f0574f5cSXin LI #define DEBUG_LEVEL_NAME (ntp_keygen_opt_strs+1163) 2472b15cb3dSCy Schubert /** Name string for the debug-level option */ 248f0574f5cSXin LI #define DEBUG_LEVEL_name (ntp_keygen_opt_strs+1175) 2492b15cb3dSCy Schubert /** Compiled in flag settings for the debug-level option */ 2502b15cb3dSCy Schubert #define DEBUG_LEVEL_FLAGS (OPTST_DISABLED) 2512b15cb3dSCy Schubert 2522b15cb3dSCy Schubert /** 2532b15cb3dSCy Schubert * set-debug-level option description: 2542b15cb3dSCy Schubert */ 2552b15cb3dSCy Schubert /** Descriptive text for the set-debug-level option */ 256f0574f5cSXin LI #define SET_DEBUG_LEVEL_DESC (ntp_keygen_opt_strs+1187) 2572b15cb3dSCy Schubert /** Upper-cased name for the set-debug-level option */ 258f0574f5cSXin LI #define SET_DEBUG_LEVEL_NAME (ntp_keygen_opt_strs+1217) 2592b15cb3dSCy Schubert /** Name string for the set-debug-level option */ 260f0574f5cSXin LI #define SET_DEBUG_LEVEL_name (ntp_keygen_opt_strs+1233) 2612b15cb3dSCy Schubert /** Compiled in flag settings for the set-debug-level option */ 2622b15cb3dSCy Schubert #define SET_DEBUG_LEVEL_FLAGS (OPTST_DISABLED \ 2632b15cb3dSCy Schubert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 2642b15cb3dSCy Schubert 2652b15cb3dSCy Schubert /** 2662b15cb3dSCy Schubert * id-key option description: 2672b15cb3dSCy Schubert */ 2682b15cb3dSCy Schubert #ifdef AUTOKEY 2692b15cb3dSCy Schubert /** Descriptive text for the id-key option */ 270f0574f5cSXin LI #define ID_KEY_DESC (ntp_keygen_opt_strs+1249) 2712b15cb3dSCy Schubert /** Upper-cased name for the id-key option */ 272f0574f5cSXin LI #define ID_KEY_NAME (ntp_keygen_opt_strs+1279) 2732b15cb3dSCy Schubert /** Name string for the id-key option */ 274f0574f5cSXin LI #define ID_KEY_name (ntp_keygen_opt_strs+1286) 2752b15cb3dSCy Schubert /** Compiled in flag settings for the id-key option */ 276ea906c41SOllivier Robert #define ID_KEY_FLAGS (OPTST_DISABLED) 277ea906c41SOllivier Robert 2782b15cb3dSCy Schubert #else /* disable id-key */ 279ea906c41SOllivier Robert #define ID_KEY_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 2802b15cb3dSCy Schubert #define ID_KEY_NAME NULL 2812b15cb3dSCy Schubert #define ID_KEY_DESC NULL 2822b15cb3dSCy Schubert #define ID_KEY_name NULL 2832b15cb3dSCy Schubert #endif /* AUTOKEY */ 284ea906c41SOllivier Robert 2852b15cb3dSCy Schubert /** 2862b15cb3dSCy Schubert * gq-params option description: 287ea906c41SOllivier Robert */ 2882b15cb3dSCy Schubert #ifdef AUTOKEY 2892b15cb3dSCy Schubert /** Descriptive text for the gq-params option */ 290f0574f5cSXin LI #define GQ_PARAMS_DESC (ntp_keygen_opt_strs+1293) 2912b15cb3dSCy Schubert /** Upper-cased name for the gq-params option */ 292f0574f5cSXin LI #define GQ_PARAMS_NAME (ntp_keygen_opt_strs+1325) 2932b15cb3dSCy Schubert /** Name string for the gq-params option */ 294f0574f5cSXin LI #define GQ_PARAMS_name (ntp_keygen_opt_strs+1335) 2952b15cb3dSCy Schubert /** Compiled in flag settings for the gq-params option */ 296ea906c41SOllivier Robert #define GQ_PARAMS_FLAGS (OPTST_DISABLED) 297ea906c41SOllivier Robert 2982b15cb3dSCy Schubert #else /* disable gq-params */ 299ea906c41SOllivier Robert #define GQ_PARAMS_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 3002b15cb3dSCy Schubert #define GQ_PARAMS_NAME NULL 3012b15cb3dSCy Schubert #define GQ_PARAMS_DESC NULL 3022b15cb3dSCy Schubert #define GQ_PARAMS_name NULL 3032b15cb3dSCy Schubert #endif /* AUTOKEY */ 304ea906c41SOllivier Robert 3052b15cb3dSCy Schubert /** 3062b15cb3dSCy Schubert * host-key option description: 307ea906c41SOllivier Robert */ 3082b15cb3dSCy Schubert #ifdef AUTOKEY 3092b15cb3dSCy Schubert /** Descriptive text for the host-key option */ 310f0574f5cSXin LI #define HOST_KEY_DESC (ntp_keygen_opt_strs+1345) 3112b15cb3dSCy Schubert /** Upper-cased name for the host-key option */ 312f0574f5cSXin LI #define HOST_KEY_NAME (ntp_keygen_opt_strs+1367) 3132b15cb3dSCy Schubert /** Name string for the host-key option */ 314f0574f5cSXin LI #define HOST_KEY_name (ntp_keygen_opt_strs+1376) 3152b15cb3dSCy Schubert /** Compiled in flag settings for the host-key option */ 316ea906c41SOllivier Robert #define HOST_KEY_FLAGS (OPTST_DISABLED) 317ea906c41SOllivier Robert 3182b15cb3dSCy Schubert #else /* disable host-key */ 319ea906c41SOllivier Robert #define HOST_KEY_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 3202b15cb3dSCy Schubert #define HOST_KEY_NAME NULL 3212b15cb3dSCy Schubert #define HOST_KEY_DESC NULL 3222b15cb3dSCy Schubert #define HOST_KEY_name NULL 3232b15cb3dSCy Schubert #endif /* AUTOKEY */ 324ea906c41SOllivier Robert 3252b15cb3dSCy Schubert /** 3262b15cb3dSCy Schubert * iffkey option description: 327ea906c41SOllivier Robert */ 3282b15cb3dSCy Schubert #ifdef AUTOKEY 3292b15cb3dSCy Schubert /** Descriptive text for the iffkey option */ 330f0574f5cSXin LI #define IFFKEY_DESC (ntp_keygen_opt_strs+1385) 3312b15cb3dSCy Schubert /** Upper-cased name for the iffkey option */ 332f0574f5cSXin LI #define IFFKEY_NAME (ntp_keygen_opt_strs+1409) 3332b15cb3dSCy Schubert /** Name string for the iffkey option */ 334f0574f5cSXin LI #define IFFKEY_name (ntp_keygen_opt_strs+1416) 3352b15cb3dSCy Schubert /** Compiled in flag settings for the iffkey option */ 336ea906c41SOllivier Robert #define IFFKEY_FLAGS (OPTST_DISABLED) 337ea906c41SOllivier Robert 3382b15cb3dSCy Schubert #else /* disable iffkey */ 339ea906c41SOllivier Robert #define IFFKEY_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 3402b15cb3dSCy Schubert #define IFFKEY_NAME NULL 3412b15cb3dSCy Schubert #define IFFKEY_DESC NULL 3422b15cb3dSCy Schubert #define IFFKEY_name NULL 3432b15cb3dSCy Schubert #endif /* AUTOKEY */ 344ea906c41SOllivier Robert 3452b15cb3dSCy Schubert /** 3462b15cb3dSCy Schubert * ident option description: 347ea906c41SOllivier Robert */ 3482b15cb3dSCy Schubert #ifdef AUTOKEY 3492b15cb3dSCy Schubert /** Descriptive text for the ident option */ 350f0574f5cSXin LI #define IDENT_DESC (ntp_keygen_opt_strs+1423) 3512b15cb3dSCy Schubert /** Upper-cased name for the ident option */ 352f0574f5cSXin LI #define IDENT_NAME (ntp_keygen_opt_strs+1446) 3532b15cb3dSCy Schubert /** Name string for the ident option */ 354f0574f5cSXin LI #define IDENT_name (ntp_keygen_opt_strs+1452) 3552b15cb3dSCy Schubert /** Compiled in flag settings for the ident option */ 3562b15cb3dSCy Schubert #define IDENT_FLAGS (OPTST_DISABLED \ 3572b15cb3dSCy Schubert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 358ea906c41SOllivier Robert 3592b15cb3dSCy Schubert #else /* disable ident */ 3602b15cb3dSCy Schubert #define IDENT_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 3612b15cb3dSCy Schubert #define IDENT_NAME NULL 3622b15cb3dSCy Schubert #define IDENT_DESC NULL 3632b15cb3dSCy Schubert #define IDENT_name NULL 3642b15cb3dSCy Schubert #endif /* AUTOKEY */ 365ea906c41SOllivier Robert 3662b15cb3dSCy Schubert /** 3672b15cb3dSCy Schubert * lifetime option description: 368ea906c41SOllivier Robert */ 3692b15cb3dSCy Schubert #ifdef AUTOKEY 3702b15cb3dSCy Schubert /** Descriptive text for the lifetime option */ 371f0574f5cSXin LI #define LIFETIME_DESC (ntp_keygen_opt_strs+1458) 3722b15cb3dSCy Schubert /** Upper-cased name for the lifetime option */ 373f0574f5cSXin LI #define LIFETIME_NAME (ntp_keygen_opt_strs+1483) 3742b15cb3dSCy Schubert /** Name string for the lifetime option */ 375f0574f5cSXin LI #define LIFETIME_name (ntp_keygen_opt_strs+1492) 3762b15cb3dSCy Schubert /** Compiled in flag settings for the lifetime option */ 3772b15cb3dSCy Schubert #define LIFETIME_FLAGS (OPTST_DISABLED \ 3782b15cb3dSCy Schubert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 3792b15cb3dSCy Schubert 3802b15cb3dSCy Schubert #else /* disable lifetime */ 3812b15cb3dSCy Schubert #define LIFETIME_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 3822b15cb3dSCy Schubert #define LIFETIME_NAME NULL 3832b15cb3dSCy Schubert #define LIFETIME_DESC NULL 3842b15cb3dSCy Schubert #define LIFETIME_name NULL 3852b15cb3dSCy Schubert #endif /* AUTOKEY */ 3862b15cb3dSCy Schubert 3872b15cb3dSCy Schubert /** 3882b15cb3dSCy Schubert * modulus option description: 389ea906c41SOllivier Robert */ 3902b15cb3dSCy Schubert #ifdef AUTOKEY 3912b15cb3dSCy Schubert /** Descriptive text for the modulus option */ 392*09100258SXin LI #define MODULUS_DESC (ntp_keygen_opt_strs+1501) 3932b15cb3dSCy Schubert /** Upper-cased name for the modulus option */ 394*09100258SXin LI #define MODULUS_NAME (ntp_keygen_opt_strs+1515) 3952b15cb3dSCy Schubert /** Name string for the modulus option */ 396*09100258SXin LI #define MODULUS_name (ntp_keygen_opt_strs+1523) 3972b15cb3dSCy Schubert /** Compiled in flag settings for the modulus option */ 398ea906c41SOllivier Robert #define MODULUS_FLAGS (OPTST_DISABLED \ 399ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 400ea906c41SOllivier Robert 4012b15cb3dSCy Schubert #else /* disable modulus */ 402ea906c41SOllivier Robert #define MODULUS_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 4032b15cb3dSCy Schubert #define MODULUS_NAME NULL 4042b15cb3dSCy Schubert #define MODULUS_DESC NULL 4052b15cb3dSCy Schubert #define MODULUS_name NULL 4062b15cb3dSCy Schubert #endif /* AUTOKEY */ 407ea906c41SOllivier Robert 4082b15cb3dSCy Schubert /** 409*09100258SXin LI * md5key option description: 410*09100258SXin LI */ 411*09100258SXin LI /** Descriptive text for the md5key option */ 412*09100258SXin LI #define MD5KEY_DESC (ntp_keygen_opt_strs+1531) 413*09100258SXin LI /** Upper-cased name for the md5key option */ 414*09100258SXin LI #define MD5KEY_NAME (ntp_keygen_opt_strs+1555) 415*09100258SXin LI /** Name string for the md5key option */ 416*09100258SXin LI #define MD5KEY_name (ntp_keygen_opt_strs+1562) 417*09100258SXin LI /** Compiled in flag settings for the md5key option */ 418*09100258SXin LI #define MD5KEY_FLAGS (OPTST_DISABLED) 419*09100258SXin LI 420*09100258SXin LI /** 4212b15cb3dSCy Schubert * pvt-cert option description: 422ea906c41SOllivier Robert */ 4232b15cb3dSCy Schubert #ifdef AUTOKEY 4242b15cb3dSCy Schubert /** Descriptive text for the pvt-cert option */ 425*09100258SXin LI #define PVT_CERT_DESC (ntp_keygen_opt_strs+1569) 4262b15cb3dSCy Schubert /** Upper-cased name for the pvt-cert option */ 427*09100258SXin LI #define PVT_CERT_NAME (ntp_keygen_opt_strs+1601) 4282b15cb3dSCy Schubert /** Name string for the pvt-cert option */ 429*09100258SXin LI #define PVT_CERT_name (ntp_keygen_opt_strs+1610) 4302b15cb3dSCy Schubert /** Compiled in flag settings for the pvt-cert option */ 431ea906c41SOllivier Robert #define PVT_CERT_FLAGS (OPTST_DISABLED) 432ea906c41SOllivier Robert 4332b15cb3dSCy Schubert #else /* disable pvt-cert */ 434ea906c41SOllivier Robert #define PVT_CERT_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 4352b15cb3dSCy Schubert #define PVT_CERT_NAME NULL 4362b15cb3dSCy Schubert #define PVT_CERT_DESC NULL 4372b15cb3dSCy Schubert #define PVT_CERT_name NULL 4382b15cb3dSCy Schubert #endif /* AUTOKEY */ 439ea906c41SOllivier Robert 4402b15cb3dSCy Schubert /** 4412b15cb3dSCy Schubert * password option description: 442ea906c41SOllivier Robert */ 4432b15cb3dSCy Schubert #ifdef AUTOKEY 4442b15cb3dSCy Schubert /** Descriptive text for the password option */ 445*09100258SXin LI #define PASSWORD_DESC (ntp_keygen_opt_strs+1619) 4462b15cb3dSCy Schubert /** Upper-cased name for the password option */ 447*09100258SXin LI #define PASSWORD_NAME (ntp_keygen_opt_strs+1642) 4482b15cb3dSCy Schubert /** Name string for the password option */ 449*09100258SXin LI #define PASSWORD_name (ntp_keygen_opt_strs+1651) 4502b15cb3dSCy Schubert /** Compiled in flag settings for the password option */ 4512b15cb3dSCy Schubert #define PASSWORD_FLAGS (OPTST_DISABLED \ 452ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 453ea906c41SOllivier Robert 4542b15cb3dSCy Schubert #else /* disable password */ 4552b15cb3dSCy Schubert #define PASSWORD_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 4562b15cb3dSCy Schubert #define PASSWORD_NAME NULL 4572b15cb3dSCy Schubert #define PASSWORD_DESC NULL 4582b15cb3dSCy Schubert #define PASSWORD_name NULL 4592b15cb3dSCy Schubert #endif /* AUTOKEY */ 460ea906c41SOllivier Robert 4612b15cb3dSCy Schubert /** 4622b15cb3dSCy Schubert * export-passwd option description: 463ea906c41SOllivier Robert */ 4642b15cb3dSCy Schubert #ifdef AUTOKEY 4652b15cb3dSCy Schubert /** Descriptive text for the export-passwd option */ 466*09100258SXin LI #define EXPORT_PASSWD_DESC (ntp_keygen_opt_strs+1660) 4672b15cb3dSCy Schubert /** Upper-cased name for the export-passwd option */ 468*09100258SXin LI #define EXPORT_PASSWD_NAME (ntp_keygen_opt_strs+1702) 4692b15cb3dSCy Schubert /** Name string for the export-passwd option */ 470*09100258SXin LI #define EXPORT_PASSWD_name (ntp_keygen_opt_strs+1716) 4712b15cb3dSCy Schubert /** Compiled in flag settings for the export-passwd option */ 4722b15cb3dSCy Schubert #define EXPORT_PASSWD_FLAGS (OPTST_DISABLED \ 473ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 474ea906c41SOllivier Robert 4752b15cb3dSCy Schubert #else /* disable export-passwd */ 4762b15cb3dSCy Schubert #define EXPORT_PASSWD_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 4772b15cb3dSCy Schubert #define EXPORT_PASSWD_NAME NULL 4782b15cb3dSCy Schubert #define EXPORT_PASSWD_DESC NULL 4792b15cb3dSCy Schubert #define EXPORT_PASSWD_name NULL 4802b15cb3dSCy Schubert #endif /* AUTOKEY */ 481ea906c41SOllivier Robert 4822b15cb3dSCy Schubert /** 4832b15cb3dSCy Schubert * subject-name option description: 484ea906c41SOllivier Robert */ 4852b15cb3dSCy Schubert #ifdef AUTOKEY 4862b15cb3dSCy Schubert /** Descriptive text for the subject-name option */ 487*09100258SXin LI #define SUBJECT_NAME_DESC (ntp_keygen_opt_strs+1730) 4882b15cb3dSCy Schubert /** Upper-cased name for the subject-name option */ 489*09100258SXin LI #define SUBJECT_NAME_NAME (ntp_keygen_opt_strs+1765) 4902b15cb3dSCy Schubert /** Name string for the subject-name option */ 491*09100258SXin LI #define SUBJECT_NAME_name (ntp_keygen_opt_strs+1778) 4922b15cb3dSCy Schubert /** Compiled in flag settings for the subject-name option */ 493ea906c41SOllivier Robert #define SUBJECT_NAME_FLAGS (OPTST_DISABLED \ 494ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 495ea906c41SOllivier Robert 4962b15cb3dSCy Schubert #else /* disable subject-name */ 497ea906c41SOllivier Robert #define SUBJECT_NAME_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 4982b15cb3dSCy Schubert #define SUBJECT_NAME_NAME NULL 4992b15cb3dSCy Schubert #define SUBJECT_NAME_DESC NULL 5002b15cb3dSCy Schubert #define SUBJECT_NAME_name NULL 5012b15cb3dSCy Schubert #endif /* AUTOKEY */ 502ea906c41SOllivier Robert 5032b15cb3dSCy Schubert /** 504*09100258SXin LI * sign-key option description: 505*09100258SXin LI */ 506*09100258SXin LI #ifdef AUTOKEY 507*09100258SXin LI /** Descriptive text for the sign-key option */ 508*09100258SXin LI #define SIGN_KEY_DESC (ntp_keygen_opt_strs+1791) 509*09100258SXin LI /** Upper-cased name for the sign-key option */ 510*09100258SXin LI #define SIGN_KEY_NAME (ntp_keygen_opt_strs+1822) 511*09100258SXin LI /** Name string for the sign-key option */ 512*09100258SXin LI #define SIGN_KEY_name (ntp_keygen_opt_strs+1831) 513*09100258SXin LI /** Compiled in flag settings for the sign-key option */ 514*09100258SXin LI #define SIGN_KEY_FLAGS (OPTST_DISABLED \ 515*09100258SXin LI | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 516*09100258SXin LI 517*09100258SXin LI #else /* disable sign-key */ 518*09100258SXin LI #define SIGN_KEY_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 519*09100258SXin LI #define SIGN_KEY_NAME NULL 520*09100258SXin LI #define SIGN_KEY_DESC NULL 521*09100258SXin LI #define SIGN_KEY_name NULL 522*09100258SXin LI #endif /* AUTOKEY */ 523*09100258SXin LI 524*09100258SXin LI /** 5252b15cb3dSCy Schubert * trusted-cert option description: 526ea906c41SOllivier Robert */ 5272b15cb3dSCy Schubert #ifdef AUTOKEY 5282b15cb3dSCy Schubert /** Descriptive text for the trusted-cert option */ 529*09100258SXin LI #define TRUSTED_CERT_DESC (ntp_keygen_opt_strs+1840) 5302b15cb3dSCy Schubert /** Upper-cased name for the trusted-cert option */ 531*09100258SXin LI #define TRUSTED_CERT_NAME (ntp_keygen_opt_strs+1872) 5322b15cb3dSCy Schubert /** Name string for the trusted-cert option */ 533*09100258SXin LI #define TRUSTED_CERT_name (ntp_keygen_opt_strs+1885) 5342b15cb3dSCy Schubert /** Compiled in flag settings for the trusted-cert option */ 535ea906c41SOllivier Robert #define TRUSTED_CERT_FLAGS (OPTST_DISABLED) 536ea906c41SOllivier Robert 5372b15cb3dSCy Schubert #else /* disable trusted-cert */ 538ea906c41SOllivier Robert #define TRUSTED_CERT_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 5392b15cb3dSCy Schubert #define TRUSTED_CERT_NAME NULL 5402b15cb3dSCy Schubert #define TRUSTED_CERT_DESC NULL 5412b15cb3dSCy Schubert #define TRUSTED_CERT_name NULL 5422b15cb3dSCy Schubert #endif /* AUTOKEY */ 543ea906c41SOllivier Robert 5442b15cb3dSCy Schubert /** 5452b15cb3dSCy Schubert * mv-params option description: 546ea906c41SOllivier Robert */ 5472b15cb3dSCy Schubert #ifdef AUTOKEY 5482b15cb3dSCy Schubert /** Descriptive text for the mv-params option */ 549*09100258SXin LI #define MV_PARAMS_DESC (ntp_keygen_opt_strs+1898) 5502b15cb3dSCy Schubert /** Upper-cased name for the mv-params option */ 551*09100258SXin LI #define MV_PARAMS_NAME (ntp_keygen_opt_strs+1927) 5522b15cb3dSCy Schubert /** Name string for the mv-params option */ 553*09100258SXin LI #define MV_PARAMS_name (ntp_keygen_opt_strs+1937) 5542b15cb3dSCy Schubert /** Compiled in flag settings for the mv-params option */ 555ea906c41SOllivier Robert #define MV_PARAMS_FLAGS (OPTST_DISABLED \ 556ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 557ea906c41SOllivier Robert 5582b15cb3dSCy Schubert #else /* disable mv-params */ 559ea906c41SOllivier Robert #define MV_PARAMS_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 5602b15cb3dSCy Schubert #define MV_PARAMS_NAME NULL 5612b15cb3dSCy Schubert #define MV_PARAMS_DESC NULL 5622b15cb3dSCy Schubert #define MV_PARAMS_name NULL 5632b15cb3dSCy Schubert #endif /* AUTOKEY */ 564ea906c41SOllivier Robert 5652b15cb3dSCy Schubert /** 5662b15cb3dSCy Schubert * mv-keys option description: 567ea906c41SOllivier Robert */ 5682b15cb3dSCy Schubert #ifdef AUTOKEY 5692b15cb3dSCy Schubert /** Descriptive text for the mv-keys option */ 570*09100258SXin LI #define MV_KEYS_DESC (ntp_keygen_opt_strs+1947) 5712b15cb3dSCy Schubert /** Upper-cased name for the mv-keys option */ 572*09100258SXin LI #define MV_KEYS_NAME (ntp_keygen_opt_strs+1968) 5732b15cb3dSCy Schubert /** Name string for the mv-keys option */ 574*09100258SXin LI #define MV_KEYS_name (ntp_keygen_opt_strs+1976) 5752b15cb3dSCy Schubert /** Compiled in flag settings for the mv-keys option */ 576ea906c41SOllivier Robert #define MV_KEYS_FLAGS (OPTST_DISABLED \ 577ea906c41SOllivier Robert | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) 578ea906c41SOllivier Robert 5792b15cb3dSCy Schubert #else /* disable mv-keys */ 580ea906c41SOllivier Robert #define MV_KEYS_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 5812b15cb3dSCy Schubert #define MV_KEYS_NAME NULL 5822b15cb3dSCy Schubert #define MV_KEYS_DESC NULL 5832b15cb3dSCy Schubert #define MV_KEYS_name NULL 5842b15cb3dSCy Schubert #endif /* AUTOKEY */ 585ea906c41SOllivier Robert 586ea906c41SOllivier Robert /* 587ea906c41SOllivier Robert * Help/More_Help/Version option descriptions: 588ea906c41SOllivier Robert */ 589*09100258SXin LI #define HELP_DESC (ntp_keygen_opt_strs+1984) 590*09100258SXin LI #define HELP_name (ntp_keygen_opt_strs+2028) 5912b15cb3dSCy Schubert #ifdef HAVE_WORKING_FORK 592*09100258SXin LI #define MORE_HELP_DESC (ntp_keygen_opt_strs+2033) 593*09100258SXin LI #define MORE_HELP_name (ntp_keygen_opt_strs+2078) 5942b15cb3dSCy Schubert #define MORE_HELP_FLAGS (OPTST_IMM | OPTST_NO_INIT) 5952b15cb3dSCy Schubert #else 5962b15cb3dSCy Schubert #define MORE_HELP_DESC HELP_DESC 5972b15cb3dSCy Schubert #define MORE_HELP_name HELP_name 5982b15cb3dSCy Schubert #define MORE_HELP_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 5992b15cb3dSCy Schubert #endif 6002b15cb3dSCy Schubert #ifdef NO_OPTIONAL_OPT_ARGS 6012b15cb3dSCy Schubert # define VER_FLAGS (OPTST_IMM | OPTST_NO_INIT) 6022b15cb3dSCy Schubert #else 6032b15cb3dSCy Schubert # define VER_FLAGS (OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) | \ 6042b15cb3dSCy Schubert OPTST_ARG_OPTIONAL | OPTST_IMM | OPTST_NO_INIT) 6052b15cb3dSCy Schubert #endif 606*09100258SXin LI #define VER_DESC (ntp_keygen_opt_strs+2088) 607*09100258SXin LI #define VER_name (ntp_keygen_opt_strs+2124) 608*09100258SXin LI #define SAVE_OPTS_DESC (ntp_keygen_opt_strs+2132) 609*09100258SXin LI #define SAVE_OPTS_name (ntp_keygen_opt_strs+2171) 610*09100258SXin LI #define LOAD_OPTS_DESC (ntp_keygen_opt_strs+2181) 611*09100258SXin LI #define LOAD_OPTS_NAME (ntp_keygen_opt_strs+2213) 612*09100258SXin LI #define NO_LOAD_OPTS_name (ntp_keygen_opt_strs+2223) 613*09100258SXin LI #define LOAD_OPTS_pfx (ntp_keygen_opt_strs+2236) 6142b15cb3dSCy Schubert #define LOAD_OPTS_name (NO_LOAD_OPTS_name + 3) 6152b15cb3dSCy Schubert /** 616ea906c41SOllivier Robert * Declare option callback procedures 617ea906c41SOllivier Robert */ 6182b15cb3dSCy Schubert #ifdef AUTOKEY 6192b15cb3dSCy Schubert static tOptProc doOptImbits; 6202b15cb3dSCy Schubert #else /* not AUTOKEY */ 6212b15cb3dSCy Schubert # define doOptImbits NULL 6222b15cb3dSCy Schubert #endif /* def/not AUTOKEY */ 6232b15cb3dSCy Schubert #ifdef AUTOKEY 624ea906c41SOllivier Robert static tOptProc doOptModulus; 6252b15cb3dSCy Schubert #else /* not AUTOKEY */ 626ea906c41SOllivier Robert # define doOptModulus NULL 6272b15cb3dSCy Schubert #endif /* def/not AUTOKEY */ 628ea906c41SOllivier Robert extern tOptProc 6292b15cb3dSCy Schubert ntpOptionPrintVersion, optionBooleanVal, optionNestedVal, 6302b15cb3dSCy Schubert optionNumericVal, optionPagedUsage, optionResetOpt, 6312b15cb3dSCy Schubert optionStackArg, optionTimeDate, optionTimeVal, 6322b15cb3dSCy Schubert optionUnstackArg, optionVendorOption; 633ea906c41SOllivier Robert static tOptProc 6342b15cb3dSCy Schubert doOptDebug_Level, doUsageOpt; 6352b15cb3dSCy Schubert #define VER_PROC ntpOptionPrintVersion 636ea906c41SOllivier Robert 6372b15cb3dSCy Schubert /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 6382b15cb3dSCy Schubert /** 6392b15cb3dSCy Schubert * Define the ntp-keygen Option Descriptions. 6402b15cb3dSCy Schubert * This is an array of OPTION_CT entries, one for each 6412b15cb3dSCy Schubert * option that the ntp-keygen program responds to. 642ea906c41SOllivier Robert */ 643ea906c41SOllivier Robert static tOptDesc optDesc[OPTION_CT] = { 6442b15cb3dSCy Schubert { /* entry idx, value */ 0, VALUE_OPT_IMBITS, 6452b15cb3dSCy Schubert /* equiv idx, value */ 0, VALUE_OPT_IMBITS, 6462b15cb3dSCy Schubert /* equivalenced to */ NO_EQUIVALENT, 6472b15cb3dSCy Schubert /* min, max, act ct */ 0, 1, 0, 6482b15cb3dSCy Schubert /* opt state flags */ IMBITS_FLAGS, 0, 6492b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --imbits */ 6502b15cb3dSCy Schubert /* arg list/cookie */ NULL, 6512b15cb3dSCy Schubert /* must/cannot opts */ NULL, NULL, 6522b15cb3dSCy Schubert /* option proc */ doOptImbits, 6532b15cb3dSCy Schubert /* desc, NAME, name */ IMBITS_DESC, IMBITS_NAME, IMBITS_name, 6542b15cb3dSCy Schubert /* disablement strs */ NULL, NULL }, 6552b15cb3dSCy Schubert 6562b15cb3dSCy Schubert { /* entry idx, value */ 1, VALUE_OPT_CERTIFICATE, 6572b15cb3dSCy Schubert /* equiv idx, value */ 1, VALUE_OPT_CERTIFICATE, 658ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 659ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 660ea906c41SOllivier Robert /* opt state flags */ CERTIFICATE_FLAGS, 0, 6612b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --certificate */ 662ea906c41SOllivier Robert /* arg list/cookie */ NULL, 663ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 664ea906c41SOllivier Robert /* option proc */ NULL, 6652b15cb3dSCy Schubert /* desc, NAME, name */ CERTIFICATE_DESC, CERTIFICATE_NAME, CERTIFICATE_name, 666ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 667ea906c41SOllivier Robert 6682b15cb3dSCy Schubert { /* entry idx, value */ 2, VALUE_OPT_CIPHER, 6692b15cb3dSCy Schubert /* equiv idx, value */ 2, VALUE_OPT_CIPHER, 6702b15cb3dSCy Schubert /* equivalenced to */ NO_EQUIVALENT, 6712b15cb3dSCy Schubert /* min, max, act ct */ 0, 1, 0, 6722b15cb3dSCy Schubert /* opt state flags */ CIPHER_FLAGS, 0, 6732b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --cipher */ 6742b15cb3dSCy Schubert /* arg list/cookie */ NULL, 6752b15cb3dSCy Schubert /* must/cannot opts */ NULL, NULL, 6762b15cb3dSCy Schubert /* option proc */ NULL, 6772b15cb3dSCy Schubert /* desc, NAME, name */ CIPHER_DESC, CIPHER_NAME, CIPHER_name, 6782b15cb3dSCy Schubert /* disablement strs */ NULL, NULL }, 6792b15cb3dSCy Schubert 6802b15cb3dSCy Schubert { /* entry idx, value */ 3, VALUE_OPT_DEBUG_LEVEL, 6812b15cb3dSCy Schubert /* equiv idx, value */ 3, VALUE_OPT_DEBUG_LEVEL, 682ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 683ea906c41SOllivier Robert /* min, max, act ct */ 0, NOLIMIT, 0, 684ea906c41SOllivier Robert /* opt state flags */ DEBUG_LEVEL_FLAGS, 0, 6852b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --debug-level */ 686ea906c41SOllivier Robert /* arg list/cookie */ NULL, 687ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 6882b15cb3dSCy Schubert /* option proc */ doOptDebug_Level, 6892b15cb3dSCy Schubert /* desc, NAME, name */ DEBUG_LEVEL_DESC, DEBUG_LEVEL_NAME, DEBUG_LEVEL_name, 690ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 691ea906c41SOllivier Robert 6922b15cb3dSCy Schubert { /* entry idx, value */ 4, VALUE_OPT_SET_DEBUG_LEVEL, 6932b15cb3dSCy Schubert /* equiv idx, value */ 4, VALUE_OPT_SET_DEBUG_LEVEL, 694ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 695ea906c41SOllivier Robert /* min, max, act ct */ 0, NOLIMIT, 0, 696ea906c41SOllivier Robert /* opt state flags */ SET_DEBUG_LEVEL_FLAGS, 0, 6972b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --set-debug-level */ 698ea906c41SOllivier Robert /* arg list/cookie */ NULL, 699ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 7002b15cb3dSCy Schubert /* option proc */ optionNumericVal, 7012b15cb3dSCy Schubert /* desc, NAME, name */ SET_DEBUG_LEVEL_DESC, SET_DEBUG_LEVEL_NAME, SET_DEBUG_LEVEL_name, 702ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 703ea906c41SOllivier Robert 7042b15cb3dSCy Schubert { /* entry idx, value */ 5, VALUE_OPT_ID_KEY, 7052b15cb3dSCy Schubert /* equiv idx, value */ 5, VALUE_OPT_ID_KEY, 706ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 707ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 708ea906c41SOllivier Robert /* opt state flags */ ID_KEY_FLAGS, 0, 7092b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --id-key */ 710ea906c41SOllivier Robert /* arg list/cookie */ NULL, 711ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 712ea906c41SOllivier Robert /* option proc */ NULL, 7132b15cb3dSCy Schubert /* desc, NAME, name */ ID_KEY_DESC, ID_KEY_NAME, ID_KEY_name, 714ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 715ea906c41SOllivier Robert 7162b15cb3dSCy Schubert { /* entry idx, value */ 6, VALUE_OPT_GQ_PARAMS, 7172b15cb3dSCy Schubert /* equiv idx, value */ 6, VALUE_OPT_GQ_PARAMS, 718ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 719ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 720ea906c41SOllivier Robert /* opt state flags */ GQ_PARAMS_FLAGS, 0, 7212b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --gq-params */ 722ea906c41SOllivier Robert /* arg list/cookie */ NULL, 723ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 724ea906c41SOllivier Robert /* option proc */ NULL, 7252b15cb3dSCy Schubert /* desc, NAME, name */ GQ_PARAMS_DESC, GQ_PARAMS_NAME, GQ_PARAMS_name, 726ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 727ea906c41SOllivier Robert 7282b15cb3dSCy Schubert { /* entry idx, value */ 7, VALUE_OPT_HOST_KEY, 7292b15cb3dSCy Schubert /* equiv idx, value */ 7, VALUE_OPT_HOST_KEY, 730ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 731ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 732ea906c41SOllivier Robert /* opt state flags */ HOST_KEY_FLAGS, 0, 7332b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --host-key */ 734ea906c41SOllivier Robert /* arg list/cookie */ NULL, 735ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 736ea906c41SOllivier Robert /* option proc */ NULL, 7372b15cb3dSCy Schubert /* desc, NAME, name */ HOST_KEY_DESC, HOST_KEY_NAME, HOST_KEY_name, 738ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 739ea906c41SOllivier Robert 7402b15cb3dSCy Schubert { /* entry idx, value */ 8, VALUE_OPT_IFFKEY, 7412b15cb3dSCy Schubert /* equiv idx, value */ 8, VALUE_OPT_IFFKEY, 742ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 743ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 744ea906c41SOllivier Robert /* opt state flags */ IFFKEY_FLAGS, 0, 7452b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --iffkey */ 746ea906c41SOllivier Robert /* arg list/cookie */ NULL, 747ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 748ea906c41SOllivier Robert /* option proc */ NULL, 7492b15cb3dSCy Schubert /* desc, NAME, name */ IFFKEY_DESC, IFFKEY_NAME, IFFKEY_name, 750ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 751ea906c41SOllivier Robert 7522b15cb3dSCy Schubert { /* entry idx, value */ 9, VALUE_OPT_IDENT, 7532b15cb3dSCy Schubert /* equiv idx, value */ 9, VALUE_OPT_IDENT, 754ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 755ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 7562b15cb3dSCy Schubert /* opt state flags */ IDENT_FLAGS, 0, 7572b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --ident */ 758ea906c41SOllivier Robert /* arg list/cookie */ NULL, 759ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 760ea906c41SOllivier Robert /* option proc */ NULL, 7612b15cb3dSCy Schubert /* desc, NAME, name */ IDENT_DESC, IDENT_NAME, IDENT_name, 762ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 763ea906c41SOllivier Robert 7642b15cb3dSCy Schubert { /* entry idx, value */ 10, VALUE_OPT_LIFETIME, 7652b15cb3dSCy Schubert /* equiv idx, value */ 10, VALUE_OPT_LIFETIME, 7662b15cb3dSCy Schubert /* equivalenced to */ NO_EQUIVALENT, 7672b15cb3dSCy Schubert /* min, max, act ct */ 0, 1, 0, 7682b15cb3dSCy Schubert /* opt state flags */ LIFETIME_FLAGS, 0, 7692b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --lifetime */ 7702b15cb3dSCy Schubert /* arg list/cookie */ NULL, 7712b15cb3dSCy Schubert /* must/cannot opts */ NULL, NULL, 7722b15cb3dSCy Schubert /* option proc */ optionNumericVal, 7732b15cb3dSCy Schubert /* desc, NAME, name */ LIFETIME_DESC, LIFETIME_NAME, LIFETIME_name, 7742b15cb3dSCy Schubert /* disablement strs */ NULL, NULL }, 7752b15cb3dSCy Schubert 776*09100258SXin LI { /* entry idx, value */ 11, VALUE_OPT_MODULUS, 777*09100258SXin LI /* equiv idx, value */ 11, VALUE_OPT_MODULUS, 778ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 779ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 780ea906c41SOllivier Robert /* opt state flags */ MODULUS_FLAGS, 0, 7812b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --modulus */ 782ea906c41SOllivier Robert /* arg list/cookie */ NULL, 783ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 784ea906c41SOllivier Robert /* option proc */ doOptModulus, 7852b15cb3dSCy Schubert /* desc, NAME, name */ MODULUS_DESC, MODULUS_NAME, MODULUS_name, 786ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 787ea906c41SOllivier Robert 788*09100258SXin LI { /* entry idx, value */ 12, VALUE_OPT_MD5KEY, 789*09100258SXin LI /* equiv idx, value */ 12, VALUE_OPT_MD5KEY, 790*09100258SXin LI /* equivalenced to */ NO_EQUIVALENT, 791*09100258SXin LI /* min, max, act ct */ 0, 1, 0, 792*09100258SXin LI /* opt state flags */ MD5KEY_FLAGS, 0, 793*09100258SXin LI /* last opt argumnt */ { NULL }, /* --md5key */ 794*09100258SXin LI /* arg list/cookie */ NULL, 795*09100258SXin LI /* must/cannot opts */ NULL, NULL, 796*09100258SXin LI /* option proc */ NULL, 797*09100258SXin LI /* desc, NAME, name */ MD5KEY_DESC, MD5KEY_NAME, MD5KEY_name, 798*09100258SXin LI /* disablement strs */ NULL, NULL }, 799*09100258SXin LI 8002b15cb3dSCy Schubert { /* entry idx, value */ 13, VALUE_OPT_PVT_CERT, 8012b15cb3dSCy Schubert /* equiv idx, value */ 13, VALUE_OPT_PVT_CERT, 802ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 803ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 804ea906c41SOllivier Robert /* opt state flags */ PVT_CERT_FLAGS, 0, 8052b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --pvt-cert */ 806ea906c41SOllivier Robert /* arg list/cookie */ NULL, 807ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 808ea906c41SOllivier Robert /* option proc */ NULL, 8092b15cb3dSCy Schubert /* desc, NAME, name */ PVT_CERT_DESC, PVT_CERT_NAME, PVT_CERT_name, 810ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 811ea906c41SOllivier Robert 8122b15cb3dSCy Schubert { /* entry idx, value */ 14, VALUE_OPT_PASSWORD, 8132b15cb3dSCy Schubert /* equiv idx, value */ 14, VALUE_OPT_PASSWORD, 814ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 815ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 8162b15cb3dSCy Schubert /* opt state flags */ PASSWORD_FLAGS, 0, 8172b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --password */ 818ea906c41SOllivier Robert /* arg list/cookie */ NULL, 819ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 820ea906c41SOllivier Robert /* option proc */ NULL, 8212b15cb3dSCy Schubert /* desc, NAME, name */ PASSWORD_DESC, PASSWORD_NAME, PASSWORD_name, 822ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 823ea906c41SOllivier Robert 8242b15cb3dSCy Schubert { /* entry idx, value */ 15, VALUE_OPT_EXPORT_PASSWD, 8252b15cb3dSCy Schubert /* equiv idx, value */ 15, VALUE_OPT_EXPORT_PASSWD, 826ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 827ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 8282b15cb3dSCy Schubert /* opt state flags */ EXPORT_PASSWD_FLAGS, 0, 8292b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --export-passwd */ 830ea906c41SOllivier Robert /* arg list/cookie */ NULL, 831ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 832ea906c41SOllivier Robert /* option proc */ NULL, 8332b15cb3dSCy Schubert /* desc, NAME, name */ EXPORT_PASSWD_DESC, EXPORT_PASSWD_NAME, EXPORT_PASSWD_name, 834ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 835ea906c41SOllivier Robert 836*09100258SXin LI { /* entry idx, value */ 16, VALUE_OPT_SUBJECT_NAME, 837*09100258SXin LI /* equiv idx, value */ 16, VALUE_OPT_SUBJECT_NAME, 838ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 839ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 840ea906c41SOllivier Robert /* opt state flags */ SUBJECT_NAME_FLAGS, 0, 8412b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --subject-name */ 842ea906c41SOllivier Robert /* arg list/cookie */ NULL, 843ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 844ea906c41SOllivier Robert /* option proc */ NULL, 8452b15cb3dSCy Schubert /* desc, NAME, name */ SUBJECT_NAME_DESC, SUBJECT_NAME_NAME, SUBJECT_NAME_name, 846ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 847ea906c41SOllivier Robert 848*09100258SXin LI { /* entry idx, value */ 17, VALUE_OPT_SIGN_KEY, 849*09100258SXin LI /* equiv idx, value */ 17, VALUE_OPT_SIGN_KEY, 850*09100258SXin LI /* equivalenced to */ NO_EQUIVALENT, 851*09100258SXin LI /* min, max, act ct */ 0, 1, 0, 852*09100258SXin LI /* opt state flags */ SIGN_KEY_FLAGS, 0, 853*09100258SXin LI /* last opt argumnt */ { NULL }, /* --sign-key */ 854*09100258SXin LI /* arg list/cookie */ NULL, 855*09100258SXin LI /* must/cannot opts */ NULL, NULL, 856*09100258SXin LI /* option proc */ NULL, 857*09100258SXin LI /* desc, NAME, name */ SIGN_KEY_DESC, SIGN_KEY_NAME, SIGN_KEY_name, 858*09100258SXin LI /* disablement strs */ NULL, NULL }, 859*09100258SXin LI 8602b15cb3dSCy Schubert { /* entry idx, value */ 18, VALUE_OPT_TRUSTED_CERT, 8612b15cb3dSCy Schubert /* equiv idx, value */ 18, VALUE_OPT_TRUSTED_CERT, 862ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 863ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 864ea906c41SOllivier Robert /* opt state flags */ TRUSTED_CERT_FLAGS, 0, 8652b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --trusted-cert */ 866ea906c41SOllivier Robert /* arg list/cookie */ NULL, 867ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 868ea906c41SOllivier Robert /* option proc */ NULL, 8692b15cb3dSCy Schubert /* desc, NAME, name */ TRUSTED_CERT_DESC, TRUSTED_CERT_NAME, TRUSTED_CERT_name, 870ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 871ea906c41SOllivier Robert 8722b15cb3dSCy Schubert { /* entry idx, value */ 19, VALUE_OPT_MV_PARAMS, 8732b15cb3dSCy Schubert /* equiv idx, value */ 19, VALUE_OPT_MV_PARAMS, 874ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 875ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 876ea906c41SOllivier Robert /* opt state flags */ MV_PARAMS_FLAGS, 0, 8772b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --mv-params */ 878ea906c41SOllivier Robert /* arg list/cookie */ NULL, 879ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 880ea906c41SOllivier Robert /* option proc */ optionNumericVal, 8812b15cb3dSCy Schubert /* desc, NAME, name */ MV_PARAMS_DESC, MV_PARAMS_NAME, MV_PARAMS_name, 882ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 883ea906c41SOllivier Robert 8842b15cb3dSCy Schubert { /* entry idx, value */ 20, VALUE_OPT_MV_KEYS, 8852b15cb3dSCy Schubert /* equiv idx, value */ 20, VALUE_OPT_MV_KEYS, 886ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 887ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 888ea906c41SOllivier Robert /* opt state flags */ MV_KEYS_FLAGS, 0, 8892b15cb3dSCy Schubert /* last opt argumnt */ { NULL }, /* --mv-keys */ 890ea906c41SOllivier Robert /* arg list/cookie */ NULL, 891ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 892ea906c41SOllivier Robert /* option proc */ optionNumericVal, 8932b15cb3dSCy Schubert /* desc, NAME, name */ MV_KEYS_DESC, MV_KEYS_NAME, MV_KEYS_name, 894ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 895ea906c41SOllivier Robert 896ea906c41SOllivier Robert { /* entry idx, value */ INDEX_OPT_VERSION, VALUE_OPT_VERSION, 8972b15cb3dSCy Schubert /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_VERSION, 898ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 899ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 9002b15cb3dSCy Schubert /* opt state flags */ VER_FLAGS, AOUSE_VERSION, 901ea906c41SOllivier Robert /* last opt argumnt */ { NULL }, 902ea906c41SOllivier Robert /* arg list/cookie */ NULL, 903ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 9042b15cb3dSCy Schubert /* option proc */ VER_PROC, 9052b15cb3dSCy Schubert /* desc, NAME, name */ VER_DESC, NULL, VER_name, 906ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 907ea906c41SOllivier Robert 908ea906c41SOllivier Robert 909ea906c41SOllivier Robert 910ea906c41SOllivier Robert { /* entry idx, value */ INDEX_OPT_HELP, VALUE_OPT_HELP, 9112b15cb3dSCy Schubert /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_HELP, 912ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 913ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 9142b15cb3dSCy Schubert /* opt state flags */ OPTST_IMM | OPTST_NO_INIT, AOUSE_HELP, 915ea906c41SOllivier Robert /* last opt argumnt */ { NULL }, 916ea906c41SOllivier Robert /* arg list/cookie */ NULL, 917ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 918ea906c41SOllivier Robert /* option proc */ doUsageOpt, 9192b15cb3dSCy Schubert /* desc, NAME, name */ HELP_DESC, NULL, HELP_name, 920ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 921ea906c41SOllivier Robert 922ea906c41SOllivier Robert { /* entry idx, value */ INDEX_OPT_MORE_HELP, VALUE_OPT_MORE_HELP, 9232b15cb3dSCy Schubert /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_MORE_HELP, 924ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 925ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 9262b15cb3dSCy Schubert /* opt state flags */ MORE_HELP_FLAGS, AOUSE_MORE_HELP, 927ea906c41SOllivier Robert /* last opt argumnt */ { NULL }, 928ea906c41SOllivier Robert /* arg list/cookie */ NULL, 929ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 930ea906c41SOllivier Robert /* option proc */ optionPagedUsage, 9312b15cb3dSCy Schubert /* desc, NAME, name */ MORE_HELP_DESC, NULL, MORE_HELP_name, 932ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 933ea906c41SOllivier Robert 934ea906c41SOllivier Robert { /* entry idx, value */ INDEX_OPT_SAVE_OPTS, VALUE_OPT_SAVE_OPTS, 9352b15cb3dSCy Schubert /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_SAVE_OPTS, 936ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 937ea906c41SOllivier Robert /* min, max, act ct */ 0, 1, 0, 938ea906c41SOllivier Robert /* opt state flags */ OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) 9392b15cb3dSCy Schubert | OPTST_ARG_OPTIONAL | OPTST_NO_INIT, AOUSE_SAVE_OPTS, 940ea906c41SOllivier Robert /* last opt argumnt */ { NULL }, 941ea906c41SOllivier Robert /* arg list/cookie */ NULL, 942ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 943ea906c41SOllivier Robert /* option proc */ NULL, 9442b15cb3dSCy Schubert /* desc, NAME, name */ SAVE_OPTS_DESC, NULL, SAVE_OPTS_name, 945ea906c41SOllivier Robert /* disablement strs */ NULL, NULL }, 946ea906c41SOllivier Robert 947ea906c41SOllivier Robert { /* entry idx, value */ INDEX_OPT_LOAD_OPTS, VALUE_OPT_LOAD_OPTS, 9482b15cb3dSCy Schubert /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_LOAD_OPTS, 949ea906c41SOllivier Robert /* equivalenced to */ NO_EQUIVALENT, 950ea906c41SOllivier Robert /* min, max, act ct */ 0, NOLIMIT, 0, 9512b15cb3dSCy Schubert /* opt state flags */ OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) 9522b15cb3dSCy Schubert | OPTST_DISABLE_IMM, AOUSE_LOAD_OPTS, 953ea906c41SOllivier Robert /* last opt argumnt */ { NULL }, 954ea906c41SOllivier Robert /* arg list/cookie */ NULL, 955ea906c41SOllivier Robert /* must/cannot opts */ NULL, NULL, 956ea906c41SOllivier Robert /* option proc */ optionLoadOpt, 9572b15cb3dSCy Schubert /* desc, NAME, name */ LOAD_OPTS_DESC, LOAD_OPTS_NAME, LOAD_OPTS_name, 9582b15cb3dSCy Schubert /* disablement strs */ NO_LOAD_OPTS_name, LOAD_OPTS_pfx } 959ea906c41SOllivier Robert }; 960ea906c41SOllivier Robert 961ea906c41SOllivier Robert 9622b15cb3dSCy Schubert /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 9632b15cb3dSCy Schubert /** Reference to the upper cased version of ntp-keygen. */ 964*09100258SXin LI #define zPROGNAME (ntp_keygen_opt_strs+2239) 9652b15cb3dSCy Schubert /** Reference to the title line for ntp-keygen usage. */ 966*09100258SXin LI #define zUsageTitle (ntp_keygen_opt_strs+2250) 9672b15cb3dSCy Schubert /** ntp-keygen configuration file name. */ 968*09100258SXin LI #define zRcName (ntp_keygen_opt_strs+2373) 9692b15cb3dSCy Schubert /** Directories to search for ntp-keygen config files. */ 9702b15cb3dSCy Schubert static char const * const apzHomeList[3] = { 971*09100258SXin LI ntp_keygen_opt_strs+2365, 972*09100258SXin LI ntp_keygen_opt_strs+2371, 9732b15cb3dSCy Schubert NULL }; 9742b15cb3dSCy Schubert /** The ntp-keygen program bug email address. */ 975*09100258SXin LI #define zBugsAddr (ntp_keygen_opt_strs+2380) 9762b15cb3dSCy Schubert /** Clarification/explanation of what ntp-keygen does. */ 977*09100258SXin LI #define zExplain (ntp_keygen_opt_strs+2414) 9782b15cb3dSCy Schubert /** Extra detail explaining what ntp-keygen does. */ 9792b15cb3dSCy Schubert #define zDetail (NULL) 9802b15cb3dSCy Schubert /** The full version string for ntp-keygen. */ 981*09100258SXin LI #define zFullVersion (ntp_keygen_opt_strs+2416) 9822b15cb3dSCy Schubert /* extracted from optcode.tlib near line 364 */ 983ea906c41SOllivier Robert 984ea906c41SOllivier Robert #if defined(ENABLE_NLS) 985ea906c41SOllivier Robert # define OPTPROC_BASE OPTPROC_TRANSLATE 986ea906c41SOllivier Robert static tOptionXlateProc translate_option_strings; 987ea906c41SOllivier Robert #else 988ea906c41SOllivier Robert # define OPTPROC_BASE OPTPROC_NONE 989ea906c41SOllivier Robert # define translate_option_strings NULL 990ea906c41SOllivier Robert #endif /* ENABLE_NLS */ 991ea906c41SOllivier Robert 9922b15cb3dSCy Schubert #define ntp_keygen_full_usage (NULL) 9932b15cb3dSCy Schubert #define ntp_keygen_short_usage (NULL) 9942b15cb3dSCy Schubert 9952b15cb3dSCy Schubert #endif /* not defined __doxygen__ */ 9962b15cb3dSCy Schubert 9972b15cb3dSCy Schubert /* 9982b15cb3dSCy Schubert * Create the static procedure(s) declared above. 9992b15cb3dSCy Schubert */ 10002b15cb3dSCy Schubert /** 10012b15cb3dSCy Schubert * The callout function that invokes the optionUsage function. 10022b15cb3dSCy Schubert * 10032b15cb3dSCy Schubert * @param[in] opts the AutoOpts option description structure 10042b15cb3dSCy Schubert * @param[in] od the descriptor for the "help" (usage) option. 10052b15cb3dSCy Schubert * @noreturn 10062b15cb3dSCy Schubert */ 10072b15cb3dSCy Schubert static void 10082b15cb3dSCy Schubert doUsageOpt(tOptions * opts, tOptDesc * od) 10092b15cb3dSCy Schubert { 10102b15cb3dSCy Schubert int ex_code; 10112b15cb3dSCy Schubert ex_code = NTP_KEYGEN_EXIT_SUCCESS; 10122b15cb3dSCy Schubert optionUsage(&ntp_keygenOptions, ex_code); 10132b15cb3dSCy Schubert /* NOTREACHED */ 10142b15cb3dSCy Schubert exit(1); 10152b15cb3dSCy Schubert (void)opts; 10162b15cb3dSCy Schubert (void)od; 10172b15cb3dSCy Schubert } 10182b15cb3dSCy Schubert 10192b15cb3dSCy Schubert /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 10202b15cb3dSCy Schubert /** 10212b15cb3dSCy Schubert * Code to handle the imbits option, when AUTOKEY is #define-d. 10222b15cb3dSCy Schubert * The number of bits in the identity modulus. The default is 256. 10232b15cb3dSCy Schubert * @param[in] pOptions the ntp-keygen options data structure 10242b15cb3dSCy Schubert * @param[in,out] pOptDesc the option descriptor for this option. 10252b15cb3dSCy Schubert */ 10262b15cb3dSCy Schubert #ifdef AUTOKEY 10272b15cb3dSCy Schubert static void 10282b15cb3dSCy Schubert doOptImbits(tOptions* pOptions, tOptDesc* pOptDesc) 10292b15cb3dSCy Schubert { 10302b15cb3dSCy Schubert static struct {long rmin, rmax;} const rng[1] = { 10312b15cb3dSCy Schubert { 256, 2048 } }; 10322b15cb3dSCy Schubert int ix; 10332b15cb3dSCy Schubert 10342b15cb3dSCy Schubert if (pOptions <= OPTPROC_EMIT_LIMIT) 10352b15cb3dSCy Schubert goto emit_ranges; 10362b15cb3dSCy Schubert optionNumericVal(pOptions, pOptDesc); 10372b15cb3dSCy Schubert 10382b15cb3dSCy Schubert for (ix = 0; ix < 1; ix++) { 10392b15cb3dSCy Schubert if (pOptDesc->optArg.argInt < rng[ix].rmin) 10402b15cb3dSCy Schubert continue; /* ranges need not be ordered. */ 10412b15cb3dSCy Schubert if (pOptDesc->optArg.argInt == rng[ix].rmin) 10422b15cb3dSCy Schubert return; 10432b15cb3dSCy Schubert if (rng[ix].rmax == LONG_MIN) 10442b15cb3dSCy Schubert continue; 10452b15cb3dSCy Schubert if (pOptDesc->optArg.argInt <= rng[ix].rmax) 10462b15cb3dSCy Schubert return; 10472b15cb3dSCy Schubert } 10482b15cb3dSCy Schubert 10492b15cb3dSCy Schubert option_usage_fp = stderr; 10502b15cb3dSCy Schubert 10512b15cb3dSCy Schubert emit_ranges: 1052276da39aSCy Schubert optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1); 10532b15cb3dSCy Schubert } 10542b15cb3dSCy Schubert #endif /* defined AUTOKEY */ 10552b15cb3dSCy Schubert 10562b15cb3dSCy Schubert /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 10572b15cb3dSCy Schubert /** 10582b15cb3dSCy Schubert * Code to handle the debug-level option. 10592b15cb3dSCy Schubert * 10602b15cb3dSCy Schubert * @param[in] pOptions the ntp-keygen options data structure 10612b15cb3dSCy Schubert * @param[in,out] pOptDesc the option descriptor for this option. 10622b15cb3dSCy Schubert */ 10632b15cb3dSCy Schubert static void 10642b15cb3dSCy Schubert doOptDebug_Level(tOptions* pOptions, tOptDesc* pOptDesc) 10652b15cb3dSCy Schubert { 10662b15cb3dSCy Schubert /* 10672b15cb3dSCy Schubert * Be sure the flag-code[0] handles special values for the options pointer 10682b15cb3dSCy Schubert * viz. (poptions <= OPTPROC_EMIT_LIMIT) *and also* the special flag bit 10692b15cb3dSCy Schubert * ((poptdesc->fOptState & OPTST_RESET) != 0) telling the option to 10702b15cb3dSCy Schubert * reset its state. 10712b15cb3dSCy Schubert */ 10722b15cb3dSCy Schubert /* extracted from debug-opt.def, line 15 */ 10732b15cb3dSCy Schubert OPT_VALUE_SET_DEBUG_LEVEL++; 10742b15cb3dSCy Schubert (void)pOptDesc; 10752b15cb3dSCy Schubert (void)pOptions; 10762b15cb3dSCy Schubert } 10772b15cb3dSCy Schubert 10782b15cb3dSCy Schubert /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 10792b15cb3dSCy Schubert /** 10802b15cb3dSCy Schubert * Code to handle the modulus option, when AUTOKEY is #define-d. 10812b15cb3dSCy Schubert * The number of bits in the prime modulus. The default is 512. 10822b15cb3dSCy Schubert * @param[in] pOptions the ntp-keygen options data structure 10832b15cb3dSCy Schubert * @param[in,out] pOptDesc the option descriptor for this option. 10842b15cb3dSCy Schubert */ 10852b15cb3dSCy Schubert #ifdef AUTOKEY 10862b15cb3dSCy Schubert static void 10872b15cb3dSCy Schubert doOptModulus(tOptions* pOptions, tOptDesc* pOptDesc) 10882b15cb3dSCy Schubert { 10892b15cb3dSCy Schubert static struct {long rmin, rmax;} const rng[1] = { 10902b15cb3dSCy Schubert { 256, 2048 } }; 10912b15cb3dSCy Schubert int ix; 10922b15cb3dSCy Schubert 10932b15cb3dSCy Schubert if (pOptions <= OPTPROC_EMIT_LIMIT) 10942b15cb3dSCy Schubert goto emit_ranges; 10952b15cb3dSCy Schubert optionNumericVal(pOptions, pOptDesc); 10962b15cb3dSCy Schubert 10972b15cb3dSCy Schubert for (ix = 0; ix < 1; ix++) { 10982b15cb3dSCy Schubert if (pOptDesc->optArg.argInt < rng[ix].rmin) 10992b15cb3dSCy Schubert continue; /* ranges need not be ordered. */ 11002b15cb3dSCy Schubert if (pOptDesc->optArg.argInt == rng[ix].rmin) 11012b15cb3dSCy Schubert return; 11022b15cb3dSCy Schubert if (rng[ix].rmax == LONG_MIN) 11032b15cb3dSCy Schubert continue; 11042b15cb3dSCy Schubert if (pOptDesc->optArg.argInt <= rng[ix].rmax) 11052b15cb3dSCy Schubert return; 11062b15cb3dSCy Schubert } 11072b15cb3dSCy Schubert 11082b15cb3dSCy Schubert option_usage_fp = stderr; 11092b15cb3dSCy Schubert 11102b15cb3dSCy Schubert emit_ranges: 1111276da39aSCy Schubert optionShowRange(pOptions, pOptDesc, VOIDP(rng), 1); 11122b15cb3dSCy Schubert } 11132b15cb3dSCy Schubert #endif /* defined AUTOKEY */ 1114276da39aSCy Schubert /* extracted from optmain.tlib near line 1250 */ 11152b15cb3dSCy Schubert 11162b15cb3dSCy Schubert /** 11172b15cb3dSCy Schubert * The directory containing the data associated with ntp-keygen. 11182b15cb3dSCy Schubert */ 11192b15cb3dSCy Schubert #ifndef PKGDATADIR 11202b15cb3dSCy Schubert # define PKGDATADIR "" 11212b15cb3dSCy Schubert #endif 11222b15cb3dSCy Schubert 11232b15cb3dSCy Schubert /** 11242b15cb3dSCy Schubert * Information about the person or institution that packaged ntp-keygen 11252b15cb3dSCy Schubert * for the current distribution. 11262b15cb3dSCy Schubert */ 11272b15cb3dSCy Schubert #ifndef WITH_PACKAGER 11282b15cb3dSCy Schubert # define ntp_keygen_packager_info NULL 11292b15cb3dSCy Schubert #else 11302b15cb3dSCy Schubert /** Packager information for ntp-keygen. */ 11312b15cb3dSCy Schubert static char const ntp_keygen_packager_info[] = 11322b15cb3dSCy Schubert "Packaged by " WITH_PACKAGER 11332b15cb3dSCy Schubert 11342b15cb3dSCy Schubert # ifdef WITH_PACKAGER_VERSION 11352b15cb3dSCy Schubert " ("WITH_PACKAGER_VERSION")" 11362b15cb3dSCy Schubert # endif 11372b15cb3dSCy Schubert 11382b15cb3dSCy Schubert # ifdef WITH_PACKAGER_BUG_REPORTS 11392b15cb3dSCy Schubert "\nReport ntp_keygen bugs to " WITH_PACKAGER_BUG_REPORTS 11402b15cb3dSCy Schubert # endif 11412b15cb3dSCy Schubert "\n"; 11422b15cb3dSCy Schubert #endif 11432b15cb3dSCy Schubert #ifndef __doxygen__ 11442b15cb3dSCy Schubert 11452b15cb3dSCy Schubert #endif /* __doxygen__ */ 11462b15cb3dSCy Schubert /** 11472b15cb3dSCy Schubert * The option definitions for ntp-keygen. The one structure that 11482b15cb3dSCy Schubert * binds them all. 11492b15cb3dSCy Schubert */ 1150ea906c41SOllivier Robert tOptions ntp_keygenOptions = { 1151ea906c41SOllivier Robert OPTIONS_STRUCT_VERSION, 1152ea906c41SOllivier Robert 0, NULL, /* original argc + argv */ 1153ea906c41SOllivier Robert ( OPTPROC_BASE 1154ea906c41SOllivier Robert + OPTPROC_ERRSTOP 1155ea906c41SOllivier Robert + OPTPROC_SHORTOPT 1156ea906c41SOllivier Robert + OPTPROC_LONGOPT 1157ea906c41SOllivier Robert + OPTPROC_NO_REQ_OPT 1158ea906c41SOllivier Robert + OPTPROC_ENVIRON 1159ea906c41SOllivier Robert + OPTPROC_NO_ARGS 11602b15cb3dSCy Schubert + OPTPROC_MISUSE ), 1161ea906c41SOllivier Robert 0, NULL, /* current option index, current option */ 1162ea906c41SOllivier Robert NULL, NULL, zPROGNAME, 11632b15cb3dSCy Schubert zRcName, zCopyright, zLicenseDescrip, 1164ea906c41SOllivier Robert zFullVersion, apzHomeList, zUsageTitle, 1165ea906c41SOllivier Robert zExplain, zDetail, optDesc, 1166ea906c41SOllivier Robert zBugsAddr, /* address to send bugs to */ 1167ea906c41SOllivier Robert NULL, NULL, /* extensions/saved state */ 1168ea906c41SOllivier Robert optionUsage, /* usage procedure */ 1169ea906c41SOllivier Robert translate_option_strings, /* translation procedure */ 1170ea906c41SOllivier Robert /* 1171ea906c41SOllivier Robert * Indexes to special options 1172ea906c41SOllivier Robert */ 11732b15cb3dSCy Schubert { INDEX_OPT_MORE_HELP, /* more-help option index */ 11742b15cb3dSCy Schubert INDEX_OPT_SAVE_OPTS, /* save option index */ 11752b15cb3dSCy Schubert NO_EQUIVALENT, /* '-#' option index */ 1176ea906c41SOllivier Robert NO_EQUIVALENT /* index of default opt */ 1177ea906c41SOllivier Robert }, 11782b15cb3dSCy Schubert 26 /* full option count */, 21 /* user option count */, 11792b15cb3dSCy Schubert ntp_keygen_full_usage, ntp_keygen_short_usage, 11802b15cb3dSCy Schubert NULL, NULL, 11812b15cb3dSCy Schubert PKGDATADIR, ntp_keygen_packager_info 1182ea906c41SOllivier Robert }; 1183ea906c41SOllivier Robert 1184ea906c41SOllivier Robert #if ENABLE_NLS 11852b15cb3dSCy Schubert /** 11862b15cb3dSCy Schubert * This code is designed to translate translatable option text for the 11872b15cb3dSCy Schubert * ntp-keygen program. These translations happen upon entry 11882b15cb3dSCy Schubert * to optionProcess(). 11892b15cb3dSCy Schubert */ 1190ea906c41SOllivier Robert #include <stdio.h> 1191ea906c41SOllivier Robert #include <stdlib.h> 1192ea906c41SOllivier Robert #include <string.h> 1193ea906c41SOllivier Robert #include <unistd.h> 11942b15cb3dSCy Schubert #ifdef HAVE_DCGETTEXT 11952b15cb3dSCy Schubert # include <gettext.h> 11962b15cb3dSCy Schubert #endif 1197ea906c41SOllivier Robert #include <autoopts/usage-txt.h> 1198ea906c41SOllivier Robert 1199ea906c41SOllivier Robert static char * AO_gettext(char const * pz); 1200ea906c41SOllivier Robert static void coerce_it(void ** s); 1201ea906c41SOllivier Robert 12022b15cb3dSCy Schubert /** 12032b15cb3dSCy Schubert * AutoGen specific wrapper function for gettext. It relies on the macro _() 12042b15cb3dSCy Schubert * to convert from English to the target language, then strdup-duplicates the 12052b15cb3dSCy Schubert * result string. It tries the "libopts" domain first, then whatever has been 12062b15cb3dSCy Schubert * set via the \a textdomain(3) call. 12072b15cb3dSCy Schubert * 12082b15cb3dSCy Schubert * @param[in] pz the input text used as a lookup key. 12092b15cb3dSCy Schubert * @returns the translated text (if there is one), 12102b15cb3dSCy Schubert * or the original text (if not). 12112b15cb3dSCy Schubert */ 1212ea906c41SOllivier Robert static char * 1213ea906c41SOllivier Robert AO_gettext(char const * pz) 1214ea906c41SOllivier Robert { 12152b15cb3dSCy Schubert char * res; 1216ea906c41SOllivier Robert if (pz == NULL) 1217ea906c41SOllivier Robert return NULL; 12182b15cb3dSCy Schubert #ifdef HAVE_DCGETTEXT 1219ea906c41SOllivier Robert /* 12202b15cb3dSCy Schubert * While processing the option_xlateable_txt data, try to use the 12212b15cb3dSCy Schubert * "libopts" domain. Once we switch to the option descriptor data, 12222b15cb3dSCy Schubert * do *not* use that domain. 12232b15cb3dSCy Schubert */ 12242b15cb3dSCy Schubert if (option_xlateable_txt.field_ct != 0) { 12252b15cb3dSCy Schubert res = dgettext("libopts", pz); 12262b15cb3dSCy Schubert if (res == pz) 1227276da39aSCy Schubert res = (char *)VOIDP(_(pz)); 12282b15cb3dSCy Schubert } else 1229276da39aSCy Schubert res = (char *)VOIDP(_(pz)); 12302b15cb3dSCy Schubert #else 1231276da39aSCy Schubert res = (char *)VOIDP(_(pz)); 12322b15cb3dSCy Schubert #endif 12332b15cb3dSCy Schubert if (res == pz) 12342b15cb3dSCy Schubert return res; 12352b15cb3dSCy Schubert res = strdup(res); 12362b15cb3dSCy Schubert if (res == NULL) { 12372b15cb3dSCy Schubert fputs(_("No memory for duping translated strings\n"), stderr); 12382b15cb3dSCy Schubert exit(NTP_KEYGEN_EXIT_FAILURE); 12392b15cb3dSCy Schubert } 12402b15cb3dSCy Schubert return res; 12412b15cb3dSCy Schubert } 12422b15cb3dSCy Schubert 12432b15cb3dSCy Schubert /** 12442b15cb3dSCy Schubert * All the pointers we use are marked "* const", but they are stored in 12452b15cb3dSCy Schubert * writable memory. Coerce the mutability and set the pointer. 12462b15cb3dSCy Schubert */ 12472b15cb3dSCy Schubert static void coerce_it(void ** s) { *s = AO_gettext(*s); 12482b15cb3dSCy Schubert } 12492b15cb3dSCy Schubert 12502b15cb3dSCy Schubert /** 12512b15cb3dSCy Schubert * Translate all the translatable strings in the ntp_keygenOptions 12522b15cb3dSCy Schubert * structure defined above. This is done only once. 1253ea906c41SOllivier Robert */ 1254ea906c41SOllivier Robert static void 1255ea906c41SOllivier Robert translate_option_strings(void) 1256ea906c41SOllivier Robert { 12572b15cb3dSCy Schubert tOptions * const opts = &ntp_keygenOptions; 12582b15cb3dSCy Schubert 1259ea906c41SOllivier Robert /* 1260ea906c41SOllivier Robert * Guard against re-translation. It won't work. The strings will have 1261ea906c41SOllivier Robert * been changed by the first pass through this code. One shot only. 1262ea906c41SOllivier Robert */ 12632b15cb3dSCy Schubert if (option_xlateable_txt.field_ct != 0) { 1264ea906c41SOllivier Robert /* 12652b15cb3dSCy Schubert * Do the translations. The first pointer follows the field count 12662b15cb3dSCy Schubert * field. The field count field is the size of a pointer. 1267ea906c41SOllivier Robert */ 1268276da39aSCy Schubert char ** ppz = (char**)VOIDP(&(option_xlateable_txt)); 12692b15cb3dSCy Schubert int ix = option_xlateable_txt.field_ct; 1270ea906c41SOllivier Robert 1271ea906c41SOllivier Robert do { 12722b15cb3dSCy Schubert ppz++; /* skip over field_ct */ 1273ea906c41SOllivier Robert *ppz = AO_gettext(*ppz); 1274ea906c41SOllivier Robert } while (--ix > 0); 12752b15cb3dSCy Schubert /* prevent re-translation and disable "libopts" domain lookup */ 12762b15cb3dSCy Schubert option_xlateable_txt.field_ct = 0; 1277ea906c41SOllivier Robert 1278276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzCopyright))); 1279276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzCopyNotice))); 1280276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzFullVersion))); 1281276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzUsageTitle))); 1282276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzExplain))); 1283276da39aSCy Schubert coerce_it(VOIDP(&(opts->pzDetail))); 1284ea906c41SOllivier Robert { 12852b15cb3dSCy Schubert tOptDesc * od = opts->pOptDesc; 12862b15cb3dSCy Schubert for (ix = opts->optCt; ix > 0; ix--, od++) 1287276da39aSCy Schubert coerce_it(VOIDP(&(od->pzText))); 1288ea906c41SOllivier Robert } 1289ea906c41SOllivier Robert } 1290ea906c41SOllivier Robert } 1291ea906c41SOllivier Robert #endif /* ENABLE_NLS */ 1292ea906c41SOllivier Robert 12932b15cb3dSCy Schubert #ifdef DO_NOT_COMPILE_THIS_CODE_IT_IS_FOR_GETTEXT 12942b15cb3dSCy Schubert /** I18N function strictly for xgettext. Do not compile. */ 12952b15cb3dSCy Schubert static void bogus_function(void) { 12962b15cb3dSCy Schubert /* TRANSLATORS: 12972b15cb3dSCy Schubert 12982b15cb3dSCy Schubert The following dummy function was crated solely so that xgettext can 12992b15cb3dSCy Schubert extract the correct strings. These strings are actually referenced 13002b15cb3dSCy Schubert by a field name in the ntp_keygenOptions structure noted in the 13012b15cb3dSCy Schubert comments below. The literal text is defined in ntp_keygen_opt_strs. 13022b15cb3dSCy Schubert 13032b15cb3dSCy Schubert NOTE: the strings below are segmented with respect to the source string 13042b15cb3dSCy Schubert ntp_keygen_opt_strs. The strings above are handed off for translation 13052b15cb3dSCy Schubert at run time a paragraph at a time. Consequently, they are presented here 13062b15cb3dSCy Schubert for translation a paragraph at a time. 13072b15cb3dSCy Schubert 13082b15cb3dSCy Schubert ALSO: often the description for an option will reference another option 13092b15cb3dSCy Schubert by name. These are set off with apostrophe quotes (I hope). Do not 13102b15cb3dSCy Schubert translate option names. 13112b15cb3dSCy Schubert */ 13122b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzCopyright */ 1313*09100258SXin LI puts(_("ntp-keygen (ntp) 4.2.8p11\n\ 1314f0574f5cSXin LI Copyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved.\n\ 13152b15cb3dSCy Schubert This is free software. It is licensed for use, modification and\n\ 13162b15cb3dSCy Schubert redistribution under the terms of the NTP License, copies of which\n\ 13172b15cb3dSCy Schubert can be seen at:\n")); 13182b15cb3dSCy Schubert puts(_(" <http://ntp.org/license>\n\ 13192b15cb3dSCy Schubert <http://opensource.org/licenses/ntp-license.php>\n")); 13202b15cb3dSCy Schubert 13212b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzCopyNotice */ 13222b15cb3dSCy Schubert puts(_("Permission to use, copy, modify, and distribute this software and its\n\ 13232b15cb3dSCy Schubert documentation for any purpose with or without fee is hereby granted,\n\ 13242b15cb3dSCy Schubert provided that the above copyright notice appears in all copies and that\n\ 13252b15cb3dSCy Schubert both the copyright notice and this permission notice appear in supporting\n\ 13262b15cb3dSCy Schubert documentation, and that the name The University of Delaware not be used in\n\ 13272b15cb3dSCy Schubert advertising or publicity pertaining to distribution of the software without\n\ 13282b15cb3dSCy Schubert specific, written prior permission. The University of Delaware and Network\n\ 13292b15cb3dSCy Schubert Time Foundation makes no representations about the suitability this\n\ 13302b15cb3dSCy Schubert software for any purpose. It is provided \"as is\" without express or\n\ 13312b15cb3dSCy Schubert implied warranty.\n")); 13322b15cb3dSCy Schubert 13332b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13342b15cb3dSCy Schubert puts(_("identity modulus bits")); 13352b15cb3dSCy Schubert 13362b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13372b15cb3dSCy Schubert puts(_("certificate scheme")); 13382b15cb3dSCy Schubert 13392b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13402b15cb3dSCy Schubert puts(_("privatekey cipher")); 13412b15cb3dSCy Schubert 13422b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13432b15cb3dSCy Schubert puts(_("Increase debug verbosity level")); 13442b15cb3dSCy Schubert 13452b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13462b15cb3dSCy Schubert puts(_("Set the debug verbosity level")); 13472b15cb3dSCy Schubert 13482b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13492b15cb3dSCy Schubert puts(_("Write IFF or GQ identity keys")); 13502b15cb3dSCy Schubert 13512b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13522b15cb3dSCy Schubert puts(_("Generate GQ parameters and keys")); 13532b15cb3dSCy Schubert 13542b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13552b15cb3dSCy Schubert puts(_("generate RSA host key")); 13562b15cb3dSCy Schubert 13572b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13582b15cb3dSCy Schubert puts(_("generate IFF parameters")); 13592b15cb3dSCy Schubert 13602b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13612b15cb3dSCy Schubert puts(_("set Autokey group name")); 13622b15cb3dSCy Schubert 13632b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13642b15cb3dSCy Schubert puts(_("set certificate lifetime")); 13652b15cb3dSCy Schubert 13662b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 1367*09100258SXin LI puts(_("prime modulus")); 13682b15cb3dSCy Schubert 13692b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 1370*09100258SXin LI puts(_("generate symmetric keys")); 13712b15cb3dSCy Schubert 13722b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13732b15cb3dSCy Schubert puts(_("generate PC private certificate")); 13742b15cb3dSCy Schubert 13752b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13762b15cb3dSCy Schubert puts(_("local private password")); 13772b15cb3dSCy Schubert 13782b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13792b15cb3dSCy Schubert puts(_("export IFF or GQ group keys with password")); 13802b15cb3dSCy Schubert 13812b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 1382*09100258SXin LI puts(_("set host and optionally group name")); 13832b15cb3dSCy Schubert 13842b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 1385*09100258SXin LI puts(_("generate sign key (RSA or DSA)")); 13862b15cb3dSCy Schubert 13872b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13882b15cb3dSCy Schubert puts(_("trusted certificate (TC scheme)")); 13892b15cb3dSCy Schubert 13902b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13912b15cb3dSCy Schubert puts(_("generate <num> MV parameters")); 13922b15cb3dSCy Schubert 13932b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13942b15cb3dSCy Schubert puts(_("update <num> MV keys")); 13952b15cb3dSCy Schubert 13962b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 13972b15cb3dSCy Schubert puts(_("display extended usage information and exit")); 13982b15cb3dSCy Schubert 13992b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 14002b15cb3dSCy Schubert puts(_("extended usage information passed thru pager")); 14012b15cb3dSCy Schubert 14022b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 14032b15cb3dSCy Schubert puts(_("output version information and exit")); 14042b15cb3dSCy Schubert 14052b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 14062b15cb3dSCy Schubert puts(_("save the option state to a config file")); 14072b15cb3dSCy Schubert 14082b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pOptDesc->pzText */ 14092b15cb3dSCy Schubert puts(_("load options from a config file")); 14102b15cb3dSCy Schubert 14112b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzUsageTitle */ 1412*09100258SXin LI puts(_("ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p11\n\ 14132b15cb3dSCy Schubert Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n")); 14142b15cb3dSCy Schubert 14152b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzExplain */ 14162b15cb3dSCy Schubert puts(_("\n")); 14172b15cb3dSCy Schubert 14182b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzFullVersion */ 1419*09100258SXin LI puts(_("ntp-keygen (ntp) 4.2.8p11")); 14202b15cb3dSCy Schubert 14212b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzFullUsage */ 14222b15cb3dSCy Schubert puts(_("<<<NOT-FOUND>>>")); 14232b15cb3dSCy Schubert 14242b15cb3dSCy Schubert /* referenced via ntp_keygenOptions.pzShortUsage */ 14252b15cb3dSCy Schubert puts(_("<<<NOT-FOUND>>>")); 14262b15cb3dSCy Schubert /* LIBOPTS-MESSAGES: */ 14272b15cb3dSCy Schubert #line 67 "../autoopts.c" 14282b15cb3dSCy Schubert puts(_("allocation of %d bytes failed\n")); 14292b15cb3dSCy Schubert #line 93 "../autoopts.c" 14302b15cb3dSCy Schubert puts(_("allocation of %d bytes failed\n")); 14312b15cb3dSCy Schubert #line 53 "../init.c" 14322b15cb3dSCy Schubert puts(_("AutoOpts function called without option descriptor\n")); 14332b15cb3dSCy Schubert #line 86 "../init.c" 14342b15cb3dSCy Schubert puts(_("\tThis exceeds the compiled library version: ")); 14352b15cb3dSCy Schubert #line 84 "../init.c" 14362b15cb3dSCy Schubert puts(_("Automated Options Processing Error!\n" 14372b15cb3dSCy Schubert "\t%s called AutoOpts function with structure version %d:%d:%d.\n")); 14382b15cb3dSCy Schubert #line 80 "../autoopts.c" 14392b15cb3dSCy Schubert puts(_("realloc of %d bytes at 0x%p failed\n")); 14402b15cb3dSCy Schubert #line 88 "../init.c" 14412b15cb3dSCy Schubert puts(_("\tThis is less than the minimum library version: ")); 14422b15cb3dSCy Schubert #line 121 "../version.c" 14432b15cb3dSCy Schubert puts(_("Automated Options version %s\n" 14442b15cb3dSCy Schubert "\tCopyright (C) 1999-2014 by Bruce Korb - all rights reserved\n")); 1445276da39aSCy Schubert #line 87 "../makeshell.c" 14462b15cb3dSCy Schubert puts(_("(AutoOpts bug): %s.\n")); 14472b15cb3dSCy Schubert #line 90 "../reset.c" 14482b15cb3dSCy Schubert puts(_("optionResetOpt() called, but reset-option not configured")); 14492b15cb3dSCy Schubert #line 292 "../usage.c" 14502b15cb3dSCy Schubert puts(_("could not locate the 'help' option")); 14512b15cb3dSCy Schubert #line 336 "../autoopts.c" 14522b15cb3dSCy Schubert puts(_("optionProcess() was called with invalid data")); 14532b15cb3dSCy Schubert #line 748 "../usage.c" 14542b15cb3dSCy Schubert puts(_("invalid argument type specified")); 14552b15cb3dSCy Schubert #line 598 "../find.c" 14562b15cb3dSCy Schubert puts(_("defaulted to option with optional arg")); 14572b15cb3dSCy Schubert #line 76 "../alias.c" 14582b15cb3dSCy Schubert puts(_("aliasing option is out of range.")); 14592b15cb3dSCy Schubert #line 234 "../enum.c" 14602b15cb3dSCy Schubert puts(_("%s error: the keyword '%s' is ambiguous for %s\n")); 14612b15cb3dSCy Schubert #line 108 "../find.c" 14622b15cb3dSCy Schubert puts(_(" The following options match:\n")); 14632b15cb3dSCy Schubert #line 293 "../find.c" 14642b15cb3dSCy Schubert puts(_("%s: ambiguous option name: %s (matches %d options)\n")); 14652b15cb3dSCy Schubert #line 161 "../check.c" 14662b15cb3dSCy Schubert puts(_("%s: Command line arguments required\n")); 14672b15cb3dSCy Schubert #line 43 "../alias.c" 14682b15cb3dSCy Schubert puts(_("%d %s%s options allowed\n")); 1469276da39aSCy Schubert #line 94 "../makeshell.c" 14702b15cb3dSCy Schubert puts(_("%s error %d (%s) calling %s for '%s'\n")); 1471276da39aSCy Schubert #line 306 "../makeshell.c" 14722b15cb3dSCy Schubert puts(_("interprocess pipe")); 14732b15cb3dSCy Schubert #line 168 "../version.c" 14742b15cb3dSCy Schubert puts(_("error: version option argument '%c' invalid. Use:\n" 14752b15cb3dSCy Schubert "\t'v' - version only\n" 14762b15cb3dSCy Schubert "\t'c' - version and copyright\n" 14772b15cb3dSCy Schubert "\t'n' - version and full copyright notice\n")); 14782b15cb3dSCy Schubert #line 58 "../check.c" 14792b15cb3dSCy Schubert puts(_("%s error: the '%s' and '%s' options conflict\n")); 14802b15cb3dSCy Schubert #line 217 "../find.c" 14812b15cb3dSCy Schubert puts(_("%s: The '%s' option has been disabled.")); 14822b15cb3dSCy Schubert #line 430 "../find.c" 14832b15cb3dSCy Schubert puts(_("%s: The '%s' option has been disabled.")); 14842b15cb3dSCy Schubert #line 38 "../alias.c" 14852b15cb3dSCy Schubert puts(_("-equivalence")); 14862b15cb3dSCy Schubert #line 469 "../find.c" 14872b15cb3dSCy Schubert puts(_("%s: illegal option -- %c\n")); 14882b15cb3dSCy Schubert #line 110 "../reset.c" 14892b15cb3dSCy Schubert puts(_("%s: illegal option -- %c\n")); 14902b15cb3dSCy Schubert #line 271 "../find.c" 14912b15cb3dSCy Schubert puts(_("%s: illegal option -- %s\n")); 14922b15cb3dSCy Schubert #line 755 "../find.c" 14932b15cb3dSCy Schubert puts(_("%s: illegal option -- %s\n")); 14942b15cb3dSCy Schubert #line 118 "../reset.c" 14952b15cb3dSCy Schubert puts(_("%s: illegal option -- %s\n")); 14962b15cb3dSCy Schubert #line 335 "../find.c" 14972b15cb3dSCy Schubert puts(_("%s: unknown vendor extension option -- %s\n")); 14982b15cb3dSCy Schubert #line 159 "../enum.c" 14992b15cb3dSCy Schubert puts(_(" or an integer from %d through %d\n")); 15002b15cb3dSCy Schubert #line 169 "../enum.c" 15012b15cb3dSCy Schubert puts(_(" or an integer from %d through %d\n")); 15022b15cb3dSCy Schubert #line 747 "../usage.c" 15032b15cb3dSCy Schubert puts(_("%s error: invalid option descriptor for %s\n")); 15042b15cb3dSCy Schubert #line 1081 "../usage.c" 15052b15cb3dSCy Schubert puts(_("%s error: invalid option descriptor for %s\n")); 15062b15cb3dSCy Schubert #line 385 "../find.c" 15072b15cb3dSCy Schubert puts(_("%s: invalid option name: %s\n")); 15082b15cb3dSCy Schubert #line 527 "../find.c" 15092b15cb3dSCy Schubert puts(_("%s: The '%s' option requires an argument.\n")); 15102b15cb3dSCy Schubert #line 156 "../autoopts.c" 15112b15cb3dSCy Schubert puts(_("(AutoOpts bug): Equivalenced option '%s' was equivalenced to both\n" 15122b15cb3dSCy Schubert "\t'%s' and '%s'.")); 15132b15cb3dSCy Schubert #line 94 "../check.c" 15142b15cb3dSCy Schubert puts(_("%s error: The %s option is required\n")); 15152b15cb3dSCy Schubert #line 632 "../find.c" 15162b15cb3dSCy Schubert puts(_("%s: The '%s' option cannot have an argument.\n")); 15172b15cb3dSCy Schubert #line 151 "../check.c" 15182b15cb3dSCy Schubert puts(_("%s: Command line arguments are not allowed.\n")); 15192b15cb3dSCy Schubert #line 535 "../save.c" 15202b15cb3dSCy Schubert puts(_("error %d (%s) creating %s\n")); 15212b15cb3dSCy Schubert #line 234 "../enum.c" 15222b15cb3dSCy Schubert puts(_("%s error: '%s' does not match any %s keywords.\n")); 15232b15cb3dSCy Schubert #line 93 "../reset.c" 15242b15cb3dSCy Schubert puts(_("%s error: The '%s' option requires an argument.\n")); 15252b15cb3dSCy Schubert #line 184 "../save.c" 15262b15cb3dSCy Schubert puts(_("error %d (%s) stat-ing %s\n")); 15272b15cb3dSCy Schubert #line 238 "../save.c" 15282b15cb3dSCy Schubert puts(_("error %d (%s) stat-ing %s\n")); 15292b15cb3dSCy Schubert #line 143 "../restore.c" 15302b15cb3dSCy Schubert puts(_("%s error: no saved option state\n")); 15312b15cb3dSCy Schubert #line 231 "../autoopts.c" 15322b15cb3dSCy Schubert puts(_("'%s' is not a command line option.\n")); 15332b15cb3dSCy Schubert #line 111 "../time.c" 15342b15cb3dSCy Schubert puts(_("%s error: '%s' is not a recognizable date/time.\n")); 15352b15cb3dSCy Schubert #line 132 "../save.c" 15362b15cb3dSCy Schubert puts(_("'%s' not defined\n")); 15372b15cb3dSCy Schubert #line 50 "../time.c" 15382b15cb3dSCy Schubert puts(_("%s error: '%s' is not a recognizable time duration.\n")); 15392b15cb3dSCy Schubert #line 92 "../check.c" 15402b15cb3dSCy Schubert puts(_("%s error: The %s option must appear %d times.\n")); 15412b15cb3dSCy Schubert #line 164 "../numeric.c" 15422b15cb3dSCy Schubert puts(_("%s error: '%s' is not a recognizable number.\n")); 15432b15cb3dSCy Schubert #line 200 "../enum.c" 15442b15cb3dSCy Schubert puts(_("%s error: %s exceeds %s keyword count\n")); 15452b15cb3dSCy Schubert #line 330 "../usage.c" 15462b15cb3dSCy Schubert puts(_("Try '%s %s' for more information.\n")); 15472b15cb3dSCy Schubert #line 45 "../alias.c" 15482b15cb3dSCy Schubert puts(_("one %s%s option allowed\n")); 1549276da39aSCy Schubert #line 208 "../makeshell.c" 15502b15cb3dSCy Schubert puts(_("standard output")); 1551276da39aSCy Schubert #line 943 "../makeshell.c" 15522b15cb3dSCy Schubert puts(_("standard output")); 15532b15cb3dSCy Schubert #line 274 "../usage.c" 15542b15cb3dSCy Schubert puts(_("standard output")); 15552b15cb3dSCy Schubert #line 415 "../usage.c" 15562b15cb3dSCy Schubert puts(_("standard output")); 15572b15cb3dSCy Schubert #line 625 "../usage.c" 15582b15cb3dSCy Schubert puts(_("standard output")); 15592b15cb3dSCy Schubert #line 175 "../version.c" 15602b15cb3dSCy Schubert puts(_("standard output")); 15612b15cb3dSCy Schubert #line 274 "../usage.c" 15622b15cb3dSCy Schubert puts(_("standard error")); 15632b15cb3dSCy Schubert #line 415 "../usage.c" 15642b15cb3dSCy Schubert puts(_("standard error")); 15652b15cb3dSCy Schubert #line 625 "../usage.c" 15662b15cb3dSCy Schubert puts(_("standard error")); 15672b15cb3dSCy Schubert #line 175 "../version.c" 15682b15cb3dSCy Schubert puts(_("standard error")); 1569276da39aSCy Schubert #line 208 "../makeshell.c" 15702b15cb3dSCy Schubert puts(_("write")); 1571276da39aSCy Schubert #line 943 "../makeshell.c" 15722b15cb3dSCy Schubert puts(_("write")); 15732b15cb3dSCy Schubert #line 273 "../usage.c" 15742b15cb3dSCy Schubert puts(_("write")); 15752b15cb3dSCy Schubert #line 414 "../usage.c" 15762b15cb3dSCy Schubert puts(_("write")); 15772b15cb3dSCy Schubert #line 624 "../usage.c" 15782b15cb3dSCy Schubert puts(_("write")); 15792b15cb3dSCy Schubert #line 174 "../version.c" 15802b15cb3dSCy Schubert puts(_("write")); 15812b15cb3dSCy Schubert #line 60 "../numeric.c" 15822b15cb3dSCy Schubert puts(_("%s error: %s option value %ld is out of range.\n")); 15832b15cb3dSCy Schubert #line 44 "../check.c" 15842b15cb3dSCy Schubert puts(_("%s error: %s option requires the %s option\n")); 15852b15cb3dSCy Schubert #line 131 "../save.c" 15862b15cb3dSCy Schubert puts(_("%s warning: cannot save options - %s not regular file\n")); 15872b15cb3dSCy Schubert #line 183 "../save.c" 15882b15cb3dSCy Schubert puts(_("%s warning: cannot save options - %s not regular file\n")); 15892b15cb3dSCy Schubert #line 237 "../save.c" 15902b15cb3dSCy Schubert puts(_("%s warning: cannot save options - %s not regular file\n")); 15912b15cb3dSCy Schubert #line 256 "../save.c" 15922b15cb3dSCy Schubert puts(_("%s warning: cannot save options - %s not regular file\n")); 15932b15cb3dSCy Schubert #line 534 "../save.c" 15942b15cb3dSCy Schubert puts(_("%s warning: cannot save options - %s not regular file\n")); 15952b15cb3dSCy Schubert /* END-LIBOPTS-MESSAGES */ 15962b15cb3dSCy Schubert 15972b15cb3dSCy Schubert /* USAGE-TEXT: */ 15982b15cb3dSCy Schubert #line 873 "../usage.c" 15992b15cb3dSCy Schubert puts(_("\t\t\t\t- an alternate for '%s'\n")); 16002b15cb3dSCy Schubert #line 1148 "../usage.c" 16012b15cb3dSCy Schubert puts(_("Version, usage and configuration options:")); 16022b15cb3dSCy Schubert #line 924 "../usage.c" 16032b15cb3dSCy Schubert puts(_("\t\t\t\t- default option for unnamed options\n")); 16042b15cb3dSCy Schubert #line 837 "../usage.c" 16052b15cb3dSCy Schubert puts(_("\t\t\t\t- disabled as '--%s'\n")); 16062b15cb3dSCy Schubert #line 1117 "../usage.c" 16072b15cb3dSCy Schubert puts(_(" --- %-14s %s\n")); 16082b15cb3dSCy Schubert #line 1115 "../usage.c" 16092b15cb3dSCy Schubert puts(_("This option has been disabled")); 16102b15cb3dSCy Schubert #line 864 "../usage.c" 16112b15cb3dSCy Schubert puts(_("\t\t\t\t- enabled by default\n")); 16122b15cb3dSCy Schubert #line 40 "../alias.c" 16132b15cb3dSCy Schubert puts(_("%s error: only ")); 16142b15cb3dSCy Schubert #line 1194 "../usage.c" 16152b15cb3dSCy Schubert puts(_(" - examining environment variables named %s_*\n")); 16162b15cb3dSCy Schubert #line 168 "../file.c" 16172b15cb3dSCy Schubert puts(_("\t\t\t\t- file must not pre-exist\n")); 16182b15cb3dSCy Schubert #line 172 "../file.c" 16192b15cb3dSCy Schubert puts(_("\t\t\t\t- file must pre-exist\n")); 16202b15cb3dSCy Schubert #line 380 "../usage.c" 16212b15cb3dSCy Schubert puts(_("Options are specified by doubled hyphens and their name or by a single\n" 16222b15cb3dSCy Schubert "hyphen and the flag character.\n")); 1623276da39aSCy Schubert #line 921 "../makeshell.c" 16242b15cb3dSCy Schubert puts(_("\n" 16252b15cb3dSCy Schubert "= = = = = = = =\n\n" 16262b15cb3dSCy Schubert "This incarnation of genshell will produce\n" 16272b15cb3dSCy Schubert "a shell script to parse the options for %s:\n\n")); 16282b15cb3dSCy Schubert #line 166 "../enum.c" 16292b15cb3dSCy Schubert puts(_(" or an integer mask with any of the lower %d bits set\n")); 16302b15cb3dSCy Schubert #line 897 "../usage.c" 16312b15cb3dSCy Schubert puts(_("\t\t\t\t- is a set membership option\n")); 16322b15cb3dSCy Schubert #line 918 "../usage.c" 16332b15cb3dSCy Schubert puts(_("\t\t\t\t- must appear between %d and %d times\n")); 16342b15cb3dSCy Schubert #line 382 "../usage.c" 16352b15cb3dSCy Schubert puts(_("Options are specified by single or double hyphens and their name.\n")); 16362b15cb3dSCy Schubert #line 904 "../usage.c" 16372b15cb3dSCy Schubert puts(_("\t\t\t\t- may appear multiple times\n")); 16382b15cb3dSCy Schubert #line 891 "../usage.c" 16392b15cb3dSCy Schubert puts(_("\t\t\t\t- may not be preset\n")); 16402b15cb3dSCy Schubert #line 1309 "../usage.c" 16412b15cb3dSCy Schubert puts(_(" Arg Option-Name Description\n")); 16422b15cb3dSCy Schubert #line 1245 "../usage.c" 16432b15cb3dSCy Schubert puts(_(" Flg Arg Option-Name Description\n")); 16442b15cb3dSCy Schubert #line 1303 "../usage.c" 16452b15cb3dSCy Schubert puts(_(" Flg Arg Option-Name Description\n")); 16462b15cb3dSCy Schubert #line 1304 "../usage.c" 16472b15cb3dSCy Schubert puts(_(" %3s %s")); 16482b15cb3dSCy Schubert #line 1310 "../usage.c" 16492b15cb3dSCy Schubert puts(_(" %3s %s")); 16502b15cb3dSCy Schubert #line 387 "../usage.c" 16512b15cb3dSCy Schubert puts(_("The '-#<number>' option may omit the hash char\n")); 16522b15cb3dSCy Schubert #line 383 "../usage.c" 16532b15cb3dSCy Schubert puts(_("All arguments are named options.\n")); 16542b15cb3dSCy Schubert #line 971 "../usage.c" 16552b15cb3dSCy Schubert puts(_(" - reading file %s")); 16562b15cb3dSCy Schubert #line 409 "../usage.c" 16572b15cb3dSCy Schubert puts(_("\n" 16582b15cb3dSCy Schubert "Please send bug reports to: <%s>\n")); 16592b15cb3dSCy Schubert #line 100 "../version.c" 16602b15cb3dSCy Schubert puts(_("\n" 16612b15cb3dSCy Schubert "Please send bug reports to: <%s>\n")); 16622b15cb3dSCy Schubert #line 129 "../version.c" 16632b15cb3dSCy Schubert puts(_("\n" 16642b15cb3dSCy Schubert "Please send bug reports to: <%s>\n")); 16652b15cb3dSCy Schubert #line 903 "../usage.c" 16662b15cb3dSCy Schubert puts(_("\t\t\t\t- may NOT appear - preset only\n")); 16672b15cb3dSCy Schubert #line 944 "../usage.c" 16682b15cb3dSCy Schubert puts(_("\n" 16692b15cb3dSCy Schubert "The following option preset mechanisms are supported:\n")); 16702b15cb3dSCy Schubert #line 1192 "../usage.c" 16712b15cb3dSCy Schubert puts(_("\n" 16722b15cb3dSCy Schubert "The following option preset mechanisms are supported:\n")); 16732b15cb3dSCy Schubert #line 682 "../usage.c" 16742b15cb3dSCy Schubert puts(_("prohibits these options:\n")); 16752b15cb3dSCy Schubert #line 677 "../usage.c" 16762b15cb3dSCy Schubert puts(_("prohibits the option '%s'\n")); 16772b15cb3dSCy Schubert #line 81 "../numeric.c" 16782b15cb3dSCy Schubert puts(_("%s%ld to %ld")); 16792b15cb3dSCy Schubert #line 79 "../numeric.c" 16802b15cb3dSCy Schubert puts(_("%sgreater than or equal to %ld")); 16812b15cb3dSCy Schubert #line 75 "../numeric.c" 16822b15cb3dSCy Schubert puts(_("%s%ld exactly")); 16832b15cb3dSCy Schubert #line 68 "../numeric.c" 16842b15cb3dSCy Schubert puts(_("%sit must lie in one of the ranges:\n")); 16852b15cb3dSCy Schubert #line 68 "../numeric.c" 16862b15cb3dSCy Schubert puts(_("%sit must be in the range:\n")); 16872b15cb3dSCy Schubert #line 88 "../numeric.c" 16882b15cb3dSCy Schubert puts(_(", or\n")); 16892b15cb3dSCy Schubert #line 66 "../numeric.c" 16902b15cb3dSCy Schubert puts(_("%sis scalable with a suffix: k/K/m/M/g/G/t/T\n")); 16912b15cb3dSCy Schubert #line 77 "../numeric.c" 16922b15cb3dSCy Schubert puts(_("%sless than or equal to %ld")); 16932b15cb3dSCy Schubert #line 390 "../usage.c" 16942b15cb3dSCy Schubert puts(_("Operands and options may be intermixed. They will be reordered.\n")); 16952b15cb3dSCy Schubert #line 652 "../usage.c" 16962b15cb3dSCy Schubert puts(_("requires the option '%s'\n")); 16972b15cb3dSCy Schubert #line 655 "../usage.c" 16982b15cb3dSCy Schubert puts(_("requires these options:\n")); 16992b15cb3dSCy Schubert #line 1321 "../usage.c" 17002b15cb3dSCy Schubert puts(_(" Arg Option-Name Req? Description\n")); 17012b15cb3dSCy Schubert #line 1315 "../usage.c" 17022b15cb3dSCy Schubert puts(_(" Flg Arg Option-Name Req? Description\n")); 17032b15cb3dSCy Schubert #line 167 "../enum.c" 17042b15cb3dSCy Schubert puts(_("or you may use a numeric representation. Preceding these with a '!'\n" 17052b15cb3dSCy Schubert "will clear the bits, specifying 'none' will clear all bits, and 'all'\n" 17062b15cb3dSCy Schubert "will set them all. Multiple entries may be passed as an option\n" 17072b15cb3dSCy Schubert "argument list.\n")); 17082b15cb3dSCy Schubert #line 910 "../usage.c" 17092b15cb3dSCy Schubert puts(_("\t\t\t\t- may appear up to %d times\n")); 17102b15cb3dSCy Schubert #line 77 "../enum.c" 17112b15cb3dSCy Schubert puts(_("The valid \"%s\" option keywords are:\n")); 17122b15cb3dSCy Schubert #line 1152 "../usage.c" 17132b15cb3dSCy Schubert puts(_("The next option supports vendor supported extra options:")); 17142b15cb3dSCy Schubert #line 773 "../usage.c" 17152b15cb3dSCy Schubert puts(_("These additional options are:")); 17162b15cb3dSCy Schubert /* END-USAGE-TEXT */ 17172b15cb3dSCy Schubert } 17182b15cb3dSCy Schubert #endif /* uncompilable code */ 1719ea906c41SOllivier Robert #ifdef __cplusplus 1720ea906c41SOllivier Robert } 1721ea906c41SOllivier Robert #endif 1722ea906c41SOllivier Robert /* ntp-keygen-opts.c ends here */ 1723