1280849Scy/* 2258945Sroberto * EDIT THIS FILE WITH CAUTION (ntpsnmpd-opts.c) 3280849Scy * 4330567Sgordon * It has been AutoGen-ed February 27, 2018 at 05:15:31 PM by AutoGen 5.18.5 5258945Sroberto * From the definitions ntpsnmpd-opts.def 6258945Sroberto * and the template file options 7258945Sroberto * 8280849Scy * Generated from AutoOpts 41:0:16 templates. 9258945Sroberto * 10258945Sroberto * AutoOpts is a copyrighted work. This source file is not encumbered 11258945Sroberto * by AutoOpts licensing, but is provided under the licensing terms chosen 12258945Sroberto * by the ntpsnmpd author or copyright holder. AutoOpts is 13258945Sroberto * licensed under the terms of the LGPL. The redistributable library 14258945Sroberto * (``libopts'') is licensed under the terms of either the LGPL or, at the 15258945Sroberto * users discretion, the BSD license. See the AutoOpts and/or libopts sources 16258945Sroberto * for details. 17258945Sroberto * 18280849Scy * The ntpsnmpd program is copyrighted and licensed 19280849Scy * under the following terms: 20258945Sroberto * 21316722Sdelphij * Copyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved. 22280849Scy * This is free software. It is licensed for use, modification and 23280849Scy * redistribution under the terms of the NTP License, copies of which 24280849Scy * can be seen at: 25280849Scy * <http://ntp.org/license> 26280849Scy * <http://opensource.org/licenses/ntp-license.php> 27280849Scy * 28280849Scy * Permission to use, copy, modify, and distribute this software and its 29280849Scy * documentation for any purpose with or without fee is hereby granted, 30280849Scy * provided that the above copyright notice appears in all copies and that 31280849Scy * both the copyright notice and this permission notice appear in 32280849Scy * supporting documentation, and that the name The University of Delaware not be used in 33280849Scy * advertising or publicity pertaining to distribution of the software 34280849Scy * without specific, written prior permission. The University of Delaware and Network Time Foundation makes no 35280849Scy * representations about the suitability this software for any purpose. It 36280849Scy * is provided "as is" without express or implied warranty. 37258945Sroberto */ 38258945Sroberto 39280849Scy#ifndef __doxygen__ 40280849Scy#define OPTION_CODE_COMPILE 1 41280849Scy#include "ntpsnmpd-opts.h" 42258945Sroberto#include <sys/types.h> 43258945Sroberto 44258945Sroberto#include <limits.h> 45258945Sroberto#include <stdio.h> 46258945Sroberto#include <stdlib.h> 47258945Sroberto 48258945Sroberto#ifdef __cplusplus 49258945Srobertoextern "C" { 50258945Sroberto#endif 51258945Srobertoextern FILE * option_usage_fp; 52280849Scy#define zCopyright (ntpsnmpd_opt_strs+0) 53316722Sdelphij#define zLicenseDescrip (ntpsnmpd_opt_strs+345) 54258945Sroberto 55258945Sroberto 56258945Sroberto#ifndef NULL 57258945Sroberto# define NULL 0 58258945Sroberto#endif 59258945Sroberto 60280849Scy/** 61280849Scy * static const strings for ntpsnmpd options 62258945Sroberto */ 63316722Sdelphijstatic char const ntpsnmpd_opt_strs[1613] = 64330567Sgordon/* 0 */ "ntpsnmpd 4.2.8p11\n" 65316722Sdelphij "Copyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved.\n" 66280849Scy "This is free software. It is licensed for use, modification and\n" 67280849Scy "redistribution under the terms of the NTP License, copies of which\n" 68280849Scy "can be seen at:\n" 69280849Scy " <http://ntp.org/license>\n" 70280849Scy " <http://opensource.org/licenses/ntp-license.php>\n\0" 71316722Sdelphij/* 345 */ "Permission to use, copy, modify, and distribute this software and its\n" 72280849Scy "documentation for any purpose with or without fee is hereby granted,\n" 73280849Scy "provided that the above copyright notice appears in all copies and that\n" 74280849Scy "both the copyright notice and this permission notice appear in supporting\n" 75280849Scy "documentation, and that the name The University of Delaware not be used in\n" 76280849Scy "advertising or publicity pertaining to distribution of the software without\n" 77280849Scy "specific, written prior permission. The University of Delaware and Network\n" 78280849Scy "Time Foundation makes no representations about the suitability this\n" 79280849Scy "software for any purpose. It is provided \"as is\" without express or\n" 80280849Scy "implied warranty.\n\0" 81316722Sdelphij/* 1013 */ "Do not fork\0" 82316722Sdelphij/* 1025 */ "NOFORK\0" 83316722Sdelphij/* 1032 */ "nofork\0" 84316722Sdelphij/* 1039 */ "Log to syslog()\0" 85316722Sdelphij/* 1055 */ "SYSLOG\0" 86316722Sdelphij/* 1062 */ "syslog\0" 87316722Sdelphij/* 1069 */ "The socket address ntpsnmpd uses to connect to net-snmpd\0" 88316722Sdelphij/* 1126 */ "AGENTXSOCKET\0" 89316722Sdelphij/* 1139 */ "agentxsocket\0" 90316722Sdelphij/* 1152 */ "unix:/var/agentx/master\0" 91316722Sdelphij/* 1176 */ "display extended usage information and exit\0" 92316722Sdelphij/* 1220 */ "help\0" 93316722Sdelphij/* 1225 */ "extended usage information passed thru pager\0" 94316722Sdelphij/* 1270 */ "more-help\0" 95316722Sdelphij/* 1280 */ "output version information and exit\0" 96316722Sdelphij/* 1316 */ "version\0" 97316722Sdelphij/* 1324 */ "save the option state to a config file\0" 98316722Sdelphij/* 1363 */ "save-opts\0" 99316722Sdelphij/* 1373 */ "load options from a config file\0" 100316722Sdelphij/* 1405 */ "LOAD_OPTS\0" 101316722Sdelphij/* 1415 */ "no-load-opts\0" 102316722Sdelphij/* 1428 */ "no\0" 103316722Sdelphij/* 1431 */ "NTPSNMPD\0" 104330567Sgordon/* 1440 */ "ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p11\n" 105280849Scy "Usage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0" 106316722Sdelphij/* 1544 */ "$HOME\0" 107316722Sdelphij/* 1550 */ ".\0" 108316722Sdelphij/* 1552 */ ".ntprc\0" 109316722Sdelphij/* 1559 */ "http://bugs.ntp.org, bugs@ntp.org\0" 110316722Sdelphij/* 1593 */ "\n\0" 111330567Sgordon/* 1595 */ "ntpsnmpd 4.2.8p11"; 112258945Sroberto 113280849Scy/** 114280849Scy * nofork option description: 115258945Sroberto */ 116280849Scy/** Descriptive text for the nofork option */ 117316722Sdelphij#define NOFORK_DESC (ntpsnmpd_opt_strs+1013) 118280849Scy/** Upper-cased name for the nofork option */ 119316722Sdelphij#define NOFORK_NAME (ntpsnmpd_opt_strs+1025) 120280849Scy/** Name string for the nofork option */ 121316722Sdelphij#define NOFORK_name (ntpsnmpd_opt_strs+1032) 122280849Scy/** Compiled in flag settings for the nofork option */ 123280849Scy#define NOFORK_FLAGS (OPTST_DISABLED) 124258945Sroberto 125280849Scy/** 126280849Scy * syslog option description: 127258945Sroberto */ 128280849Scy/** Descriptive text for the syslog option */ 129316722Sdelphij#define SYSLOG_DESC (ntpsnmpd_opt_strs+1039) 130280849Scy/** Upper-cased name for the syslog option */ 131316722Sdelphij#define SYSLOG_NAME (ntpsnmpd_opt_strs+1055) 132280849Scy/** Name string for the syslog option */ 133316722Sdelphij#define SYSLOG_name (ntpsnmpd_opt_strs+1062) 134280849Scy/** Compiled in flag settings for the syslog option */ 135280849Scy#define SYSLOG_FLAGS (OPTST_DISABLED) 136280849Scy 137280849Scy/** 138280849Scy * agentXSocket option description: 139280849Scy */ 140280849Scy/** Descriptive text for the agentXSocket option */ 141316722Sdelphij#define AGENTXSOCKET_DESC (ntpsnmpd_opt_strs+1069) 142280849Scy/** Upper-cased name for the agentXSocket option */ 143316722Sdelphij#define AGENTXSOCKET_NAME (ntpsnmpd_opt_strs+1126) 144280849Scy/** Name string for the agentXSocket option */ 145316722Sdelphij#define AGENTXSOCKET_name (ntpsnmpd_opt_strs+1139) 146280849Scy/** The compiled in default value for the agentXSocket option argument */ 147316722Sdelphij#define AGENTXSOCKET_DFT_ARG (ntpsnmpd_opt_strs+1152) 148280849Scy/** Compiled in flag settings for the agentXSocket option */ 149280849Scy#define AGENTXSOCKET_FLAGS (OPTST_DISABLED \ 150258945Sroberto | OPTST_SET_ARGTYPE(OPARG_TYPE_STRING)) 151258945Sroberto 152258945Sroberto/* 153258945Sroberto * Help/More_Help/Version option descriptions: 154258945Sroberto */ 155316722Sdelphij#define HELP_DESC (ntpsnmpd_opt_strs+1176) 156316722Sdelphij#define HELP_name (ntpsnmpd_opt_strs+1220) 157258945Sroberto#ifdef HAVE_WORKING_FORK 158316722Sdelphij#define MORE_HELP_DESC (ntpsnmpd_opt_strs+1225) 159316722Sdelphij#define MORE_HELP_name (ntpsnmpd_opt_strs+1270) 160280849Scy#define MORE_HELP_FLAGS (OPTST_IMM | OPTST_NO_INIT) 161258945Sroberto#else 162280849Scy#define MORE_HELP_DESC HELP_DESC 163280849Scy#define MORE_HELP_name HELP_name 164280849Scy#define MORE_HELP_FLAGS (OPTST_OMITTED | OPTST_NO_INIT) 165258945Sroberto#endif 166258945Sroberto#ifdef NO_OPTIONAL_OPT_ARGS 167280849Scy# define VER_FLAGS (OPTST_IMM | OPTST_NO_INIT) 168258945Sroberto#else 169280849Scy# define VER_FLAGS (OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) | \ 170280849Scy OPTST_ARG_OPTIONAL | OPTST_IMM | OPTST_NO_INIT) 171258945Sroberto#endif 172316722Sdelphij#define VER_DESC (ntpsnmpd_opt_strs+1280) 173316722Sdelphij#define VER_name (ntpsnmpd_opt_strs+1316) 174316722Sdelphij#define SAVE_OPTS_DESC (ntpsnmpd_opt_strs+1324) 175316722Sdelphij#define SAVE_OPTS_name (ntpsnmpd_opt_strs+1363) 176316722Sdelphij#define LOAD_OPTS_DESC (ntpsnmpd_opt_strs+1373) 177316722Sdelphij#define LOAD_OPTS_NAME (ntpsnmpd_opt_strs+1405) 178316722Sdelphij#define NO_LOAD_OPTS_name (ntpsnmpd_opt_strs+1415) 179316722Sdelphij#define LOAD_OPTS_pfx (ntpsnmpd_opt_strs+1428) 180280849Scy#define LOAD_OPTS_name (NO_LOAD_OPTS_name + 3) 181280849Scy/** 182258945Sroberto * Declare option callback procedures 183258945Sroberto */ 184258945Srobertoextern tOptProc 185280849Scy ntpOptionPrintVersion, optionBooleanVal, optionNestedVal, 186280849Scy optionNumericVal, optionPagedUsage, optionResetOpt, 187280849Scy optionStackArg, optionTimeDate, optionTimeVal, 188280849Scy optionUnstackArg, optionVendorOption; 189258945Srobertostatic tOptProc 190258945Sroberto doUsageOpt; 191280849Scy#define VER_PROC ntpOptionPrintVersion 192258945Sroberto 193280849Scy/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 194280849Scy/** 195280849Scy * Define the ntpsnmpd Option Descriptions. 196280849Scy * This is an array of OPTION_CT entries, one for each 197280849Scy * option that the ntpsnmpd program responds to. 198258945Sroberto */ 199258945Srobertostatic tOptDesc optDesc[OPTION_CT] = { 200258945Sroberto { /* entry idx, value */ 0, VALUE_OPT_NOFORK, 201258945Sroberto /* equiv idx, value */ 0, VALUE_OPT_NOFORK, 202258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 203258945Sroberto /* min, max, act ct */ 0, 1, 0, 204258945Sroberto /* opt state flags */ NOFORK_FLAGS, 0, 205280849Scy /* last opt argumnt */ { NULL }, /* --nofork */ 206258945Sroberto /* arg list/cookie */ NULL, 207258945Sroberto /* must/cannot opts */ NULL, NULL, 208258945Sroberto /* option proc */ NULL, 209280849Scy /* desc, NAME, name */ NOFORK_DESC, NOFORK_NAME, NOFORK_name, 210258945Sroberto /* disablement strs */ NULL, NULL }, 211258945Sroberto 212258945Sroberto { /* entry idx, value */ 1, VALUE_OPT_SYSLOG, 213258945Sroberto /* equiv idx, value */ 1, VALUE_OPT_SYSLOG, 214258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 215258945Sroberto /* min, max, act ct */ 0, 1, 0, 216258945Sroberto /* opt state flags */ SYSLOG_FLAGS, 0, 217280849Scy /* last opt argumnt */ { NULL }, /* --syslog */ 218258945Sroberto /* arg list/cookie */ NULL, 219258945Sroberto /* must/cannot opts */ NULL, NULL, 220258945Sroberto /* option proc */ NULL, 221280849Scy /* desc, NAME, name */ SYSLOG_DESC, SYSLOG_NAME, SYSLOG_name, 222258945Sroberto /* disablement strs */ NULL, NULL }, 223258945Sroberto 224258945Sroberto { /* entry idx, value */ 2, VALUE_OPT_AGENTXSOCKET, 225258945Sroberto /* equiv idx, value */ 2, VALUE_OPT_AGENTXSOCKET, 226258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 227258945Sroberto /* min, max, act ct */ 0, 1, 0, 228258945Sroberto /* opt state flags */ AGENTXSOCKET_FLAGS, 0, 229280849Scy /* last opt argumnt */ { AGENTXSOCKET_DFT_ARG }, 230258945Sroberto /* arg list/cookie */ NULL, 231258945Sroberto /* must/cannot opts */ NULL, NULL, 232258945Sroberto /* option proc */ NULL, 233280849Scy /* desc, NAME, name */ AGENTXSOCKET_DESC, AGENTXSOCKET_NAME, AGENTXSOCKET_name, 234258945Sroberto /* disablement strs */ NULL, NULL }, 235258945Sroberto 236258945Sroberto { /* entry idx, value */ INDEX_OPT_VERSION, VALUE_OPT_VERSION, 237280849Scy /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_VERSION, 238258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 239258945Sroberto /* min, max, act ct */ 0, 1, 0, 240280849Scy /* opt state flags */ VER_FLAGS, AOUSE_VERSION, 241258945Sroberto /* last opt argumnt */ { NULL }, 242258945Sroberto /* arg list/cookie */ NULL, 243258945Sroberto /* must/cannot opts */ NULL, NULL, 244280849Scy /* option proc */ VER_PROC, 245280849Scy /* desc, NAME, name */ VER_DESC, NULL, VER_name, 246258945Sroberto /* disablement strs */ NULL, NULL }, 247258945Sroberto 248258945Sroberto 249258945Sroberto 250258945Sroberto { /* entry idx, value */ INDEX_OPT_HELP, VALUE_OPT_HELP, 251280849Scy /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_HELP, 252258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 253258945Sroberto /* min, max, act ct */ 0, 1, 0, 254280849Scy /* opt state flags */ OPTST_IMM | OPTST_NO_INIT, AOUSE_HELP, 255258945Sroberto /* last opt argumnt */ { NULL }, 256258945Sroberto /* arg list/cookie */ NULL, 257258945Sroberto /* must/cannot opts */ NULL, NULL, 258258945Sroberto /* option proc */ doUsageOpt, 259280849Scy /* desc, NAME, name */ HELP_DESC, NULL, HELP_name, 260258945Sroberto /* disablement strs */ NULL, NULL }, 261258945Sroberto 262258945Sroberto { /* entry idx, value */ INDEX_OPT_MORE_HELP, VALUE_OPT_MORE_HELP, 263280849Scy /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_MORE_HELP, 264258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 265258945Sroberto /* min, max, act ct */ 0, 1, 0, 266280849Scy /* opt state flags */ MORE_HELP_FLAGS, AOUSE_MORE_HELP, 267258945Sroberto /* last opt argumnt */ { NULL }, 268258945Sroberto /* arg list/cookie */ NULL, 269258945Sroberto /* must/cannot opts */ NULL, NULL, 270258945Sroberto /* option proc */ optionPagedUsage, 271280849Scy /* desc, NAME, name */ MORE_HELP_DESC, NULL, MORE_HELP_name, 272258945Sroberto /* disablement strs */ NULL, NULL }, 273258945Sroberto 274258945Sroberto { /* entry idx, value */ INDEX_OPT_SAVE_OPTS, VALUE_OPT_SAVE_OPTS, 275280849Scy /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_SAVE_OPTS, 276258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 277258945Sroberto /* min, max, act ct */ 0, 1, 0, 278258945Sroberto /* opt state flags */ OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) 279280849Scy | OPTST_ARG_OPTIONAL | OPTST_NO_INIT, AOUSE_SAVE_OPTS, 280258945Sroberto /* last opt argumnt */ { NULL }, 281258945Sroberto /* arg list/cookie */ NULL, 282258945Sroberto /* must/cannot opts */ NULL, NULL, 283258945Sroberto /* option proc */ NULL, 284280849Scy /* desc, NAME, name */ SAVE_OPTS_DESC, NULL, SAVE_OPTS_name, 285258945Sroberto /* disablement strs */ NULL, NULL }, 286258945Sroberto 287258945Sroberto { /* entry idx, value */ INDEX_OPT_LOAD_OPTS, VALUE_OPT_LOAD_OPTS, 288280849Scy /* equiv idx value */ NO_EQUIVALENT, VALUE_OPT_LOAD_OPTS, 289258945Sroberto /* equivalenced to */ NO_EQUIVALENT, 290258945Sroberto /* min, max, act ct */ 0, NOLIMIT, 0, 291258945Sroberto /* opt state flags */ OPTST_SET_ARGTYPE(OPARG_TYPE_STRING) 292280849Scy | OPTST_DISABLE_IMM, AOUSE_LOAD_OPTS, 293258945Sroberto /* last opt argumnt */ { NULL }, 294258945Sroberto /* arg list/cookie */ NULL, 295258945Sroberto /* must/cannot opts */ NULL, NULL, 296258945Sroberto /* option proc */ optionLoadOpt, 297280849Scy /* desc, NAME, name */ LOAD_OPTS_DESC, LOAD_OPTS_NAME, LOAD_OPTS_name, 298280849Scy /* disablement strs */ NO_LOAD_OPTS_name, LOAD_OPTS_pfx } 299258945Sroberto}; 300258945Sroberto 301280849Scy 302280849Scy/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 303280849Scy/** Reference to the upper cased version of ntpsnmpd. */ 304316722Sdelphij#define zPROGNAME (ntpsnmpd_opt_strs+1431) 305280849Scy/** Reference to the title line for ntpsnmpd usage. */ 306316722Sdelphij#define zUsageTitle (ntpsnmpd_opt_strs+1440) 307280849Scy/** ntpsnmpd configuration file name. */ 308316722Sdelphij#define zRcName (ntpsnmpd_opt_strs+1552) 309280849Scy/** Directories to search for ntpsnmpd config files. */ 310258945Srobertostatic char const * const apzHomeList[3] = { 311316722Sdelphij ntpsnmpd_opt_strs+1544, 312316722Sdelphij ntpsnmpd_opt_strs+1550, 313258945Sroberto NULL }; 314280849Scy/** The ntpsnmpd program bug email address. */ 315316722Sdelphij#define zBugsAddr (ntpsnmpd_opt_strs+1559) 316280849Scy/** Clarification/explanation of what ntpsnmpd does. */ 317316722Sdelphij#define zExplain (ntpsnmpd_opt_strs+1593) 318280849Scy/** Extra detail explaining what ntpsnmpd does. */ 319280849Scy#define zDetail (NULL) 320280849Scy/** The full version string for ntpsnmpd. */ 321316722Sdelphij#define zFullVersion (ntpsnmpd_opt_strs+1595) 322280849Scy/* extracted from optcode.tlib near line 364 */ 323258945Sroberto 324258945Sroberto#if defined(ENABLE_NLS) 325258945Sroberto# define OPTPROC_BASE OPTPROC_TRANSLATE 326258945Sroberto static tOptionXlateProc translate_option_strings; 327258945Sroberto#else 328258945Sroberto# define OPTPROC_BASE OPTPROC_NONE 329258945Sroberto# define translate_option_strings NULL 330258945Sroberto#endif /* ENABLE_NLS */ 331258945Sroberto 332280849Scy#define ntpsnmpd_full_usage (NULL) 333280849Scy#define ntpsnmpd_short_usage (NULL) 334258945Sroberto 335280849Scy#endif /* not defined __doxygen__ */ 336280849Scy 337280849Scy/* 338280849Scy * Create the static procedure(s) declared above. 339280849Scy */ 340280849Scy/** 341280849Scy * The callout function that invokes the optionUsage function. 342280849Scy * 343280849Scy * @param[in] opts the AutoOpts option description structure 344280849Scy * @param[in] od the descriptor for the "help" (usage) option. 345280849Scy * @noreturn 346280849Scy */ 347280849Scystatic void 348280849ScydoUsageOpt(tOptions * opts, tOptDesc * od) 349280849Scy{ 350280849Scy int ex_code; 351280849Scy ex_code = NTPSNMPD_EXIT_SUCCESS; 352280849Scy optionUsage(&ntpsnmpdOptions, ex_code); 353280849Scy /* NOTREACHED */ 354280849Scy exit(1); 355280849Scy (void)opts; 356280849Scy (void)od; 357280849Scy} 358285612Sdelphij/* extracted from optmain.tlib near line 1250 */ 359280849Scy 360280849Scy/** 361280849Scy * The directory containing the data associated with ntpsnmpd. 362280849Scy */ 363258945Sroberto#ifndef PKGDATADIR 364258945Sroberto# define PKGDATADIR "" 365258945Sroberto#endif 366258945Sroberto 367280849Scy/** 368280849Scy * Information about the person or institution that packaged ntpsnmpd 369280849Scy * for the current distribution. 370280849Scy */ 371258945Sroberto#ifndef WITH_PACKAGER 372258945Sroberto# define ntpsnmpd_packager_info NULL 373258945Sroberto#else 374280849Scy/** Packager information for ntpsnmpd. */ 375258945Srobertostatic char const ntpsnmpd_packager_info[] = 376258945Sroberto "Packaged by " WITH_PACKAGER 377258945Sroberto 378258945Sroberto# ifdef WITH_PACKAGER_VERSION 379258945Sroberto " ("WITH_PACKAGER_VERSION")" 380258945Sroberto# endif 381258945Sroberto 382258945Sroberto# ifdef WITH_PACKAGER_BUG_REPORTS 383258945Sroberto "\nReport ntpsnmpd bugs to " WITH_PACKAGER_BUG_REPORTS 384258945Sroberto# endif 385258945Sroberto "\n"; 386258945Sroberto#endif 387280849Scy#ifndef __doxygen__ 388258945Sroberto 389280849Scy#endif /* __doxygen__ */ 390280849Scy/** 391280849Scy * The option definitions for ntpsnmpd. The one structure that 392280849Scy * binds them all. 393280849Scy */ 394258945SrobertotOptions ntpsnmpdOptions = { 395258945Sroberto OPTIONS_STRUCT_VERSION, 396258945Sroberto 0, NULL, /* original argc + argv */ 397258945Sroberto ( OPTPROC_BASE 398258945Sroberto + OPTPROC_ERRSTOP 399258945Sroberto + OPTPROC_SHORTOPT 400258945Sroberto + OPTPROC_LONGOPT 401258945Sroberto + OPTPROC_NO_REQ_OPT 402258945Sroberto + OPTPROC_ENVIRON 403258945Sroberto + OPTPROC_NO_ARGS 404258945Sroberto + OPTPROC_MISUSE ), 405258945Sroberto 0, NULL, /* current option index, current option */ 406258945Sroberto NULL, NULL, zPROGNAME, 407258945Sroberto zRcName, zCopyright, zLicenseDescrip, 408258945Sroberto zFullVersion, apzHomeList, zUsageTitle, 409258945Sroberto zExplain, zDetail, optDesc, 410258945Sroberto zBugsAddr, /* address to send bugs to */ 411258945Sroberto NULL, NULL, /* extensions/saved state */ 412258945Sroberto optionUsage, /* usage procedure */ 413258945Sroberto translate_option_strings, /* translation procedure */ 414258945Sroberto /* 415258945Sroberto * Indexes to special options 416258945Sroberto */ 417258945Sroberto { INDEX_OPT_MORE_HELP, /* more-help option index */ 418258945Sroberto INDEX_OPT_SAVE_OPTS, /* save option index */ 419258945Sroberto NO_EQUIVALENT, /* '-#' option index */ 420258945Sroberto NO_EQUIVALENT /* index of default opt */ 421258945Sroberto }, 422258945Sroberto 8 /* full option count */, 3 /* user option count */, 423258945Sroberto ntpsnmpd_full_usage, ntpsnmpd_short_usage, 424258945Sroberto NULL, NULL, 425258945Sroberto PKGDATADIR, ntpsnmpd_packager_info 426258945Sroberto}; 427258945Sroberto 428280849Scy#if ENABLE_NLS 429280849Scy/** 430280849Scy * This code is designed to translate translatable option text for the 431280849Scy * ntpsnmpd program. These translations happen upon entry 432280849Scy * to optionProcess(). 433258945Sroberto */ 434258945Sroberto#include <stdio.h> 435258945Sroberto#include <stdlib.h> 436258945Sroberto#include <string.h> 437258945Sroberto#include <unistd.h> 438280849Scy#ifdef HAVE_DCGETTEXT 439280849Scy# include <gettext.h> 440280849Scy#endif 441258945Sroberto#include <autoopts/usage-txt.h> 442258945Sroberto 443280849Scystatic char * AO_gettext(char const * pz); 444280849Scystatic void coerce_it(void ** s); 445258945Sroberto 446280849Scy/** 447280849Scy * AutoGen specific wrapper function for gettext. It relies on the macro _() 448280849Scy * to convert from English to the target language, then strdup-duplicates the 449280849Scy * result string. It tries the "libopts" domain first, then whatever has been 450280849Scy * set via the \a textdomain(3) call. 451280849Scy * 452280849Scy * @param[in] pz the input text used as a lookup key. 453280849Scy * @returns the translated text (if there is one), 454280849Scy * or the original text (if not). 455280849Scy */ 456280849Scystatic char * 457280849ScyAO_gettext(char const * pz) 458258945Sroberto{ 459280849Scy char * res; 460258945Sroberto if (pz == NULL) 461258945Sroberto return NULL; 462280849Scy#ifdef HAVE_DCGETTEXT 463280849Scy /* 464280849Scy * While processing the option_xlateable_txt data, try to use the 465280849Scy * "libopts" domain. Once we switch to the option descriptor data, 466280849Scy * do *not* use that domain. 467280849Scy */ 468280849Scy if (option_xlateable_txt.field_ct != 0) { 469280849Scy res = dgettext("libopts", pz); 470280849Scy if (res == pz) 471285612Sdelphij res = (char *)VOIDP(_(pz)); 472280849Scy } else 473285612Sdelphij res = (char *)VOIDP(_(pz)); 474280849Scy#else 475285612Sdelphij res = (char *)VOIDP(_(pz)); 476280849Scy#endif 477280849Scy if (res == pz) 478280849Scy return res; 479280849Scy res = strdup(res); 480280849Scy if (res == NULL) { 481258945Sroberto fputs(_("No memory for duping translated strings\n"), stderr); 482258945Sroberto exit(NTPSNMPD_EXIT_FAILURE); 483258945Sroberto } 484280849Scy return res; 485258945Sroberto} 486258945Sroberto 487280849Scy/** 488280849Scy * All the pointers we use are marked "* const", but they are stored in 489280849Scy * writable memory. Coerce the mutability and set the pointer. 490280849Scy */ 491280849Scystatic void coerce_it(void ** s) { *s = AO_gettext(*s); 492258945Sroberto} 493258945Sroberto 494280849Scy/** 495280849Scy * Translate all the translatable strings in the ntpsnmpdOptions 496280849Scy * structure defined above. This is done only once. 497258945Sroberto */ 498258945Srobertostatic void 499258945Srobertotranslate_option_strings(void) 500258945Sroberto{ 501280849Scy tOptions * const opts = &ntpsnmpdOptions; 502258945Sroberto 503258945Sroberto /* 504258945Sroberto * Guard against re-translation. It won't work. The strings will have 505258945Sroberto * been changed by the first pass through this code. One shot only. 506258945Sroberto */ 507280849Scy if (option_xlateable_txt.field_ct != 0) { 508258945Sroberto /* 509258945Sroberto * Do the translations. The first pointer follows the field count 510258945Sroberto * field. The field count field is the size of a pointer. 511258945Sroberto */ 512285612Sdelphij char ** ppz = (char**)VOIDP(&(option_xlateable_txt)); 513280849Scy int ix = option_xlateable_txt.field_ct; 514258945Sroberto 515258945Sroberto do { 516280849Scy ppz++; /* skip over field_ct */ 517258945Sroberto *ppz = AO_gettext(*ppz); 518258945Sroberto } while (--ix > 0); 519280849Scy /* prevent re-translation and disable "libopts" domain lookup */ 520280849Scy option_xlateable_txt.field_ct = 0; 521258945Sroberto 522285612Sdelphij coerce_it(VOIDP(&(opts->pzCopyright))); 523285612Sdelphij coerce_it(VOIDP(&(opts->pzCopyNotice))); 524285612Sdelphij coerce_it(VOIDP(&(opts->pzFullVersion))); 525285612Sdelphij coerce_it(VOIDP(&(opts->pzUsageTitle))); 526285612Sdelphij coerce_it(VOIDP(&(opts->pzExplain))); 527285612Sdelphij coerce_it(VOIDP(&(opts->pzDetail))); 528280849Scy { 529280849Scy tOptDesc * od = opts->pOptDesc; 530280849Scy for (ix = opts->optCt; ix > 0; ix--, od++) 531285612Sdelphij coerce_it(VOIDP(&(od->pzText))); 532258945Sroberto } 533258945Sroberto } 534258945Sroberto} 535258945Sroberto#endif /* ENABLE_NLS */ 536258945Sroberto 537280849Scy#ifdef DO_NOT_COMPILE_THIS_CODE_IT_IS_FOR_GETTEXT 538280849Scy/** I18N function strictly for xgettext. Do not compile. */ 539280849Scystatic void bogus_function(void) { 540280849Scy /* TRANSLATORS: 541280849Scy 542280849Scy The following dummy function was crated solely so that xgettext can 543280849Scy extract the correct strings. These strings are actually referenced 544280849Scy by a field name in the ntpsnmpdOptions structure noted in the 545280849Scy comments below. The literal text is defined in ntpsnmpd_opt_strs. 546280849Scy 547280849Scy NOTE: the strings below are segmented with respect to the source string 548280849Scy ntpsnmpd_opt_strs. The strings above are handed off for translation 549280849Scy at run time a paragraph at a time. Consequently, they are presented here 550280849Scy for translation a paragraph at a time. 551280849Scy 552280849Scy ALSO: often the description for an option will reference another option 553280849Scy by name. These are set off with apostrophe quotes (I hope). Do not 554280849Scy translate option names. 555280849Scy */ 556280849Scy /* referenced via ntpsnmpdOptions.pzCopyright */ 557330567Sgordon puts(_("ntpsnmpd 4.2.8p11\n\ 558316722SdelphijCopyright (C) 1992-2017 The University of Delaware and Network Time Foundation, all rights reserved.\n\ 559280849ScyThis is free software. It is licensed for use, modification and\n\ 560280849Scyredistribution under the terms of the NTP License, copies of which\n\ 561280849Scycan be seen at:\n")); 562280849Scy puts(_(" <http://ntp.org/license>\n\ 563280849Scy <http://opensource.org/licenses/ntp-license.php>\n")); 564280849Scy 565280849Scy /* referenced via ntpsnmpdOptions.pzCopyNotice */ 566280849Scy puts(_("Permission to use, copy, modify, and distribute this software and its\n\ 567280849Scydocumentation for any purpose with or without fee is hereby granted,\n\ 568280849Scyprovided that the above copyright notice appears in all copies and that\n\ 569280849Scyboth the copyright notice and this permission notice appear in supporting\n\ 570280849Scydocumentation, and that the name The University of Delaware not be used in\n\ 571280849Scyadvertising or publicity pertaining to distribution of the software without\n\ 572280849Scyspecific, written prior permission. The University of Delaware and Network\n\ 573280849ScyTime Foundation makes no representations about the suitability this\n\ 574280849Scysoftware for any purpose. It is provided \"as is\" without express or\n\ 575280849Scyimplied warranty.\n")); 576280849Scy 577280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 578280849Scy puts(_("Do not fork")); 579280849Scy 580280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 581280849Scy puts(_("Log to syslog()")); 582280849Scy 583280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 584280849Scy puts(_("The socket address ntpsnmpd uses to connect to net-snmpd")); 585280849Scy 586280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 587280849Scy puts(_("display extended usage information and exit")); 588280849Scy 589280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 590280849Scy puts(_("extended usage information passed thru pager")); 591280849Scy 592280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 593280849Scy puts(_("output version information and exit")); 594280849Scy 595280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 596280849Scy puts(_("save the option state to a config file")); 597280849Scy 598280849Scy /* referenced via ntpsnmpdOptions.pOptDesc->pzText */ 599280849Scy puts(_("load options from a config file")); 600280849Scy 601280849Scy /* referenced via ntpsnmpdOptions.pzUsageTitle */ 602330567Sgordon puts(_("ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p11\n\ 603280849ScyUsage: %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n")); 604280849Scy 605280849Scy /* referenced via ntpsnmpdOptions.pzExplain */ 606280849Scy puts(_("\n")); 607280849Scy 608280849Scy /* referenced via ntpsnmpdOptions.pzFullVersion */ 609330567Sgordon puts(_("ntpsnmpd 4.2.8p11")); 610280849Scy 611280849Scy /* referenced via ntpsnmpdOptions.pzFullUsage */ 612280849Scy puts(_("<<<NOT-FOUND>>>")); 613280849Scy 614280849Scy /* referenced via ntpsnmpdOptions.pzShortUsage */ 615280849Scy puts(_("<<<NOT-FOUND>>>")); 616280849Scy /* LIBOPTS-MESSAGES: */ 617280849Scy#line 67 "../autoopts.c" 618280849Scy puts(_("allocation of %d bytes failed\n")); 619280849Scy#line 93 "../autoopts.c" 620280849Scy puts(_("allocation of %d bytes failed\n")); 621280849Scy#line 53 "../init.c" 622280849Scy puts(_("AutoOpts function called without option descriptor\n")); 623280849Scy#line 86 "../init.c" 624280849Scy puts(_("\tThis exceeds the compiled library version: ")); 625280849Scy#line 84 "../init.c" 626280849Scy puts(_("Automated Options Processing Error!\n" 627280849Scy "\t%s called AutoOpts function with structure version %d:%d:%d.\n")); 628280849Scy#line 80 "../autoopts.c" 629280849Scy puts(_("realloc of %d bytes at 0x%p failed\n")); 630280849Scy#line 88 "../init.c" 631280849Scy puts(_("\tThis is less than the minimum library version: ")); 632280849Scy#line 121 "../version.c" 633280849Scy puts(_("Automated Options version %s\n" 634280849Scy "\tCopyright (C) 1999-2014 by Bruce Korb - all rights reserved\n")); 635285612Sdelphij#line 87 "../makeshell.c" 636280849Scy puts(_("(AutoOpts bug): %s.\n")); 637280849Scy#line 90 "../reset.c" 638280849Scy puts(_("optionResetOpt() called, but reset-option not configured")); 639280849Scy#line 292 "../usage.c" 640280849Scy puts(_("could not locate the 'help' option")); 641280849Scy#line 336 "../autoopts.c" 642280849Scy puts(_("optionProcess() was called with invalid data")); 643280849Scy#line 748 "../usage.c" 644280849Scy puts(_("invalid argument type specified")); 645280849Scy#line 598 "../find.c" 646280849Scy puts(_("defaulted to option with optional arg")); 647280849Scy#line 76 "../alias.c" 648280849Scy puts(_("aliasing option is out of range.")); 649280849Scy#line 234 "../enum.c" 650280849Scy puts(_("%s error: the keyword '%s' is ambiguous for %s\n")); 651280849Scy#line 108 "../find.c" 652280849Scy puts(_(" The following options match:\n")); 653280849Scy#line 293 "../find.c" 654280849Scy puts(_("%s: ambiguous option name: %s (matches %d options)\n")); 655280849Scy#line 161 "../check.c" 656280849Scy puts(_("%s: Command line arguments required\n")); 657280849Scy#line 43 "../alias.c" 658280849Scy puts(_("%d %s%s options allowed\n")); 659285612Sdelphij#line 94 "../makeshell.c" 660280849Scy puts(_("%s error %d (%s) calling %s for '%s'\n")); 661285612Sdelphij#line 306 "../makeshell.c" 662280849Scy puts(_("interprocess pipe")); 663280849Scy#line 168 "../version.c" 664280849Scy puts(_("error: version option argument '%c' invalid. Use:\n" 665280849Scy "\t'v' - version only\n" 666280849Scy "\t'c' - version and copyright\n" 667280849Scy "\t'n' - version and full copyright notice\n")); 668280849Scy#line 58 "../check.c" 669280849Scy puts(_("%s error: the '%s' and '%s' options conflict\n")); 670280849Scy#line 217 "../find.c" 671280849Scy puts(_("%s: The '%s' option has been disabled.")); 672280849Scy#line 430 "../find.c" 673280849Scy puts(_("%s: The '%s' option has been disabled.")); 674280849Scy#line 38 "../alias.c" 675280849Scy puts(_("-equivalence")); 676280849Scy#line 469 "../find.c" 677280849Scy puts(_("%s: illegal option -- %c\n")); 678280849Scy#line 110 "../reset.c" 679280849Scy puts(_("%s: illegal option -- %c\n")); 680280849Scy#line 271 "../find.c" 681280849Scy puts(_("%s: illegal option -- %s\n")); 682280849Scy#line 755 "../find.c" 683280849Scy puts(_("%s: illegal option -- %s\n")); 684280849Scy#line 118 "../reset.c" 685280849Scy puts(_("%s: illegal option -- %s\n")); 686280849Scy#line 335 "../find.c" 687280849Scy puts(_("%s: unknown vendor extension option -- %s\n")); 688280849Scy#line 159 "../enum.c" 689280849Scy puts(_(" or an integer from %d through %d\n")); 690280849Scy#line 169 "../enum.c" 691280849Scy puts(_(" or an integer from %d through %d\n")); 692280849Scy#line 747 "../usage.c" 693280849Scy puts(_("%s error: invalid option descriptor for %s\n")); 694280849Scy#line 1081 "../usage.c" 695280849Scy puts(_("%s error: invalid option descriptor for %s\n")); 696280849Scy#line 385 "../find.c" 697280849Scy puts(_("%s: invalid option name: %s\n")); 698280849Scy#line 527 "../find.c" 699280849Scy puts(_("%s: The '%s' option requires an argument.\n")); 700280849Scy#line 156 "../autoopts.c" 701280849Scy puts(_("(AutoOpts bug): Equivalenced option '%s' was equivalenced to both\n" 702280849Scy "\t'%s' and '%s'.")); 703280849Scy#line 94 "../check.c" 704280849Scy puts(_("%s error: The %s option is required\n")); 705280849Scy#line 632 "../find.c" 706280849Scy puts(_("%s: The '%s' option cannot have an argument.\n")); 707280849Scy#line 151 "../check.c" 708280849Scy puts(_("%s: Command line arguments are not allowed.\n")); 709280849Scy#line 535 "../save.c" 710280849Scy puts(_("error %d (%s) creating %s\n")); 711280849Scy#line 234 "../enum.c" 712280849Scy puts(_("%s error: '%s' does not match any %s keywords.\n")); 713280849Scy#line 93 "../reset.c" 714280849Scy puts(_("%s error: The '%s' option requires an argument.\n")); 715280849Scy#line 184 "../save.c" 716280849Scy puts(_("error %d (%s) stat-ing %s\n")); 717280849Scy#line 238 "../save.c" 718280849Scy puts(_("error %d (%s) stat-ing %s\n")); 719280849Scy#line 143 "../restore.c" 720280849Scy puts(_("%s error: no saved option state\n")); 721280849Scy#line 231 "../autoopts.c" 722280849Scy puts(_("'%s' is not a command line option.\n")); 723280849Scy#line 111 "../time.c" 724280849Scy puts(_("%s error: '%s' is not a recognizable date/time.\n")); 725280849Scy#line 132 "../save.c" 726280849Scy puts(_("'%s' not defined\n")); 727280849Scy#line 50 "../time.c" 728280849Scy puts(_("%s error: '%s' is not a recognizable time duration.\n")); 729280849Scy#line 92 "../check.c" 730280849Scy puts(_("%s error: The %s option must appear %d times.\n")); 731280849Scy#line 164 "../numeric.c" 732280849Scy puts(_("%s error: '%s' is not a recognizable number.\n")); 733280849Scy#line 200 "../enum.c" 734280849Scy puts(_("%s error: %s exceeds %s keyword count\n")); 735280849Scy#line 330 "../usage.c" 736280849Scy puts(_("Try '%s %s' for more information.\n")); 737280849Scy#line 45 "../alias.c" 738280849Scy puts(_("one %s%s option allowed\n")); 739285612Sdelphij#line 208 "../makeshell.c" 740280849Scy puts(_("standard output")); 741285612Sdelphij#line 943 "../makeshell.c" 742280849Scy puts(_("standard output")); 743280849Scy#line 274 "../usage.c" 744280849Scy puts(_("standard output")); 745280849Scy#line 415 "../usage.c" 746280849Scy puts(_("standard output")); 747280849Scy#line 625 "../usage.c" 748280849Scy puts(_("standard output")); 749280849Scy#line 175 "../version.c" 750280849Scy puts(_("standard output")); 751280849Scy#line 274 "../usage.c" 752280849Scy puts(_("standard error")); 753280849Scy#line 415 "../usage.c" 754280849Scy puts(_("standard error")); 755280849Scy#line 625 "../usage.c" 756280849Scy puts(_("standard error")); 757280849Scy#line 175 "../version.c" 758280849Scy puts(_("standard error")); 759285612Sdelphij#line 208 "../makeshell.c" 760280849Scy puts(_("write")); 761285612Sdelphij#line 943 "../makeshell.c" 762280849Scy puts(_("write")); 763280849Scy#line 273 "../usage.c" 764280849Scy puts(_("write")); 765280849Scy#line 414 "../usage.c" 766280849Scy puts(_("write")); 767280849Scy#line 624 "../usage.c" 768280849Scy puts(_("write")); 769280849Scy#line 174 "../version.c" 770280849Scy puts(_("write")); 771280849Scy#line 60 "../numeric.c" 772280849Scy puts(_("%s error: %s option value %ld is out of range.\n")); 773280849Scy#line 44 "../check.c" 774280849Scy puts(_("%s error: %s option requires the %s option\n")); 775280849Scy#line 131 "../save.c" 776280849Scy puts(_("%s warning: cannot save options - %s not regular file\n")); 777280849Scy#line 183 "../save.c" 778280849Scy puts(_("%s warning: cannot save options - %s not regular file\n")); 779280849Scy#line 237 "../save.c" 780280849Scy puts(_("%s warning: cannot save options - %s not regular file\n")); 781280849Scy#line 256 "../save.c" 782280849Scy puts(_("%s warning: cannot save options - %s not regular file\n")); 783280849Scy#line 534 "../save.c" 784280849Scy puts(_("%s warning: cannot save options - %s not regular file\n")); 785280849Scy /* END-LIBOPTS-MESSAGES */ 786280849Scy 787280849Scy /* USAGE-TEXT: */ 788280849Scy#line 873 "../usage.c" 789280849Scy puts(_("\t\t\t\t- an alternate for '%s'\n")); 790280849Scy#line 1148 "../usage.c" 791280849Scy puts(_("Version, usage and configuration options:")); 792280849Scy#line 924 "../usage.c" 793280849Scy puts(_("\t\t\t\t- default option for unnamed options\n")); 794280849Scy#line 837 "../usage.c" 795280849Scy puts(_("\t\t\t\t- disabled as '--%s'\n")); 796280849Scy#line 1117 "../usage.c" 797280849Scy puts(_(" --- %-14s %s\n")); 798280849Scy#line 1115 "../usage.c" 799280849Scy puts(_("This option has been disabled")); 800280849Scy#line 864 "../usage.c" 801280849Scy puts(_("\t\t\t\t- enabled by default\n")); 802280849Scy#line 40 "../alias.c" 803280849Scy puts(_("%s error: only ")); 804280849Scy#line 1194 "../usage.c" 805280849Scy puts(_(" - examining environment variables named %s_*\n")); 806280849Scy#line 168 "../file.c" 807280849Scy puts(_("\t\t\t\t- file must not pre-exist\n")); 808280849Scy#line 172 "../file.c" 809280849Scy puts(_("\t\t\t\t- file must pre-exist\n")); 810280849Scy#line 380 "../usage.c" 811280849Scy puts(_("Options are specified by doubled hyphens and their name or by a single\n" 812280849Scy "hyphen and the flag character.\n")); 813285612Sdelphij#line 921 "../makeshell.c" 814280849Scy puts(_("\n" 815280849Scy "= = = = = = = =\n\n" 816280849Scy "This incarnation of genshell will produce\n" 817280849Scy "a shell script to parse the options for %s:\n\n")); 818280849Scy#line 166 "../enum.c" 819280849Scy puts(_(" or an integer mask with any of the lower %d bits set\n")); 820280849Scy#line 897 "../usage.c" 821280849Scy puts(_("\t\t\t\t- is a set membership option\n")); 822280849Scy#line 918 "../usage.c" 823280849Scy puts(_("\t\t\t\t- must appear between %d and %d times\n")); 824280849Scy#line 382 "../usage.c" 825280849Scy puts(_("Options are specified by single or double hyphens and their name.\n")); 826280849Scy#line 904 "../usage.c" 827280849Scy puts(_("\t\t\t\t- may appear multiple times\n")); 828280849Scy#line 891 "../usage.c" 829280849Scy puts(_("\t\t\t\t- may not be preset\n")); 830280849Scy#line 1309 "../usage.c" 831280849Scy puts(_(" Arg Option-Name Description\n")); 832280849Scy#line 1245 "../usage.c" 833280849Scy puts(_(" Flg Arg Option-Name Description\n")); 834280849Scy#line 1303 "../usage.c" 835280849Scy puts(_(" Flg Arg Option-Name Description\n")); 836280849Scy#line 1304 "../usage.c" 837280849Scy puts(_(" %3s %s")); 838280849Scy#line 1310 "../usage.c" 839280849Scy puts(_(" %3s %s")); 840280849Scy#line 387 "../usage.c" 841280849Scy puts(_("The '-#<number>' option may omit the hash char\n")); 842280849Scy#line 383 "../usage.c" 843280849Scy puts(_("All arguments are named options.\n")); 844280849Scy#line 971 "../usage.c" 845280849Scy puts(_(" - reading file %s")); 846280849Scy#line 409 "../usage.c" 847280849Scy puts(_("\n" 848280849Scy "Please send bug reports to: <%s>\n")); 849280849Scy#line 100 "../version.c" 850280849Scy puts(_("\n" 851280849Scy "Please send bug reports to: <%s>\n")); 852280849Scy#line 129 "../version.c" 853280849Scy puts(_("\n" 854280849Scy "Please send bug reports to: <%s>\n")); 855280849Scy#line 903 "../usage.c" 856280849Scy puts(_("\t\t\t\t- may NOT appear - preset only\n")); 857280849Scy#line 944 "../usage.c" 858280849Scy puts(_("\n" 859280849Scy "The following option preset mechanisms are supported:\n")); 860280849Scy#line 1192 "../usage.c" 861280849Scy puts(_("\n" 862280849Scy "The following option preset mechanisms are supported:\n")); 863280849Scy#line 682 "../usage.c" 864280849Scy puts(_("prohibits these options:\n")); 865280849Scy#line 677 "../usage.c" 866280849Scy puts(_("prohibits the option '%s'\n")); 867280849Scy#line 81 "../numeric.c" 868280849Scy puts(_("%s%ld to %ld")); 869280849Scy#line 79 "../numeric.c" 870280849Scy puts(_("%sgreater than or equal to %ld")); 871280849Scy#line 75 "../numeric.c" 872280849Scy puts(_("%s%ld exactly")); 873280849Scy#line 68 "../numeric.c" 874280849Scy puts(_("%sit must lie in one of the ranges:\n")); 875280849Scy#line 68 "../numeric.c" 876280849Scy puts(_("%sit must be in the range:\n")); 877280849Scy#line 88 "../numeric.c" 878280849Scy puts(_(", or\n")); 879280849Scy#line 66 "../numeric.c" 880280849Scy puts(_("%sis scalable with a suffix: k/K/m/M/g/G/t/T\n")); 881280849Scy#line 77 "../numeric.c" 882280849Scy puts(_("%sless than or equal to %ld")); 883280849Scy#line 390 "../usage.c" 884280849Scy puts(_("Operands and options may be intermixed. They will be reordered.\n")); 885280849Scy#line 652 "../usage.c" 886280849Scy puts(_("requires the option '%s'\n")); 887280849Scy#line 655 "../usage.c" 888280849Scy puts(_("requires these options:\n")); 889280849Scy#line 1321 "../usage.c" 890280849Scy puts(_(" Arg Option-Name Req? Description\n")); 891280849Scy#line 1315 "../usage.c" 892280849Scy puts(_(" Flg Arg Option-Name Req? Description\n")); 893280849Scy#line 167 "../enum.c" 894280849Scy puts(_("or you may use a numeric representation. Preceding these with a '!'\n" 895280849Scy "will clear the bits, specifying 'none' will clear all bits, and 'all'\n" 896280849Scy "will set them all. Multiple entries may be passed as an option\n" 897280849Scy "argument list.\n")); 898280849Scy#line 910 "../usage.c" 899280849Scy puts(_("\t\t\t\t- may appear up to %d times\n")); 900280849Scy#line 77 "../enum.c" 901280849Scy puts(_("The valid \"%s\" option keywords are:\n")); 902280849Scy#line 1152 "../usage.c" 903280849Scy puts(_("The next option supports vendor supported extra options:")); 904280849Scy#line 773 "../usage.c" 905280849Scy puts(_("These additional options are:")); 906280849Scy /* END-USAGE-TEXT */ 907280849Scy} 908280849Scy#endif /* uncompilable code */ 909258945Sroberto#ifdef __cplusplus 910258945Sroberto} 911258945Sroberto#endif 912258945Sroberto/* ntpsnmpd-opts.c ends here */ 913