Annotation of embedaddon/ntp/sntp/sntp-opts.h, revision 1.1.1.1

1.1       misho       1: /*  
                      2:  *  EDIT THIS FILE WITH CAUTION  (sntp-opts.h)
                      3:  *  
                      4:  *  It has been AutoGen-ed  December 24, 2011 at 06:33:53 PM by AutoGen 5.12
                      5:  *  From the definitions    sntp-opts.def
                      6:  *  and the template file   options
                      7:  *
                      8:  * Generated from AutoOpts 35:0:10 templates.
                      9:  *
                     10:  *  AutoOpts is a copyrighted work.  This header file is not encumbered
                     11:  *  by AutoOpts licensing, but is provided under the licensing terms chosen
                     12:  *  by the sntp author or copyright holder.  AutoOpts is
                     13:  *  licensed under the terms of the LGPL.  The redistributable library
                     14:  *  (``libopts'') is licensed under the terms of either the LGPL or, at the
                     15:  *  users discretion, the BSD license.  See the AutoOpts and/or libopts sources
                     16:  *  for details.
                     17:  *
                     18:  * This source file is copyrighted and licensed under the following terms:
                     19:  *
                     20:  *  see html/copyright.html
                     21:  *  
                     22:  */
                     23: /*
                     24:  *  This file contains the programmatic interface to the Automated
                     25:  *  Options generated for the sntp program.
                     26:  *  These macros are documented in the AutoGen info file in the
                     27:  *  "AutoOpts" chapter.  Please refer to that doc for usage help.
                     28:  */
                     29: #ifndef AUTOOPTS_SNTP_OPTS_H_GUARD
                     30: #define AUTOOPTS_SNTP_OPTS_H_GUARD 1
                     31: #include "config.h"
                     32: #include <autoopts/options.h>
                     33: 
                     34: /*
                     35:  *  Ensure that the library used for compiling this generated header is at
                     36:  *  least as new as the version current when the header template was released
                     37:  *  (not counting patch version increments).  Also ensure that the oldest
                     38:  *  tolerable version is at least as old as what was current when the header
                     39:  *  template was released.
                     40:  */
                     41: #define AO_TEMPLATE_VERSION 143360
                     42: #if (AO_TEMPLATE_VERSION < OPTIONS_MINIMUM_VERSION) \
                     43:  || (AO_TEMPLATE_VERSION > OPTIONS_STRUCT_VERSION)
                     44: # error option template version mismatches autoopts/options.h header
                     45:   Choke Me.
                     46: #endif
                     47: 
                     48: /*
                     49:  *  Enumeration of each option:
                     50:  */
                     51: typedef enum {
                     52:     INDEX_OPT_IPV4            =  0,
                     53:     INDEX_OPT_IPV6            =  1,
                     54:     INDEX_OPT_NORMALVERBOSE   =  2,
                     55:     INDEX_OPT_KOD             =  3,
                     56:     INDEX_OPT_SYSLOG          =  4,
                     57:     INDEX_OPT_LOGFILE         =  5,
                     58:     INDEX_OPT_SETTOD          =  6,
                     59:     INDEX_OPT_ADJTIME         =  7,
                     60:     INDEX_OPT_BROADCAST       =  8,
                     61:     INDEX_OPT_TIMEOUT         =  9,
                     62:     INDEX_OPT_AUTHENTICATION  = 10,
                     63:     INDEX_OPT_KEYFILE         = 11,
                     64:     INDEX_OPT_VERSION         = 12,
                     65:     INDEX_OPT_HELP            = 13,
                     66:     INDEX_OPT_MORE_HELP       = 14,
                     67:     INDEX_OPT_SAVE_OPTS       = 15,
                     68:     INDEX_OPT_LOAD_OPTS       = 16
                     69: } teOptIndex;
                     70: 
                     71: #define OPTION_CT    17
                     72: #define SNTP_VERSION       "4.2.6p5"
                     73: #define SNTP_FULL_VERSION  "sntp 4.2.6p5"
                     74: 
                     75: /*
                     76:  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
                     77:  *  option name (as in the teOptIndex enumeration above).
                     78:  *  e.g. HAVE_OPT(IPV4)
                     79:  */
                     80: #define         DESC(n) (sntpOptions.pOptDesc[INDEX_OPT_## n])
                     81: #define     HAVE_OPT(n) (! UNUSED_OPT(& DESC(n)))
                     82: #define      OPT_ARG(n) (DESC(n).optArg.argString)
                     83: #define    STATE_OPT(n) (DESC(n).fOptState & OPTST_SET_MASK)
                     84: #define    COUNT_OPT(n) (DESC(n).optOccCt)
                     85: #define    ISSEL_OPT(n) (SELECTED_OPT(&DESC(n)))
                     86: #define ISUNUSED_OPT(n) (UNUSED_OPT(& DESC(n)))
                     87: #define  ENABLED_OPT(n) (! DISABLED_OPT(& DESC(n)))
                     88: #define  STACKCT_OPT(n) (((tArgList*)(DESC(n).optCookie))->useCt)
                     89: #define STACKLST_OPT(n) (((tArgList*)(DESC(n).optCookie))->apzArgs)
                     90: #define    CLEAR_OPT(n) STMTS( \
                     91:                 DESC(n).fOptState &= OPTST_PERSISTENT_MASK;   \
                     92:                 if ((DESC(n).fOptState & OPTST_INITENABLED) == 0) \
                     93:                     DESC(n).fOptState |= OPTST_DISABLED; \
                     94:                 DESC(n).optCookie = NULL )
                     95: 
                     96: /* * * * * *
                     97:  *
                     98:  *  Enumeration of sntp exit codes
                     99:  */
                    100: typedef enum {
                    101:     SNTP_EXIT_SUCCESS = 0,
                    102:     SNTP_EXIT_FAILURE = 1
                    103: } sntp_exit_code_t;
                    104: /*
                    105:  *  Make sure there are no #define name conflicts with the option names
                    106:  */
                    107: #ifndef     NO_OPTION_NAME_WARNINGS
                    108: # ifdef    IPV4
                    109: #  warning undefining IPV4 due to option name conflict
                    110: #  undef   IPV4
                    111: # endif
                    112: # ifdef    IPV6
                    113: #  warning undefining IPV6 due to option name conflict
                    114: #  undef   IPV6
                    115: # endif
                    116: # ifdef    NORMALVERBOSE
                    117: #  warning undefining NORMALVERBOSE due to option name conflict
                    118: #  undef   NORMALVERBOSE
                    119: # endif
                    120: # ifdef    KOD
                    121: #  warning undefining KOD due to option name conflict
                    122: #  undef   KOD
                    123: # endif
                    124: # ifdef    SYSLOG
                    125: #  warning undefining SYSLOG due to option name conflict
                    126: #  undef   SYSLOG
                    127: # endif
                    128: # ifdef    LOGFILE
                    129: #  warning undefining LOGFILE due to option name conflict
                    130: #  undef   LOGFILE
                    131: # endif
                    132: # ifdef    SETTOD
                    133: #  warning undefining SETTOD due to option name conflict
                    134: #  undef   SETTOD
                    135: # endif
                    136: # ifdef    ADJTIME
                    137: #  warning undefining ADJTIME due to option name conflict
                    138: #  undef   ADJTIME
                    139: # endif
                    140: # ifdef    BROADCAST
                    141: #  warning undefining BROADCAST due to option name conflict
                    142: #  undef   BROADCAST
                    143: # endif
                    144: # ifdef    TIMEOUT
                    145: #  warning undefining TIMEOUT due to option name conflict
                    146: #  undef   TIMEOUT
                    147: # endif
                    148: # ifdef    AUTHENTICATION
                    149: #  warning undefining AUTHENTICATION due to option name conflict
                    150: #  undef   AUTHENTICATION
                    151: # endif
                    152: # ifdef    KEYFILE
                    153: #  warning undefining KEYFILE due to option name conflict
                    154: #  undef   KEYFILE
                    155: # endif
                    156: #else  /* NO_OPTION_NAME_WARNINGS */
                    157: # undef IPV4
                    158: # undef IPV6
                    159: # undef NORMALVERBOSE
                    160: # undef KOD
                    161: # undef SYSLOG
                    162: # undef LOGFILE
                    163: # undef SETTOD
                    164: # undef ADJTIME
                    165: # undef BROADCAST
                    166: # undef TIMEOUT
                    167: # undef AUTHENTICATION
                    168: # undef KEYFILE
                    169: #endif  /*  NO_OPTION_NAME_WARNINGS */
                    170: 
                    171: /* * * * * *
                    172:  *
                    173:  *  Interface defines for specific options.
                    174:  */
                    175: #define VALUE_OPT_IPV4           '4'
                    176: #define VALUE_OPT_IPV6           '6'
                    177: #define VALUE_OPT_NORMALVERBOSE  'd'
                    178: #define VALUE_OPT_KOD            'K'
                    179: #define VALUE_OPT_SYSLOG         'p'
                    180: #define VALUE_OPT_LOGFILE        'l'
                    181: #define VALUE_OPT_SETTOD         's'
                    182: #define VALUE_OPT_ADJTIME        'j'
                    183: #define VALUE_OPT_BROADCAST      'b'
                    184: #define VALUE_OPT_TIMEOUT        't'
                    185: 
                    186: #define OPT_VALUE_TIMEOUT        (DESC(TIMEOUT).optArg.argInt)
                    187: #define VALUE_OPT_AUTHENTICATION 'a'
                    188: 
                    189: #define OPT_VALUE_AUTHENTICATION (DESC(AUTHENTICATION).optArg.argInt)
                    190: #define VALUE_OPT_KEYFILE        'k'
                    191: #define VALUE_OPT_HELP          '?'
                    192: #define VALUE_OPT_MORE_HELP     '!'
                    193: #define VALUE_OPT_VERSION       INDEX_OPT_VERSION
                    194: #define VALUE_OPT_SAVE_OPTS     '>'
                    195: #define VALUE_OPT_LOAD_OPTS     '<'
                    196: #define SET_OPT_SAVE_OPTS(a)   STMTS( \
                    197:         DESC(SAVE_OPTS).fOptState &= OPTST_PERSISTENT_MASK; \
                    198:         DESC(SAVE_OPTS).fOptState |= OPTST_SET; \
                    199:         DESC(SAVE_OPTS).optArg.argString = (char const*)(a) )
                    200: /*
                    201:  *  Interface defines not associated with particular options
                    202:  */
                    203: #define ERRSKIP_OPTERR  STMTS(sntpOptions.fOptSet &= ~OPTPROC_ERRSTOP)
                    204: #define ERRSTOP_OPTERR  STMTS(sntpOptions.fOptSet |= OPTPROC_ERRSTOP)
                    205: #define RESTART_OPT(n)  STMTS( \
                    206:                 sntpOptions.curOptIdx = (n); \
                    207:                 sntpOptions.pzCurOpt  = NULL)
                    208: #define START_OPT       RESTART_OPT(1)
                    209: #define USAGE(c)        (*sntpOptions.pUsageProc)(&sntpOptions, c)
                    210: /* extracted from opthead.tlib near line 451 */
                    211: 
                    212: #ifdef  __cplusplus
                    213: extern "C" {
                    214: #endif
                    215: 
                    216: /* * * * * *
                    217:  *
                    218:  *  Declare the sntp option descriptor.
                    219:  */
                    220: extern tOptions sntpOptions;
                    221: 
                    222: #if defined(ENABLE_NLS)
                    223: # ifndef _
                    224: #   include <stdio.h>
                    225: static inline char* aoGetsText(char const* pz) {
                    226:     if (pz == NULL) return NULL;
                    227:     return (char*)gettext(pz);
                    228: }
                    229: #   define _(s)  aoGetsText(s)
                    230: # endif /* _() */
                    231: 
                    232: # define OPT_NO_XLAT_CFG_NAMES  STMTS(sntpOptions.fOptSet |= \
                    233:                                     OPTPROC_NXLAT_OPT_CFG;)
                    234: # define OPT_NO_XLAT_OPT_NAMES  STMTS(sntpOptions.fOptSet |= \
                    235:                                     OPTPROC_NXLAT_OPT|OPTPROC_NXLAT_OPT_CFG;)
                    236: 
                    237: # define OPT_XLAT_CFG_NAMES     STMTS(sntpOptions.fOptSet &= \
                    238:                                   ~(OPTPROC_NXLAT_OPT|OPTPROC_NXLAT_OPT_CFG);)
                    239: # define OPT_XLAT_OPT_NAMES     STMTS(sntpOptions.fOptSet &= \
                    240:                                   ~OPTPROC_NXLAT_OPT;)
                    241: 
                    242: #else   /* ENABLE_NLS */
                    243: # define OPT_NO_XLAT_CFG_NAMES
                    244: # define OPT_NO_XLAT_OPT_NAMES
                    245: 
                    246: # define OPT_XLAT_CFG_NAMES
                    247: # define OPT_XLAT_OPT_NAMES
                    248: 
                    249: # ifndef _
                    250: #   define _(_s)  _s
                    251: # endif
                    252: #endif  /* ENABLE_NLS */
                    253: 
                    254: #ifdef  __cplusplus
                    255: }
                    256: #endif
                    257: #endif /* AUTOOPTS_SNTP_OPTS_H_GUARD */
                    258: /* sntp-opts.h ends here */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>