mirror of
https://gitlab.com/openconnect/ocserv.git
synced 2026-02-10 16:57:00 +08:00
updated to libopts 5.18.2
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* 29 bits for 46 character classifications
|
||||
* generated by char-mapper on 07/14/13 at 17:37:05
|
||||
* generated by char-mapper on 10/16/13 at 13:46:13
|
||||
*
|
||||
* This file contains the character classifications
|
||||
* used by AutoGen and AutoOpts for identifying tokens.
|
||||
@@ -441,8 +441,7 @@ static ag_char_map_mask_t const ag_char_map_masks[46] = {
|
||||
0x00000101, /* MAKE_SCRIPT */
|
||||
0x00000600, /* LOAD_LINE_SKIP */
|
||||
};
|
||||
|
||||
#undef LOCK_SPANNER_TABLES
|
||||
#undef LOCK_SPANNER_TABLES
|
||||
|
||||
static unsigned char const *
|
||||
calc_ag_char_map_spanners(unsigned int mask_ix)
|
||||
@@ -489,7 +488,7 @@ spn_ag_char_map_chars(char const * p, unsigned int mask_ix)
|
||||
unsigned char const * v = ag_char_map_spanners[mask_ix];
|
||||
if (v == NULL)
|
||||
v = calc_ag_char_map_spanners(mask_ix);
|
||||
while (v[(unsigned)*p]) p++;
|
||||
while (v[(unsigned char)*p]) p++;
|
||||
return (char *)(uintptr_t)p;
|
||||
}
|
||||
|
||||
@@ -499,7 +498,7 @@ brk_ag_char_map_chars(char const * p, unsigned int mask_ix)
|
||||
unsigned char const * v = ag_char_map_spanners[mask_ix];
|
||||
if (v == NULL)
|
||||
v = calc_ag_char_map_spanners(mask_ix);
|
||||
while ((*p != '\0') && (! v[(unsigned)*p])) p++;
|
||||
while ((*p != '\0') && (! v[(unsigned char)*p])) p++;
|
||||
return (char *)(uintptr_t)p;
|
||||
}
|
||||
|
||||
@@ -510,7 +509,7 @@ spn_ag_char_map_back(char const * s, char const * e, unsigned int mask_ix)
|
||||
if (v == NULL)
|
||||
v = calc_ag_char_map_spanners(mask_ix);
|
||||
if (s >= e) e = s + strlen(s);
|
||||
while ((e > s) && v[(unsigned)e[-1]]) e--;
|
||||
while ((e > s) && v[(unsigned char)e[-1]]) e--;
|
||||
return (char *)(uintptr_t)e;
|
||||
}
|
||||
|
||||
@@ -521,7 +520,7 @@ brk_ag_char_map_back(char const * s, char const * e, unsigned int mask_ix)
|
||||
if (v == NULL)
|
||||
v = calc_ag_char_map_spanners(mask_ix);
|
||||
if (s == e) e += strlen(e);
|
||||
while ((e > s) && (! v[(unsigned)e[-1]])) e--;
|
||||
while ((e > s) && (! v[(unsigned char)e[-1]])) e--;
|
||||
return (char *)(uintptr_t)e;
|
||||
}
|
||||
#endif /* AG_CHAR_MAP_H_GUARD */
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (ao-strs.c)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:05 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:13 PM by AutoGen 5.18.2
|
||||
* From the definitions ao-strs.def
|
||||
* and the template file strings
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (ao-strs.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:05 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:13 PM by AutoGen 5.18.2
|
||||
* From the definitions ao-strs.def
|
||||
* and the template file strings
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (options.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:12 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:20 PM by AutoGen 5.18.2
|
||||
* From the definitions funcs.def
|
||||
* and the template file options_h
|
||||
*
|
||||
@@ -101,15 +101,15 @@
|
||||
* @{
|
||||
*/
|
||||
/// autoopts structure version
|
||||
#define OPTIONS_STRUCT_VERSION 163840
|
||||
#define OPTIONS_STRUCT_VERSION 163841
|
||||
/// autoopts structure version string
|
||||
#define OPTIONS_VERSION_STRING "40:0:15"
|
||||
#define OPTIONS_VERSION_STRING "40:1:15"
|
||||
/// minimum version the autoopts library supports
|
||||
#define OPTIONS_MINIMUM_VERSION 102400
|
||||
/// minimum version the autoopts library supports as a string
|
||||
#define OPTIONS_MIN_VER_STRING "25:0:0"
|
||||
/// the display version of the autoopts library, as a string
|
||||
#define OPTIONS_DOTTED_VERSION "40.0"
|
||||
#define OPTIONS_DOTTED_VERSION "40.1"
|
||||
/// convert a version/release number pair to an integer value
|
||||
#define OPTIONS_VER_TO_NUM(_v, _r) (((_v) * 4096) + (_r))
|
||||
/// @}
|
||||
@@ -201,59 +201,59 @@ typedef uint32_t opt_state_mask_t;
|
||||
|
||||
#define OPTST_ARG_TYPE_SHIFT 12
|
||||
/** bits defined for opt_state_mask_t */
|
||||
/** opt_state_mask_t - Set via the "SET_OPT()" macro */
|
||||
/** Set via the "SET_OPT()" macro */
|
||||
#define OPTST_SET 0x0000001U
|
||||
/** opt_state_mask_t - Set via an RC/INI file */
|
||||
/** Set via an RC/INI file */
|
||||
#define OPTST_PRESET 0x0000002U
|
||||
/** opt_state_mask_t - Set via a command line option */
|
||||
/** Set via a command line option */
|
||||
#define OPTST_DEFINED 0x0000004U
|
||||
/** opt_state_mask_t - Reset via command line option */
|
||||
/** Reset via command line option */
|
||||
#define OPTST_RESET 0x0000008U
|
||||
/** opt_state_mask_t - selected by equiv'ed option */
|
||||
/** selected by equiv'ed option */
|
||||
#define OPTST_EQUIVALENCE 0x0000010U
|
||||
/** opt_state_mask_t - option is in disabled state */
|
||||
/** option is in disabled state */
|
||||
#define OPTST_DISABLED 0x0000020U
|
||||
/** opt_state_mask_t - pzOptArg was allocated */
|
||||
/** pzOptArg was allocated */
|
||||
#define OPTST_ALLOC_ARG 0x0000040U
|
||||
/** opt_state_mask_t - option cannot be preset */
|
||||
/** option cannot be preset */
|
||||
#define OPTST_NO_INIT 0x0000100U
|
||||
/** opt_state_mask_t - opt value (flag) is any digit */
|
||||
/** opt value (flag) is any digit */
|
||||
#define OPTST_NUMBER_OPT 0x0000200U
|
||||
/** opt_state_mask_t - opt uses optionStackArg proc */
|
||||
/** opt uses optionStackArg proc */
|
||||
#define OPTST_STACKED 0x0000400U
|
||||
/** opt_state_mask_t - option defaults to enabled */
|
||||
/** option defaults to enabled */
|
||||
#define OPTST_INITENABLED 0x0000800U
|
||||
/** opt_state_mask_t - bit 1 of arg type enum */
|
||||
/** bit 1 of arg type enum */
|
||||
#define OPTST_ARG_TYPE_1 0x0001000U
|
||||
/** opt_state_mask_t - bit 2 of arg type enum */
|
||||
/** bit 2 of arg type enum */
|
||||
#define OPTST_ARG_TYPE_2 0x0002000U
|
||||
/** opt_state_mask_t - bit 3 of arg type enum */
|
||||
/** bit 3 of arg type enum */
|
||||
#define OPTST_ARG_TYPE_3 0x0004000U
|
||||
/** opt_state_mask_t - bit 4 of arg type enum */
|
||||
/** bit 4 of arg type enum */
|
||||
#define OPTST_ARG_TYPE_4 0x0008000U
|
||||
/** opt_state_mask_t - the option arg not required */
|
||||
/** the option arg not required */
|
||||
#define OPTST_ARG_OPTIONAL 0x0010000U
|
||||
/** opt_state_mask_t - process opt on first pass */
|
||||
/** process opt on first pass */
|
||||
#define OPTST_IMM 0x0020000U
|
||||
/** opt_state_mask_t - process disablement immed. */
|
||||
/** process disablement immed. */
|
||||
#define OPTST_DISABLE_IMM 0x0040000U
|
||||
/** opt_state_mask_t - compiled out of program */
|
||||
/** compiled out of program */
|
||||
#define OPTST_OMITTED 0x0080000U
|
||||
/** opt_state_mask_t - must be set or pre-set */
|
||||
/** must be set or pre-set */
|
||||
#define OPTST_MUST_SET 0x0100000U
|
||||
/** opt_state_mask_t - opt is for doc only */
|
||||
/** opt is for doc only */
|
||||
#define OPTST_DOCUMENT 0x0200000U
|
||||
/** opt_state_mask_t - process opt twice - imm + reg */
|
||||
/** process opt twice - imm + reg */
|
||||
#define OPTST_TWICE 0x0400000U
|
||||
/** opt_state_mask_t - process disabled option twice */
|
||||
/** process disabled option twice */
|
||||
#define OPTST_DISABLE_TWICE 0x0800000U
|
||||
/** opt_state_mask_t - scaled integer value */
|
||||
/** scaled integer value */
|
||||
#define OPTST_SCALED_NUM 0x1000000U
|
||||
/** opt_state_mask_t - disable from cmd line */
|
||||
/** disable from cmd line */
|
||||
#define OPTST_NO_COMMAND 0x2000000U
|
||||
/** opt_state_mask_t - support is being removed */
|
||||
/** support is being removed */
|
||||
#define OPTST_DEPRECATED 0x4000000U
|
||||
/** opt_state_mask_t - alias for other option */
|
||||
/** alias for other option */
|
||||
#define OPTST_ALIAS 0x8000000U
|
||||
|
||||
/** bits in SET mask:
|
||||
@@ -333,50 +333,50 @@ typedef uint32_t opt_state_mask_t;
|
||||
typedef uint32_t proc_state_mask_t;
|
||||
|
||||
/** bits defined for proc_state_mask_t */
|
||||
/** proc_state_mask_t - Process long style options */
|
||||
/** Process long style options */
|
||||
#define OPTPROC_LONGOPT 0x000001U
|
||||
/** proc_state_mask_t - Process short style "flags" */
|
||||
/** Process short style "flags" */
|
||||
#define OPTPROC_SHORTOPT 0x000002U
|
||||
/** proc_state_mask_t - Stop on argument errors */
|
||||
/** Stop on argument errors */
|
||||
#define OPTPROC_ERRSTOP 0x000004U
|
||||
/** proc_state_mask_t - Current option is disabled */
|
||||
/** Current option is disabled */
|
||||
#define OPTPROC_DISABLEDOPT 0x000008U
|
||||
/** proc_state_mask_t - no options are required */
|
||||
/** no options are required */
|
||||
#define OPTPROC_NO_REQ_OPT 0x000010U
|
||||
/** proc_state_mask_t - there is a number option */
|
||||
/** there is a number option */
|
||||
#define OPTPROC_NUM_OPT 0x000020U
|
||||
/** proc_state_mask_t - have inits been done? */
|
||||
/** have inits been done? */
|
||||
#define OPTPROC_INITDONE 0x000040U
|
||||
/** proc_state_mask_t - any negation options? */
|
||||
/** any negation options? */
|
||||
#define OPTPROC_NEGATIONS 0x000080U
|
||||
/** proc_state_mask_t - check environment? */
|
||||
/** check environment? */
|
||||
#define OPTPROC_ENVIRON 0x000100U
|
||||
/** proc_state_mask_t - Disallow remaining arguments */
|
||||
/** Disallow remaining arguments */
|
||||
#define OPTPROC_NO_ARGS 0x000200U
|
||||
/** proc_state_mask_t - Require args after options */
|
||||
/** Require args after options */
|
||||
#define OPTPROC_ARGS_REQ 0x000400U
|
||||
/** proc_state_mask_t - reorder operands after opts */
|
||||
/** reorder operands after opts */
|
||||
#define OPTPROC_REORDER 0x000800U
|
||||
/** proc_state_mask_t - emit usage in GNU style */
|
||||
/** emit usage in GNU style */
|
||||
#define OPTPROC_GNUUSAGE 0x001000U
|
||||
/** proc_state_mask_t - Translate strings in tOptions */
|
||||
/** Translate strings in tOptions */
|
||||
#define OPTPROC_TRANSLATE 0x002000U
|
||||
/** proc_state_mask_t - no usage on usage error */
|
||||
/** no usage on usage error */
|
||||
#define OPTPROC_MISUSE 0x004000U
|
||||
/** proc_state_mask_t - immediate options active */
|
||||
/** immediate options active */
|
||||
#define OPTPROC_IMMEDIATE 0x008000U
|
||||
/** proc_state_mask_t - suppress for config only */
|
||||
/** suppress for config only */
|
||||
#define OPTPROC_NXLAT_OPT_CFG 0x010000U
|
||||
/** proc_state_mask_t - suppress xlation always */
|
||||
/** suppress xlation always */
|
||||
#define OPTPROC_NXLAT_OPT 0x020000U
|
||||
/** proc_state_mask_t - vendor options active */
|
||||
/** vendor options active */
|
||||
#define OPTPROC_VENDOR_OPT 0x040000U
|
||||
/** proc_state_mask_t - opt processing in preset state */
|
||||
/** opt processing in preset state */
|
||||
#define OPTPROC_PRESETTING 0x080000U
|
||||
/** proc_state_mask_t - Ignore pzFullUsage, compute usage text */
|
||||
/** Ignore pzFullUsage, compute usage text */
|
||||
#define OPTPROC_COMPUTE 0x100000U
|
||||
/** proc_state_mask_t - Program outputs digested option state for shell scripts.
|
||||
Usage text always written to stderr */
|
||||
/** Program outputs digested option state for shell scripts. Usage text
|
||||
* always written to stderr */
|
||||
#define OPTPROC_SHELL_OUTPUT 0x200000U
|
||||
|
||||
/** bits in NO_XLAT mask:
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (usage-txt.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:10 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:18 PM by AutoGen 5.18.2
|
||||
* From the definitions usage-txt.def
|
||||
* and the template file usage-txt.tpl
|
||||
*
|
||||
@@ -388,7 +388,7 @@ static void dummy_func(void) {
|
||||
puts(_("could not locate the 'help' option"));
|
||||
#line 336 "../autoopts.c"
|
||||
puts(_("optionProcess() was called with invalid data"));
|
||||
#line 747 "../usage.c"
|
||||
#line 748 "../usage.c"
|
||||
puts(_("invalid argument type specified"));
|
||||
#line 598 "../find.c"
|
||||
puts(_("defaulted to option with optional arg"));
|
||||
@@ -437,9 +437,9 @@ static void dummy_func(void) {
|
||||
puts(_(" or an integer from %d through %d\n"));
|
||||
#line 169 "../enum.c"
|
||||
puts(_(" or an integer from %d through %d\n"));
|
||||
#line 746 "../usage.c"
|
||||
#line 747 "../usage.c"
|
||||
puts(_("%s error: invalid option descriptor for %s\n"));
|
||||
#line 1080 "../usage.c"
|
||||
#line 1081 "../usage.c"
|
||||
puts(_("%s error: invalid option descriptor for %s\n"));
|
||||
#line 385 "../find.c"
|
||||
puts(_("%s: invalid option name: %s\n"));
|
||||
@@ -480,7 +480,7 @@ static void dummy_func(void) {
|
||||
puts(_("%s error: '%s' is not a recognizable number.\n"));
|
||||
#line 200 "../enum.c"
|
||||
puts(_("%s error: %s exceeds %s keyword count\n"));
|
||||
#line 329 "../usage.c"
|
||||
#line 330 "../usage.c"
|
||||
puts(_("Try '%s %s' for more information.\n"));
|
||||
#line 45 "../alias.c"
|
||||
puts(_("one %s%s option allowed\n"));
|
||||
@@ -490,17 +490,17 @@ static void dummy_func(void) {
|
||||
puts(_("standard output"));
|
||||
#line 274 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 414 "../usage.c"
|
||||
#line 415 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 624 "../usage.c"
|
||||
#line 625 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 175 "../version.c"
|
||||
puts(_("standard output"));
|
||||
#line 274 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 414 "../usage.c"
|
||||
#line 415 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 624 "../usage.c"
|
||||
#line 625 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 175 "../version.c"
|
||||
puts(_("standard error"));
|
||||
@@ -510,9 +510,9 @@ static void dummy_func(void) {
|
||||
puts(_("write"));
|
||||
#line 273 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 413 "../usage.c"
|
||||
#line 414 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 623 "../usage.c"
|
||||
#line 624 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 174 "../version.c"
|
||||
puts(_("write"));
|
||||
@@ -533,29 +533,29 @@ static void dummy_func(void) {
|
||||
/* END-LIBOPTS-MESSAGES */
|
||||
|
||||
/* USAGE-TEXT: */
|
||||
#line 872 "../usage.c"
|
||||
#line 873 "../usage.c"
|
||||
puts(_("\t\t\t\t- an alternate for '%s'\n"));
|
||||
#line 1147 "../usage.c"
|
||||
#line 1148 "../usage.c"
|
||||
puts(_("Version, usage and configuration options:"));
|
||||
#line 923 "../usage.c"
|
||||
#line 924 "../usage.c"
|
||||
puts(_("\t\t\t\t- default option for unnamed options\n"));
|
||||
#line 836 "../usage.c"
|
||||
#line 837 "../usage.c"
|
||||
puts(_("\t\t\t\t- disabled as '--%s'\n"));
|
||||
#line 1116 "../usage.c"
|
||||
#line 1117 "../usage.c"
|
||||
puts(_(" --- %-14s %s\n"));
|
||||
#line 1114 "../usage.c"
|
||||
#line 1115 "../usage.c"
|
||||
puts(_("This option has been disabled"));
|
||||
#line 863 "../usage.c"
|
||||
#line 864 "../usage.c"
|
||||
puts(_("\t\t\t\t- enabled by default\n"));
|
||||
#line 40 "../alias.c"
|
||||
puts(_("%s error: only "));
|
||||
#line 1193 "../usage.c"
|
||||
#line 1194 "../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 379 "../usage.c"
|
||||
#line 380 "../usage.c"
|
||||
puts(_("Options are specified by doubled hyphens and their name or by a single\n"
|
||||
"hyphen and the flag character.\n"));
|
||||
#line 916 "../makeshell.c"
|
||||
@@ -565,33 +565,33 @@ static void dummy_func(void) {
|
||||
"a shell script to parse the options for %s:\n\n"));
|
||||
#line 166 "../enum.c"
|
||||
puts(_(" or an integer mask with any of the lower %d bits set\n"));
|
||||
#line 896 "../usage.c"
|
||||
#line 897 "../usage.c"
|
||||
puts(_("\t\t\t\t- is a set membership option\n"));
|
||||
#line 917 "../usage.c"
|
||||
#line 918 "../usage.c"
|
||||
puts(_("\t\t\t\t- must appear between %d and %d times\n"));
|
||||
#line 381 "../usage.c"
|
||||
#line 382 "../usage.c"
|
||||
puts(_("Options are specified by single or double hyphens and their name.\n"));
|
||||
#line 903 "../usage.c"
|
||||
#line 904 "../usage.c"
|
||||
puts(_("\t\t\t\t- may appear multiple times\n"));
|
||||
#line 890 "../usage.c"
|
||||
#line 891 "../usage.c"
|
||||
puts(_("\t\t\t\t- may not be preset\n"));
|
||||
#line 1308 "../usage.c"
|
||||
#line 1309 "../usage.c"
|
||||
puts(_(" Arg Option-Name Description\n"));
|
||||
#line 1244 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1302 "../usage.c"
|
||||
#line 1245 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1303 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1304 "../usage.c"
|
||||
puts(_(" %3s %s"));
|
||||
#line 1309 "../usage.c"
|
||||
#line 1310 "../usage.c"
|
||||
puts(_(" %3s %s"));
|
||||
#line 386 "../usage.c"
|
||||
#line 387 "../usage.c"
|
||||
puts(_("The '-#<number>' option may omit the hash char\n"));
|
||||
#line 382 "../usage.c"
|
||||
#line 383 "../usage.c"
|
||||
puts(_("All arguments are named options.\n"));
|
||||
#line 970 "../usage.c"
|
||||
#line 971 "../usage.c"
|
||||
puts(_(" - reading file %s"));
|
||||
#line 408 "../usage.c"
|
||||
#line 409 "../usage.c"
|
||||
puts(_("\n"
|
||||
"Please send bug reports to: <%s>\n"));
|
||||
#line 100 "../version.c"
|
||||
@@ -600,17 +600,17 @@ static void dummy_func(void) {
|
||||
#line 129 "../version.c"
|
||||
puts(_("\n"
|
||||
"Please send bug reports to: <%s>\n"));
|
||||
#line 902 "../usage.c"
|
||||
#line 903 "../usage.c"
|
||||
puts(_("\t\t\t\t- may NOT appear - preset only\n"));
|
||||
#line 943 "../usage.c"
|
||||
#line 944 "../usage.c"
|
||||
puts(_("\n"
|
||||
"The following option preset mechanisms are supported:\n"));
|
||||
#line 1191 "../usage.c"
|
||||
#line 1192 "../usage.c"
|
||||
puts(_("\n"
|
||||
"The following option preset mechanisms are supported:\n"));
|
||||
#line 681 "../usage.c"
|
||||
#line 682 "../usage.c"
|
||||
puts(_("prohibits these options:\n"));
|
||||
#line 676 "../usage.c"
|
||||
#line 677 "../usage.c"
|
||||
puts(_("prohibits the option '%s'\n"));
|
||||
#line 81 "../numeric.c"
|
||||
puts(_("%s%ld to %ld"));
|
||||
@@ -628,28 +628,28 @@ static void dummy_func(void) {
|
||||
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 389 "../usage.c"
|
||||
#line 390 "../usage.c"
|
||||
puts(_("Operands and options may be intermixed. They will be reordered.\n"));
|
||||
#line 651 "../usage.c"
|
||||
#line 652 "../usage.c"
|
||||
puts(_("requires the option '%s'\n"));
|
||||
#line 654 "../usage.c"
|
||||
#line 655 "../usage.c"
|
||||
puts(_("requires these options:\n"));
|
||||
#line 1320 "../usage.c"
|
||||
#line 1321 "../usage.c"
|
||||
puts(_(" Arg Option-Name Req? Description\n"));
|
||||
#line 1314 "../usage.c"
|
||||
#line 1315 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Req? Description\n"));
|
||||
#line 167 "../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 909 "../usage.c"
|
||||
#line 910 "../usage.c"
|
||||
puts(_("\t\t\t\t- may appear up to %d times\n"));
|
||||
#line 77 "../enum.c"
|
||||
puts(_("The valid \"%s\" option keywords are:\n"));
|
||||
#line 1151 "../usage.c"
|
||||
#line 1152 "../usage.c"
|
||||
puts(_("The next option supports vendor supported extra options:"));
|
||||
#line 772 "../usage.c"
|
||||
#line 773 "../usage.c"
|
||||
puts(_("These additional options are:"));
|
||||
/* END-USAGE-TEXT */
|
||||
}
|
||||
|
||||
@@ -237,7 +237,7 @@
|
||||
#endif
|
||||
|
||||
#if !defined (MAXPATHLEN)
|
||||
# define MAXPATHLEN ((size_t)4096)
|
||||
# define MAXPATHLEN 4096
|
||||
#endif /* MAXPATHLEN */
|
||||
|
||||
#define AG_PATH_MAX ((size_t)MAXPATHLEN)
|
||||
|
||||
@@ -34,7 +34,7 @@ static char *
|
||||
strchr(char const *s, int c)
|
||||
{
|
||||
do {
|
||||
if ((unsigned)*s == (unsigned)c)
|
||||
if ((unsigned char)*s == (unsigned char)c)
|
||||
return s;
|
||||
|
||||
} while (*(++s) != NUL);
|
||||
@@ -51,7 +51,7 @@ strrchr(char const *s, int c)
|
||||
if (--e < s)
|
||||
break;
|
||||
|
||||
if ((unsigned)*e == (unsigned)c)
|
||||
if ((unsigned char)*e == (unsigned char)c)
|
||||
return e;
|
||||
}
|
||||
return NULL;
|
||||
|
||||
@@ -415,12 +415,18 @@ file_preset(tOptions * opts, char const * fname, int dir)
|
||||
tmap_info_t cfgfile;
|
||||
tOptState optst = OPTSTATE_INITIALIZER(PRESET);
|
||||
opt_state_mask_t st_flags = optst.flags;
|
||||
opt_state_mask_t fl_save = opts->fOptSet;
|
||||
char * ftext =
|
||||
text_mmap(fname, PROT_READ|PROT_WRITE, MAP_PRIVATE, &cfgfile);
|
||||
|
||||
if (TEXT_MMAP_FAILED_ADDR(ftext))
|
||||
return;
|
||||
|
||||
/*
|
||||
* While processing config files, we ignore errors.
|
||||
*/
|
||||
opts->fOptSet &= ~OPTPROC_ERRSTOP;
|
||||
|
||||
if (dir == DIRECTION_CALLED) {
|
||||
st_flags = OPTST_DEFINED;
|
||||
dir = DIRECTION_PROCESS;
|
||||
@@ -483,6 +489,7 @@ file_preset(tOptions * opts, char const * fname, int dir)
|
||||
|
||||
all_done:
|
||||
text_munmap(&cfgfile);
|
||||
opts->fOptSet = fl_save;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (genshell.c)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:09 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:16 PM by AutoGen 5.18.2
|
||||
* From the definitions genshell.def
|
||||
* and the template file options
|
||||
*
|
||||
* Generated from AutoOpts 40:0:15 templates.
|
||||
* Generated from AutoOpts 40:1:15 templates.
|
||||
*
|
||||
* AutoOpts is a copyrighted work. This source file is not encumbered
|
||||
* by AutoOpts licensing, but is provided under the licensing terms chosen
|
||||
@@ -290,10 +290,11 @@ doUsageOpt(tOptions * opts, tOptDesc * od)
|
||||
ex_code = GENSHELLOPT_EXIT_SUCCESS;
|
||||
genshelloptUsage(&genshelloptOptions, ex_code);
|
||||
/* NOTREACHED */
|
||||
exit(1);
|
||||
(void)opts;
|
||||
(void)od;
|
||||
}
|
||||
/* extracted from optmain.tlib near line 1266 */
|
||||
/* extracted from optmain.tlib near line 1245 */
|
||||
|
||||
/**
|
||||
* The directory containing the data associated with genshellopt.
|
||||
@@ -574,7 +575,7 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
puts(_("could not locate the 'help' option"));
|
||||
#line 336 "../autoopts.c"
|
||||
puts(_("optionProcess() was called with invalid data"));
|
||||
#line 747 "../usage.c"
|
||||
#line 748 "../usage.c"
|
||||
puts(_("invalid argument type specified"));
|
||||
#line 598 "../find.c"
|
||||
puts(_("defaulted to option with optional arg"));
|
||||
@@ -623,9 +624,9 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
puts(_(" or an integer from %d through %d\n"));
|
||||
#line 169 "../enum.c"
|
||||
puts(_(" or an integer from %d through %d\n"));
|
||||
#line 746 "../usage.c"
|
||||
#line 747 "../usage.c"
|
||||
puts(_("%s error: invalid option descriptor for %s\n"));
|
||||
#line 1080 "../usage.c"
|
||||
#line 1081 "../usage.c"
|
||||
puts(_("%s error: invalid option descriptor for %s\n"));
|
||||
#line 385 "../find.c"
|
||||
puts(_("%s: invalid option name: %s\n"));
|
||||
@@ -666,7 +667,7 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
puts(_("%s error: '%s' is not a recognizable number.\n"));
|
||||
#line 200 "../enum.c"
|
||||
puts(_("%s error: %s exceeds %s keyword count\n"));
|
||||
#line 329 "../usage.c"
|
||||
#line 330 "../usage.c"
|
||||
puts(_("Try '%s %s' for more information.\n"));
|
||||
#line 45 "../alias.c"
|
||||
puts(_("one %s%s option allowed\n"));
|
||||
@@ -676,17 +677,17 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
puts(_("standard output"));
|
||||
#line 274 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 414 "../usage.c"
|
||||
#line 415 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 624 "../usage.c"
|
||||
#line 625 "../usage.c"
|
||||
puts(_("standard output"));
|
||||
#line 175 "../version.c"
|
||||
puts(_("standard output"));
|
||||
#line 274 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 414 "../usage.c"
|
||||
#line 415 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 624 "../usage.c"
|
||||
#line 625 "../usage.c"
|
||||
puts(_("standard error"));
|
||||
#line 175 "../version.c"
|
||||
puts(_("standard error"));
|
||||
@@ -696,9 +697,9 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
puts(_("write"));
|
||||
#line 273 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 413 "../usage.c"
|
||||
#line 414 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 623 "../usage.c"
|
||||
#line 624 "../usage.c"
|
||||
puts(_("write"));
|
||||
#line 174 "../version.c"
|
||||
puts(_("write"));
|
||||
@@ -719,29 +720,29 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
/* END-LIBOPTS-MESSAGES */
|
||||
|
||||
/* USAGE-TEXT: */
|
||||
#line 872 "../usage.c"
|
||||
#line 873 "../usage.c"
|
||||
puts(_("\t\t\t\t- an alternate for '%s'\n"));
|
||||
#line 1147 "../usage.c"
|
||||
#line 1148 "../usage.c"
|
||||
puts(_("Version, usage and configuration options:"));
|
||||
#line 923 "../usage.c"
|
||||
#line 924 "../usage.c"
|
||||
puts(_("\t\t\t\t- default option for unnamed options\n"));
|
||||
#line 836 "../usage.c"
|
||||
#line 837 "../usage.c"
|
||||
puts(_("\t\t\t\t- disabled as '--%s'\n"));
|
||||
#line 1116 "../usage.c"
|
||||
#line 1117 "../usage.c"
|
||||
puts(_(" --- %-14s %s\n"));
|
||||
#line 1114 "../usage.c"
|
||||
#line 1115 "../usage.c"
|
||||
puts(_("This option has been disabled"));
|
||||
#line 863 "../usage.c"
|
||||
#line 864 "../usage.c"
|
||||
puts(_("\t\t\t\t- enabled by default\n"));
|
||||
#line 40 "../alias.c"
|
||||
puts(_("%s error: only "));
|
||||
#line 1193 "../usage.c"
|
||||
#line 1194 "../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 379 "../usage.c"
|
||||
#line 380 "../usage.c"
|
||||
puts(_("Options are specified by doubled hyphens and their name or by a single\n"
|
||||
"hyphen and the flag character.\n"));
|
||||
#line 916 "../makeshell.c"
|
||||
@@ -751,33 +752,33 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
"a shell script to parse the options for %s:\n\n"));
|
||||
#line 166 "../enum.c"
|
||||
puts(_(" or an integer mask with any of the lower %d bits set\n"));
|
||||
#line 896 "../usage.c"
|
||||
#line 897 "../usage.c"
|
||||
puts(_("\t\t\t\t- is a set membership option\n"));
|
||||
#line 917 "../usage.c"
|
||||
#line 918 "../usage.c"
|
||||
puts(_("\t\t\t\t- must appear between %d and %d times\n"));
|
||||
#line 381 "../usage.c"
|
||||
#line 382 "../usage.c"
|
||||
puts(_("Options are specified by single or double hyphens and their name.\n"));
|
||||
#line 903 "../usage.c"
|
||||
#line 904 "../usage.c"
|
||||
puts(_("\t\t\t\t- may appear multiple times\n"));
|
||||
#line 890 "../usage.c"
|
||||
#line 891 "../usage.c"
|
||||
puts(_("\t\t\t\t- may not be preset\n"));
|
||||
#line 1308 "../usage.c"
|
||||
#line 1309 "../usage.c"
|
||||
puts(_(" Arg Option-Name Description\n"));
|
||||
#line 1244 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1302 "../usage.c"
|
||||
#line 1245 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1303 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Description\n"));
|
||||
#line 1304 "../usage.c"
|
||||
puts(_(" %3s %s"));
|
||||
#line 1309 "../usage.c"
|
||||
#line 1310 "../usage.c"
|
||||
puts(_(" %3s %s"));
|
||||
#line 386 "../usage.c"
|
||||
#line 387 "../usage.c"
|
||||
puts(_("The '-#<number>' option may omit the hash char\n"));
|
||||
#line 382 "../usage.c"
|
||||
#line 383 "../usage.c"
|
||||
puts(_("All arguments are named options.\n"));
|
||||
#line 970 "../usage.c"
|
||||
#line 971 "../usage.c"
|
||||
puts(_(" - reading file %s"));
|
||||
#line 408 "../usage.c"
|
||||
#line 409 "../usage.c"
|
||||
puts(_("\n"
|
||||
"Please send bug reports to: <%s>\n"));
|
||||
#line 100 "../version.c"
|
||||
@@ -786,17 +787,17 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
#line 129 "../version.c"
|
||||
puts(_("\n"
|
||||
"Please send bug reports to: <%s>\n"));
|
||||
#line 902 "../usage.c"
|
||||
#line 903 "../usage.c"
|
||||
puts(_("\t\t\t\t- may NOT appear - preset only\n"));
|
||||
#line 943 "../usage.c"
|
||||
#line 944 "../usage.c"
|
||||
puts(_("\n"
|
||||
"The following option preset mechanisms are supported:\n"));
|
||||
#line 1191 "../usage.c"
|
||||
#line 1192 "../usage.c"
|
||||
puts(_("\n"
|
||||
"The following option preset mechanisms are supported:\n"));
|
||||
#line 681 "../usage.c"
|
||||
#line 682 "../usage.c"
|
||||
puts(_("prohibits these options:\n"));
|
||||
#line 676 "../usage.c"
|
||||
#line 677 "../usage.c"
|
||||
puts(_("prohibits the option '%s'\n"));
|
||||
#line 81 "../numeric.c"
|
||||
puts(_("%s%ld to %ld"));
|
||||
@@ -814,28 +815,28 @@ by the newly generated text. The first '#!' line will be regenerated.\n"));
|
||||
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 389 "../usage.c"
|
||||
#line 390 "../usage.c"
|
||||
puts(_("Operands and options may be intermixed. They will be reordered.\n"));
|
||||
#line 651 "../usage.c"
|
||||
#line 652 "../usage.c"
|
||||
puts(_("requires the option '%s'\n"));
|
||||
#line 654 "../usage.c"
|
||||
#line 655 "../usage.c"
|
||||
puts(_("requires these options:\n"));
|
||||
#line 1320 "../usage.c"
|
||||
#line 1321 "../usage.c"
|
||||
puts(_(" Arg Option-Name Req? Description\n"));
|
||||
#line 1314 "../usage.c"
|
||||
#line 1315 "../usage.c"
|
||||
puts(_(" Flg Arg Option-Name Req? Description\n"));
|
||||
#line 167 "../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 909 "../usage.c"
|
||||
#line 910 "../usage.c"
|
||||
puts(_("\t\t\t\t- may appear up to %d times\n"));
|
||||
#line 77 "../enum.c"
|
||||
puts(_("The valid \"%s\" option keywords are:\n"));
|
||||
#line 1151 "../usage.c"
|
||||
#line 1152 "../usage.c"
|
||||
puts(_("The next option supports vendor supported extra options:"));
|
||||
#line 772 "../usage.c"
|
||||
#line 773 "../usage.c"
|
||||
puts(_("These additional options are:"));
|
||||
/* END-USAGE-TEXT */
|
||||
}
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (genshell.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:09 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:16 PM by AutoGen 5.18.2
|
||||
* From the definitions genshell.def
|
||||
* and the template file options
|
||||
*
|
||||
* Generated from AutoOpts 40:0:15 templates.
|
||||
* Generated from AutoOpts 40:1:15 templates.
|
||||
*
|
||||
* AutoOpts is a copyrighted work. This header file is not encumbered
|
||||
* by AutoOpts licensing, but is provided under the licensing terms chosen
|
||||
@@ -55,7 +55,7 @@
|
||||
* tolerable version is at least as old as what was current when the header
|
||||
* template was released.
|
||||
*/
|
||||
#define AO_TEMPLATE_VERSION 163840
|
||||
#define AO_TEMPLATE_VERSION 163841
|
||||
#if (AO_TEMPLATE_VERSION < OPTIONS_MINIMUM_VERSION) \
|
||||
|| (AO_TEMPLATE_VERSION > OPTIONS_STRUCT_VERSION)
|
||||
# error option template version mismatches autoopts/options.h header
|
||||
|
||||
@@ -2,7 +2,7 @@ dnl -*- buffer-read-only: t -*- vi: set ro:
|
||||
dnl
|
||||
dnl DO NOT EDIT THIS FILE (libopts.m4)
|
||||
dnl
|
||||
dnl It has been AutoGen-ed July 14, 2013 at 05:37:02 PM by AutoGen 5.18
|
||||
dnl It has been AutoGen-ed October 16, 2013 at 01:46:09 PM by AutoGen 5.18.2
|
||||
dnl From the definitions libopts.def
|
||||
dnl and the template file conftest.tpl
|
||||
dnl
|
||||
@@ -589,4 +589,3 @@ AC_DEFUN([LIBOPTS_CHECK], [
|
||||
m4_popdef([AO_Libopts_Dir])dnl
|
||||
# end of AC_DEFUN of LIBOPTS_CHECK
|
||||
])
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (stdin.c)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:08 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:15 PM by AutoGen 5.18.2
|
||||
* From the definitions stdin
|
||||
* and the template file str2enum
|
||||
*
|
||||
@@ -31,7 +31,7 @@
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
#include "option-value-type.h"
|
||||
/* ANSI-C code produced by gperf version 3.0.4 */
|
||||
/* ANSI-C code produced by gperf version 3.0.3 */
|
||||
/* Command-line: gperf option-value-type.gp */
|
||||
/* Computed positions: -k'1' */
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (stdin.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:08 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:15 PM by AutoGen 5.18.2
|
||||
* From the definitions stdin
|
||||
* and the template file str2enum
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (stdin.c)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:07 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:14 PM by AutoGen 5.18.2
|
||||
* From the definitions stdin
|
||||
* and the template file str2enum
|
||||
*
|
||||
@@ -31,7 +31,7 @@
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
#include "option-xat-attribute.h"
|
||||
/* ANSI-C code produced by gperf version 3.0.4 */
|
||||
/* ANSI-C code produced by gperf version 3.0.3 */
|
||||
/* Command-line: gperf option-xat-attribute.gp */
|
||||
/* Computed positions: -k'1' */
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (stdin.h)
|
||||
*
|
||||
* It has been AutoGen-ed July 14, 2013 at 05:37:07 PM by AutoGen 5.18
|
||||
* It has been AutoGen-ed October 16, 2013 at 01:46:14 PM by AutoGen 5.18.2
|
||||
* From the definitions stdin
|
||||
* and the template file str2enum
|
||||
*
|
||||
|
||||
@@ -50,7 +50,11 @@ open_tmp_usage(char ** buf)
|
||||
}
|
||||
|
||||
{
|
||||
static mode_t const cmask = S_IRWXO | S_IRWXG;
|
||||
mode_t svmsk = umask(cmask);
|
||||
int fd = mkstemp(bf);
|
||||
(void)umask(svmsk);
|
||||
|
||||
if (fd < 0) {
|
||||
AGFREE(bf);
|
||||
return NULL;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/* -*- buffer-read-only: t -*- vi: set ro:
|
||||
*
|
||||
* Prototypes for autoopts
|
||||
* Generated Sun Jul 14 17:37:20 PDT 2013
|
||||
* Generated Wed Oct 16 13:46:27 PDT 2013
|
||||
*/
|
||||
#ifndef AUTOOPTS_PROTO_H_GUARD
|
||||
#define AUTOOPTS_PROTO_H_GUARD 1
|
||||
|
||||
@@ -243,7 +243,7 @@ strequate(char const* s)
|
||||
if ((s != NULL) && (*s != NUL)) {
|
||||
unsigned char equiv = (unsigned char)*s;
|
||||
while (*s != NUL)
|
||||
charmap[ (unsigned)*(s++) ] = equiv;
|
||||
charmap[(unsigned char)*(s++)] = equiv;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -270,7 +270,7 @@ void
|
||||
strtransform(char* d, char const* s)
|
||||
{
|
||||
do {
|
||||
*(d++) = (char)charmap[ (unsigned)*s ];
|
||||
*(d++) = (char)charmap[(unsigned char)*s];
|
||||
} while (*(s++) != NUL);
|
||||
}
|
||||
|
||||
|
||||
@@ -175,24 +175,6 @@ validate_mmap(char const * fname, int prot, int flags, tmap_info_t * mapinfo)
|
||||
mapinfo->txt_prot = prot;
|
||||
mapinfo->txt_flags = flags;
|
||||
|
||||
/*
|
||||
* Make sure we can stat the regular file. Save the file size.
|
||||
*/
|
||||
{
|
||||
struct stat sb;
|
||||
if (stat(fname, &sb) != 0) {
|
||||
mapinfo->txt_errno = errno;
|
||||
return;
|
||||
}
|
||||
|
||||
if (! S_ISREG(sb.st_mode)) {
|
||||
mapinfo->txt_errno = errno = EINVAL;
|
||||
return;
|
||||
}
|
||||
|
||||
mapinfo->txt_size = (size_t)sb.st_size;
|
||||
}
|
||||
|
||||
/*
|
||||
* Map mmap flags and protections into open flags and do the open.
|
||||
*/
|
||||
@@ -213,6 +195,31 @@ validate_mmap(char const * fname, int prot, int flags, tmap_info_t * mapinfo)
|
||||
o_flag |= O_EXCL;
|
||||
|
||||
mapinfo->txt_fd = open(fname, o_flag);
|
||||
if (mapinfo->txt_fd < 0) {
|
||||
mapinfo->txt_errno = errno;
|
||||
mapinfo->txt_fd = AO_INVALID_FD;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Make sure we can stat the regular file. Save the file size.
|
||||
*/
|
||||
{
|
||||
struct stat sb;
|
||||
if (fstat(mapinfo->txt_fd, &sb) != 0) {
|
||||
mapinfo->txt_errno = errno;
|
||||
close(mapinfo->txt_fd);
|
||||
return;
|
||||
}
|
||||
|
||||
if (! S_ISREG(sb.st_mode)) {
|
||||
mapinfo->txt_errno = errno = EINVAL;
|
||||
close(mapinfo->txt_fd);
|
||||
return;
|
||||
}
|
||||
|
||||
mapinfo->txt_size = (size_t)sb.st_size;
|
||||
}
|
||||
|
||||
if (mapinfo->txt_fd == AO_INVALID_FD)
|
||||
|
||||
@@ -319,6 +319,7 @@ print_offer_usage(tOptions * opts)
|
||||
case OPTPROC_LONGOPT:
|
||||
case (OPTPROC_LONGOPT | OPTPROC_SHORTOPT):
|
||||
strcpy(help, "--help");
|
||||
break;
|
||||
|
||||
case 0:
|
||||
strcpy(help, "help");
|
||||
|
||||
Reference in New Issue
Block a user