diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2013-06-10 19:23:38 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2013-06-10 19:23:38 +0200 |
commit | 1051c4291ab85448b3bb65e0ec0531a1bc950e47 (patch) | |
tree | beeb17c3f829a231fa5f2fb8ce93d65bd684a054 /src | |
parent | 5fdea7eef3afd09dd19607c53c8135275373eb20 (diff) | |
download | gnutls-1051c4291ab85448b3bb65e0ec0531a1bc950e47.tar.gz |
updated tpmtool auto-gen'ed files
Diffstat (limited to 'src')
-rw-r--r-- | src/tpmtool-args.c | 957 | ||||
-rw-r--r-- | src/tpmtool-args.h | 75 |
2 files changed, 778 insertions, 254 deletions
diff --git a/src/tpmtool-args.c b/src/tpmtool-args.c index 749633e30f..14246105b8 100644 --- a/src/tpmtool-args.c +++ b/src/tpmtool-args.c @@ -1,12 +1,12 @@ /* -*- buffer-read-only: t -*- vi: set ro: - * + * * DO NOT EDIT THIS FILE (tpmtool-args.c) - * - * It has been AutoGen-ed November 8, 2012 at 11:35:56 PM by AutoGen 5.16 + * + * It has been AutoGen-ed June 10, 2013 at 07:23:01 PM by AutoGen 5.17.3 * From the definitions tpmtool-args.def * and the template file options * - * Generated from AutoOpts 36:4:11 templates. + * Generated from AutoOpts 38:0:13 templates. * * AutoOpts is a copyrighted work. This source file is not encumbered * by AutoOpts licensing, but is provided under the licensing terms chosen @@ -21,20 +21,19 @@ * * Copyright (C) 2000-2012 Free Software Foundation, all rights reserved. * This is free software. It is licensed for use, modification and - * redistribution under the terms of the - * GNU General Public License, version 3 or later - * <http://gnu.org/licenses/gpl.html> + * redistribution under the terms of the GNU General Public License, + * version 3 or later <http://gnu.org/licenses/gpl.html> * * tpmtool is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation, either version 3 of the License, or * (at your option) any later version. - * + * * tpmtool is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License along * with this program. If not, see <http://www.gnu.org/licenses/>. */ @@ -53,28 +52,24 @@ extern "C" { #endif extern FILE * option_usage_fp; - -/* TRANSLATORS: choose the translation for option names wisely because you - cannot ever change your mind. */ #define zCopyright (tpmtool_opt_strs+0) -#define zLicenseDescrip (tpmtool_opt_strs+278) +#define zLicenseDescrip (tpmtool_opt_strs+274) #ifndef NULL # define NULL 0 #endif -/* - * tpmtool option static const strings +/** + * static const strings for tpmtool options */ -static char const tpmtool_opt_strs[2126] = +static char const tpmtool_opt_strs[2103] = /* 0 */ "tpmtool @VERSION@\n" "Copyright (C) 2000-2012 Free Software Foundation, all rights reserved.\n" "This is free software. It is licensed for use, modification and\n" - "redistribution under the terms of the\n" - "GNU General Public License, version 3 or later\n" - " <http://gnu.org/licenses/gpl.html>\n\0" -/* 278 */ "tpmtool is free software: you can redistribute it and/or modify it under\n" + "redistribution under the terms of the GNU General Public License,\n" + "version 3 or later <http://gnu.org/licenses/gpl.html>\n\0" +/* 274 */ "tpmtool is free software: you can redistribute it and/or modify it under\n" "the terms of the GNU General Public License as published by the Free\n" "Software Foundation, either version 3 of the License, or (at your option)\n" "any later version.\n\n" @@ -84,242 +79,318 @@ static char const tpmtool_opt_strs[2126] = "details.\n\n" "You should have received a copy of the GNU General Public License along\n" "with this program. If not, see <http://www.gnu.org/licenses/>.\n\0" -/* 881 */ "Enable debugging.\0" -/* 899 */ "DEBUG\0" -/* 905 */ "debug\0" -/* 911 */ "Input file\0" -/* 922 */ "INFILE\0" -/* 929 */ "infile\0" -/* 936 */ "Output file\0" -/* 948 */ "OUTFILE\0" -/* 956 */ "outfile\0" -/* 964 */ "Generate an RSA private-public key pair\0" -/* 1004 */ "GENERATE_RSA\0" -/* 1017 */ "generate-rsa\0" -/* 1030 */ "Any generated key will be registered in the TPM\0" -/* 1078 */ "REGISTER\0" -/* 1087 */ "register\0" -/* 1096 */ "Any generated key will be a signing key\0" -/* 1136 */ "SIGNING\0" -/* 1144 */ "signing\0" -/* 1152 */ "Any generated key will be a legacy key\0" -/* 1191 */ "LEGACY\0" -/* 1198 */ "legacy\0" -/* 1205 */ "Any registered key will be a user key\0" -/* 1243 */ "USER\0" -/* 1248 */ "user\0" -/* 1253 */ "Any registred key will be a system key\0" -/* 1292 */ "SYSTEM\0" -/* 1299 */ "system\0" -/* 1306 */ "Prints the public key of the provided key\0" -/* 1348 */ "PUBKEY\0" -/* 1355 */ "pubkey\0" -/* 1362 */ "Lists all stored keys in the TPM\0" -/* 1395 */ "LIST\0" -/* 1400 */ "list\0" -/* 1405 */ "Delete the key identified by the given URL (UUID).\0" -/* 1456 */ "DELETE\0" -/* 1463 */ "delete\0" -/* 1470 */ "Specify the security level [low, legacy, normal, high, ultra].\0" -/* 1533 */ "SEC_PARAM\0" -/* 1543 */ "sec-param\0" -/* 1553 */ "Specify the number of bits for key generate\0" -/* 1597 */ "BITS\0" -/* 1602 */ "bits\0" -/* 1607 */ "Use the DER format for keys.\0" -/* 1636 */ "INDER\0" -/* 1642 */ "no-inder\0" -/* 1651 */ "no\0" -/* 1654 */ "Use DER format for output keys\0" -/* 1685 */ "OUTDER\0" -/* 1692 */ "no-outder\0" -/* 1702 */ "Display extended usage information and exit\0" -/* 1746 */ "help\0" -/* 1751 */ "Extended usage information passed thru pager\0" -/* 1796 */ "more-help\0" -/* 1806 */ "Output version information and exit\0" -/* 1842 */ "version\0" -/* 1850 */ "TPMTOOL\0" -/* 1858 */ "tpmtool - GnuTLS TPM tool - Ver. @VERSION@\n" - "USAGE: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0" -/* 1959 */ "bug-gnutls@gnu.org\0" -/* 1978 */ "\n\n\0" -/* 1981 */ "\n" - "Program that allows handling cryptographic data from the TPM chip.\n\0" -/* 2050 */ "tpmtool @VERSION@\0" -/* 2068 */ "tpmtool [options]\n" +/* 877 */ "Enable debugging.\0" +/* 895 */ "DEBUG\0" +/* 901 */ "debug\0" +/* 907 */ "Input file\0" +/* 918 */ "INFILE\0" +/* 925 */ "infile\0" +/* 932 */ "Output file\0" +/* 944 */ "OUTFILE\0" +/* 952 */ "outfile\0" +/* 960 */ "Generate an RSA private-public key pair\0" +/* 1000 */ "GENERATE_RSA\0" +/* 1013 */ "generate-rsa\0" +/* 1026 */ "Any generated key will be registered in the TPM\0" +/* 1074 */ "REGISTER\0" +/* 1083 */ "register\0" +/* 1092 */ "Any generated key will be a signing key\0" +/* 1132 */ "SIGNING\0" +/* 1140 */ "signing\0" +/* 1148 */ "Any generated key will be a legacy key\0" +/* 1187 */ "LEGACY\0" +/* 1194 */ "legacy\0" +/* 1201 */ "Any registered key will be a user key\0" +/* 1239 */ "USER\0" +/* 1244 */ "user\0" +/* 1249 */ "Any registred key will be a system key\0" +/* 1288 */ "SYSTEM\0" +/* 1295 */ "system\0" +/* 1302 */ "Prints the public key of the provided key\0" +/* 1344 */ "PUBKEY\0" +/* 1351 */ "pubkey\0" +/* 1358 */ "Lists all stored keys in the TPM\0" +/* 1391 */ "LIST\0" +/* 1396 */ "list\0" +/* 1401 */ "Delete the key identified by the given URL (UUID).\0" +/* 1452 */ "DELETE\0" +/* 1459 */ "delete\0" +/* 1466 */ "Specify the security level [low, legacy, normal, high, ultra].\0" +/* 1529 */ "SEC_PARAM\0" +/* 1539 */ "sec-param\0" +/* 1549 */ "Specify the number of bits for key generate\0" +/* 1593 */ "BITS\0" +/* 1598 */ "bits\0" +/* 1603 */ "Use the DER format for keys.\0" +/* 1632 */ "INDER\0" +/* 1638 */ "no-inder\0" +/* 1647 */ "no\0" +/* 1650 */ "Use DER format for output keys\0" +/* 1681 */ "OUTDER\0" +/* 1688 */ "no-outder\0" +/* 1698 */ "display extended usage information and exit\0" +/* 1742 */ "help\0" +/* 1747 */ "extended usage information passed thru pager\0" +/* 1792 */ "more-help\0" +/* 1802 */ "output version information and exit\0" +/* 1838 */ "version\0" +/* 1846 */ "TPMTOOL\0" +/* 1854 */ "tpmtool - GnuTLS TPM tool\n" + "Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0" +/* 1938 */ "bug-gnutls@gnu.org\0" +/* 1957 */ "\n\0" +/* 1959 */ "Program that allows handling cryptographic data from the TPM chip.\n\0" +/* 2027 */ "tpmtool @VERSION@\0" +/* 2045 */ "tpmtool [options]\n" "tpmtool --help for usage instructions.\n"; -/* +/** * debug option description: */ -#define DEBUG_DESC (tpmtool_opt_strs+881) -#define DEBUG_NAME (tpmtool_opt_strs+899) -#define DEBUG_name (tpmtool_opt_strs+905) +/** Descriptive text for the debug option */ +#define DEBUG_DESC (tpmtool_opt_strs+877) +/** Upper-cased name for the debug option */ +#define DEBUG_NAME (tpmtool_opt_strs+895) +/** Name string for the debug option */ +#define DEBUG_name (tpmtool_opt_strs+901) +/** Compiled in flag settings for the debug option */ #define DEBUG_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) -/* +/** * infile option description: */ -#define INFILE_DESC (tpmtool_opt_strs+911) -#define INFILE_NAME (tpmtool_opt_strs+922) -#define INFILE_name (tpmtool_opt_strs+929) +/** Descriptive text for the infile option */ +#define INFILE_DESC (tpmtool_opt_strs+907) +/** Upper-cased name for the infile option */ +#define INFILE_NAME (tpmtool_opt_strs+918) +/** Name string for the infile option */ +#define INFILE_name (tpmtool_opt_strs+925) +/** Compiled in flag settings for the infile option */ #define INFILE_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_FILE)) -/* +/** * outfile option description: */ -#define OUTFILE_DESC (tpmtool_opt_strs+936) -#define OUTFILE_NAME (tpmtool_opt_strs+948) -#define OUTFILE_name (tpmtool_opt_strs+956) +/** Descriptive text for the outfile option */ +#define OUTFILE_DESC (tpmtool_opt_strs+932) +/** Upper-cased name for the outfile option */ +#define OUTFILE_NAME (tpmtool_opt_strs+944) +/** Name string for the outfile option */ +#define OUTFILE_name (tpmtool_opt_strs+952) +/** Compiled in flag settings for the outfile option */ #define OUTFILE_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) -/* +/** * generate-rsa option description: */ -#define GENERATE_RSA_DESC (tpmtool_opt_strs+964) -#define GENERATE_RSA_NAME (tpmtool_opt_strs+1004) -#define GENERATE_RSA_name (tpmtool_opt_strs+1017) +/** Descriptive text for the generate-rsa option */ +#define GENERATE_RSA_DESC (tpmtool_opt_strs+960) +/** Upper-cased name for the generate-rsa option */ +#define GENERATE_RSA_NAME (tpmtool_opt_strs+1000) +/** Name string for the generate-rsa option */ +#define GENERATE_RSA_name (tpmtool_opt_strs+1013) +/** Compiled in flag settings for the generate-rsa option */ #define GENERATE_RSA_FLAGS (OPTST_DISABLED) -/* +/** * register option description with * "Must also have options" and "Incompatible options": */ -#define REGISTER_DESC (tpmtool_opt_strs+1030) -#define REGISTER_NAME (tpmtool_opt_strs+1078) -#define REGISTER_name (tpmtool_opt_strs+1087) +/** Descriptive text for the register option */ +#define REGISTER_DESC (tpmtool_opt_strs+1026) +/** Upper-cased name for the register option */ +#define REGISTER_NAME (tpmtool_opt_strs+1074) +/** Name string for the register option */ +#define REGISTER_name (tpmtool_opt_strs+1083) +/** Other options that are required by the register option */ static int const aRegisterMustList[] = { INDEX_OPT_GENERATE_RSA, NO_EQUIVALENT }; +/** Compiled in flag settings for the register option */ #define REGISTER_FLAGS (OPTST_DISABLED) -/* +/** * signing option description with * "Must also have options" and "Incompatible options": */ -#define SIGNING_DESC (tpmtool_opt_strs+1096) -#define SIGNING_NAME (tpmtool_opt_strs+1136) -#define SIGNING_name (tpmtool_opt_strs+1144) +/** Descriptive text for the signing option */ +#define SIGNING_DESC (tpmtool_opt_strs+1092) +/** Upper-cased name for the signing option */ +#define SIGNING_NAME (tpmtool_opt_strs+1132) +/** Name string for the signing option */ +#define SIGNING_name (tpmtool_opt_strs+1140) +/** Other options that are required by the signing option */ static int const aSigningMustList[] = { INDEX_OPT_GENERATE_RSA, NO_EQUIVALENT }; +/** Other options that appear in conjunction with the signing option */ static int const aSigningCantList[] = { INDEX_OPT_LEGACY, NO_EQUIVALENT }; +/** Compiled in flag settings for the signing option */ #define SIGNING_FLAGS (OPTST_DISABLED) -/* +/** * legacy option description with * "Must also have options" and "Incompatible options": */ -#define LEGACY_DESC (tpmtool_opt_strs+1152) -#define LEGACY_NAME (tpmtool_opt_strs+1191) -#define LEGACY_name (tpmtool_opt_strs+1198) +/** Descriptive text for the legacy option */ +#define LEGACY_DESC (tpmtool_opt_strs+1148) +/** Upper-cased name for the legacy option */ +#define LEGACY_NAME (tpmtool_opt_strs+1187) +/** Name string for the legacy option */ +#define LEGACY_name (tpmtool_opt_strs+1194) +/** Other options that are required by the legacy option */ static int const aLegacyMustList[] = { INDEX_OPT_GENERATE_RSA, NO_EQUIVALENT }; +/** Other options that appear in conjunction with the legacy option */ static int const aLegacyCantList[] = { INDEX_OPT_SIGNING, NO_EQUIVALENT }; +/** Compiled in flag settings for the legacy option */ #define LEGACY_FLAGS (OPTST_DISABLED) -/* +/** * user option description with * "Must also have options" and "Incompatible options": */ -#define USER_DESC (tpmtool_opt_strs+1205) -#define USER_NAME (tpmtool_opt_strs+1243) -#define USER_name (tpmtool_opt_strs+1248) +/** Descriptive text for the user option */ +#define USER_DESC (tpmtool_opt_strs+1201) +/** Upper-cased name for the user option */ +#define USER_NAME (tpmtool_opt_strs+1239) +/** Name string for the user option */ +#define USER_name (tpmtool_opt_strs+1244) +/** Other options that are required by the user option */ static int const aUserMustList[] = { INDEX_OPT_REGISTER, NO_EQUIVALENT }; +/** Other options that appear in conjunction with the user option */ static int const aUserCantList[] = { INDEX_OPT_SYSTEM, NO_EQUIVALENT }; +/** Compiled in flag settings for the user option */ #define USER_FLAGS (OPTST_DISABLED) -/* +/** * system option description with * "Must also have options" and "Incompatible options": */ -#define SYSTEM_DESC (tpmtool_opt_strs+1253) -#define SYSTEM_NAME (tpmtool_opt_strs+1292) -#define SYSTEM_name (tpmtool_opt_strs+1299) +/** Descriptive text for the system option */ +#define SYSTEM_DESC (tpmtool_opt_strs+1249) +/** Upper-cased name for the system option */ +#define SYSTEM_NAME (tpmtool_opt_strs+1288) +/** Name string for the system option */ +#define SYSTEM_name (tpmtool_opt_strs+1295) +/** Other options that are required by the system option */ static int const aSystemMustList[] = { INDEX_OPT_REGISTER, NO_EQUIVALENT }; +/** Other options that appear in conjunction with the system option */ static int const aSystemCantList[] = { INDEX_OPT_USER, NO_EQUIVALENT }; +/** Compiled in flag settings for the system option */ #define SYSTEM_FLAGS (OPTST_DISABLED) -/* +/** * pubkey option description: */ -#define PUBKEY_DESC (tpmtool_opt_strs+1306) -#define PUBKEY_NAME (tpmtool_opt_strs+1348) -#define PUBKEY_name (tpmtool_opt_strs+1355) +/** Descriptive text for the pubkey option */ +#define PUBKEY_DESC (tpmtool_opt_strs+1302) +/** Upper-cased name for the pubkey option */ +#define PUBKEY_NAME (tpmtool_opt_strs+1344) +/** Name string for the pubkey option */ +#define PUBKEY_name (tpmtool_opt_strs+1351) +/** Compiled in flag settings for the pubkey option */ #define PUBKEY_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) -/* +/** * list option description: */ -#define LIST_DESC (tpmtool_opt_strs+1362) -#define LIST_NAME (tpmtool_opt_strs+1395) -#define LIST_name (tpmtool_opt_strs+1400) +/** Descriptive text for the list option */ +#define LIST_DESC (tpmtool_opt_strs+1358) +/** Upper-cased name for the list option */ +#define LIST_NAME (tpmtool_opt_strs+1391) +/** Name string for the list option */ +#define LIST_name (tpmtool_opt_strs+1396) +/** Compiled in flag settings for the list option */ #define LIST_FLAGS (OPTST_DISABLED) -/* +/** * delete option description: */ -#define DELETE_DESC (tpmtool_opt_strs+1405) -#define DELETE_NAME (tpmtool_opt_strs+1456) -#define DELETE_name (tpmtool_opt_strs+1463) +/** Descriptive text for the delete option */ +#define DELETE_DESC (tpmtool_opt_strs+1401) +/** Upper-cased name for the delete option */ +#define DELETE_NAME (tpmtool_opt_strs+1452) +/** Name string for the delete option */ +#define DELETE_name (tpmtool_opt_strs+1459) +/** Compiled in flag settings for the delete option */ #define DELETE_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) -/* +/** * sec-param option description: */ -#define SEC_PARAM_DESC (tpmtool_opt_strs+1470) -#define SEC_PARAM_NAME (tpmtool_opt_strs+1533) -#define SEC_PARAM_name (tpmtool_opt_strs+1543) +/** Descriptive text for the sec-param option */ +#define SEC_PARAM_DESC (tpmtool_opt_strs+1466) +/** Upper-cased name for the sec-param option */ +#define SEC_PARAM_NAME (tpmtool_opt_strs+1529) +/** Name string for the sec-param option */ +#define SEC_PARAM_name (tpmtool_opt_strs+1539) +/** Compiled in flag settings for the sec-param option */ #define SEC_PARAM_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) -/* +/** * bits option description: */ -#define BITS_DESC (tpmtool_opt_strs+1553) -#define BITS_NAME (tpmtool_opt_strs+1597) -#define BITS_name (tpmtool_opt_strs+1602) +/** Descriptive text for the bits option */ +#define BITS_DESC (tpmtool_opt_strs+1549) +/** Upper-cased name for the bits option */ +#define BITS_NAME (tpmtool_opt_strs+1593) +/** Name string for the bits option */ +#define BITS_name (tpmtool_opt_strs+1598) +/** Compiled in flag settings for the bits option */ #define BITS_FLAGS (OPTST_DISABLED \ | OPTST_SET_ARGTYPE(OPARG_TYPE_NUMERIC)) -/* +/** * inder option description: */ -#define INDER_DESC (tpmtool_opt_strs+1607) -#define INDER_NAME (tpmtool_opt_strs+1636) -#define NOT_INDER_name (tpmtool_opt_strs+1642) -#define NOT_INDER_PFX (tpmtool_opt_strs+1651) +/** Descriptive text for the inder option */ +#define INDER_DESC (tpmtool_opt_strs+1603) +/** Upper-cased name for the inder option */ +#define INDER_NAME (tpmtool_opt_strs+1632) +/** disablement name for the inder option */ +#define NOT_INDER_name (tpmtool_opt_strs+1638) +/** disablement prefix for the inder option */ +#define NOT_INDER_PFX (tpmtool_opt_strs+1647) +/** Name string for the inder option */ #define INDER_name (NOT_INDER_name + 3) +/** Compiled in flag settings for the inder option */ #define INDER_FLAGS (OPTST_DISABLED) -/* +/** * outder option description: */ -#define OUTDER_DESC (tpmtool_opt_strs+1654) -#define OUTDER_NAME (tpmtool_opt_strs+1685) -#define NOT_OUTDER_name (tpmtool_opt_strs+1692) -#define NOT_OUTDER_PFX (tpmtool_opt_strs+1651) +/** Descriptive text for the outder option */ +#define OUTDER_DESC (tpmtool_opt_strs+1650) +/** Upper-cased name for the outder option */ +#define OUTDER_NAME (tpmtool_opt_strs+1681) +/** disablement name for the outder option */ +#define NOT_OUTDER_name (tpmtool_opt_strs+1688) +/** disablement prefix for the outder option */ +#define NOT_OUTDER_PFX (tpmtool_opt_strs+1647) +/** Name string for the outder option */ #define OUTDER_name (NOT_OUTDER_name + 3) +/** Compiled in flag settings for the outder option */ #define OUTDER_FLAGS (OPTST_DISABLED) /* * Help/More_Help/Version option descriptions: */ -#define HELP_DESC (tpmtool_opt_strs+1702) -#define HELP_name (tpmtool_opt_strs+1746) +#define HELP_DESC (tpmtool_opt_strs+1698) +#define HELP_name (tpmtool_opt_strs+1742) #ifdef HAVE_WORKING_FORK -#define MORE_HELP_DESC (tpmtool_opt_strs+1751) -#define MORE_HELP_name (tpmtool_opt_strs+1796) +#define MORE_HELP_DESC (tpmtool_opt_strs+1747) +#define MORE_HELP_name (tpmtool_opt_strs+1792) #define MORE_HELP_FLAGS (OPTST_IMM | OPTST_NO_INIT) #else #define MORE_HELP_DESC NULL @@ -332,9 +403,9 @@ static int const aSystemCantList[] = { # define VER_FLAGS (OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) | \ OPTST_ARG_OPTIONAL | OPTST_IMM | OPTST_NO_INIT) #endif -#define VER_DESC (tpmtool_opt_strs+1806) -#define VER_name (tpmtool_opt_strs+1842) -/* +#define VER_DESC (tpmtool_opt_strs+1802) +#define VER_name (tpmtool_opt_strs+1838) +/** * Declare option callback procedures */ extern tOptProc @@ -549,7 +620,7 @@ static tOptDesc optDesc[OPTION_CT] = { /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_VERSION, /* equivalenced to */ NO_EQUIVALENT, /* min, max, act ct */ 0, 1, 0, - /* opt state flags */ VER_FLAGS, 0, + /* opt state flags */ VER_FLAGS, AOUSE_VERSION, /* last opt argumnt */ { NULL }, /* arg list/cookie */ NULL, /* must/cannot opts */ NULL, NULL, @@ -563,7 +634,7 @@ static tOptDesc optDesc[OPTION_CT] = { /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_HELP, /* equivalenced to */ NO_EQUIVALENT, /* min, max, act ct */ 0, 1, 0, - /* opt state flags */ OPTST_IMM | OPTST_NO_INIT, 0, + /* opt state flags */ OPTST_IMM | OPTST_NO_INIT, AOUSE_HELP, /* last opt argumnt */ { NULL }, /* arg list/cookie */ NULL, /* must/cannot opts */ NULL, NULL, @@ -575,7 +646,7 @@ static tOptDesc optDesc[OPTION_CT] = { /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_MORE_HELP, /* equivalenced to */ NO_EQUIVALENT, /* min, max, act ct */ 0, 1, 0, - /* opt state flags */ MORE_HELP_FLAGS, 0, + /* opt state flags */ MORE_HELP_FLAGS, AOUSE_MORE_HELP, /* last opt argumnt */ { NULL }, /* arg list/cookie */ NULL, /* must/cannot opts */ NULL, NULL, @@ -585,19 +656,24 @@ static tOptDesc optDesc[OPTION_CT] = { }; -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Define the tpmtool Option Environment - */ -#define zPROGNAME (tpmtool_opt_strs+1850) -#define zUsageTitle (tpmtool_opt_strs+1858) +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +/** Reference to the upper cased version of tpmtool. */ +#define zPROGNAME (tpmtool_opt_strs+1846) +/** Reference to the title line for tpmtool usage. */ +#define zUsageTitle (tpmtool_opt_strs+1854) +/** There is no tpmtool configuration file. */ #define zRcName NULL +/** There are no directories to search for tpmtool config files. */ #define apzHomeList NULL -#define zBugsAddr (tpmtool_opt_strs+1959) -#define zExplain (tpmtool_opt_strs+1978) -#define zDetail (tpmtool_opt_strs+1981) -#define zFullVersion (tpmtool_opt_strs+2050) -/* extracted from optcode.tlib near line 350 */ +/** The tpmtool program bug email address. */ +#define zBugsAddr (tpmtool_opt_strs+1938) +/** Clarification/explanation of what tpmtool does. */ +#define zExplain (tpmtool_opt_strs+1957) +/** Extra detail explaining what tpmtool does. */ +#define zDetail (tpmtool_opt_strs+1959) +/** The full version string for tpmtool. */ +#define zFullVersion (tpmtool_opt_strs+2027) +/* extracted from optcode.tlib near line 371 */ #if defined(ENABLE_NLS) # define OPTPROC_BASE OPTPROC_TRANSLATE | OPTPROC_NXLAT_OPT @@ -607,10 +683,8 @@ static tOptDesc optDesc[OPTION_CT] = { # define translate_option_strings NULL #endif /* ENABLE_NLS */ - #define tpmtool_full_usage (NULL) - -#define tpmtool_short_usage (tpmtool_opt_strs+2068) +#define tpmtool_short_usage (tpmtool_opt_strs+2045) #endif /* not defined __doxygen__ */ @@ -620,8 +694,8 @@ static tOptDesc optDesc[OPTION_CT] = { /** * The callout function that invokes the optionUsage function. * - * @param pOptions the AutoOpts option description structure - * @param pOptDesc the descriptor for the "help" (usage) option. + * @param[in] pOptions the AutoOpts option description structure + * @param[in] pOptDesc the descriptor for the "help" (usage) option. * @noreturn */ static void @@ -636,9 +710,9 @@ doUsageOpt(tOptions * pOptions, tOptDesc * pOptDesc) /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ /** * Code to handle the debug option. - * - * @param pOptions the tpmtool options data structure - * @param pOptDesc the option descriptor for this option. + * Specifies the debug level. + * @param[in] pOptions the tpmtool options data structure + * @param[in,out] pOptDesc the option descriptor for this option. */ static void doOptDebug(tOptions* pOptions, tOptDesc* pOptDesc) @@ -664,8 +738,7 @@ doOptDebug(tOptions* pOptions, tOptDesc* pOptDesc) option_usage_fp = stderr; -emit_ranges: - + emit_ranges: optionShowRange(pOptions, pOptDesc, (void *)rng, 1); } @@ -673,8 +746,8 @@ emit_ranges: /** * Code to handle the infile option. * - * @param pOptions the tpmtool options data structure - * @param pOptDesc the option descriptor for this option. + * @param[in] pOptions the tpmtool options data structure + * @param[in,out] pOptDesc the option descriptor for this option. */ static void doOptInfile(tOptions* pOptions, tOptDesc* pOptDesc) @@ -687,9 +760,12 @@ doOptInfile(tOptions* pOptions, tOptDesc* pOptDesc) #endif mode.file_flags = O_CLOEXEC; + /* + * This function handles special invalid values for "pOptions" + */ optionFileCheck(pOptions, pOptDesc, type, mode); } -/* extracted from optmain.tlib near line 1113 */ +/* extracted from optmain.tlib near line 1254 */ /** * The directory containing the data associated with tpmtool. @@ -705,6 +781,7 @@ doOptInfile(tOptions* pOptions, tOptDesc* pOptDesc) #ifndef WITH_PACKAGER # define tpmtool_packager_info NULL #else +/** Packager information for tpmtool. */ static char const tpmtool_packager_info[] = "Packaged by " WITH_PACKAGER @@ -760,42 +837,69 @@ tOptions tpmtoolOptions = { }; #if ENABLE_NLS +/** + * This code is designed to translate translatable option text for the + * tpmtool program. These translations happen upon entry + * to optionProcess(). + */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> +#ifdef HAVE_DCGETTEXT +# include <gettext.h> +#endif #include <autoopts/usage-txt.h> -static char* AO_gettext(char const* pz); -static void coerce_it(void** s); +static char * AO_gettext(char const * pz); +static void coerce_it(void ** s); /** - * AutoGen specific wrapper function for gettext. - * It relies on the macro _() to convert from English to the target - * language, then strdup-duplicates the result string. + * AutoGen specific wrapper function for gettext. It relies on the macro _() + * to convert from English to the target language, then strdup-duplicates the + * result string. It tries the "libopts" domain first, then whatever has been + * set via the \a textdomain(3) call. * * @param[in] pz the input text used as a lookup key. * @returns the translated text (if there is one), * or the original text (if not). */ static char * -AO_gettext(char const* pz) +AO_gettext(char const * pz) { - char* pzRes; + char * res; if (pz == NULL) return NULL; - pzRes = _(pz); - if (pzRes == pz) - return pzRes; - pzRes = strdup(pzRes); - if (pzRes == NULL) { +#ifdef HAVE_DCGETTEXT + /* + * While processing the option_xlateable_txt data, try to use the + * "libopts" domain. Once we switch to the option descriptor data, + * do *not* use that domain. + */ + if (option_xlateable_txt.field_ct != 0) { + res = dgettext("libopts", pz); + if (res == pz) + res = (char *)(void *)_(pz); + } else + res = (char *)(void *)_(pz); +#else + res = (char *)(void *)_(pz); +#endif + if (res == pz) + return res; + res = strdup(res); + if (res == NULL) { fputs(_("No memory for duping translated strings\n"), stderr); exit(TPMTOOL_EXIT_FAILURE); } - return pzRes; + return res; } -static void coerce_it(void** s) { *s = AO_gettext(*s); +/** + * All the pointers we use are marked "* const", but they are stored in + * writable memory. Coerce the mutability and set the pointer. + */ +static void coerce_it(void ** s) { *s = AO_gettext(*s); } /** @@ -805,56 +909,449 @@ static void coerce_it(void** s) { *s = AO_gettext(*s); static void translate_option_strings(void) { - tOptions * const pOpt = &tpmtoolOptions; + tOptions * const opts = &tpmtoolOptions; /* * Guard against re-translation. It won't work. The strings will have * been changed by the first pass through this code. One shot only. */ - if (option_usage_text.field_ct != 0) { + if (option_xlateable_txt.field_ct != 0) { /* * Do the translations. The first pointer follows the field count * field. The field count field is the size of a pointer. */ - tOptDesc * pOD = pOpt->pOptDesc; - char ** ppz = (char**)(void*)&(option_usage_text); - int ix = option_usage_text.field_ct; + char ** ppz = (char**)(void*)&(option_xlateable_txt); + int ix = option_xlateable_txt.field_ct; do { - ppz++; + ppz++; /* skip over field_ct */ *ppz = AO_gettext(*ppz); } while (--ix > 0); - - coerce_it((void*)&(pOpt->pzCopyright)); - coerce_it((void*)&(pOpt->pzCopyNotice)); - coerce_it((void*)&(pOpt->pzFullVersion)); - coerce_it((void*)&(pOpt->pzUsageTitle)); - coerce_it((void*)&(pOpt->pzExplain)); - coerce_it((void*)&(pOpt->pzDetail)); - coerce_it((void*)&(pOpt->pzPackager)); - coerce_it((void*)&(pOpt->pzShortUsage)); - option_usage_text.field_ct = 0; - - for (ix = pOpt->optCt; ix > 0; ix--, pOD++) - coerce_it((void*)&(pOD->pzText)); - } - - if ((pOpt->fOptSet & OPTPROC_NXLAT_OPT_CFG) == 0) { - tOptDesc * pOD = pOpt->pOptDesc; - int ix; - - for (ix = pOpt->optCt; ix > 0; ix--, pOD++) { - coerce_it((void*)&(pOD->pz_Name)); - coerce_it((void*)&(pOD->pz_DisableName)); - coerce_it((void*)&(pOD->pz_DisablePfx)); + /* prevent re-translation and disable "libopts" domain lookup */ + option_xlateable_txt.field_ct = 0; + + coerce_it((void*)&(opts->pzCopyright)); + coerce_it((void*)&(opts->pzCopyNotice)); + coerce_it((void*)&(opts->pzFullVersion)); + coerce_it((void*)&(opts->pzUsageTitle)); + coerce_it((void*)&(opts->pzExplain)); + coerce_it((void*)&(opts->pzDetail)); + { + tOptDesc * od = opts->pOptDesc; + for (ix = opts->optCt; ix > 0; ix--, od++) + coerce_it((void*)&(od->pzText)); } - /* prevent re-translation */ - tpmtoolOptions.fOptSet |= OPTPROC_NXLAT_OPT_CFG | OPTPROC_NXLAT_OPT; } } - #endif /* ENABLE_NLS */ +#ifdef DO_NOT_COMPILE_THIS_CODE_IT_IS_FOR_GETTEXT +/** I18N function strictly for xgettext. Do not compile. */ +static void bogus_function(void) { + /* TRANSLATORS: + + The following dummy function was crated solely so that xgettext can extract + the correct strings. These strings are actually referenced by a field name + in the tpmtoolOptions structure noted in the comments below. The + literal text is defined in tpmtool_opt_strs. + + NOTE: the strings below are segmented with respect to the source string + tpmtool_opt_strs. The strings above are handed off for translation + at run time a paragraph at a time. Consequently, they are presented here + for translation a paragraph at a time. + + ALSO: often the description for an option will reference another option + by name. These are set off with apostrophe quotes (I hope). Do not + translate option names. + */ + /* referenced via tpmtoolOptions.pzCopyright */ + puts(_("tpmtool @VERSION@\n\ +Copyright (C) 2000-2012 Free Software Foundation, all rights reserved.\n\ +This is free software. It is licensed for use, modification and\n\ +redistribution under the terms of the GNU General Public License,\n\ +version 3 or later <http://gnu.org/licenses/gpl.html>\n")); + + /* referenced via tpmtoolOptions.pzCopyNotice */ + puts(_("tpmtool is free software: you can redistribute it and/or modify it under\n\ +the terms of the GNU General Public License as published by the Free\n\ +Software Foundation, either version 3 of the License, or (at your option)\n\ +any later version.\n\n")); + puts(_("tpmtool is distributed in the hope that it will be useful, but WITHOUT ANY\n\ +WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\n\ +FOR A PARTICULAR PURPOSE. See the GNU General Public License for more\n\ +details.\n\n")); + puts(_("You should have received a copy of the GNU General Public License along\n\ +with this program. If not, see <http://www.gnu.org/licenses/>.\n")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Enable debugging.")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Input file")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Output file")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Generate an RSA private-public key pair")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Any generated key will be registered in the TPM")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Any generated key will be a signing key")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Any generated key will be a legacy key")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Any registered key will be a user key")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Any registred key will be a system key")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Prints the public key of the provided key")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Lists all stored keys in the TPM")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Delete the key identified by the given URL (UUID).")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Specify the security level [low, legacy, normal, high, ultra].")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Specify the number of bits for key generate")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Use the DER format for keys.")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("Use DER format for output keys")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("display extended usage information and exit")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("extended usage information passed thru pager")); + + /* referenced via tpmtoolOptions.pOptDesc->pzText */ + puts(_("output version information and exit")); + + /* referenced via tpmtoolOptions.pzUsageTitle */ + puts(_("tpmtool - GnuTLS TPM tool\n\ +Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n")); + + /* referenced via tpmtoolOptions.pzExplain */ + puts(_("\n")); + + /* referenced via tpmtoolOptions.pzDetail */ + puts(_("Program that allows handling cryptographic data from the TPM chip.\n")); + + /* referenced via tpmtoolOptions.pzFullVersion */ + puts(_("tpmtool @VERSION@")); + + /* referenced via tpmtoolOptions.pzFullUsage */ + puts(_("<<<NOT-FOUND>>>")); + + /* referenced via tpmtoolOptions.pzShortUsage */ + puts(_("tpmtool [options]\n\ +tpmtool --help for usage instructions.\n")); + /* LIBOPTS-MESSAGES: */ +#line 60 "../autoopts.c" + puts(_("allocation of %d bytes failed\n")); +#line 86 "../autoopts.c" + puts(_("allocation of %d bytes failed\n")); +#line 53 "../init.c" + puts(_("AutoOpts function called without option descriptor\n")); +#line 89 "../init.c" + puts(_("\tThis exceeds the compiled library version: ")); +#line 87 "../init.c" + puts(_("Automated Options Processing Error!\n" + "\t%s called AutoOpts function with structure version %d:%d:%d.\n")); +#line 73 "../autoopts.c" + puts(_("realloc of %d bytes at 0x%p failed\n")); +#line 91 "../init.c" + puts(_("\tThis is less than the minimum library version: ")); +#line 121 "../version.c" + puts(_("Automated Options version %s\n" + "\tCopyright (C) 1999-2013 by Bruce Korb - all rights reserved\n")); +#line 310 "../usage.c" + puts(_("(AutoOpts bug): %s.\n")); +#line 90 "../reset.c" + puts(_("optionResetOpt() called, but reset-option not configured")); +#line 329 "../usage.c" + puts(_("could not locate the 'help' option")); +#line 351 "../autoopts.c" + puts(_("optionProcess() was called with invalid data")); +#line 783 "../usage.c" + puts(_("invalid argument type specified")); +#line 589 "../find.c" + puts(_("defaulted to option with optional arg")); +#line 76 "../alias.c" + puts(_("aliasing option is out of range.")); +#line 229 "../enum.c" + puts(_("%s error: the keyword '%s' is ambiguous for %s\n")); +#line 108 "../find.c" + puts(_(" The following options match:\n")); +#line 290 "../find.c" + puts(_("%s: ambiguous option name: %s (matches %d options)\n")); +#line 161 "../check.c" + puts(_("%s: Command line arguments required\n")); +#line 43 "../alias.c" + puts(_("%d %s%s options allowed\n")); +#line 81 "../makeshell.c" + puts(_("%s error %d (%s) calling %s for '%s'\n")); +#line 293 "../makeshell.c" + puts(_("interprocess pipe")); +#line 168 "../version.c" + puts(_("error: version option argument '%c' invalid. Use:\n" + "\t'v' - version only\n" + "\t'c' - version and copyright\n" + "\t'n' - version and full copyright notice\n")); +#line 58 "../check.c" + puts(_("%s error: the '%s' and '%s' options conflict\n")); +#line 214 "../find.c" + puts(_("%s: The '%s' option has been disabled.")); +#line 421 "../find.c" + puts(_("%s: The '%s' option has been disabled.")); +#line 38 "../alias.c" + puts(_("-equivalence")); +#line 460 "../find.c" + puts(_("%s: illegal option -- %c\n")); +#line 110 "../reset.c" + puts(_("%s: illegal option -- %c\n")); +#line 268 "../find.c" + puts(_("%s: illegal option -- %s\n")); +#line 746 "../find.c" + puts(_("%s: illegal option -- %s\n")); +#line 118 "../reset.c" + puts(_("%s: illegal option -- %s\n")); +#line 332 "../find.c" + puts(_("%s: unknown vendor extension option -- %s\n")); +#line 154 "../enum.c" + puts(_(" or an integer from %d through %d\n")); +#line 164 "../enum.c" + puts(_(" or an integer from %d through %d\n")); +#line 782 "../usage.c" + puts(_("%s error: invalid option descriptor for %s\n")); +#line 1110 "../usage.c" + puts(_("%s error: invalid option descriptor for %s\n")); +#line 379 "../find.c" + puts(_("%s: invalid option name: %s\n")); +#line 518 "../find.c" + puts(_("%s: The '%s' option requires an argument.\n")); +#line 171 "../autoopts.c" + puts(_("(AutoOpts bug): Equivalenced option '%s' was equivalenced to both\n" + "\t'%s' and '%s'.")); +#line 94 "../check.c" + puts(_("%s error: The %s option is required\n")); +#line 623 "../find.c" + puts(_("%s: The '%s' option cannot have an argument.\n")); +#line 151 "../check.c" + puts(_("%s: Command line arguments are not allowed.\n")); +#line 531 "../save.c" + puts(_("error %d (%s) creating %s\n")); +#line 229 "../enum.c" + puts(_("%s error: '%s' does not match any %s keywords.\n")); +#line 93 "../reset.c" + puts(_("%s error: The '%s' option requires an argument.\n")); +#line 184 "../save.c" + puts(_("error %d (%s) stat-ing %s\n")); +#line 238 "../save.c" + puts(_("error %d (%s) stat-ing %s\n")); +#line 143 "../restore.c" + puts(_("%s error: no saved option state\n")); +#line 246 "../autoopts.c" + puts(_("'%s' is not a command line option.\n")); +#line 114 "../time.c" + puts(_("%s error: '%s' is not a recognizable date/time.\n")); +#line 132 "../save.c" + puts(_("'%s' not defined\n")); +#line 53 "../time.c" + puts(_("%s error: '%s' is not a recognizable time duration.\n")); +#line 92 "../check.c" + puts(_("%s error: The %s option must appear %d times.\n")); +#line 157 "../numeric.c" + puts(_("%s error: '%s' is not a recognizable number.\n")); +#line 195 "../enum.c" + puts(_("%s error: %s exceeds %s keyword count\n")); +#line 366 "../usage.c" + puts(_("Try '%s %s' for more information.\n")); +#line 45 "../alias.c" + puts(_("one %s%s option allowed\n")); +#line 195 "../makeshell.c" + puts(_("standard output")); +#line 930 "../makeshell.c" + puts(_("standard output")); +#line 304 "../usage.c" + puts(_("standard output")); +#line 451 "../usage.c" + puts(_("standard output")); +#line 660 "../usage.c" + puts(_("standard output")); +#line 175 "../version.c" + puts(_("standard output")); +#line 304 "../usage.c" + puts(_("standard error")); +#line 451 "../usage.c" + puts(_("standard error")); +#line 660 "../usage.c" + puts(_("standard error")); +#line 175 "../version.c" + puts(_("standard error")); +#line 195 "../makeshell.c" + puts(_("write")); +#line 930 "../makeshell.c" + puts(_("write")); +#line 303 "../usage.c" + puts(_("write")); +#line 450 "../usage.c" + puts(_("write")); +#line 659 "../usage.c" + puts(_("write")); +#line 174 "../version.c" + puts(_("write")); +#line 60 "../numeric.c" + puts(_("%s error: %s option value %ld is out of range.\n")); +#line 44 "../check.c" + puts(_("%s error: %s option requires the %s option\n")); +#line 131 "../save.c" + puts(_("%s warning: cannot save options - %s not regular file\n")); +#line 183 "../save.c" + puts(_("%s warning: cannot save options - %s not regular file\n")); +#line 237 "../save.c" + puts(_("%s warning: cannot save options - %s not regular file\n")); +#line 256 "../save.c" + puts(_("%s warning: cannot save options - %s not regular file\n")); +#line 530 "../save.c" + puts(_("%s warning: cannot save options - %s not regular file\n")); + /* END-LIBOPTS-MESSAGES */ + + /* USAGE-TEXT: */ +#line 908 "../usage.c" + puts(_("\t\t\t\t- an alternate for '%s'\n")); +#line 1177 "../usage.c" + puts(_("Version, usage and configuration options:")); +#line 959 "../usage.c" + puts(_("\t\t\t\t- default option for unnamed options\n")); +#line 872 "../usage.c" + puts(_("\t\t\t\t- disabled as '--%s'\n")); +#line 1146 "../usage.c" + puts(_(" --- %-14s %s\n")); +#line 1144 "../usage.c" + puts(_("This option has been disabled")); +#line 899 "../usage.c" + puts(_("\t\t\t\t- enabled by default\n")); +#line 40 "../alias.c" + puts(_("%s error: only ")); +#line 1221 "../usage.c" + puts(_(" - examining environment variables named %s_*\n")); +#line 168 "../file.c" + puts(_("\t\t\t\t- file must not pre-exist\n")); +#line 172 "../file.c" + puts(_("\t\t\t\t- file must pre-exist\n")); +#line 416 "../usage.c" + puts(_("Options are specified by doubled hyphens and their name or by a single\n" + "hyphen and the flag character.\n")); +#line 908 "../makeshell.c" + puts(_("\n" + "= = = = = = = =\n\n" + "This incarnation of genshell will produce\n" + "a shell script to parse the options for %s:\n\n")); +#line 161 "../enum.c" + puts(_(" or an integer mask with any of the lower %d bits set\n")); +#line 932 "../usage.c" + puts(_("\t\t\t\t- is a set membership option\n")); +#line 953 "../usage.c" + puts(_("\t\t\t\t- must appear between %d and %d times\n")); +#line 418 "../usage.c" + puts(_("Options are specified by single or double hyphens and their name.\n")); +#line 939 "../usage.c" + puts(_("\t\t\t\t- may appear multiple times\n")); +#line 926 "../usage.c" + puts(_("\t\t\t\t- may not be preset\n")); +#line 1336 "../usage.c" + puts(_(" Arg Option-Name Description\n")); +#line 1272 "../usage.c" + puts(_(" Flg Arg Option-Name Description\n")); +#line 1330 "../usage.c" + puts(_(" Flg Arg Option-Name Description\n")); +#line 1331 "../usage.c" + puts(_(" %3s %s")); +#line 1337 "../usage.c" + puts(_(" %3s %s")); +#line 423 "../usage.c" + puts(_("The '-#<number>' option may omit the hash char\n")); +#line 419 "../usage.c" + puts(_("All arguments are named options.\n")); +#line 1006 "../usage.c" + puts(_(" - reading file %s")); +#line 445 "../usage.c" + puts(_("\n" + "Please send bug reports to: <%s>\n")); +#line 100 "../version.c" + puts(_("\n" + "Please send bug reports to: <%s>\n")); +#line 129 "../version.c" + puts(_("\n" + "Please send bug reports to: <%s>\n")); +#line 938 "../usage.c" + puts(_("\t\t\t\t- may NOT appear - preset only\n")); +#line 978 "../usage.c" + puts(_("\n" + "The following option preset mechanisms are supported:\n")); +#line 1219 "../usage.c" + puts(_("\n" + "The following option preset mechanisms are supported:\n")); +#line 717 "../usage.c" + puts(_("prohibits these options:\n")); +#line 712 "../usage.c" + puts(_("prohibits the option '%s'\n")); +#line 81 "../numeric.c" + puts(_("%s%ld to %ld")); +#line 79 "../numeric.c" + puts(_("%sgreater than or equal to %ld")); +#line 75 "../numeric.c" + puts(_("%s%ld exactly")); +#line 68 "../numeric.c" + puts(_("%sit must lie in one of the ranges:\n")); +#line 68 "../numeric.c" + puts(_("%sit must be in the range:\n")); +#line 88 "../numeric.c" + puts(_(", or\n")); +#line 66 "../numeric.c" + puts(_("%sis scalable with a suffix: k/K/m/M/g/G/t/T\n")); +#line 77 "../numeric.c" + puts(_("%sless than or equal to %ld")); +#line 426 "../usage.c" + puts(_("Operands and options may be intermixed. They will be reordered.\n")); +#line 687 "../usage.c" + puts(_("requires the option '%s'\n")); +#line 690 "../usage.c" + puts(_("requires these options:\n")); +#line 1348 "../usage.c" + puts(_(" Arg Option-Name Req? Description\n")); +#line 1342 "../usage.c" + puts(_(" Flg Arg Option-Name Req? Description\n")); +#line 162 "../enum.c" + puts(_("or you may use a numeric representation. Preceding these with a '!'\n" + "will clear the bits, specifying 'none' will clear all bits, and 'all'\n" + "will set them all. Multiple entries may be passed as an option\n" + "argument list.\n")); +#line 945 "../usage.c" + puts(_("\t\t\t\t- may appear up to %d times\n")); +#line 72 "../enum.c" + puts(_("The valid \"%s\" option keywords are:\n")); +#line 1181 "../usage.c" + puts(_("The next option supports vendor supported extra options:")); +#line 808 "../usage.c" + puts(_("These additional options are:")); + /* END-USAGE-TEXT */ +} +#endif /* uncompilable code */ #ifdef __cplusplus } #endif diff --git a/src/tpmtool-args.h b/src/tpmtool-args.h index 8a4ec7348f..126c1ab4d5 100644 --- a/src/tpmtool-args.h +++ b/src/tpmtool-args.h @@ -1,12 +1,12 @@ /* -*- buffer-read-only: t -*- vi: set ro: - * + * * DO NOT EDIT THIS FILE (tpmtool-args.h) - * - * It has been AutoGen-ed November 8, 2012 at 11:35:56 PM by AutoGen 5.16 + * + * It has been AutoGen-ed June 10, 2013 at 07:23:01 PM by AutoGen 5.17.3 * From the definitions tpmtool-args.def * and the template file options * - * Generated from AutoOpts 36:4:11 templates. + * Generated from AutoOpts 38:0:13 templates. * * AutoOpts is a copyrighted work. This header file is not encumbered * by AutoOpts licensing, but is provided under the licensing terms chosen @@ -21,24 +21,23 @@ * * Copyright (C) 2000-2012 Free Software Foundation, all rights reserved. * This is free software. It is licensed for use, modification and - * redistribution under the terms of the - * GNU General Public License, version 3 or later - * <http://gnu.org/licenses/gpl.html> + * redistribution under the terms of the GNU General Public License, + * version 3 or later <http://gnu.org/licenses/gpl.html> * * tpmtool is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation, either version 3 of the License, or * (at your option) any later version. - * + * * tpmtool is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License along * with this program. If not, see <http://www.gnu.org/licenses/>. */ -/* +/** * This file contains the programmatic interface to the Automated * Options generated for the tpmtool program. * These macros are documented in the AutoGen info file in the @@ -49,22 +48,22 @@ #include "config.h" #include <autoopts/options.h> -/* +/** * Ensure that the library used for compiling this generated header is at * least as new as the version current when the header template was released * (not counting patch version increments). Also ensure that the oldest * tolerable version is at least as old as what was current when the header * template was released. */ -#define AO_TEMPLATE_VERSION 147460 +#define AO_TEMPLATE_VERSION 155648 #if (AO_TEMPLATE_VERSION < OPTIONS_MINIMUM_VERSION) \ || (AO_TEMPLATE_VERSION > OPTIONS_STRUCT_VERSION) # error option template version mismatches autoopts/options.h header Choke Me. #endif -/* - * Enumeration of each option: +/** + * Enumeration of each option type for tpmtool */ typedef enum { INDEX_OPT_DEBUG = 0, @@ -87,44 +86,63 @@ typedef enum { INDEX_OPT_HELP = 17, INDEX_OPT_MORE_HELP = 18 } teOptIndex; - +/** count of all options for tpmtool */ #define OPTION_CT 19 +/** tpmtool version */ #define TPMTOOL_VERSION "@VERSION@" +/** Full tpmtool version text */ #define TPMTOOL_FULL_VERSION "tpmtool @VERSION@" -/* +/** * Interface defines for all options. Replace "n" with the UPPER_CASED * option name (as in the teOptIndex enumeration above). * e.g. HAVE_OPT(DEBUG) */ #define DESC(n) (tpmtoolOptions.pOptDesc[INDEX_OPT_## n]) +/** 'true' if an option has been specified in any way */ #define HAVE_OPT(n) (! UNUSED_OPT(& DESC(n))) +/** The string argument to an option. The argument type must be "string". */ #define OPT_ARG(n) (DESC(n).optArg.argString) +/** Mask the option state revealing how an option was specified. + * It will be one and only one of \a OPTST_SET, \a OPTST_PRESET, + * \a OPTST_DEFINED, \a OPTST_RESET or zero. + */ #define STATE_OPT(n) (DESC(n).fOptState & OPTST_SET_MASK) +/** Count of option's occurrances *on the command line*. */ #define COUNT_OPT(n) (DESC(n).optOccCt) +/** mask of \a OPTST_SET and \a OPTST_DEFINED. */ #define ISSEL_OPT(n) (SELECTED_OPT(&DESC(n))) +/** 'true' if \a HAVE_OPT would yield 'false'. */ #define ISUNUSED_OPT(n) (UNUSED_OPT(& DESC(n))) +/** 'true' if OPTST_DISABLED bit not set. */ #define ENABLED_OPT(n) (! DISABLED_OPT(& DESC(n))) +/** number of stacked option arguments. + * Valid only for stacked option arguments. */ #define STACKCT_OPT(n) (((tArgList*)(DESC(n).optCookie))->useCt) +/** stacked argument vector. + * Valid only for stacked option arguments. */ #define STACKLST_OPT(n) (((tArgList*)(DESC(n).optCookie))->apzArgs) +/** Reset an option. */ #define CLEAR_OPT(n) STMTS( \ DESC(n).fOptState &= OPTST_PERSISTENT_MASK; \ if ((DESC(n).fOptState & OPTST_INITENABLED) == 0) \ DESC(n).fOptState |= OPTST_DISABLED; \ DESC(n).optCookie = NULL ) -/* * * * * * - * +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +/** * Enumeration of tpmtool exit codes */ typedef enum { - TPMTOOL_EXIT_SUCCESS = 0, - TPMTOOL_EXIT_FAILURE = 1, - TPMTOOL_EXIT_LIBOPTS_FAILURE = 70 + TPMTOOL_EXIT_SUCCESS = 0, + TPMTOOL_EXIT_FAILURE = 1, + TPMTOOL_EXIT_USAGE_ERROR = 64, + TPMTOOL_EXIT_LIBOPTS_FAILURE = 70 } tpmtool_exit_code_t; -/* * * * * * - * +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +/** * Interface defines for specific options. + * @{ */ #define VALUE_OPT_DEBUG 'd' @@ -146,8 +164,11 @@ typedef enum { #define OPT_VALUE_BITS (DESC(BITS).optArg.argInt) #define VALUE_OPT_INDER 14 #define VALUE_OPT_OUTDER 15 +/** option flag (value) for " (get "val-name") " option */ #define VALUE_OPT_HELP 'h' +/** option flag (value) for " (get "val-name") " option */ #define VALUE_OPT_MORE_HELP '!' +/** option flag (value) for " (get "val-name") " option */ #define VALUE_OPT_VERSION 'v' /* * Interface defines not associated with particular options @@ -159,7 +180,7 @@ typedef enum { tpmtoolOptions.pzCurOpt = NULL) #define START_OPT RESTART_OPT(1) #define USAGE(c) (*tpmtoolOptions.pUsageProc)(&tpmtoolOptions, c) -/* extracted from opthead.tlib near line 484 */ +/* extracted from opthead.tlib near line 538 */ #ifdef __cplusplus extern "C" { @@ -179,6 +200,12 @@ extern tOptions tpmtoolOptions; #if defined(ENABLE_NLS) # ifndef _ # include <stdio.h> +# ifndef HAVE_GETTEXT + extern char * gettext(char const *); +# else +# include <libintl.h> +# endif + static inline char* aoGetsText(char const* pz) { if (pz == NULL) return NULL; return (char*)gettext(pz); |