From: Harlan Stenn Date: Mon, 16 Mar 2015 09:17:42 +0000 (+0000) Subject: [Bug 2763] Allow different thresholds for forward and backward steps X-Git-Tag: NTP_4_3_9~2^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dd5c1908aa8b1af74442540fdc651799ce93ff18;p=thirdparty%2Fntp.git [Bug 2763] Allow different thresholds for forward and backward steps bk: 55069fb6vO961KTaK7NWbuV6c69qmA --- diff --git a/ChangeLog b/ChangeLog index c0b94ebda..04fb22a9d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,7 @@ * [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM. * [Bug 2757] Quiet compiler warnings. * [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq. +* [Bug 2763] Allow different thresholds for forward and backward steps. * [Bug 2766] ntp-keygen output files should not be world-readable. * [Bug 2767] ntp-keygen -M should symlink to ntp.keys. * [Bug 2771] nonvolatile value is documented in wrong units. diff --git a/include/ntp.h b/include/ntp.h index 38343f23a..0e3bc41f3 100644 --- a/include/ntp.h +++ b/include/ntp.h @@ -713,17 +713,19 @@ struct pkt { */ #define LOOP_DRIFTINIT 1 /* iniitialize frequency */ #define LOOP_KERN_CLEAR 2 /* set initial frequency offset */ -#define LOOP_MAX 3 /* set step offset */ -#define LOOP_PANIC 4 /* set panic offseet */ -#define LOOP_PHI 5 /* set dispersion rate */ -#define LOOP_MINSTEP 6 /* set step timeout */ -#define LOOP_MINPOLL 7 /* set min poll interval (log2 s) */ -#define LOOP_ALLAN 8 /* set minimum Allan intercept */ -#define LOOP_HUFFPUFF 9 /* set huff-n'-puff filter length */ -#define LOOP_FREQ 10 /* set initial frequency */ -#define LOOP_CODEC 11 /* set audio codec frequency */ -#define LOOP_LEAP 12 /* insert leap after second 23:59 */ -#define LOOP_TICK 13 /* sim. low precision clock */ +#define LOOP_MAX 3 /* set both step offsets */ +#define LOOP_MAX_BACK 4 /* set bacward-step offset */ +#define LOOP_MAX_FWD 5 /* set forward-step offset */ +#define LOOP_PANIC 6 /* set panic offseet */ +#define LOOP_PHI 7 /* set dispersion rate */ +#define LOOP_MINSTEP 8 /* set step timeout */ +#define LOOP_MINPOLL 9 /* set min poll interval (log2 s) */ +#define LOOP_ALLAN 10 /* set minimum Allan intercept */ +#define LOOP_HUFFPUFF 11 /* set huff-n'-puff filter length */ +#define LOOP_FREQ 12 /* set initial frequency */ +#define LOOP_CODEC 13 /* set audio codec frequency */ +#define LOOP_LEAP 14 /* insert leap after second 23:59 */ +#define LOOP_TICK 15 /* sim. low precision clock */ /* * Configuration items for the stats printer diff --git a/include/ntpd.h b/include/ntpd.h index 77fe4843a..9f07e4ef7 100644 --- a/include/ntpd.h +++ b/include/ntpd.h @@ -385,7 +385,8 @@ extern endpt * ep_list; /* linked list */ /* ntp_loopfilter.c */ extern double drift_comp; /* clock frequency (s/s) */ extern double clock_stability; /* clock stability (s/s) */ -extern double clock_max; /* max offset before step (s) */ +extern double clock_max_back; /* max backward offset before step (s) */ +extern double clock_max_fwd; /* max forward offset before step (s) */ extern double clock_panic; /* max offset before panic (s) */ extern double clock_phi; /* dispersion rate (s/s) */ extern double clock_minstep; /* step timeout (s) */ diff --git a/ntpd/invoke-ntp.conf.texi b/ntpd/invoke-ntp.conf.texi index 23569fc52..89bf81ef4 100644 --- a/ntpd/invoke-ntp.conf.texi +++ b/ntpd/invoke-ntp.conf.texi @@ -6,7 +6,7 @@ # # EDIT THIS FILE WITH CAUTION (invoke-ntp.conf.texi) # -# It has been AutoGen-ed February 4, 2015 at 02:41:59 AM by AutoGen 5.18.5pre4 +# It has been AutoGen-ed March 16, 2015 at 09:02:47 AM by AutoGen 5.18.5pre6 # From the definitions ntp.conf.def # and the template file agtexi-file.tpl @end ignore @@ -2482,7 +2482,7 @@ holds the names of all peer variables and the @code{clock_var_list} holds the names of the reference clock variables. -@item @code{tinker} @code{[@code{allan} @kbd{allan} | @code{dispersion} @kbd{dispersion} | @code{freq} @kbd{freq} | @code{huffpuff} @kbd{huffpuff} | @code{panic} @kbd{panic} | @code{step} @kbd{srep} | @code{stepout} @kbd{stepout}]} +@item @code{tinker} @code{[@code{allan} @kbd{allan} | @code{dispersion} @kbd{dispersion} | @code{freq} @kbd{freq} | @code{huffpuff} @kbd{huffpuff} | @code{panic} @kbd{panic} | @code{step} @kbd{step} | @code{stepback} @kbd{stepback} | @code{stepfwd} @kbd{stepfwd} | @code{stepout} @kbd{stepout}]} This command can be used to alter several system variables in very exceptional circumstances. It should occur in the @@ -2539,6 +2539,19 @@ adjustments will never occur. Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. +@item @code{stepback} @kbd{stepback} +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +@item @code{stepfwd} @kbd{stepfwd} +As for stepback, but for the forward direction. @item @code{stepout} @kbd{stepout} The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/keyword-gen-utd b/ntpd/keyword-gen-utd index 0485feecc..b9b59bd47 100644 --- a/ntpd/keyword-gen-utd +++ b/ntpd/keyword-gen-utd @@ -1 +1 @@ - * Generated 2015-01-03 23:51:10 UTC diff_ignore_line + * Generated 2015-03-16 09:05:44 UTC diff_ignore_line diff --git a/ntpd/keyword-gen.c b/ntpd/keyword-gen.c index bb593aba2..5872e2a5c 100644 --- a/ntpd/keyword-gen.c +++ b/ntpd/keyword-gen.c @@ -206,6 +206,8 @@ struct key_tok ntp_keywords[] = { { "filenum", T_Filenum, FOLLBY_TOKEN }, /* tinker_option */ { "step", T_Step, FOLLBY_TOKEN }, +{ "stepback", T_Stepback, FOLLBY_TOKEN }, +{ "stepfwd", T_Stepfwd, FOLLBY_TOKEN }, { "panic", T_Panic, FOLLBY_TOKEN }, { "dispersion", T_Dispersion, FOLLBY_TOKEN }, { "stepout", T_Stepout, FOLLBY_TOKEN }, diff --git a/ntpd/ntp.conf.5man b/ntpd/ntp.conf.5man index 1e9ba668f..7d842c530 100644 --- a/ntpd/ntp.conf.5man +++ b/ntpd/ntp.conf.5man @@ -10,11 +10,11 @@ .ds B-Font B .ds I-Font I .ds R-Font R -.TH ntp.conf 5man "04 Feb 2015" "4.2.8p1" "File Formats" +.TH ntp.conf 5man "16 Mar 2015" "4.2.8p1" "File Formats" .\" -.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-sPaOCn/ag-RPaGBn) +.\" EDIT THIS FILE WITH CAUTION (in-mem file) .\" -.\" It has been AutoGen-ed February 4, 2015 at 02:41:46 AM by AutoGen 5.18.5pre4 +.\" It has been AutoGen-ed March 16, 2015 at 09:02:50 AM by AutoGen 5.18.5pre6 .\" From the definitions ntp.conf.def .\" and the template file agman-cmd.tpl .SH NAME @@ -2786,7 +2786,7 @@ the names of all peer variables and the \fIclock_var_list\f[] holds the names of the reference clock variables. .TP 7 -.NOP \f\*[B-Font]tinker\f[] [\f\*[B-Font]allan\f[] \f\*[I-Font]allan\f[] | \f\*[B-Font]dispersion\f[] \f\*[I-Font]dispersion\f[] | \f\*[B-Font]freq\f[] \f\*[I-Font]freq\f[] | \f\*[B-Font]huffpuff\f[] \f\*[I-Font]huffpuff\f[] | \f\*[B-Font]panic\f[] \f\*[I-Font]panic\f[] | \f\*[B-Font]step\f[] \f\*[I-Font]srep\f[] | \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[]] +.NOP \f\*[B-Font]tinker\f[] [\f\*[B-Font]allan\f[] \f\*[I-Font]allan\f[] | \f\*[B-Font]dispersion\f[] \f\*[I-Font]dispersion\f[] | \f\*[B-Font]freq\f[] \f\*[I-Font]freq\f[] | \f\*[B-Font]huffpuff\f[] \f\*[I-Font]huffpuff\f[] | \f\*[B-Font]panic\f[] \f\*[I-Font]panic\f[] | \f\*[B-Font]step\f[] \f\*[I-Font]step\f[] | \f\*[B-Font]stepback\f[] \f\*[I-Font]stepback\f[] | \f\*[B-Font]stepfwd\f[] \f\*[I-Font]stepfwd\f[] | \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[]] This command can be used to alter several system variables in very exceptional circumstances. It should occur in the @@ -2852,6 +2852,21 @@ Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. .TP 7 +.NOP \f\*[B-Font]stepback\f[] \f\*[I-Font]stepback\f[] +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +.TP 7 +.NOP \f\*[B-Font]stepfwd\f[] \f\*[I-Font]stepfwd\f[] +As for stepback, but for the forward direction. +.TP 7 .NOP \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[] The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/ntp.conf.5mdoc b/ntpd/ntp.conf.5mdoc index 069a543cf..8e95c6f83 100644 --- a/ntpd/ntp.conf.5mdoc +++ b/ntpd/ntp.conf.5mdoc @@ -1,9 +1,9 @@ -.Dd February 4 2015 +.Dd March 16 2015 .Dt NTP_CONF 5mdoc File Formats .Os .\" EDIT THIS FILE WITH CAUTION (ntp.mdoc) .\" -.\" It has been AutoGen-ed February 4, 2015 at 02:42:07 AM by AutoGen 5.18.5pre4 +.\" It has been AutoGen-ed March 16, 2015 at 09:02:31 AM by AutoGen 5.18.5pre6 .\" From the definitions ntp.conf.def .\" and the template file agmdoc-cmd.tpl .Sh NAME @@ -2618,7 +2618,9 @@ holds the names of the reference clock variables. .Cm freq Ar freq | .Cm huffpuff Ar huffpuff | .Cm panic Ar panic | -.Cm step Ar srep | +.Cm step Ar step | +.Cm stepback Ar stepback | +.Cm stepfwd Ar stepfwd | .Cm stepout Ar stepout .Oc .Xc @@ -2678,6 +2680,19 @@ adjustments will never occur. Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. +.It Cm stepback Ar stepback +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +.It Cm stepfwd Ar stepfwd +As for stepback, but for the forward direction. .It Cm stepout Ar stepout The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/ntp.conf.def b/ntpd/ntp.conf.def index 6f0bae12b..e5c44b756 100644 --- a/ntpd/ntp.conf.def +++ b/ntpd/ntp.conf.def @@ -2620,7 +2620,9 @@ holds the names of the reference clock variables. .Cm freq Ar freq | .Cm huffpuff Ar huffpuff | .Cm panic Ar panic | -.Cm step Ar srep | +.Cm step Ar step | +.Cm stepback Ar stepback | +.Cm stepfwd Ar stepfwd | .Cm stepout Ar stepout .Oc .Xc @@ -2680,6 +2682,19 @@ adjustments will never occur. Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. +.It Cm stepback Ar stepback +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +.It Cm stepfwd Ar stepfwd +As for stepback, but for the forward direction. .It Cm stepout Ar stepout The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/ntp.conf.man.in b/ntpd/ntp.conf.man.in index ec2c866c7..21035bb50 100644 --- a/ntpd/ntp.conf.man.in +++ b/ntpd/ntp.conf.man.in @@ -10,11 +10,11 @@ .ds B-Font B .ds I-Font I .ds R-Font R -.TH ntp.conf 5 "04 Feb 2015" "4.2.8p1" "File Formats" +.TH ntp.conf 5 "16 Mar 2015" "4.2.8p1" "File Formats" .\" -.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-sPaOCn/ag-RPaGBn) +.\" EDIT THIS FILE WITH CAUTION (in-mem file) .\" -.\" It has been AutoGen-ed February 4, 2015 at 02:41:46 AM by AutoGen 5.18.5pre4 +.\" It has been AutoGen-ed March 16, 2015 at 09:02:50 AM by AutoGen 5.18.5pre6 .\" From the definitions ntp.conf.def .\" and the template file agman-cmd.tpl .SH NAME @@ -2786,7 +2786,7 @@ the names of all peer variables and the \fIclock_var_list\f[] holds the names of the reference clock variables. .TP 7 -.NOP \f\*[B-Font]tinker\f[] [\f\*[B-Font]allan\f[] \f\*[I-Font]allan\f[] | \f\*[B-Font]dispersion\f[] \f\*[I-Font]dispersion\f[] | \f\*[B-Font]freq\f[] \f\*[I-Font]freq\f[] | \f\*[B-Font]huffpuff\f[] \f\*[I-Font]huffpuff\f[] | \f\*[B-Font]panic\f[] \f\*[I-Font]panic\f[] | \f\*[B-Font]step\f[] \f\*[I-Font]srep\f[] | \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[]] +.NOP \f\*[B-Font]tinker\f[] [\f\*[B-Font]allan\f[] \f\*[I-Font]allan\f[] | \f\*[B-Font]dispersion\f[] \f\*[I-Font]dispersion\f[] | \f\*[B-Font]freq\f[] \f\*[I-Font]freq\f[] | \f\*[B-Font]huffpuff\f[] \f\*[I-Font]huffpuff\f[] | \f\*[B-Font]panic\f[] \f\*[I-Font]panic\f[] | \f\*[B-Font]step\f[] \f\*[I-Font]step\f[] | \f\*[B-Font]stepback\f[] \f\*[I-Font]stepback\f[] | \f\*[B-Font]stepfwd\f[] \f\*[I-Font]stepfwd\f[] | \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[]] This command can be used to alter several system variables in very exceptional circumstances. It should occur in the @@ -2852,6 +2852,21 @@ Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. .TP 7 +.NOP \f\*[B-Font]stepback\f[] \f\*[I-Font]stepback\f[] +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +.TP 7 +.NOP \f\*[B-Font]stepfwd\f[] \f\*[I-Font]stepfwd\f[] +As for stepback, but for the forward direction. +.TP 7 .NOP \f\*[B-Font]stepout\f[] \f\*[I-Font]stepout\f[] The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/ntp.conf.mdoc.in b/ntpd/ntp.conf.mdoc.in index ec45a749c..026731a09 100644 --- a/ntpd/ntp.conf.mdoc.in +++ b/ntpd/ntp.conf.mdoc.in @@ -1,9 +1,9 @@ -.Dd February 4 2015 +.Dd March 16 2015 .Dt NTP_CONF 5 File Formats .Os .\" EDIT THIS FILE WITH CAUTION (ntp.mdoc) .\" -.\" It has been AutoGen-ed February 4, 2015 at 02:42:07 AM by AutoGen 5.18.5pre4 +.\" It has been AutoGen-ed March 16, 2015 at 09:02:31 AM by AutoGen 5.18.5pre6 .\" From the definitions ntp.conf.def .\" and the template file agmdoc-cmd.tpl .Sh NAME @@ -2618,7 +2618,9 @@ holds the names of the reference clock variables. .Cm freq Ar freq | .Cm huffpuff Ar huffpuff | .Cm panic Ar panic | -.Cm step Ar srep | +.Cm step Ar step | +.Cm stepback Ar stepback | +.Cm stepfwd Ar stepfwd | .Cm stepout Ar stepout .Oc .Xc @@ -2678,6 +2680,19 @@ adjustments will never occur. Note: The kernel time discipline is disabled if the step threshold is set to zero or greater than the default. +.It Cm stepback Ar stepback +The argument is the step threshold for the backward direction, +which by default is 0.128 s. +It can +be set to any positive number in seconds. +If both the forward and backward step thresholds are set to zero, step +adjustments will never occur. +Note: The kernel time discipline is +disabled if +each direction of step threshold are either +set to zero or greater than .5 second. +.It Cm stepfwd Ar stepfwd +As for stepback, but for the forward direction. .It Cm stepout Ar stepout The argument is the stepout timeout, which by default is 900 s. It can diff --git a/ntpd/ntp_config.c b/ntpd/ntp_config.c index b9f0e24e3..a224579d1 100644 --- a/ntpd/ntp_config.c +++ b/ntpd/ntp_config.c @@ -2705,6 +2705,14 @@ config_tinker( item = LOOP_MAX; break; + case T_Stepback: + item = LOOP_MAX_BACK; + break; + + case T_Stepfwd: + item = LOOP_MAX_FWD; + break; + case T_Stepout: item = LOOP_MINSTEP; break; diff --git a/ntpd/ntp_keyword.h b/ntpd/ntp_keyword.h index 131cf0fab..723793636 100644 --- a/ntpd/ntp_keyword.h +++ b/ntpd/ntp_keyword.h @@ -2,7 +2,7 @@ * ntp_keyword.h * * NOTE: edit this file with caution, it is generated by keyword-gen.c - * Generated 2015-01-03 23:51:10 UTC diff_ignore_line + * Generated 2015-03-16 09:05:44 UTC diff_ignore_line * */ #include "ntp_scanner.h" @@ -10,7 +10,7 @@ #define LOWEST_KEYWORD_ID 258 -const char * const keyword_text[187] = { +const char * const keyword_text[189] = { /* 0 258 T_Abbrev */ "abbrev", /* 1 259 T_Age */ "age", /* 2 260 T_All */ "all", @@ -160,49 +160,51 @@ const char * const keyword_text[187] = { /* 146 404 T_Stats */ "stats", /* 147 405 T_Statsdir */ "statsdir", /* 148 406 T_Step */ "step", - /* 149 407 T_Stepout */ "stepout", - /* 150 408 T_Stratum */ "stratum", - /* 151 409 T_String */ NULL, - /* 152 410 T_Sys */ "sys", - /* 153 411 T_Sysstats */ "sysstats", - /* 154 412 T_Tick */ "tick", - /* 155 413 T_Time1 */ "time1", - /* 156 414 T_Time2 */ "time2", - /* 157 415 T_Timer */ "timer", - /* 158 416 T_Timingstats */ "timingstats", - /* 159 417 T_Tinker */ "tinker", - /* 160 418 T_Tos */ "tos", - /* 161 419 T_Trap */ "trap", - /* 162 420 T_True */ "true", - /* 163 421 T_Trustedkey */ "trustedkey", - /* 164 422 T_Ttl */ "ttl", - /* 165 423 T_Type */ "type", - /* 166 424 T_U_int */ NULL, - /* 167 425 T_Unconfig */ "unconfig", - /* 168 426 T_Unpeer */ "unpeer", - /* 169 427 T_Version */ "version", - /* 170 428 T_WanderThreshold */ NULL, - /* 171 429 T_Week */ "week", - /* 172 430 T_Wildcard */ "wildcard", - /* 173 431 T_Xleave */ "xleave", - /* 174 432 T_Year */ "year", - /* 175 433 T_Flag */ NULL, - /* 176 434 T_EOC */ NULL, - /* 177 435 T_Simulate */ "simulate", - /* 178 436 T_Beep_Delay */ "beep_delay", - /* 179 437 T_Sim_Duration */ "simulation_duration", - /* 180 438 T_Server_Offset */ "server_offset", - /* 181 439 T_Duration */ "duration", - /* 182 440 T_Freq_Offset */ "freq_offset", - /* 183 441 T_Wander */ "wander", - /* 184 442 T_Jitter */ "jitter", - /* 185 443 T_Prop_Delay */ "prop_delay", - /* 186 444 T_Proc_Delay */ "proc_delay" + /* 149 407 T_Stepback */ "stepback", + /* 150 408 T_Stepfwd */ "stepfwd", + /* 151 409 T_Stepout */ "stepout", + /* 152 410 T_Stratum */ "stratum", + /* 153 411 T_String */ NULL, + /* 154 412 T_Sys */ "sys", + /* 155 413 T_Sysstats */ "sysstats", + /* 156 414 T_Tick */ "tick", + /* 157 415 T_Time1 */ "time1", + /* 158 416 T_Time2 */ "time2", + /* 159 417 T_Timer */ "timer", + /* 160 418 T_Timingstats */ "timingstats", + /* 161 419 T_Tinker */ "tinker", + /* 162 420 T_Tos */ "tos", + /* 163 421 T_Trap */ "trap", + /* 164 422 T_True */ "true", + /* 165 423 T_Trustedkey */ "trustedkey", + /* 166 424 T_Ttl */ "ttl", + /* 167 425 T_Type */ "type", + /* 168 426 T_U_int */ NULL, + /* 169 427 T_Unconfig */ "unconfig", + /* 170 428 T_Unpeer */ "unpeer", + /* 171 429 T_Version */ "version", + /* 172 430 T_WanderThreshold */ NULL, + /* 173 431 T_Week */ "week", + /* 174 432 T_Wildcard */ "wildcard", + /* 175 433 T_Xleave */ "xleave", + /* 176 434 T_Year */ "year", + /* 177 435 T_Flag */ NULL, + /* 178 436 T_EOC */ NULL, + /* 179 437 T_Simulate */ "simulate", + /* 180 438 T_Beep_Delay */ "beep_delay", + /* 181 439 T_Sim_Duration */ "simulation_duration", + /* 182 440 T_Server_Offset */ "server_offset", + /* 183 441 T_Duration */ "duration", + /* 184 442 T_Freq_Offset */ "freq_offset", + /* 185 443 T_Wander */ "wander", + /* 186 444 T_Jitter */ "jitter", + /* 187 445 T_Prop_Delay */ "prop_delay", + /* 188 446 T_Proc_Delay */ "proc_delay" }; -#define SCANNER_INIT_S 830 +#define SCANNER_INIT_S 837 -const scan_state sst[833] = { +const scan_state sst[840] = { /*SS_T( ch, f-by, match, other ), */ 0, /* 0 */ S_ST( '-', 3, 322, 0 ), /* 1 */ @@ -248,7 +250,7 @@ const scan_state sst[833] = { S_ST( 'd', 3, 42, 0 ), /* 41 beep_ */ S_ST( 'e', 3, 43, 0 ), /* 42 beep_d */ S_ST( 'l', 3, 44, 0 ), /* 43 beep_de */ - S_ST( 'a', 3, 436, 0 ), /* 44 beep_del */ + S_ST( 'a', 3, 438, 0 ), /* 44 beep_del */ S_ST( 'r', 3, 46, 34 ), /* 45 b */ S_ST( 'o', 3, 47, 0 ), /* 46 br */ S_ST( 'a', 3, 48, 0 ), /* 47 bro */ @@ -346,7 +348,7 @@ const scan_state sst[833] = { S_ST( 'a', 3, 140, 0 ), /* 139 dur */ S_ST( 't', 3, 141, 0 ), /* 140 dura */ S_ST( 'i', 3, 142, 0 ), /* 141 durat */ - S_ST( 'o', 3, 439, 0 ), /* 142 durati */ + S_ST( 'o', 3, 441, 0 ), /* 142 durati */ S_ST( 'e', 3, 144, 105 ), /* 143 */ S_ST( 'n', 3, 292, 0 ), /* 144 e */ S_ST( 'a', 3, 146, 0 ), /* 145 en */ @@ -372,7 +374,7 @@ const scan_state sst[833] = { S_ST( 'f', 3, 166, 0 ), /* 165 freq_o */ S_ST( 'f', 3, 167, 0 ), /* 166 freq_of */ S_ST( 's', 3, 168, 0 ), /* 167 freq_off */ - S_ST( 'e', 3, 440, 0 ), /* 168 freq_offs */ + S_ST( 'e', 3, 442, 0 ), /* 168 freq_offs */ S_ST( 'u', 3, 170, 161 ), /* 169 f */ S_ST( 'd', 3, 171, 0 ), /* 170 fu */ S_ST( 'g', 3, 304, 0 ), /* 171 fud */ @@ -432,7 +434,7 @@ const scan_state sst[833] = { S_ST( 'i', 3, 226, 0 ), /* 225 j */ S_ST( 't', 3, 227, 0 ), /* 226 ji */ S_ST( 't', 3, 228, 0 ), /* 227 jit */ - S_ST( 'e', 3, 442, 0 ), /* 228 jitt */ + S_ST( 'e', 3, 444, 0 ), /* 228 jitt */ S_ST( 'k', 3, 236, 224 ), /* 229 */ S_ST( 'e', 3, 324, 0 ), /* 230 k */ S_ST( 'r', 3, 232, 0 ), /* 231 ke */ @@ -457,7 +459,7 @@ const scan_state sst[833] = { S_ST( 's', 3, 251, 249 ), /* 250 li */ S_ST( 't', 3, 252, 0 ), /* 251 lis */ S_ST( 'e', 3, 332, 0 ), /* 252 list */ - S_ST( 'o', 3, 447, 244 ), /* 253 l */ + S_ST( 'o', 3, 449, 244 ), /* 253 l */ S_ST( 'g', 3, 315, 0 ), /* 254 lo */ S_ST( 'c', 3, 256, 0 ), /* 255 log */ S_ST( 'o', 3, 257, 0 ), /* 256 logc */ @@ -521,7 +523,7 @@ const scan_state sst[833] = { S_ST( 'e', 1, 0, 0 ), /* 314 T_Includefile */ S_ST( 'f', 3, 317, 255 ), /* 315 log */ S_ST( 'e', 0, 0, 0 ), /* 316 T_Interface */ - S_ST( 'i', 3, 409, 0 ), /* 317 logf */ + S_ST( 'i', 3, 411, 0 ), /* 317 logf */ S_ST( 'o', 0, 0, 193 ), /* 318 T_Io */ S_ST( '4', 0, 0, 0 ), /* 319 T_Ipv4 */ S_ST( '4', 0, 0, 0 ), /* 320 T_Ipv4_flag */ @@ -551,7 +553,7 @@ const scan_state sst[833] = { S_ST( 'm', 0, 0, 0 ), /* 344 T_Maxmem */ S_ST( 'l', 0, 0, 0 ), /* 345 T_Maxpoll */ S_ST( 's', 0, 0, 0 ), /* 346 T_Mdnstries */ - S_ST( 'm', 0, 500, 0 ), /* 347 T_Mem */ + S_ST( 'm', 0, 502, 0 ), /* 347 T_Mem */ S_ST( 'k', 0, 0, 0 ), /* 348 T_Memlock */ S_ST( 'k', 0, 0, 0 ), /* 349 T_Minclock */ S_ST( 'h', 0, 0, 0 ), /* 350 T_Mindepth */ @@ -577,23 +579,23 @@ const scan_state sst[833] = { S_ST( 'e', 0, 0, 0 ), /* 370 T_Noserve */ S_ST( 'p', 0, 0, 0 ), /* 371 T_Notrap */ S_ST( 't', 0, 0, 0 ), /* 372 T_Notrust */ - S_ST( 'p', 0, 596, 0 ), /* 373 T_Ntp */ + S_ST( 'p', 0, 598, 0 ), /* 373 T_Ntp */ S_ST( 't', 0, 0, 0 ), /* 374 T_Ntpport */ S_ST( 't', 1, 0, 0 ), /* 375 T_NtpSignDsocket */ - S_ST( 'n', 0, 611, 0 ), /* 376 T_Orphan */ + S_ST( 'n', 0, 613, 0 ), /* 376 T_Orphan */ S_ST( 't', 0, 0, 0 ), /* 377 T_Orphanwait */ S_ST( 'c', 0, 0, 0 ), /* 378 T_Panic */ - S_ST( 'r', 1, 620, 0 ), /* 379 T_Peer */ + S_ST( 'r', 1, 622, 0 ), /* 379 T_Peer */ S_ST( 's', 0, 0, 0 ), /* 380 T_Peerstats */ S_ST( 'e', 2, 0, 0 ), /* 381 T_Phone */ - S_ST( 'd', 0, 628, 0 ), /* 382 T_Pid */ + S_ST( 'd', 0, 630, 0 ), /* 382 T_Pid */ S_ST( 'e', 1, 0, 0 ), /* 383 T_Pidfile */ S_ST( 'l', 1, 0, 0 ), /* 384 T_Pool */ S_ST( 't', 0, 0, 0 ), /* 385 T_Port */ S_ST( 't', 0, 0, 0 ), /* 386 T_Preempt */ S_ST( 'r', 0, 0, 0 ), /* 387 T_Prefer */ S_ST( 's', 0, 0, 0 ), /* 388 T_Protostats */ - S_ST( 'w', 1, 0, 634 ), /* 389 T_Pw */ + S_ST( 'w', 1, 0, 636 ), /* 389 T_Pw */ S_ST( 'e', 1, 0, 0 ), /* 390 T_Randfile */ S_ST( 's', 0, 0, 0 ), /* 391 T_Rawstats */ S_ST( 'd', 1, 0, 0 ), /* 392 T_Refid */ @@ -603,439 +605,446 @@ const scan_state sst[833] = { S_ST( 'e', 0, 0, 0 ), /* 396 T_Revoke */ S_ST( 't', 0, 0, 0 ), /* 397 T_Rlimit */ S_ST( 'r', 1, 0, 0 ), /* 398 T_Saveconfigdir */ - S_ST( 'r', 1, 711, 0 ), /* 399 T_Server */ + S_ST( 'r', 1, 713, 0 ), /* 399 T_Server */ S_ST( 'r', 1, 0, 0 ), /* 400 T_Setvar */ S_ST( 'e', 0, 0, 0 ), /* 401 T_Source */ S_ST( 'e', 0, 0, 0 ), /* 402 T_Stacksize */ S_ST( 's', 0, 0, 0 ), /* 403 T_Statistics */ - S_ST( 's', 0, 754, 749 ), /* 404 T_Stats */ + S_ST( 's', 0, 756, 751 ), /* 404 T_Stats */ S_ST( 'r', 1, 0, 0 ), /* 405 T_Statsdir */ - S_ST( 'p', 0, 757, 0 ), /* 406 T_Step */ - S_ST( 't', 0, 0, 0 ), /* 407 T_Stepout */ - S_ST( 'm', 0, 0, 0 ), /* 408 T_Stratum */ - S_ST( 'l', 3, 334, 0 ), /* 409 logfi */ - S_ST( 's', 0, 764, 0 ), /* 410 T_Sys */ - S_ST( 's', 0, 0, 0 ), /* 411 T_Sysstats */ - S_ST( 'k', 0, 0, 0 ), /* 412 T_Tick */ - S_ST( '1', 0, 0, 0 ), /* 413 T_Time1 */ - S_ST( '2', 0, 0, 413 ), /* 414 T_Time2 */ - S_ST( 'r', 0, 0, 414 ), /* 415 T_Timer */ - S_ST( 's', 0, 0, 0 ), /* 416 T_Timingstats */ - S_ST( 'r', 0, 0, 0 ), /* 417 T_Tinker */ - S_ST( 's', 0, 0, 0 ), /* 418 T_Tos */ - S_ST( 'p', 1, 0, 0 ), /* 419 T_Trap */ - S_ST( 'e', 0, 0, 0 ), /* 420 T_True */ - S_ST( 'y', 0, 0, 0 ), /* 421 T_Trustedkey */ - S_ST( 'l', 0, 0, 0 ), /* 422 T_Ttl */ - S_ST( 'e', 0, 0, 0 ), /* 423 T_Type */ - S_ST( 'o', 3, 428, 254 ), /* 424 lo */ - S_ST( 'g', 1, 0, 0 ), /* 425 T_Unconfig */ - S_ST( 'r', 1, 0, 0 ), /* 426 T_Unpeer */ - S_ST( 'n', 0, 0, 0 ), /* 427 T_Version */ - S_ST( 'p', 3, 433, 0 ), /* 428 loo */ - S_ST( 'k', 0, 0, 0 ), /* 429 T_Week */ - S_ST( 'd', 0, 0, 0 ), /* 430 T_Wildcard */ - S_ST( 'e', 0, 0, 0 ), /* 431 T_Xleave */ - S_ST( 'r', 0, 0, 0 ), /* 432 T_Year */ - S_ST( 's', 3, 434, 0 ), /* 433 loop */ - S_ST( 't', 3, 445, 0 ), /* 434 loops */ - S_ST( 'e', 0, 0, 0 ), /* 435 T_Simulate */ - S_ST( 'y', 0, 0, 0 ), /* 436 T_Beep_Delay */ - S_ST( 'n', 0, 0, 0 ), /* 437 T_Sim_Duration */ - S_ST( 't', 0, 0, 0 ), /* 438 T_Server_Offset */ - S_ST( 'n', 0, 0, 0 ), /* 439 T_Duration */ - S_ST( 't', 0, 0, 0 ), /* 440 T_Freq_Offset */ - S_ST( 'r', 0, 0, 0 ), /* 441 T_Wander */ - S_ST( 'r', 0, 0, 0 ), /* 442 T_Jitter */ - S_ST( 'y', 0, 0, 0 ), /* 443 T_Prop_Delay */ - S_ST( 'y', 0, 0, 0 ), /* 444 T_Proc_Delay */ - S_ST( 'a', 3, 446, 0 ), /* 445 loopst */ - S_ST( 't', 3, 335, 0 ), /* 446 loopsta */ - S_ST( 'w', 3, 448, 424 ), /* 447 lo */ - S_ST( 'p', 3, 449, 0 ), /* 448 low */ - S_ST( 'r', 3, 450, 0 ), /* 449 lowp */ - S_ST( 'i', 3, 451, 0 ), /* 450 lowpr */ - S_ST( 'o', 3, 452, 0 ), /* 451 lowpri */ - S_ST( 't', 3, 453, 0 ), /* 452 lowprio */ - S_ST( 'r', 3, 454, 0 ), /* 453 lowpriot */ - S_ST( 'a', 3, 336, 0 ), /* 454 lowpriotr */ - S_ST( 'm', 3, 536, 237 ), /* 455 */ - S_ST( 'a', 3, 474, 0 ), /* 456 m */ - S_ST( 'n', 3, 458, 0 ), /* 457 ma */ - S_ST( 'y', 3, 459, 0 ), /* 458 man */ - S_ST( 'c', 3, 460, 0 ), /* 459 many */ - S_ST( 'a', 3, 461, 0 ), /* 460 manyc */ - S_ST( 's', 3, 462, 0 ), /* 461 manyca */ - S_ST( 't', 3, 468, 0 ), /* 462 manycas */ - S_ST( 'c', 3, 464, 0 ), /* 463 manycast */ - S_ST( 'l', 3, 465, 0 ), /* 464 manycastc */ - S_ST( 'i', 3, 466, 0 ), /* 465 manycastcl */ - S_ST( 'e', 3, 467, 0 ), /* 466 manycastcli */ - S_ST( 'n', 3, 337, 0 ), /* 467 manycastclie */ - S_ST( 's', 3, 469, 463 ), /* 468 manycast */ - S_ST( 'e', 3, 470, 0 ), /* 469 manycasts */ - S_ST( 'r', 3, 471, 0 ), /* 470 manycastse */ - S_ST( 'v', 3, 472, 0 ), /* 471 manycastser */ - S_ST( 'e', 3, 338, 0 ), /* 472 manycastserv */ - S_ST( 's', 3, 339, 457 ), /* 473 ma */ - S_ST( 'x', 3, 489, 473 ), /* 474 ma */ - S_ST( 'a', 3, 476, 0 ), /* 475 max */ - S_ST( 'g', 3, 340, 0 ), /* 476 maxa */ - S_ST( 'c', 3, 478, 475 ), /* 477 max */ - S_ST( 'l', 3, 479, 0 ), /* 478 maxc */ - S_ST( 'o', 3, 480, 0 ), /* 479 maxcl */ - S_ST( 'c', 3, 341, 0 ), /* 480 maxclo */ - S_ST( 'd', 3, 485, 477 ), /* 481 max */ - S_ST( 'e', 3, 483, 0 ), /* 482 maxd */ - S_ST( 'p', 3, 484, 0 ), /* 483 maxde */ - S_ST( 't', 3, 342, 0 ), /* 484 maxdep */ - S_ST( 'i', 3, 486, 482 ), /* 485 maxd */ - S_ST( 's', 3, 343, 0 ), /* 486 maxdi */ - S_ST( 'm', 3, 488, 481 ), /* 487 max */ - S_ST( 'e', 3, 344, 0 ), /* 488 maxm */ - S_ST( 'p', 3, 490, 487 ), /* 489 max */ - S_ST( 'o', 3, 491, 0 ), /* 490 maxp */ - S_ST( 'l', 3, 345, 0 ), /* 491 maxpo */ - S_ST( 'd', 3, 493, 456 ), /* 492 m */ - S_ST( 'n', 3, 494, 0 ), /* 493 md */ - S_ST( 's', 3, 495, 0 ), /* 494 mdn */ - S_ST( 't', 3, 496, 0 ), /* 495 mdns */ - S_ST( 'r', 3, 497, 0 ), /* 496 mdnst */ - S_ST( 'i', 3, 498, 0 ), /* 497 mdnstr */ - S_ST( 'e', 3, 346, 0 ), /* 498 mdnstri */ - S_ST( 'e', 3, 347, 492 ), /* 499 m */ - S_ST( 'l', 3, 501, 0 ), /* 500 mem */ - S_ST( 'o', 3, 502, 0 ), /* 501 meml */ - S_ST( 'c', 3, 348, 0 ), /* 502 memlo */ - S_ST( 'i', 3, 504, 499 ), /* 503 m */ - S_ST( 'n', 3, 521, 0 ), /* 504 mi */ - S_ST( 'c', 3, 506, 0 ), /* 505 min */ - S_ST( 'l', 3, 507, 0 ), /* 506 minc */ - S_ST( 'o', 3, 508, 0 ), /* 507 mincl */ - S_ST( 'c', 3, 349, 0 ), /* 508 minclo */ - S_ST( 'd', 3, 513, 505 ), /* 509 min */ - S_ST( 'e', 3, 511, 0 ), /* 510 mind */ - S_ST( 'p', 3, 512, 0 ), /* 511 minde */ - S_ST( 't', 3, 350, 0 ), /* 512 mindep */ - S_ST( 'i', 3, 514, 510 ), /* 513 mind */ - S_ST( 's', 3, 351, 0 ), /* 514 mindi */ - S_ST( 'i', 3, 516, 509 ), /* 515 min */ - S_ST( 'm', 3, 517, 0 ), /* 516 mini */ - S_ST( 'u', 3, 352, 0 ), /* 517 minim */ - S_ST( 'p', 3, 519, 515 ), /* 518 min */ - S_ST( 'o', 3, 520, 0 ), /* 519 minp */ - S_ST( 'l', 3, 353, 0 ), /* 520 minpo */ - S_ST( 's', 3, 522, 518 ), /* 521 min */ - S_ST( 'a', 3, 523, 0 ), /* 522 mins */ - S_ST( 'n', 3, 354, 0 ), /* 523 minsa */ - S_ST( 'o', 3, 526, 503 ), /* 524 m */ - S_ST( 'd', 3, 355, 0 ), /* 525 mo */ - S_ST( 'n', 3, 530, 525 ), /* 526 mo */ - S_ST( 'i', 3, 528, 0 ), /* 527 mon */ - S_ST( 't', 3, 529, 0 ), /* 528 moni */ - S_ST( 'o', 3, 357, 0 ), /* 529 monit */ - S_ST( 't', 3, 358, 527 ), /* 530 mon */ - S_ST( 'r', 3, 359, 524 ), /* 531 m */ - S_ST( 's', 3, 533, 531 ), /* 532 m */ - S_ST( 's', 3, 534, 0 ), /* 533 ms */ - S_ST( 'n', 3, 535, 0 ), /* 534 mss */ - S_ST( 't', 3, 328, 0 ), /* 535 mssn */ - S_ST( 'u', 3, 537, 532 ), /* 536 m */ - S_ST( 'l', 3, 538, 0 ), /* 537 mu */ - S_ST( 't', 3, 539, 0 ), /* 538 mul */ - S_ST( 'i', 3, 540, 0 ), /* 539 mult */ - S_ST( 'c', 3, 541, 0 ), /* 540 multi */ - S_ST( 'a', 3, 542, 0 ), /* 541 multic */ - S_ST( 's', 3, 543, 0 ), /* 542 multica */ - S_ST( 't', 3, 544, 0 ), /* 543 multicas */ - S_ST( 'c', 3, 545, 0 ), /* 544 multicast */ - S_ST( 'l', 3, 546, 0 ), /* 545 multicastc */ - S_ST( 'i', 3, 547, 0 ), /* 546 multicastcl */ - S_ST( 'e', 3, 548, 0 ), /* 547 multicastcli */ - S_ST( 'n', 3, 360, 0 ), /* 548 multicastclie */ - S_ST( 'n', 3, 592, 455 ), /* 549 */ - S_ST( 'i', 3, 361, 0 ), /* 550 n */ - S_ST( 'o', 3, 587, 550 ), /* 551 n */ - S_ST( 'l', 3, 553, 0 ), /* 552 no */ - S_ST( 'i', 3, 554, 0 ), /* 553 nol */ - S_ST( 'n', 3, 362, 0 ), /* 554 noli */ - S_ST( 'm', 3, 560, 552 ), /* 555 no */ - S_ST( 'o', 3, 557, 0 ), /* 556 nom */ - S_ST( 'd', 3, 558, 0 ), /* 557 nomo */ - S_ST( 'i', 3, 559, 0 ), /* 558 nomod */ - S_ST( 'f', 3, 363, 0 ), /* 559 nomodi */ - S_ST( 'r', 3, 561, 556 ), /* 560 nom */ - S_ST( 'u', 3, 562, 0 ), /* 561 nomr */ - S_ST( 'l', 3, 563, 0 ), /* 562 nomru */ - S_ST( 'i', 3, 564, 0 ), /* 563 nomrul */ - S_ST( 's', 3, 364, 0 ), /* 564 nomruli */ - S_ST( 'n', 3, 566, 555 ), /* 565 no */ - S_ST( 'v', 3, 567, 365 ), /* 566 non */ - S_ST( 'o', 3, 568, 0 ), /* 567 nonv */ - S_ST( 'l', 3, 569, 0 ), /* 568 nonvo */ - S_ST( 'a', 3, 570, 0 ), /* 569 nonvol */ - S_ST( 't', 3, 571, 0 ), /* 570 nonvola */ - S_ST( 'i', 3, 572, 0 ), /* 571 nonvolat */ - S_ST( 'l', 3, 366, 0 ), /* 572 nonvolati */ - S_ST( 'p', 3, 574, 565 ), /* 573 no */ - S_ST( 'e', 3, 575, 0 ), /* 574 nop */ - S_ST( 'e', 3, 367, 0 ), /* 575 nope */ - S_ST( 'q', 3, 577, 573 ), /* 576 no */ - S_ST( 'u', 3, 578, 0 ), /* 577 noq */ - S_ST( 'e', 3, 579, 0 ), /* 578 noqu */ - S_ST( 'r', 3, 368, 0 ), /* 579 noque */ - S_ST( 's', 3, 581, 576 ), /* 580 no */ - S_ST( 'e', 3, 585, 0 ), /* 581 nos */ - S_ST( 'l', 3, 583, 0 ), /* 582 nose */ - S_ST( 'e', 3, 584, 0 ), /* 583 nosel */ - S_ST( 'c', 3, 369, 0 ), /* 584 nosele */ - S_ST( 'r', 3, 586, 582 ), /* 585 nose */ - S_ST( 'v', 3, 370, 0 ), /* 586 noser */ - S_ST( 't', 3, 588, 580 ), /* 587 no */ - S_ST( 'r', 3, 590, 0 ), /* 588 not */ - S_ST( 'a', 3, 371, 0 ), /* 589 notr */ - S_ST( 'u', 3, 591, 589 ), /* 590 notr */ - S_ST( 's', 3, 372, 0 ), /* 591 notru */ - S_ST( 't', 3, 373, 551 ), /* 592 n */ - S_ST( 'p', 3, 594, 0 ), /* 593 ntp */ - S_ST( 'o', 3, 595, 0 ), /* 594 ntpp */ - S_ST( 'r', 3, 374, 0 ), /* 595 ntppo */ - S_ST( 's', 3, 597, 593 ), /* 596 ntp */ - S_ST( 'i', 3, 598, 0 ), /* 597 ntps */ - S_ST( 'g', 3, 599, 0 ), /* 598 ntpsi */ - S_ST( 'n', 3, 600, 0 ), /* 599 ntpsig */ - S_ST( 'd', 3, 601, 0 ), /* 600 ntpsign */ - S_ST( 's', 3, 602, 0 ), /* 601 ntpsignd */ - S_ST( 'o', 3, 603, 0 ), /* 602 ntpsignds */ - S_ST( 'c', 3, 604, 0 ), /* 603 ntpsigndso */ - S_ST( 'k', 3, 605, 0 ), /* 604 ntpsigndsoc */ - S_ST( 'e', 3, 375, 0 ), /* 605 ntpsigndsock */ - S_ST( 'o', 3, 607, 549 ), /* 606 */ - S_ST( 'r', 3, 608, 0 ), /* 607 o */ - S_ST( 'p', 3, 609, 0 ), /* 608 or */ - S_ST( 'h', 3, 610, 0 ), /* 609 orp */ - S_ST( 'a', 3, 376, 0 ), /* 610 orph */ - S_ST( 'w', 3, 612, 0 ), /* 611 orphan */ - S_ST( 'a', 3, 613, 0 ), /* 612 orphanw */ - S_ST( 'i', 3, 377, 0 ), /* 613 orphanwa */ - S_ST( 'p', 3, 389, 606 ), /* 614 */ - S_ST( 'a', 3, 616, 0 ), /* 615 p */ - S_ST( 'n', 3, 617, 0 ), /* 616 pa */ - S_ST( 'i', 3, 378, 0 ), /* 617 pan */ - S_ST( 'e', 3, 619, 615 ), /* 618 p */ - S_ST( 'e', 3, 379, 0 ), /* 619 pe */ - S_ST( 's', 3, 621, 0 ), /* 620 peer */ - S_ST( 't', 3, 622, 0 ), /* 621 peers */ - S_ST( 'a', 3, 623, 0 ), /* 622 peerst */ - S_ST( 't', 3, 380, 0 ), /* 623 peersta */ - S_ST( 'h', 3, 625, 618 ), /* 624 p */ - S_ST( 'o', 3, 626, 0 ), /* 625 ph */ - S_ST( 'n', 3, 381, 0 ), /* 626 pho */ - S_ST( 'i', 3, 382, 624 ), /* 627 p */ - S_ST( 'f', 3, 629, 0 ), /* 628 pid */ - S_ST( 'i', 3, 630, 0 ), /* 629 pidf */ - S_ST( 'l', 3, 383, 0 ), /* 630 pidfi */ - S_ST( 'o', 3, 633, 627 ), /* 631 p */ - S_ST( 'o', 3, 384, 0 ), /* 632 po */ - S_ST( 'r', 3, 385, 632 ), /* 633 po */ - S_ST( 'r', 3, 641, 631 ), /* 634 p */ - S_ST( 'e', 3, 639, 0 ), /* 635 pr */ - S_ST( 'e', 3, 637, 0 ), /* 636 pre */ - S_ST( 'm', 3, 638, 0 ), /* 637 pree */ - S_ST( 'p', 3, 386, 0 ), /* 638 preem */ - S_ST( 'f', 3, 640, 636 ), /* 639 pre */ - S_ST( 'e', 3, 387, 0 ), /* 640 pref */ - S_ST( 'o', 3, 654, 635 ), /* 641 pr */ - S_ST( 'c', 3, 643, 0 ), /* 642 pro */ - S_ST( '_', 3, 644, 0 ), /* 643 proc */ - S_ST( 'd', 3, 645, 0 ), /* 644 proc_ */ - S_ST( 'e', 3, 646, 0 ), /* 645 proc_d */ - S_ST( 'l', 3, 647, 0 ), /* 646 proc_de */ - S_ST( 'a', 3, 444, 0 ), /* 647 proc_del */ - S_ST( 'p', 3, 649, 642 ), /* 648 pro */ - S_ST( '_', 3, 650, 0 ), /* 649 prop */ - S_ST( 'd', 3, 651, 0 ), /* 650 prop_ */ - S_ST( 'e', 3, 652, 0 ), /* 651 prop_d */ - S_ST( 'l', 3, 653, 0 ), /* 652 prop_de */ - S_ST( 'a', 3, 443, 0 ), /* 653 prop_del */ - S_ST( 't', 3, 655, 648 ), /* 654 pro */ - S_ST( 'o', 3, 656, 0 ), /* 655 prot */ - S_ST( 's', 3, 657, 0 ), /* 656 proto */ - S_ST( 't', 3, 658, 0 ), /* 657 protos */ - S_ST( 'a', 3, 659, 0 ), /* 658 protost */ - S_ST( 't', 3, 388, 0 ), /* 659 protosta */ - S_ST( 'r', 3, 691, 614 ), /* 660 */ - S_ST( 'a', 3, 667, 0 ), /* 661 r */ - S_ST( 'n', 3, 663, 0 ), /* 662 ra */ - S_ST( 'd', 3, 664, 0 ), /* 663 ran */ - S_ST( 'f', 3, 665, 0 ), /* 664 rand */ - S_ST( 'i', 3, 666, 0 ), /* 665 randf */ - S_ST( 'l', 3, 390, 0 ), /* 666 randfi */ - S_ST( 'w', 3, 668, 662 ), /* 667 ra */ - S_ST( 's', 3, 669, 0 ), /* 668 raw */ - S_ST( 't', 3, 670, 0 ), /* 669 raws */ - S_ST( 'a', 3, 671, 0 ), /* 670 rawst */ - S_ST( 't', 3, 391, 0 ), /* 671 rawsta */ - S_ST( 'e', 3, 688, 661 ), /* 672 r */ - S_ST( 'f', 3, 674, 0 ), /* 673 re */ - S_ST( 'i', 3, 392, 0 ), /* 674 ref */ - S_ST( 'q', 3, 676, 673 ), /* 675 re */ - S_ST( 'u', 3, 677, 0 ), /* 676 req */ - S_ST( 'e', 3, 678, 0 ), /* 677 requ */ - S_ST( 's', 3, 679, 0 ), /* 678 reque */ - S_ST( 't', 3, 680, 0 ), /* 679 reques */ - S_ST( 'k', 3, 681, 0 ), /* 680 request */ - S_ST( 'e', 3, 393, 0 ), /* 681 requestk */ - S_ST( 's', 3, 684, 675 ), /* 682 re */ - S_ST( 'e', 3, 394, 0 ), /* 683 res */ - S_ST( 't', 3, 685, 683 ), /* 684 res */ - S_ST( 'r', 3, 686, 0 ), /* 685 rest */ - S_ST( 'i', 3, 687, 0 ), /* 686 restr */ - S_ST( 'c', 3, 395, 0 ), /* 687 restri */ - S_ST( 'v', 3, 689, 682 ), /* 688 re */ - S_ST( 'o', 3, 690, 0 ), /* 689 rev */ - S_ST( 'k', 3, 396, 0 ), /* 690 revo */ - S_ST( 'l', 3, 692, 672 ), /* 691 r */ - S_ST( 'i', 3, 693, 0 ), /* 692 rl */ - S_ST( 'm', 3, 694, 0 ), /* 693 rli */ - S_ST( 'i', 3, 397, 0 ), /* 694 rlim */ - S_ST( 's', 3, 763, 660 ), /* 695 */ - S_ST( 'a', 3, 697, 0 ), /* 696 s */ - S_ST( 'v', 3, 698, 0 ), /* 697 sa */ - S_ST( 'e', 3, 699, 0 ), /* 698 sav */ - S_ST( 'c', 3, 700, 0 ), /* 699 save */ - S_ST( 'o', 3, 701, 0 ), /* 700 savec */ - S_ST( 'n', 3, 702, 0 ), /* 701 saveco */ - S_ST( 'f', 3, 703, 0 ), /* 702 savecon */ - S_ST( 'i', 3, 704, 0 ), /* 703 saveconf */ - S_ST( 'g', 3, 705, 0 ), /* 704 saveconfi */ - S_ST( 'd', 3, 706, 0 ), /* 705 saveconfig */ - S_ST( 'i', 3, 398, 0 ), /* 706 saveconfigd */ - S_ST( 'e', 3, 717, 696 ), /* 707 s */ - S_ST( 'r', 3, 709, 0 ), /* 708 se */ - S_ST( 'v', 3, 710, 0 ), /* 709 ser */ - S_ST( 'e', 3, 399, 0 ), /* 710 serv */ - S_ST( '_', 3, 712, 0 ), /* 711 server */ - S_ST( 'o', 3, 713, 0 ), /* 712 server_ */ - S_ST( 'f', 3, 714, 0 ), /* 713 server_o */ - S_ST( 'f', 3, 715, 0 ), /* 714 server_of */ - S_ST( 's', 3, 716, 0 ), /* 715 server_off */ - S_ST( 'e', 3, 438, 0 ), /* 716 server_offs */ - S_ST( 't', 3, 718, 708 ), /* 717 se */ - S_ST( 'v', 3, 719, 0 ), /* 718 set */ - S_ST( 'a', 3, 400, 0 ), /* 719 setv */ - S_ST( 'i', 3, 721, 707 ), /* 720 s */ - S_ST( 'm', 3, 722, 0 ), /* 721 si */ - S_ST( 'u', 3, 723, 0 ), /* 722 sim */ - S_ST( 'l', 3, 724, 0 ), /* 723 simu */ - S_ST( 'a', 3, 725, 0 ), /* 724 simul */ - S_ST( 't', 3, 726, 0 ), /* 725 simula */ - S_ST( 'i', 3, 727, 435 ), /* 726 simulat */ - S_ST( 'o', 3, 728, 0 ), /* 727 simulati */ - S_ST( 'n', 3, 729, 0 ), /* 728 simulatio */ - S_ST( '_', 3, 730, 0 ), /* 729 simulation */ - S_ST( 'd', 3, 731, 0 ), /* 730 simulation_ */ - S_ST( 'u', 3, 732, 0 ), /* 731 simulation_d */ - S_ST( 'r', 3, 733, 0 ), /* 732 simulation_du */ - S_ST( 'a', 3, 734, 0 ), /* 733 simulation_dur */ - S_ST( 't', 3, 735, 0 ), /* 734 simulation_dura */ - S_ST( 'i', 3, 736, 0 ), /* 735 simulation_durat */ - S_ST( 'o', 3, 437, 0 ), /* 736 simulation_durati */ - S_ST( 'o', 3, 738, 720 ), /* 737 s */ - S_ST( 'u', 3, 739, 0 ), /* 738 so */ - S_ST( 'r', 3, 740, 0 ), /* 739 sou */ - S_ST( 'c', 3, 401, 0 ), /* 740 sour */ - S_ST( 't', 3, 759, 737 ), /* 741 s */ - S_ST( 'a', 3, 748, 0 ), /* 742 st */ - S_ST( 'c', 3, 744, 0 ), /* 743 sta */ - S_ST( 'k', 3, 745, 0 ), /* 744 stac */ - S_ST( 's', 3, 746, 0 ), /* 745 stack */ - S_ST( 'i', 3, 747, 0 ), /* 746 stacks */ - S_ST( 'z', 3, 402, 0 ), /* 747 stacksi */ - S_ST( 't', 3, 404, 743 ), /* 748 sta */ - S_ST( 'i', 3, 750, 0 ), /* 749 stat */ - S_ST( 's', 3, 751, 0 ), /* 750 stati */ - S_ST( 't', 3, 752, 0 ), /* 751 statis */ - S_ST( 'i', 3, 753, 0 ), /* 752 statist */ - S_ST( 'c', 3, 403, 0 ), /* 753 statisti */ - S_ST( 'd', 3, 755, 0 ), /* 754 stats */ - S_ST( 'i', 3, 405, 0 ), /* 755 statsd */ - S_ST( 'e', 3, 406, 742 ), /* 756 st */ - S_ST( 'o', 3, 758, 0 ), /* 757 step */ - S_ST( 'u', 3, 407, 0 ), /* 758 stepo */ - S_ST( 'r', 3, 760, 756 ), /* 759 st */ - S_ST( 'a', 3, 761, 0 ), /* 760 str */ - S_ST( 't', 3, 762, 0 ), /* 761 stra */ - S_ST( 'u', 3, 408, 0 ), /* 762 strat */ - S_ST( 'y', 3, 410, 741 ), /* 763 s */ - S_ST( 's', 3, 765, 0 ), /* 764 sys */ - S_ST( 't', 3, 766, 0 ), /* 765 syss */ - S_ST( 'a', 3, 767, 0 ), /* 766 sysst */ - S_ST( 't', 3, 411, 0 ), /* 767 syssta */ - S_ST( 't', 3, 794, 695 ), /* 768 */ - S_ST( 'i', 3, 780, 0 ), /* 769 t */ - S_ST( 'c', 3, 412, 0 ), /* 770 ti */ - S_ST( 'm', 3, 773, 770 ), /* 771 ti */ - S_ST( 'e', 3, 415, 0 ), /* 772 tim */ - S_ST( 'i', 3, 774, 772 ), /* 773 tim */ - S_ST( 'n', 3, 775, 0 ), /* 774 timi */ - S_ST( 'g', 3, 776, 0 ), /* 775 timin */ - S_ST( 's', 3, 777, 0 ), /* 776 timing */ - S_ST( 't', 3, 778, 0 ), /* 777 timings */ - S_ST( 'a', 3, 779, 0 ), /* 778 timingst */ - S_ST( 't', 3, 416, 0 ), /* 779 timingsta */ - S_ST( 'n', 3, 781, 771 ), /* 780 ti */ - S_ST( 'k', 3, 782, 0 ), /* 781 tin */ - S_ST( 'e', 3, 417, 0 ), /* 782 tink */ - S_ST( 'o', 3, 418, 769 ), /* 783 t */ - S_ST( 'r', 3, 786, 783 ), /* 784 t */ - S_ST( 'a', 3, 419, 0 ), /* 785 tr */ - S_ST( 'u', 3, 787, 785 ), /* 786 tr */ - S_ST( 's', 3, 788, 420 ), /* 787 tru */ - S_ST( 't', 3, 789, 0 ), /* 788 trus */ - S_ST( 'e', 3, 790, 0 ), /* 789 trust */ - S_ST( 'd', 3, 791, 0 ), /* 790 truste */ - S_ST( 'k', 3, 792, 0 ), /* 791 trusted */ - S_ST( 'e', 3, 421, 0 ), /* 792 trustedk */ - S_ST( 't', 3, 422, 784 ), /* 793 t */ - S_ST( 'y', 3, 795, 793 ), /* 794 t */ - S_ST( 'p', 3, 423, 0 ), /* 795 ty */ - S_ST( 'u', 3, 797, 768 ), /* 796 */ - S_ST( 'n', 3, 803, 0 ), /* 797 u */ - S_ST( 'c', 3, 799, 0 ), /* 798 un */ - S_ST( 'o', 3, 800, 0 ), /* 799 unc */ - S_ST( 'n', 3, 801, 0 ), /* 800 unco */ - S_ST( 'f', 3, 802, 0 ), /* 801 uncon */ - S_ST( 'i', 3, 425, 0 ), /* 802 unconf */ - S_ST( 'p', 3, 804, 798 ), /* 803 un */ - S_ST( 'e', 3, 805, 0 ), /* 804 unp */ - S_ST( 'e', 3, 426, 0 ), /* 805 unpe */ - S_ST( 'v', 3, 807, 796 ), /* 806 */ - S_ST( 'e', 3, 808, 0 ), /* 807 v */ - S_ST( 'r', 3, 809, 0 ), /* 808 ve */ - S_ST( 's', 3, 810, 0 ), /* 809 ver */ - S_ST( 'i', 3, 811, 0 ), /* 810 vers */ - S_ST( 'o', 3, 427, 0 ), /* 811 versi */ - S_ST( 'w', 3, 819, 806 ), /* 812 */ - S_ST( 'a', 3, 814, 0 ), /* 813 w */ - S_ST( 'n', 3, 815, 0 ), /* 814 wa */ - S_ST( 'd', 3, 816, 0 ), /* 815 wan */ - S_ST( 'e', 3, 441, 0 ), /* 816 wand */ - S_ST( 'e', 3, 818, 813 ), /* 817 w */ - S_ST( 'e', 3, 429, 0 ), /* 818 we */ - S_ST( 'i', 3, 820, 817 ), /* 819 w */ - S_ST( 'l', 3, 821, 0 ), /* 820 wi */ - S_ST( 'd', 3, 822, 0 ), /* 821 wil */ - S_ST( 'c', 3, 823, 0 ), /* 822 wild */ - S_ST( 'a', 3, 824, 0 ), /* 823 wildc */ - S_ST( 'r', 3, 430, 0 ), /* 824 wildca */ - S_ST( 'x', 3, 826, 812 ), /* 825 */ - S_ST( 'l', 3, 827, 0 ), /* 826 x */ - S_ST( 'e', 3, 828, 0 ), /* 827 xl */ - S_ST( 'a', 3, 829, 0 ), /* 828 xle */ - S_ST( 'v', 3, 431, 0 ), /* 829 xlea */ - S_ST( 'y', 3, 831, 825 ), /* 830 [initial state] */ - S_ST( 'e', 3, 832, 0 ), /* 831 y */ - S_ST( 'a', 3, 432, 0 ) /* 832 ye */ + S_ST( 'p', 0, 764, 0 ), /* 406 T_Step */ + S_ST( 'k', 0, 0, 0 ), /* 407 T_Stepback */ + S_ST( 'd', 0, 0, 0 ), /* 408 T_Stepfwd */ + S_ST( 't', 0, 0, 0 ), /* 409 T_Stepout */ + S_ST( 'm', 0, 0, 0 ), /* 410 T_Stratum */ + S_ST( 'l', 3, 334, 0 ), /* 411 logfi */ + S_ST( 's', 0, 771, 0 ), /* 412 T_Sys */ + S_ST( 's', 0, 0, 0 ), /* 413 T_Sysstats */ + S_ST( 'k', 0, 0, 0 ), /* 414 T_Tick */ + S_ST( '1', 0, 0, 0 ), /* 415 T_Time1 */ + S_ST( '2', 0, 0, 415 ), /* 416 T_Time2 */ + S_ST( 'r', 0, 0, 416 ), /* 417 T_Timer */ + S_ST( 's', 0, 0, 0 ), /* 418 T_Timingstats */ + S_ST( 'r', 0, 0, 0 ), /* 419 T_Tinker */ + S_ST( 's', 0, 0, 0 ), /* 420 T_Tos */ + S_ST( 'p', 1, 0, 0 ), /* 421 T_Trap */ + S_ST( 'e', 0, 0, 0 ), /* 422 T_True */ + S_ST( 'y', 0, 0, 0 ), /* 423 T_Trustedkey */ + S_ST( 'l', 0, 0, 0 ), /* 424 T_Ttl */ + S_ST( 'e', 0, 0, 0 ), /* 425 T_Type */ + S_ST( 'o', 3, 430, 254 ), /* 426 lo */ + S_ST( 'g', 1, 0, 0 ), /* 427 T_Unconfig */ + S_ST( 'r', 1, 0, 0 ), /* 428 T_Unpeer */ + S_ST( 'n', 0, 0, 0 ), /* 429 T_Version */ + S_ST( 'p', 3, 435, 0 ), /* 430 loo */ + S_ST( 'k', 0, 0, 0 ), /* 431 T_Week */ + S_ST( 'd', 0, 0, 0 ), /* 432 T_Wildcard */ + S_ST( 'e', 0, 0, 0 ), /* 433 T_Xleave */ + S_ST( 'r', 0, 0, 0 ), /* 434 T_Year */ + S_ST( 's', 3, 436, 0 ), /* 435 loop */ + S_ST( 't', 3, 447, 0 ), /* 436 loops */ + S_ST( 'e', 0, 0, 0 ), /* 437 T_Simulate */ + S_ST( 'y', 0, 0, 0 ), /* 438 T_Beep_Delay */ + S_ST( 'n', 0, 0, 0 ), /* 439 T_Sim_Duration */ + S_ST( 't', 0, 0, 0 ), /* 440 T_Server_Offset */ + S_ST( 'n', 0, 0, 0 ), /* 441 T_Duration */ + S_ST( 't', 0, 0, 0 ), /* 442 T_Freq_Offset */ + S_ST( 'r', 0, 0, 0 ), /* 443 T_Wander */ + S_ST( 'r', 0, 0, 0 ), /* 444 T_Jitter */ + S_ST( 'y', 0, 0, 0 ), /* 445 T_Prop_Delay */ + S_ST( 'y', 0, 0, 0 ), /* 446 T_Proc_Delay */ + S_ST( 'a', 3, 448, 0 ), /* 447 loopst */ + S_ST( 't', 3, 335, 0 ), /* 448 loopsta */ + S_ST( 'w', 3, 450, 426 ), /* 449 lo */ + S_ST( 'p', 3, 451, 0 ), /* 450 low */ + S_ST( 'r', 3, 452, 0 ), /* 451 lowp */ + S_ST( 'i', 3, 453, 0 ), /* 452 lowpr */ + S_ST( 'o', 3, 454, 0 ), /* 453 lowpri */ + S_ST( 't', 3, 455, 0 ), /* 454 lowprio */ + S_ST( 'r', 3, 456, 0 ), /* 455 lowpriot */ + S_ST( 'a', 3, 336, 0 ), /* 456 lowpriotr */ + S_ST( 'm', 3, 538, 237 ), /* 457 */ + S_ST( 'a', 3, 476, 0 ), /* 458 m */ + S_ST( 'n', 3, 460, 0 ), /* 459 ma */ + S_ST( 'y', 3, 461, 0 ), /* 460 man */ + S_ST( 'c', 3, 462, 0 ), /* 461 many */ + S_ST( 'a', 3, 463, 0 ), /* 462 manyc */ + S_ST( 's', 3, 464, 0 ), /* 463 manyca */ + S_ST( 't', 3, 470, 0 ), /* 464 manycas */ + S_ST( 'c', 3, 466, 0 ), /* 465 manycast */ + S_ST( 'l', 3, 467, 0 ), /* 466 manycastc */ + S_ST( 'i', 3, 468, 0 ), /* 467 manycastcl */ + S_ST( 'e', 3, 469, 0 ), /* 468 manycastcli */ + S_ST( 'n', 3, 337, 0 ), /* 469 manycastclie */ + S_ST( 's', 3, 471, 465 ), /* 470 manycast */ + S_ST( 'e', 3, 472, 0 ), /* 471 manycasts */ + S_ST( 'r', 3, 473, 0 ), /* 472 manycastse */ + S_ST( 'v', 3, 474, 0 ), /* 473 manycastser */ + S_ST( 'e', 3, 338, 0 ), /* 474 manycastserv */ + S_ST( 's', 3, 339, 459 ), /* 475 ma */ + S_ST( 'x', 3, 491, 475 ), /* 476 ma */ + S_ST( 'a', 3, 478, 0 ), /* 477 max */ + S_ST( 'g', 3, 340, 0 ), /* 478 maxa */ + S_ST( 'c', 3, 480, 477 ), /* 479 max */ + S_ST( 'l', 3, 481, 0 ), /* 480 maxc */ + S_ST( 'o', 3, 482, 0 ), /* 481 maxcl */ + S_ST( 'c', 3, 341, 0 ), /* 482 maxclo */ + S_ST( 'd', 3, 487, 479 ), /* 483 max */ + S_ST( 'e', 3, 485, 0 ), /* 484 maxd */ + S_ST( 'p', 3, 486, 0 ), /* 485 maxde */ + S_ST( 't', 3, 342, 0 ), /* 486 maxdep */ + S_ST( 'i', 3, 488, 484 ), /* 487 maxd */ + S_ST( 's', 3, 343, 0 ), /* 488 maxdi */ + S_ST( 'm', 3, 490, 483 ), /* 489 max */ + S_ST( 'e', 3, 344, 0 ), /* 490 maxm */ + S_ST( 'p', 3, 492, 489 ), /* 491 max */ + S_ST( 'o', 3, 493, 0 ), /* 492 maxp */ + S_ST( 'l', 3, 345, 0 ), /* 493 maxpo */ + S_ST( 'd', 3, 495, 458 ), /* 494 m */ + S_ST( 'n', 3, 496, 0 ), /* 495 md */ + S_ST( 's', 3, 497, 0 ), /* 496 mdn */ + S_ST( 't', 3, 498, 0 ), /* 497 mdns */ + S_ST( 'r', 3, 499, 0 ), /* 498 mdnst */ + S_ST( 'i', 3, 500, 0 ), /* 499 mdnstr */ + S_ST( 'e', 3, 346, 0 ), /* 500 mdnstri */ + S_ST( 'e', 3, 347, 494 ), /* 501 m */ + S_ST( 'l', 3, 503, 0 ), /* 502 mem */ + S_ST( 'o', 3, 504, 0 ), /* 503 meml */ + S_ST( 'c', 3, 348, 0 ), /* 504 memlo */ + S_ST( 'i', 3, 506, 501 ), /* 505 m */ + S_ST( 'n', 3, 523, 0 ), /* 506 mi */ + S_ST( 'c', 3, 508, 0 ), /* 507 min */ + S_ST( 'l', 3, 509, 0 ), /* 508 minc */ + S_ST( 'o', 3, 510, 0 ), /* 509 mincl */ + S_ST( 'c', 3, 349, 0 ), /* 510 minclo */ + S_ST( 'd', 3, 515, 507 ), /* 511 min */ + S_ST( 'e', 3, 513, 0 ), /* 512 mind */ + S_ST( 'p', 3, 514, 0 ), /* 513 minde */ + S_ST( 't', 3, 350, 0 ), /* 514 mindep */ + S_ST( 'i', 3, 516, 512 ), /* 515 mind */ + S_ST( 's', 3, 351, 0 ), /* 516 mindi */ + S_ST( 'i', 3, 518, 511 ), /* 517 min */ + S_ST( 'm', 3, 519, 0 ), /* 518 mini */ + S_ST( 'u', 3, 352, 0 ), /* 519 minim */ + S_ST( 'p', 3, 521, 517 ), /* 520 min */ + S_ST( 'o', 3, 522, 0 ), /* 521 minp */ + S_ST( 'l', 3, 353, 0 ), /* 522 minpo */ + S_ST( 's', 3, 524, 520 ), /* 523 min */ + S_ST( 'a', 3, 525, 0 ), /* 524 mins */ + S_ST( 'n', 3, 354, 0 ), /* 525 minsa */ + S_ST( 'o', 3, 528, 505 ), /* 526 m */ + S_ST( 'd', 3, 355, 0 ), /* 527 mo */ + S_ST( 'n', 3, 532, 527 ), /* 528 mo */ + S_ST( 'i', 3, 530, 0 ), /* 529 mon */ + S_ST( 't', 3, 531, 0 ), /* 530 moni */ + S_ST( 'o', 3, 357, 0 ), /* 531 monit */ + S_ST( 't', 3, 358, 529 ), /* 532 mon */ + S_ST( 'r', 3, 359, 526 ), /* 533 m */ + S_ST( 's', 3, 535, 533 ), /* 534 m */ + S_ST( 's', 3, 536, 0 ), /* 535 ms */ + S_ST( 'n', 3, 537, 0 ), /* 536 mss */ + S_ST( 't', 3, 328, 0 ), /* 537 mssn */ + S_ST( 'u', 3, 539, 534 ), /* 538 m */ + S_ST( 'l', 3, 540, 0 ), /* 539 mu */ + S_ST( 't', 3, 541, 0 ), /* 540 mul */ + S_ST( 'i', 3, 542, 0 ), /* 541 mult */ + S_ST( 'c', 3, 543, 0 ), /* 542 multi */ + S_ST( 'a', 3, 544, 0 ), /* 543 multic */ + S_ST( 's', 3, 545, 0 ), /* 544 multica */ + S_ST( 't', 3, 546, 0 ), /* 545 multicas */ + S_ST( 'c', 3, 547, 0 ), /* 546 multicast */ + S_ST( 'l', 3, 548, 0 ), /* 547 multicastc */ + S_ST( 'i', 3, 549, 0 ), /* 548 multicastcl */ + S_ST( 'e', 3, 550, 0 ), /* 549 multicastcli */ + S_ST( 'n', 3, 360, 0 ), /* 550 multicastclie */ + S_ST( 'n', 3, 594, 457 ), /* 551 */ + S_ST( 'i', 3, 361, 0 ), /* 552 n */ + S_ST( 'o', 3, 589, 552 ), /* 553 n */ + S_ST( 'l', 3, 555, 0 ), /* 554 no */ + S_ST( 'i', 3, 556, 0 ), /* 555 nol */ + S_ST( 'n', 3, 362, 0 ), /* 556 noli */ + S_ST( 'm', 3, 562, 554 ), /* 557 no */ + S_ST( 'o', 3, 559, 0 ), /* 558 nom */ + S_ST( 'd', 3, 560, 0 ), /* 559 nomo */ + S_ST( 'i', 3, 561, 0 ), /* 560 nomod */ + S_ST( 'f', 3, 363, 0 ), /* 561 nomodi */ + S_ST( 'r', 3, 563, 558 ), /* 562 nom */ + S_ST( 'u', 3, 564, 0 ), /* 563 nomr */ + S_ST( 'l', 3, 565, 0 ), /* 564 nomru */ + S_ST( 'i', 3, 566, 0 ), /* 565 nomrul */ + S_ST( 's', 3, 364, 0 ), /* 566 nomruli */ + S_ST( 'n', 3, 568, 557 ), /* 567 no */ + S_ST( 'v', 3, 569, 365 ), /* 568 non */ + S_ST( 'o', 3, 570, 0 ), /* 569 nonv */ + S_ST( 'l', 3, 571, 0 ), /* 570 nonvo */ + S_ST( 'a', 3, 572, 0 ), /* 571 nonvol */ + S_ST( 't', 3, 573, 0 ), /* 572 nonvola */ + S_ST( 'i', 3, 574, 0 ), /* 573 nonvolat */ + S_ST( 'l', 3, 366, 0 ), /* 574 nonvolati */ + S_ST( 'p', 3, 576, 567 ), /* 575 no */ + S_ST( 'e', 3, 577, 0 ), /* 576 nop */ + S_ST( 'e', 3, 367, 0 ), /* 577 nope */ + S_ST( 'q', 3, 579, 575 ), /* 578 no */ + S_ST( 'u', 3, 580, 0 ), /* 579 noq */ + S_ST( 'e', 3, 581, 0 ), /* 580 noqu */ + S_ST( 'r', 3, 368, 0 ), /* 581 noque */ + S_ST( 's', 3, 583, 578 ), /* 582 no */ + S_ST( 'e', 3, 587, 0 ), /* 583 nos */ + S_ST( 'l', 3, 585, 0 ), /* 584 nose */ + S_ST( 'e', 3, 586, 0 ), /* 585 nosel */ + S_ST( 'c', 3, 369, 0 ), /* 586 nosele */ + S_ST( 'r', 3, 588, 584 ), /* 587 nose */ + S_ST( 'v', 3, 370, 0 ), /* 588 noser */ + S_ST( 't', 3, 590, 582 ), /* 589 no */ + S_ST( 'r', 3, 592, 0 ), /* 590 not */ + S_ST( 'a', 3, 371, 0 ), /* 591 notr */ + S_ST( 'u', 3, 593, 591 ), /* 592 notr */ + S_ST( 's', 3, 372, 0 ), /* 593 notru */ + S_ST( 't', 3, 373, 553 ), /* 594 n */ + S_ST( 'p', 3, 596, 0 ), /* 595 ntp */ + S_ST( 'o', 3, 597, 0 ), /* 596 ntpp */ + S_ST( 'r', 3, 374, 0 ), /* 597 ntppo */ + S_ST( 's', 3, 599, 595 ), /* 598 ntp */ + S_ST( 'i', 3, 600, 0 ), /* 599 ntps */ + S_ST( 'g', 3, 601, 0 ), /* 600 ntpsi */ + S_ST( 'n', 3, 602, 0 ), /* 601 ntpsig */ + S_ST( 'd', 3, 603, 0 ), /* 602 ntpsign */ + S_ST( 's', 3, 604, 0 ), /* 603 ntpsignd */ + S_ST( 'o', 3, 605, 0 ), /* 604 ntpsignds */ + S_ST( 'c', 3, 606, 0 ), /* 605 ntpsigndso */ + S_ST( 'k', 3, 607, 0 ), /* 606 ntpsigndsoc */ + S_ST( 'e', 3, 375, 0 ), /* 607 ntpsigndsock */ + S_ST( 'o', 3, 609, 551 ), /* 608 */ + S_ST( 'r', 3, 610, 0 ), /* 609 o */ + S_ST( 'p', 3, 611, 0 ), /* 610 or */ + S_ST( 'h', 3, 612, 0 ), /* 611 orp */ + S_ST( 'a', 3, 376, 0 ), /* 612 orph */ + S_ST( 'w', 3, 614, 0 ), /* 613 orphan */ + S_ST( 'a', 3, 615, 0 ), /* 614 orphanw */ + S_ST( 'i', 3, 377, 0 ), /* 615 orphanwa */ + S_ST( 'p', 3, 389, 608 ), /* 616 */ + S_ST( 'a', 3, 618, 0 ), /* 617 p */ + S_ST( 'n', 3, 619, 0 ), /* 618 pa */ + S_ST( 'i', 3, 378, 0 ), /* 619 pan */ + S_ST( 'e', 3, 621, 617 ), /* 620 p */ + S_ST( 'e', 3, 379, 0 ), /* 621 pe */ + S_ST( 's', 3, 623, 0 ), /* 622 peer */ + S_ST( 't', 3, 624, 0 ), /* 623 peers */ + S_ST( 'a', 3, 625, 0 ), /* 624 peerst */ + S_ST( 't', 3, 380, 0 ), /* 625 peersta */ + S_ST( 'h', 3, 627, 620 ), /* 626 p */ + S_ST( 'o', 3, 628, 0 ), /* 627 ph */ + S_ST( 'n', 3, 381, 0 ), /* 628 pho */ + S_ST( 'i', 3, 382, 626 ), /* 629 p */ + S_ST( 'f', 3, 631, 0 ), /* 630 pid */ + S_ST( 'i', 3, 632, 0 ), /* 631 pidf */ + S_ST( 'l', 3, 383, 0 ), /* 632 pidfi */ + S_ST( 'o', 3, 635, 629 ), /* 633 p */ + S_ST( 'o', 3, 384, 0 ), /* 634 po */ + S_ST( 'r', 3, 385, 634 ), /* 635 po */ + S_ST( 'r', 3, 643, 633 ), /* 636 p */ + S_ST( 'e', 3, 641, 0 ), /* 637 pr */ + S_ST( 'e', 3, 639, 0 ), /* 638 pre */ + S_ST( 'm', 3, 640, 0 ), /* 639 pree */ + S_ST( 'p', 3, 386, 0 ), /* 640 preem */ + S_ST( 'f', 3, 642, 638 ), /* 641 pre */ + S_ST( 'e', 3, 387, 0 ), /* 642 pref */ + S_ST( 'o', 3, 656, 637 ), /* 643 pr */ + S_ST( 'c', 3, 645, 0 ), /* 644 pro */ + S_ST( '_', 3, 646, 0 ), /* 645 proc */ + S_ST( 'd', 3, 647, 0 ), /* 646 proc_ */ + S_ST( 'e', 3, 648, 0 ), /* 647 proc_d */ + S_ST( 'l', 3, 649, 0 ), /* 648 proc_de */ + S_ST( 'a', 3, 446, 0 ), /* 649 proc_del */ + S_ST( 'p', 3, 651, 644 ), /* 650 pro */ + S_ST( '_', 3, 652, 0 ), /* 651 prop */ + S_ST( 'd', 3, 653, 0 ), /* 652 prop_ */ + S_ST( 'e', 3, 654, 0 ), /* 653 prop_d */ + S_ST( 'l', 3, 655, 0 ), /* 654 prop_de */ + S_ST( 'a', 3, 445, 0 ), /* 655 prop_del */ + S_ST( 't', 3, 657, 650 ), /* 656 pro */ + S_ST( 'o', 3, 658, 0 ), /* 657 prot */ + S_ST( 's', 3, 659, 0 ), /* 658 proto */ + S_ST( 't', 3, 660, 0 ), /* 659 protos */ + S_ST( 'a', 3, 661, 0 ), /* 660 protost */ + S_ST( 't', 3, 388, 0 ), /* 661 protosta */ + S_ST( 'r', 3, 693, 616 ), /* 662 */ + S_ST( 'a', 3, 669, 0 ), /* 663 r */ + S_ST( 'n', 3, 665, 0 ), /* 664 ra */ + S_ST( 'd', 3, 666, 0 ), /* 665 ran */ + S_ST( 'f', 3, 667, 0 ), /* 666 rand */ + S_ST( 'i', 3, 668, 0 ), /* 667 randf */ + S_ST( 'l', 3, 390, 0 ), /* 668 randfi */ + S_ST( 'w', 3, 670, 664 ), /* 669 ra */ + S_ST( 's', 3, 671, 0 ), /* 670 raw */ + S_ST( 't', 3, 672, 0 ), /* 671 raws */ + S_ST( 'a', 3, 673, 0 ), /* 672 rawst */ + S_ST( 't', 3, 391, 0 ), /* 673 rawsta */ + S_ST( 'e', 3, 690, 663 ), /* 674 r */ + S_ST( 'f', 3, 676, 0 ), /* 675 re */ + S_ST( 'i', 3, 392, 0 ), /* 676 ref */ + S_ST( 'q', 3, 678, 675 ), /* 677 re */ + S_ST( 'u', 3, 679, 0 ), /* 678 req */ + S_ST( 'e', 3, 680, 0 ), /* 679 requ */ + S_ST( 's', 3, 681, 0 ), /* 680 reque */ + S_ST( 't', 3, 682, 0 ), /* 681 reques */ + S_ST( 'k', 3, 683, 0 ), /* 682 request */ + S_ST( 'e', 3, 393, 0 ), /* 683 requestk */ + S_ST( 's', 3, 686, 677 ), /* 684 re */ + S_ST( 'e', 3, 394, 0 ), /* 685 res */ + S_ST( 't', 3, 687, 685 ), /* 686 res */ + S_ST( 'r', 3, 688, 0 ), /* 687 rest */ + S_ST( 'i', 3, 689, 0 ), /* 688 restr */ + S_ST( 'c', 3, 395, 0 ), /* 689 restri */ + S_ST( 'v', 3, 691, 684 ), /* 690 re */ + S_ST( 'o', 3, 692, 0 ), /* 691 rev */ + S_ST( 'k', 3, 396, 0 ), /* 692 revo */ + S_ST( 'l', 3, 694, 674 ), /* 693 r */ + S_ST( 'i', 3, 695, 0 ), /* 694 rl */ + S_ST( 'm', 3, 696, 0 ), /* 695 rli */ + S_ST( 'i', 3, 397, 0 ), /* 696 rlim */ + S_ST( 's', 3, 770, 662 ), /* 697 */ + S_ST( 'a', 3, 699, 0 ), /* 698 s */ + S_ST( 'v', 3, 700, 0 ), /* 699 sa */ + S_ST( 'e', 3, 701, 0 ), /* 700 sav */ + S_ST( 'c', 3, 702, 0 ), /* 701 save */ + S_ST( 'o', 3, 703, 0 ), /* 702 savec */ + S_ST( 'n', 3, 704, 0 ), /* 703 saveco */ + S_ST( 'f', 3, 705, 0 ), /* 704 savecon */ + S_ST( 'i', 3, 706, 0 ), /* 705 saveconf */ + S_ST( 'g', 3, 707, 0 ), /* 706 saveconfi */ + S_ST( 'd', 3, 708, 0 ), /* 707 saveconfig */ + S_ST( 'i', 3, 398, 0 ), /* 708 saveconfigd */ + S_ST( 'e', 3, 719, 698 ), /* 709 s */ + S_ST( 'r', 3, 711, 0 ), /* 710 se */ + S_ST( 'v', 3, 712, 0 ), /* 711 ser */ + S_ST( 'e', 3, 399, 0 ), /* 712 serv */ + S_ST( '_', 3, 714, 0 ), /* 713 server */ + S_ST( 'o', 3, 715, 0 ), /* 714 server_ */ + S_ST( 'f', 3, 716, 0 ), /* 715 server_o */ + S_ST( 'f', 3, 717, 0 ), /* 716 server_of */ + S_ST( 's', 3, 718, 0 ), /* 717 server_off */ + S_ST( 'e', 3, 440, 0 ), /* 718 server_offs */ + S_ST( 't', 3, 720, 710 ), /* 719 se */ + S_ST( 'v', 3, 721, 0 ), /* 720 set */ + S_ST( 'a', 3, 400, 0 ), /* 721 setv */ + S_ST( 'i', 3, 723, 709 ), /* 722 s */ + S_ST( 'm', 3, 724, 0 ), /* 723 si */ + S_ST( 'u', 3, 725, 0 ), /* 724 sim */ + S_ST( 'l', 3, 726, 0 ), /* 725 simu */ + S_ST( 'a', 3, 727, 0 ), /* 726 simul */ + S_ST( 't', 3, 728, 0 ), /* 727 simula */ + S_ST( 'i', 3, 729, 437 ), /* 728 simulat */ + S_ST( 'o', 3, 730, 0 ), /* 729 simulati */ + S_ST( 'n', 3, 731, 0 ), /* 730 simulatio */ + S_ST( '_', 3, 732, 0 ), /* 731 simulation */ + S_ST( 'd', 3, 733, 0 ), /* 732 simulation_ */ + S_ST( 'u', 3, 734, 0 ), /* 733 simulation_d */ + S_ST( 'r', 3, 735, 0 ), /* 734 simulation_du */ + S_ST( 'a', 3, 736, 0 ), /* 735 simulation_dur */ + S_ST( 't', 3, 737, 0 ), /* 736 simulation_dura */ + S_ST( 'i', 3, 738, 0 ), /* 737 simulation_durat */ + S_ST( 'o', 3, 439, 0 ), /* 738 simulation_durati */ + S_ST( 'o', 3, 740, 722 ), /* 739 s */ + S_ST( 'u', 3, 741, 0 ), /* 740 so */ + S_ST( 'r', 3, 742, 0 ), /* 741 sou */ + S_ST( 'c', 3, 401, 0 ), /* 742 sour */ + S_ST( 't', 3, 766, 739 ), /* 743 s */ + S_ST( 'a', 3, 750, 0 ), /* 744 st */ + S_ST( 'c', 3, 746, 0 ), /* 745 sta */ + S_ST( 'k', 3, 747, 0 ), /* 746 stac */ + S_ST( 's', 3, 748, 0 ), /* 747 stack */ + S_ST( 'i', 3, 749, 0 ), /* 748 stacks */ + S_ST( 'z', 3, 402, 0 ), /* 749 stacksi */ + S_ST( 't', 3, 404, 745 ), /* 750 sta */ + S_ST( 'i', 3, 752, 0 ), /* 751 stat */ + S_ST( 's', 3, 753, 0 ), /* 752 stati */ + S_ST( 't', 3, 754, 0 ), /* 753 statis */ + S_ST( 'i', 3, 755, 0 ), /* 754 statist */ + S_ST( 'c', 3, 403, 0 ), /* 755 statisti */ + S_ST( 'd', 3, 757, 0 ), /* 756 stats */ + S_ST( 'i', 3, 405, 0 ), /* 757 statsd */ + S_ST( 'e', 3, 406, 744 ), /* 758 st */ + S_ST( 'b', 3, 760, 0 ), /* 759 step */ + S_ST( 'a', 3, 761, 0 ), /* 760 stepb */ + S_ST( 'c', 3, 407, 0 ), /* 761 stepba */ + S_ST( 'f', 3, 763, 759 ), /* 762 step */ + S_ST( 'w', 3, 408, 0 ), /* 763 stepf */ + S_ST( 'o', 3, 765, 762 ), /* 764 step */ + S_ST( 'u', 3, 409, 0 ), /* 765 stepo */ + S_ST( 'r', 3, 767, 758 ), /* 766 st */ + S_ST( 'a', 3, 768, 0 ), /* 767 str */ + S_ST( 't', 3, 769, 0 ), /* 768 stra */ + S_ST( 'u', 3, 410, 0 ), /* 769 strat */ + S_ST( 'y', 3, 412, 743 ), /* 770 s */ + S_ST( 's', 3, 772, 0 ), /* 771 sys */ + S_ST( 't', 3, 773, 0 ), /* 772 syss */ + S_ST( 'a', 3, 774, 0 ), /* 773 sysst */ + S_ST( 't', 3, 413, 0 ), /* 774 syssta */ + S_ST( 't', 3, 801, 697 ), /* 775 */ + S_ST( 'i', 3, 787, 0 ), /* 776 t */ + S_ST( 'c', 3, 414, 0 ), /* 777 ti */ + S_ST( 'm', 3, 780, 777 ), /* 778 ti */ + S_ST( 'e', 3, 417, 0 ), /* 779 tim */ + S_ST( 'i', 3, 781, 779 ), /* 780 tim */ + S_ST( 'n', 3, 782, 0 ), /* 781 timi */ + S_ST( 'g', 3, 783, 0 ), /* 782 timin */ + S_ST( 's', 3, 784, 0 ), /* 783 timing */ + S_ST( 't', 3, 785, 0 ), /* 784 timings */ + S_ST( 'a', 3, 786, 0 ), /* 785 timingst */ + S_ST( 't', 3, 418, 0 ), /* 786 timingsta */ + S_ST( 'n', 3, 788, 778 ), /* 787 ti */ + S_ST( 'k', 3, 789, 0 ), /* 788 tin */ + S_ST( 'e', 3, 419, 0 ), /* 789 tink */ + S_ST( 'o', 3, 420, 776 ), /* 790 t */ + S_ST( 'r', 3, 793, 790 ), /* 791 t */ + S_ST( 'a', 3, 421, 0 ), /* 792 tr */ + S_ST( 'u', 3, 794, 792 ), /* 793 tr */ + S_ST( 's', 3, 795, 422 ), /* 794 tru */ + S_ST( 't', 3, 796, 0 ), /* 795 trus */ + S_ST( 'e', 3, 797, 0 ), /* 796 trust */ + S_ST( 'd', 3, 798, 0 ), /* 797 truste */ + S_ST( 'k', 3, 799, 0 ), /* 798 trusted */ + S_ST( 'e', 3, 423, 0 ), /* 799 trustedk */ + S_ST( 't', 3, 424, 791 ), /* 800 t */ + S_ST( 'y', 3, 802, 800 ), /* 801 t */ + S_ST( 'p', 3, 425, 0 ), /* 802 ty */ + S_ST( 'u', 3, 804, 775 ), /* 803 */ + S_ST( 'n', 3, 810, 0 ), /* 804 u */ + S_ST( 'c', 3, 806, 0 ), /* 805 un */ + S_ST( 'o', 3, 807, 0 ), /* 806 unc */ + S_ST( 'n', 3, 808, 0 ), /* 807 unco */ + S_ST( 'f', 3, 809, 0 ), /* 808 uncon */ + S_ST( 'i', 3, 427, 0 ), /* 809 unconf */ + S_ST( 'p', 3, 811, 805 ), /* 810 un */ + S_ST( 'e', 3, 812, 0 ), /* 811 unp */ + S_ST( 'e', 3, 428, 0 ), /* 812 unpe */ + S_ST( 'v', 3, 814, 803 ), /* 813 */ + S_ST( 'e', 3, 815, 0 ), /* 814 v */ + S_ST( 'r', 3, 816, 0 ), /* 815 ve */ + S_ST( 's', 3, 817, 0 ), /* 816 ver */ + S_ST( 'i', 3, 818, 0 ), /* 817 vers */ + S_ST( 'o', 3, 429, 0 ), /* 818 versi */ + S_ST( 'w', 3, 826, 813 ), /* 819 */ + S_ST( 'a', 3, 821, 0 ), /* 820 w */ + S_ST( 'n', 3, 822, 0 ), /* 821 wa */ + S_ST( 'd', 3, 823, 0 ), /* 822 wan */ + S_ST( 'e', 3, 443, 0 ), /* 823 wand */ + S_ST( 'e', 3, 825, 820 ), /* 824 w */ + S_ST( 'e', 3, 431, 0 ), /* 825 we */ + S_ST( 'i', 3, 827, 824 ), /* 826 w */ + S_ST( 'l', 3, 828, 0 ), /* 827 wi */ + S_ST( 'd', 3, 829, 0 ), /* 828 wil */ + S_ST( 'c', 3, 830, 0 ), /* 829 wild */ + S_ST( 'a', 3, 831, 0 ), /* 830 wildc */ + S_ST( 'r', 3, 432, 0 ), /* 831 wildca */ + S_ST( 'x', 3, 833, 819 ), /* 832 */ + S_ST( 'l', 3, 834, 0 ), /* 833 x */ + S_ST( 'e', 3, 835, 0 ), /* 834 xl */ + S_ST( 'a', 3, 836, 0 ), /* 835 xle */ + S_ST( 'v', 3, 433, 0 ), /* 836 xlea */ + S_ST( 'y', 3, 838, 832 ), /* 837 [initial state] */ + S_ST( 'e', 3, 839, 0 ), /* 838 y */ + S_ST( 'a', 3, 434, 0 ) /* 839 ye */ }; diff --git a/ntpd/ntp_loopfilter.c b/ntpd/ntp_loopfilter.c index cbf3cda74..35a997187 100644 --- a/ntpd/ntp_loopfilter.c +++ b/ntpd/ntp_loopfilter.c @@ -106,7 +106,8 @@ /* * Program variables that can be tinkered. */ -double clock_max = CLOCK_MAX; /* step threshold */ +double clock_max_back = CLOCK_MAX; /* step threshold */ +double clock_max_fwd = CLOCK_MAX; /* step threshold */ double clock_minstep = CLOCK_MINSTEP; /* stepout threshold */ double clock_panic = CLOCK_PANIC; /* panic threshold */ double clock_phi = CLOCK_PHI; /* dispersion rate (s/s) */ @@ -404,7 +405,8 @@ local_clock( * directly to the terminal. */ if (mode_ntpdate) { - if (fabs(fp_offset) > clock_max && clock_max > 0) { + if ( ( fp_offset > clock_max_fwd && clock_max_fwd > 0) + || (-fp_offset > clock_max_back && clock_max_back > 0)) { step_systime(fp_offset); msyslog(LOG_NOTICE, "ntpd: time set %+.6f s", fp_offset); @@ -466,7 +468,8 @@ local_clock( mu = current_time - clock_epoch; clock_frequency = drift_comp; rval = 1; - if (fabs(fp_offset) > clock_max && clock_max > 0) { + if ( ( fp_offset > clock_max_fwd && clock_max_fwd > 0) + || (-fp_offset > clock_max_back && clock_max_back > 0)) { switch (state) { /* @@ -1222,8 +1225,27 @@ loop_config( break; case LOOP_MAX: /* step threshold (step) */ - clock_max = freq; - if (clock_max == 0 || clock_max > 0.5) + clock_max_fwd = clock_max_back = freq; + if (freq == 0 || freq > 0.5) + select_loop(FALSE); + break; + + case LOOP_MAX_BACK: /* step threshold (step) */ + clock_max_back = freq; + /* + * Leave using the kernel discipline code unless both + * limits are massive. This assumes the reason to stop + * using it is that it's pointless, not that it goes wrong. + */ + if ( (clock_max_back == 0 || clock_max_back > 0.5) + && (clock_max_fwd == 0 || clock_max_fwd > 0.5)) + select_loop(FALSE); + break; + + case LOOP_MAX_FWD: /* step threshold (step) */ + clock_max_fwd = freq; + if ( (clock_max_back == 0 || clock_max_back > 0.5) + && (clock_max_fwd == 0 || clock_max_fwd > 0.5)) select_loop(FALSE); break; diff --git a/ntpd/ntp_parser.c b/ntpd/ntp_parser.c index de3d73ced..0cf55197a 100644 --- a/ntpd/ntp_parser.c +++ b/ntpd/ntp_parser.c @@ -280,44 +280,46 @@ extern int yydebug; T_Stats = 404, T_Statsdir = 405, T_Step = 406, - T_Stepout = 407, - T_Stratum = 408, - T_String = 409, - T_Sys = 410, - T_Sysstats = 411, - T_Tick = 412, - T_Time1 = 413, - T_Time2 = 414, - T_Timer = 415, - T_Timingstats = 416, - T_Tinker = 417, - T_Tos = 418, - T_Trap = 419, - T_True = 420, - T_Trustedkey = 421, - T_Ttl = 422, - T_Type = 423, - T_U_int = 424, - T_Unconfig = 425, - T_Unpeer = 426, - T_Version = 427, - T_WanderThreshold = 428, - T_Week = 429, - T_Wildcard = 430, - T_Xleave = 431, - T_Year = 432, - T_Flag = 433, - T_EOC = 434, - T_Simulate = 435, - T_Beep_Delay = 436, - T_Sim_Duration = 437, - T_Server_Offset = 438, - T_Duration = 439, - T_Freq_Offset = 440, - T_Wander = 441, - T_Jitter = 442, - T_Prop_Delay = 443, - T_Proc_Delay = 444 + T_Stepback = 407, + T_Stepfwd = 408, + T_Stepout = 409, + T_Stratum = 410, + T_String = 411, + T_Sys = 412, + T_Sysstats = 413, + T_Tick = 414, + T_Time1 = 415, + T_Time2 = 416, + T_Timer = 417, + T_Timingstats = 418, + T_Tinker = 419, + T_Tos = 420, + T_Trap = 421, + T_True = 422, + T_Trustedkey = 423, + T_Ttl = 424, + T_Type = 425, + T_U_int = 426, + T_Unconfig = 427, + T_Unpeer = 428, + T_Version = 429, + T_WanderThreshold = 430, + T_Week = 431, + T_Wildcard = 432, + T_Xleave = 433, + T_Year = 434, + T_Flag = 435, + T_EOC = 436, + T_Simulate = 437, + T_Beep_Delay = 438, + T_Sim_Duration = 439, + T_Server_Offset = 440, + T_Duration = 441, + T_Freq_Offset = 442, + T_Wander = 443, + T_Jitter = 444, + T_Prop_Delay = 445, + T_Proc_Delay = 446 }; #endif /* Tokens. */ @@ -470,44 +472,46 @@ extern int yydebug; #define T_Stats 404 #define T_Statsdir 405 #define T_Step 406 -#define T_Stepout 407 -#define T_Stratum 408 -#define T_String 409 -#define T_Sys 410 -#define T_Sysstats 411 -#define T_Tick 412 -#define T_Time1 413 -#define T_Time2 414 -#define T_Timer 415 -#define T_Timingstats 416 -#define T_Tinker 417 -#define T_Tos 418 -#define T_Trap 419 -#define T_True 420 -#define T_Trustedkey 421 -#define T_Ttl 422 -#define T_Type 423 -#define T_U_int 424 -#define T_Unconfig 425 -#define T_Unpeer 426 -#define T_Version 427 -#define T_WanderThreshold 428 -#define T_Week 429 -#define T_Wildcard 430 -#define T_Xleave 431 -#define T_Year 432 -#define T_Flag 433 -#define T_EOC 434 -#define T_Simulate 435 -#define T_Beep_Delay 436 -#define T_Sim_Duration 437 -#define T_Server_Offset 438 -#define T_Duration 439 -#define T_Freq_Offset 440 -#define T_Wander 441 -#define T_Jitter 442 -#define T_Prop_Delay 443 -#define T_Proc_Delay 444 +#define T_Stepback 407 +#define T_Stepfwd 408 +#define T_Stepout 409 +#define T_Stratum 410 +#define T_String 411 +#define T_Sys 412 +#define T_Sysstats 413 +#define T_Tick 414 +#define T_Time1 415 +#define T_Time2 416 +#define T_Timer 417 +#define T_Timingstats 418 +#define T_Tinker 419 +#define T_Tos 420 +#define T_Trap 421 +#define T_True 422 +#define T_Trustedkey 423 +#define T_Ttl 424 +#define T_Type 425 +#define T_U_int 426 +#define T_Unconfig 427 +#define T_Unpeer 428 +#define T_Version 429 +#define T_WanderThreshold 430 +#define T_Week 431 +#define T_Wildcard 432 +#define T_Xleave 433 +#define T_Year 434 +#define T_Flag 435 +#define T_EOC 436 +#define T_Simulate 437 +#define T_Beep_Delay 438 +#define T_Sim_Duration 439 +#define T_Server_Offset 440 +#define T_Duration 441 +#define T_Freq_Offset 442 +#define T_Wander 443 +#define T_Jitter 444 +#define T_Prop_Delay 445 +#define T_Proc_Delay 446 /* Value type. */ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED @@ -533,7 +537,7 @@ union YYSTYPE script_info * Sim_script; script_info_fifo * Sim_script_fifo; -#line 537 "ntp_parser.c" /* yacc.c:355 */ +#line 541 "ntp_parser.c" /* yacc.c:355 */ }; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 @@ -548,7 +552,7 @@ int yyparse (struct FILE_INFO *ip_file); /* Copy the second part of user declarations. */ -#line 552 "ntp_parser.c" /* yacc.c:358 */ +#line 556 "ntp_parser.c" /* yacc.c:358 */ #ifdef short # undef short @@ -788,23 +792,23 @@ union yyalloc #endif /* !YYCOPY_NEEDED */ /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 205 +#define YYFINAL 207 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 634 +#define YYLAST 622 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 195 +#define YYNTOKENS 197 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 104 /* YYNRULES -- Number of rules. */ -#define YYNRULES 308 +#define YYNRULES 310 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 413 +#define YYNSTATES 415 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 444 +#define YYMAXUTOK 446 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -817,15 +821,15 @@ static const yytype_uint8 yytranslate[] = 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 191, 192, 2, 2, 2, 2, 2, 2, 2, 2, + 193, 194, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 190, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 192, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 193, 2, 194, 2, 2, 2, 2, + 2, 2, 2, 195, 2, 196, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -857,44 +861,45 @@ static const yytype_uint8 yytranslate[] = 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189 + 185, 186, 187, 188, 189, 190, 191 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 364, 364, 368, 369, 370, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 405, 415, 416, 417, 418, 419, 423, 424, 429, 434, - 436, 442, 443, 451, 452, 453, 457, 462, 463, 464, - 465, 466, 467, 468, 469, 473, 475, 480, 481, 482, - 483, 484, 485, 489, 494, 503, 513, 514, 524, 526, - 528, 530, 541, 548, 550, 555, 557, 559, 561, 563, - 572, 578, 579, 587, 589, 601, 602, 603, 604, 605, - 614, 619, 624, 632, 634, 636, 641, 642, 643, 644, - 645, 646, 650, 651, 652, 653, 662, 664, 673, 683, - 688, 696, 697, 698, 699, 700, 701, 702, 703, 708, - 709, 717, 727, 736, 751, 756, 757, 761, 762, 766, - 767, 768, 769, 770, 771, 772, 781, 785, 789, 797, - 805, 813, 828, 843, 856, 857, 865, 866, 867, 868, - 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, - 879, 883, 888, 896, 901, 902, 903, 907, 912, 920, - 925, 926, 927, 928, 929, 930, 931, 932, 940, 950, - 955, 963, 965, 967, 969, 971, 976, 977, 981, 982, - 983, 984, 992, 997, 1002, 1010, 1015, 1016, 1017, 1026, - 1028, 1033, 1038, 1046, 1048, 1065, 1066, 1067, 1068, 1069, - 1070, 1074, 1075, 1083, 1088, 1093, 1101, 1106, 1107, 1108, - 1109, 1110, 1111, 1112, 1113, 1122, 1123, 1124, 1131, 1138, - 1154, 1173, 1178, 1180, 1182, 1184, 1186, 1193, 1198, 1199, - 1200, 1204, 1205, 1206, 1210, 1211, 1215, 1222, 1232, 1241, - 1246, 1248, 1253, 1254, 1262, 1264, 1272, 1277, 1285, 1310, - 1317, 1327, 1328, 1332, 1333, 1334, 1335, 1339, 1340, 1341, - 1345, 1350, 1355, 1363, 1364, 1365, 1366, 1367, 1368, 1369, - 1379, 1384, 1392, 1397, 1405, 1407, 1411, 1416, 1421, 1429, - 1434, 1442, 1451, 1452, 1456, 1457, 1466, 1484, 1488, 1493, - 1501, 1506, 1507, 1511, 1516, 1524, 1529, 1534, 1539, 1544, - 1552, 1557, 1562, 1570, 1575, 1576, 1577, 1578, 1579 + 0, 366, 366, 370, 371, 372, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 407, 417, 418, 419, 420, 421, 425, 426, 431, 436, + 438, 444, 445, 453, 454, 455, 459, 464, 465, 466, + 467, 468, 469, 470, 471, 475, 477, 482, 483, 484, + 485, 486, 487, 491, 496, 505, 515, 516, 526, 528, + 530, 532, 543, 550, 552, 557, 559, 561, 563, 565, + 574, 580, 581, 589, 591, 603, 604, 605, 606, 607, + 616, 621, 626, 634, 636, 638, 643, 644, 645, 646, + 647, 648, 652, 653, 654, 655, 664, 666, 675, 685, + 690, 698, 699, 700, 701, 702, 703, 704, 705, 710, + 711, 719, 729, 738, 753, 758, 759, 763, 764, 768, + 769, 770, 771, 772, 773, 774, 783, 787, 791, 799, + 807, 815, 830, 845, 858, 859, 867, 868, 869, 870, + 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, + 881, 885, 890, 898, 903, 904, 905, 909, 914, 922, + 927, 928, 929, 930, 931, 932, 933, 934, 942, 952, + 957, 965, 967, 969, 971, 973, 978, 979, 983, 984, + 985, 986, 994, 999, 1004, 1012, 1017, 1018, 1019, 1028, + 1030, 1035, 1040, 1048, 1050, 1067, 1068, 1069, 1070, 1071, + 1072, 1076, 1077, 1085, 1090, 1095, 1103, 1108, 1109, 1110, + 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1126, 1127, 1128, + 1135, 1142, 1158, 1177, 1182, 1184, 1186, 1188, 1190, 1197, + 1202, 1203, 1204, 1208, 1209, 1210, 1214, 1215, 1219, 1226, + 1236, 1245, 1250, 1252, 1257, 1258, 1266, 1268, 1276, 1281, + 1289, 1314, 1321, 1331, 1332, 1336, 1337, 1338, 1339, 1343, + 1344, 1345, 1349, 1354, 1359, 1367, 1368, 1369, 1370, 1371, + 1372, 1373, 1383, 1388, 1396, 1401, 1409, 1411, 1415, 1420, + 1425, 1433, 1438, 1446, 1455, 1456, 1460, 1461, 1470, 1488, + 1492, 1497, 1505, 1510, 1511, 1515, 1520, 1528, 1533, 1538, + 1543, 1548, 1556, 1561, 1566, 1574, 1579, 1580, 1581, 1582, + 1583 }; #endif @@ -932,31 +937,32 @@ static const char *const yytname[] = "T_Rawstats", "T_Refid", "T_Requestkey", "T_Reset", "T_Restrict", "T_Revoke", "T_Rlimit", "T_Saveconfigdir", "T_Server", "T_Setvar", "T_Source", "T_Stacksize", "T_Statistics", "T_Stats", "T_Statsdir", - "T_Step", "T_Stepout", "T_Stratum", "T_String", "T_Sys", "T_Sysstats", - "T_Tick", "T_Time1", "T_Time2", "T_Timer", "T_Timingstats", "T_Tinker", - "T_Tos", "T_Trap", "T_True", "T_Trustedkey", "T_Ttl", "T_Type", - "T_U_int", "T_Unconfig", "T_Unpeer", "T_Version", "T_WanderThreshold", - "T_Week", "T_Wildcard", "T_Xleave", "T_Year", "T_Flag", "T_EOC", - "T_Simulate", "T_Beep_Delay", "T_Sim_Duration", "T_Server_Offset", - "T_Duration", "T_Freq_Offset", "T_Wander", "T_Jitter", "T_Prop_Delay", - "T_Proc_Delay", "'='", "'('", "')'", "'{'", "'}'", "$accept", - "configuration", "command_list", "command", "server_command", - "client_type", "address", "ip_address", "address_fam", "option_list", - "option", "option_flag", "option_flag_keyword", "option_int", - "option_int_keyword", "option_str", "option_str_keyword", - "unpeer_command", "unpeer_keyword", "other_mode_command", - "authentication_command", "crypto_command_list", "crypto_command", - "crypto_str_keyword", "orphan_mode_command", "tos_option_list", - "tos_option", "tos_option_int_keyword", "tos_option_dbl_keyword", - "monitoring_command", "stats_list", "stat", "filegen_option_list", - "filegen_option", "link_nolink", "enable_disable", "filegen_type", - "access_control_command", "ac_flag_list", "access_control_flag", - "discard_option_list", "discard_option", "discard_option_keyword", - "mru_option_list", "mru_option", "mru_option_keyword", "fudge_command", - "fudge_factor_list", "fudge_factor", "fudge_factor_dbl_keyword", - "fudge_factor_bool_keyword", "rlimit_command", "rlimit_option_list", - "rlimit_option", "rlimit_option_keyword", "system_option_command", - "system_option_list", "system_option", "system_option_flag_keyword", + "T_Step", "T_Stepback", "T_Stepfwd", "T_Stepout", "T_Stratum", + "T_String", "T_Sys", "T_Sysstats", "T_Tick", "T_Time1", "T_Time2", + "T_Timer", "T_Timingstats", "T_Tinker", "T_Tos", "T_Trap", "T_True", + "T_Trustedkey", "T_Ttl", "T_Type", "T_U_int", "T_Unconfig", "T_Unpeer", + "T_Version", "T_WanderThreshold", "T_Week", "T_Wildcard", "T_Xleave", + "T_Year", "T_Flag", "T_EOC", "T_Simulate", "T_Beep_Delay", + "T_Sim_Duration", "T_Server_Offset", "T_Duration", "T_Freq_Offset", + "T_Wander", "T_Jitter", "T_Prop_Delay", "T_Proc_Delay", "'='", "'('", + "')'", "'{'", "'}'", "$accept", "configuration", "command_list", + "command", "server_command", "client_type", "address", "ip_address", + "address_fam", "option_list", "option", "option_flag", + "option_flag_keyword", "option_int", "option_int_keyword", "option_str", + "option_str_keyword", "unpeer_command", "unpeer_keyword", + "other_mode_command", "authentication_command", "crypto_command_list", + "crypto_command", "crypto_str_keyword", "orphan_mode_command", + "tos_option_list", "tos_option", "tos_option_int_keyword", + "tos_option_dbl_keyword", "monitoring_command", "stats_list", "stat", + "filegen_option_list", "filegen_option", "link_nolink", "enable_disable", + "filegen_type", "access_control_command", "ac_flag_list", + "access_control_flag", "discard_option_list", "discard_option", + "discard_option_keyword", "mru_option_list", "mru_option", + "mru_option_keyword", "fudge_command", "fudge_factor_list", + "fudge_factor", "fudge_factor_dbl_keyword", "fudge_factor_bool_keyword", + "rlimit_command", "rlimit_option_list", "rlimit_option", + "rlimit_option_keyword", "system_option_command", "system_option_list", + "system_option", "system_option_flag_keyword", "system_option_local_flag_keyword", "tinker_command", "tinker_option_list", "tinker_option", "tinker_option_keyword", "miscellaneous_command", "misc_cmd_dbl_keyword", "misc_cmd_str_keyword", @@ -998,14 +1004,14 @@ static const yytype_uint16 yytoknum[] = 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 61, 40, 41, 123, 125 + 445, 446, 61, 40, 41, 123, 125 }; # endif -#define YYPACT_NINF -180 +#define YYPACT_NINF -182 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-180))) + (!!((Yystate) == (-182))) #define YYTABLE_NINF -7 @@ -1016,48 +1022,48 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - 26, -147, -9, -180, -180, -180, -6, -180, 222, 9, - -96, 222, -180, 276, -41, -180, -93, -180, -90, -86, - -180, -84, -180, -180, -41, 0, 443, -41, -180, -180, - -83, -180, -82, -180, -180, 20, 27, -20, 21, -19, - -180, -180, -68, 276, -66, -180, 221, 328, -65, -55, - 38, -180, -180, -180, 99, 188, -69, -180, -41, -180, - -41, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -180, -3, -40, -39, -180, -4, -180, -180, -77, -180, - -180, -180, 254, -180, -180, -180, -180, -180, -180, -180, - -180, 222, -180, -180, -180, -180, -180, -180, 9, -180, - 47, 90, -180, 222, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -180, -180, -180, 98, -180, -31, 347, - -180, -180, -180, -84, -180, -180, -41, -180, -180, -180, - -180, -180, -180, -180, -180, -180, 443, -180, 61, -41, - -180, -180, -30, -180, -180, -180, -180, -180, -180, -180, - -180, 27, -180, -180, 102, 106, -180, -180, 55, -180, - -180, -180, -180, -19, -180, 87, -42, -180, 276, -180, - -180, -180, -180, -180, -180, -180, -180, -180, -180, 221, - -180, -3, -180, -180, -27, -180, -180, -180, -180, -180, - -180, -180, -180, 328, -180, 91, -3, -180, -180, 93, - -55, -180, -180, -180, 96, -180, -21, -180, -180, -180, - -180, -180, -180, -180, -180, -180, -180, -180, 3, -144, - -180, -180, -180, -180, -180, 100, -180, -5, -180, -180, - -180, -180, -23, 5, -180, -180, -180, -180, 7, 103, - -180, -180, 98, -180, -3, -27, -180, -180, -180, -180, - -180, -180, -180, -180, 462, -180, -180, 462, 462, -65, - -180, -180, 8, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -47, 138, -180, -180, -180, 425, -180, - -180, -180, -180, -180, -180, -180, -180, -105, -2, -15, - -180, -180, -180, -180, 25, -180, -180, 17, -180, -180, - -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, 462, 462, -180, 154, -65, 124, -180, - 125, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -51, -180, 32, 10, 16, -116, -180, 6, -180, -3, - -180, -180, -180, -180, -180, -180, -180, -180, -180, 462, - -180, -180, -180, -180, 15, -180, -180, -180, -41, -180, - -180, -180, 18, -180, -180, -180, 22, 24, -3, 23, - -169, -180, 36, -3, -180, -180, -180, 29, -94, -180, - -180, -180, -180, -180, 89, 37, 30, -180, 40, -180, - -3, -180, -180 + 18, -161, -18, -182, -182, -182, -10, -182, 189, 11, + -103, 189, -182, 7, -49, -182, -100, -182, -97, -90, + -182, -84, -182, -182, -49, 13, 365, -49, -182, -182, + -81, -182, -80, -182, -182, 20, 86, 104, 21, -33, + -182, -182, -73, 7, -72, -182, 51, 500, -71, -54, + 26, -182, -182, -182, 90, 205, -83, -182, -49, -182, + -49, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, -8, -65, -51, -182, -9, -182, -182, -91, -182, + -182, -182, -15, -182, -182, -182, -182, -182, -182, -182, + -182, 189, -182, -182, -182, -182, -182, -182, 11, -182, + 46, 85, -182, 189, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, -182, 92, -182, -35, 366, + -182, -182, -182, -84, -182, -182, -49, -182, -182, -182, + -182, -182, -182, -182, -182, -182, 365, -182, 68, -49, + -182, -182, -23, -182, -182, -182, -182, -182, -182, -182, + -182, 86, -182, -182, 114, 121, -182, -182, 67, -182, + -182, -182, -182, -33, -182, 93, -28, -182, 7, -182, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, 51, -182, -8, -182, -182, -17, -182, -182, -182, + -182, -182, -182, -182, -182, 500, -182, 107, -8, -182, + -182, 112, -54, -182, -182, -182, 113, -182, 8, -182, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -2, -147, -182, -182, -182, -182, -182, 128, -182, 25, + -182, -182, -182, -182, 116, 37, -182, -182, -182, -182, + 38, 135, -182, -182, 92, -182, -8, -17, -182, -182, + -182, -182, -182, -182, -182, -182, 445, -182, -182, 445, + 445, -71, -182, -182, 40, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, -52, 163, -182, -182, -182, + 261, -182, -182, -182, -182, -182, -182, -182, -182, -114, + 27, 14, -182, -182, -182, -182, 55, -182, -182, 0, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, 445, 445, -182, 185, -71, + 153, -182, 156, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -53, -182, 61, 30, 43, -133, -182, 23, + -182, -8, -182, -182, -182, -182, -182, -182, -182, -182, + -182, 445, -182, -182, -182, -182, 32, -182, -182, -182, + -49, -182, -182, -182, 45, -182, -182, -182, 41, 50, + -8, 47, -157, -182, 56, -8, -182, -182, -182, 49, + 130, -182, -182, -182, -182, -182, 110, 59, 54, -182, + 70, -182, -8, -182, -182 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1065,80 +1071,80 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 0, 0, 24, 58, 228, 0, 71, 0, 0, - 238, 0, 221, 0, 0, 231, 0, 251, 0, 0, - 232, 0, 234, 25, 0, 0, 0, 0, 252, 229, - 0, 23, 0, 233, 22, 0, 0, 0, 0, 0, - 235, 21, 0, 0, 0, 230, 0, 0, 0, 0, - 0, 56, 57, 287, 0, 2, 0, 7, 0, 8, + 0, 0, 0, 24, 58, 230, 0, 71, 0, 0, + 240, 0, 223, 0, 0, 233, 0, 253, 0, 0, + 234, 0, 236, 25, 0, 0, 0, 0, 254, 231, + 0, 23, 0, 235, 22, 0, 0, 0, 0, 0, + 237, 21, 0, 0, 0, 232, 0, 0, 0, 0, + 0, 56, 57, 289, 0, 2, 0, 7, 0, 8, 0, 9, 10, 13, 11, 12, 14, 15, 16, 17, - 18, 0, 0, 0, 215, 0, 216, 19, 0, 5, + 18, 0, 0, 0, 217, 0, 218, 19, 0, 5, 62, 63, 64, 195, 196, 197, 198, 201, 199, 200, 202, 190, 192, 193, 194, 154, 155, 156, 126, 152, - 0, 236, 222, 189, 101, 102, 103, 104, 108, 105, + 0, 238, 224, 189, 101, 102, 103, 104, 108, 105, 106, 107, 109, 29, 30, 28, 0, 26, 0, 6, - 65, 66, 248, 223, 247, 280, 59, 61, 160, 161, + 65, 66, 250, 225, 249, 282, 59, 61, 160, 161, 162, 163, 164, 165, 166, 167, 127, 158, 0, 60, - 70, 278, 224, 67, 263, 264, 265, 266, 267, 268, - 269, 260, 262, 134, 29, 30, 134, 134, 26, 68, - 188, 186, 187, 182, 184, 0, 0, 225, 96, 100, - 97, 207, 208, 209, 210, 211, 212, 213, 214, 203, - 205, 0, 91, 86, 0, 87, 95, 93, 94, 92, - 90, 88, 89, 80, 82, 0, 0, 242, 274, 0, - 69, 273, 275, 271, 227, 1, 0, 4, 31, 55, - 285, 284, 217, 218, 219, 259, 258, 257, 0, 0, - 79, 75, 76, 77, 78, 0, 72, 0, 191, 151, - 153, 237, 98, 0, 178, 179, 180, 181, 0, 0, - 176, 177, 168, 170, 0, 0, 27, 220, 246, 279, - 157, 159, 277, 261, 130, 134, 134, 133, 128, 0, - 183, 185, 0, 99, 204, 206, 283, 281, 282, 85, - 81, 83, 84, 226, 0, 272, 270, 3, 20, 253, - 254, 255, 250, 256, 249, 291, 292, 0, 0, 0, - 74, 73, 118, 117, 0, 115, 116, 0, 110, 113, - 114, 174, 175, 173, 169, 171, 172, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 135, 131, 132, 134, 241, 0, 0, 243, - 0, 37, 38, 39, 54, 47, 49, 48, 51, 40, - 41, 42, 43, 50, 52, 44, 32, 33, 36, 34, - 0, 35, 0, 0, 0, 0, 294, 0, 289, 0, - 111, 125, 121, 123, 119, 120, 122, 124, 112, 129, - 240, 239, 245, 244, 0, 45, 46, 53, 0, 288, - 286, 293, 0, 290, 276, 297, 0, 0, 0, 0, - 0, 299, 0, 0, 295, 298, 296, 0, 0, 304, - 305, 306, 307, 308, 0, 0, 0, 300, 0, 302, - 0, 301, 303 + 70, 280, 226, 67, 265, 266, 267, 268, 269, 270, + 271, 262, 264, 134, 29, 30, 134, 134, 26, 68, + 188, 186, 187, 182, 184, 0, 0, 227, 96, 100, + 97, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 203, 205, 0, 91, 86, 0, 87, 95, 93, + 94, 92, 90, 88, 89, 80, 82, 0, 0, 244, + 276, 0, 69, 275, 277, 273, 229, 1, 0, 4, + 31, 55, 287, 286, 219, 220, 221, 261, 260, 259, + 0, 0, 79, 75, 76, 77, 78, 0, 72, 0, + 191, 151, 153, 239, 98, 0, 178, 179, 180, 181, + 0, 0, 176, 177, 168, 170, 0, 0, 27, 222, + 248, 281, 157, 159, 279, 263, 130, 134, 134, 133, + 128, 0, 183, 185, 0, 99, 204, 206, 285, 283, + 284, 85, 81, 83, 84, 228, 0, 274, 272, 3, + 20, 255, 256, 257, 252, 258, 251, 293, 294, 0, + 0, 0, 74, 73, 118, 117, 0, 115, 116, 0, + 110, 113, 114, 174, 175, 173, 169, 171, 172, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 135, 131, 132, 134, 243, 0, + 0, 245, 0, 37, 38, 39, 54, 47, 49, 48, + 51, 40, 41, 42, 43, 50, 52, 44, 32, 33, + 36, 34, 0, 35, 0, 0, 0, 0, 296, 0, + 291, 0, 111, 125, 121, 123, 119, 120, 122, 124, + 112, 129, 242, 241, 247, 246, 0, 45, 46, 53, + 0, 290, 288, 295, 0, 292, 278, 299, 0, 0, + 0, 0, 0, 301, 0, 0, 297, 300, 298, 0, + 0, 306, 307, 308, 309, 310, 0, 0, 0, 302, + 0, 304, 0, 303, 305 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -180, -180, -180, -37, -180, -180, -14, -36, -180, -180, - -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -180, -180, -180, 33, -180, -180, -180, - -180, -33, -180, -180, -180, -180, -180, -180, -153, -180, - -180, 131, -180, -180, 97, -180, -180, -180, -10, -180, - -180, -180, -180, 73, -180, -180, 227, -72, -180, -180, - -180, -180, 60, -180, -180, -180, -180, -180, -180, -180, - -180, -180, -180, -180, 119, -180, -180, -180, -180, -180, - -180, 92, -180, -180, 44, -180, -180, 218, 1, -179, - -180, -180, -180, -34, -180, -180, -107, -180, -180, -180, - -140, -180, -150, -180 + -182, -182, -182, -45, -182, -182, -14, -36, -182, -182, + -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, -182, -182, 60, -182, -182, -182, + -182, -38, -182, -182, -182, -182, -182, -182, -142, -182, + -182, 134, -182, -182, 120, -182, -182, -182, 5, -182, + -182, -182, -182, 96, -182, -182, 250, -42, -182, -182, + -182, -182, 81, -182, -182, -182, -182, -182, -182, -182, + -182, -182, -182, -182, 140, -182, -182, -182, -182, -182, + -182, 117, -182, -182, 63, -182, -182, 240, 22, -181, + -182, -182, -182, -16, -182, -182, -86, -182, -182, -182, + -120, -182, -132, -182 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 54, 55, 56, 57, 58, 125, 117, 118, 278, - 346, 347, 348, 349, 350, 351, 352, 59, 60, 61, - 62, 82, 226, 227, 63, 193, 194, 195, 196, 64, - 168, 112, 232, 298, 299, 300, 368, 65, 254, 322, - 98, 99, 100, 136, 137, 138, 66, 242, 243, 244, - 245, 67, 163, 164, 165, 68, 91, 92, 93, 94, - 69, 179, 180, 181, 70, 71, 72, 73, 102, 167, - 371, 273, 329, 123, 124, 74, 75, 284, 218, 76, - 151, 152, 204, 200, 201, 202, 142, 126, 269, 212, - 77, 78, 287, 288, 289, 355, 356, 387, 357, 390, - 391, 404, 405, 406 + -1, 54, 55, 56, 57, 58, 125, 117, 118, 280, + 348, 349, 350, 351, 352, 353, 354, 59, 60, 61, + 62, 82, 228, 229, 63, 195, 196, 197, 198, 64, + 168, 112, 234, 300, 301, 302, 370, 65, 256, 324, + 98, 99, 100, 136, 137, 138, 66, 244, 245, 246, + 247, 67, 163, 164, 165, 68, 91, 92, 93, 94, + 69, 181, 182, 183, 70, 71, 72, 73, 102, 167, + 373, 275, 331, 123, 124, 74, 75, 286, 220, 76, + 151, 152, 206, 202, 203, 204, 142, 126, 271, 214, + 77, 78, 289, 290, 291, 357, 358, 389, 359, 392, + 393, 406, 407, 408 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1146,138 +1152,136 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 116, 158, 265, 257, 258, 198, 292, 153, 279, 375, - 169, 266, 197, 293, 327, 389, 294, 272, 206, 228, - 95, 361, 160, 157, 113, 394, 114, 1, 353, 210, - 215, 228, 79, 267, 144, 145, 2, 285, 286, 353, - 3, 4, 5, 362, 208, 154, 209, 155, 6, 7, - 216, 80, 146, 295, 81, 8, 9, 211, 101, 10, - 127, 119, 11, 12, 120, 305, 13, 280, 121, 281, - 122, 140, 141, 217, 161, 14, 285, 286, 380, 15, - 143, 159, 247, 328, 296, 16, 166, 17, 170, 115, - 147, 399, 400, 401, 402, 403, 18, 19, 203, 205, - 20, 233, 323, 324, 21, 22, 96, 230, 23, 24, - 207, 97, 249, 115, 213, 214, 219, 25, 376, 148, - 363, 251, 231, 246, 252, 249, 156, 364, 162, 255, - 26, 27, 28, 256, 115, 263, 199, 29, 268, 259, - 234, 235, 236, 237, 365, 297, 30, 261, 262, 291, - 31, 271, 32, 274, 33, 34, 276, 282, 277, 301, - 290, 302, 326, 303, 35, 36, 37, 38, 39, 40, - 41, 42, 369, 330, 43, 359, 44, 358, 283, 360, - 383, 370, 149, 45, 373, 374, 377, 150, 46, 47, - 48, 366, 49, 50, 367, 379, 51, 52, 2, 382, - 378, 386, 3, 4, 5, -6, 53, 384, 389, 392, - 6, 7, 388, 393, 397, 396, 409, 8, 9, 411, - 410, 10, 398, 325, 11, 12, 270, 171, 13, 229, - 83, 412, 304, 250, 84, 238, 260, 14, 103, 264, - 85, 15, 248, 253, 275, 139, 306, 16, 381, 17, - 395, 239, 172, 354, 408, 0, 240, 241, 18, 19, - 0, 0, 20, 0, 0, 0, 21, 22, 0, 173, - 23, 24, 174, 0, 399, 400, 401, 402, 403, 25, - 0, 0, 220, 407, 0, 0, 0, 0, 0, 0, - 86, 372, 26, 27, 28, 0, 104, 0, 0, 29, - 105, 0, 0, 0, 221, 0, 0, 222, 30, 0, - 0, 0, 31, 0, 32, 0, 33, 34, 0, 0, - 0, 0, 0, 87, 88, 0, 35, 36, 37, 38, - 39, 40, 41, 42, 0, 0, 43, 0, 44, 0, - 89, 182, 0, 0, 175, 45, 0, 183, 0, 184, - 46, 47, 48, 0, 49, 50, 106, 2, 51, 52, - 0, 3, 4, 5, 385, 0, 0, -6, 53, 6, - 7, 90, 176, 177, 0, 185, 8, 9, 178, 0, - 10, 0, 0, 11, 12, 0, 0, 13, 223, 224, - 0, 0, 0, 0, 0, 225, 14, 0, 0, 0, - 15, 107, 0, 0, 0, 0, 16, 0, 17, 108, - 0, 0, 109, 0, 186, 0, 187, 18, 19, 0, - 0, 20, 188, 0, 189, 21, 22, 190, 0, 23, - 24, 0, 110, 0, 331, 0, 0, 111, 25, 0, - 0, 0, 332, 0, 0, 0, 0, 0, 0, 191, - 192, 26, 27, 28, 0, 0, 0, 0, 29, 0, - 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, - 0, 31, 0, 32, 0, 33, 34, 333, 334, 0, - 0, 0, 0, 0, 0, 35, 36, 37, 38, 39, - 40, 41, 42, 0, 335, 43, 0, 44, 128, 129, - 130, 131, 0, 0, 45, 0, 0, 0, 307, 46, - 47, 48, 0, 49, 50, 336, 308, 51, 52, 0, - 0, 0, 0, 337, 0, 338, 0, 53, 132, 0, - 133, 0, 134, 0, 309, 310, 0, 311, 135, 339, - 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 340, 341, 0, 0, + 116, 158, 267, 281, 363, 169, 200, 377, 160, 329, + 208, 355, 199, 222, 259, 260, 113, 274, 114, 1, + 79, 268, 95, 157, 212, 217, 364, 104, 2, 391, + 355, 105, 3, 4, 5, 223, 287, 288, 224, 396, + 6, 7, 80, 269, 210, 218, 211, 8, 9, 230, + 81, 10, 213, 101, 11, 12, 119, 171, 13, 120, + 161, 230, 282, 382, 283, 307, 121, 14, 219, 287, + 288, 15, 122, 127, 249, 140, 141, 16, 330, 17, + 143, 159, 172, 166, 170, 115, 205, 106, 18, 19, + 207, 215, 20, 144, 145, 235, 21, 22, 209, 173, + 23, 24, 174, 365, 221, 216, 232, 115, 96, 25, + 366, 146, 251, 97, 162, 325, 326, 233, 378, 225, + 226, 248, 26, 27, 28, 251, 227, 367, 253, 29, + 265, 153, 107, 254, 236, 237, 238, 239, 30, 201, + 108, 257, 31, 109, 32, 294, 33, 34, 258, 147, + 270, 261, 295, 263, 284, 296, 35, 36, 37, 38, + 39, 40, 41, 42, 264, 110, 43, 273, 44, 154, + 111, 155, 276, 278, 175, 285, 368, 45, 148, 369, + 385, 293, 46, 47, 48, 371, 49, 50, 292, 279, + 51, 52, 297, 303, 304, 305, 328, 83, 332, -6, + 53, 84, 176, 177, 178, 179, 361, 85, 360, 394, + 180, 362, 372, 375, 399, 2, 376, 379, 384, 3, + 4, 5, 380, 298, 381, 327, 386, 6, 7, 240, + 388, 414, 231, 390, 8, 9, 391, 398, 10, 395, + 411, 11, 12, 149, 400, 13, 412, 241, 150, 306, + 156, 413, 242, 243, 14, 272, 252, 86, 15, 262, + 115, 103, 266, 250, 16, 277, 17, 139, 255, 308, + 333, 383, 397, 356, 410, 18, 19, 0, 334, 20, + 0, 0, 0, 21, 22, 0, 299, 23, 24, 0, + 87, 88, 0, 374, 0, 0, 25, 401, 402, 403, + 404, 405, 0, 0, 0, 0, 409, 89, 0, 26, + 27, 28, 0, 335, 336, 0, 29, 401, 402, 403, + 404, 405, 0, 0, 0, 30, 0, 0, 0, 31, + 337, 32, 0, 33, 34, 0, 0, 0, 90, 0, + 0, 0, 0, 35, 36, 37, 38, 39, 40, 41, + 42, 338, 0, 43, 0, 44, 0, 0, 0, 339, + 0, 340, 0, 0, 45, 0, 387, 0, 0, 46, + 47, 48, 0, 49, 50, 341, 2, 51, 52, 0, + 3, 4, 5, 0, 0, 0, -6, 53, 6, 7, + 0, 0, 342, 343, 0, 8, 9, 0, 0, 10, + 0, 0, 11, 12, 0, 0, 13, 0, 0, 0, + 0, 0, 0, 0, 0, 14, 0, 0, 0, 15, + 128, 129, 130, 131, 0, 16, 0, 17, 344, 0, + 345, 0, 0, 0, 0, 346, 18, 19, 0, 347, + 20, 0, 0, 0, 21, 22, 0, 0, 23, 24, + 132, 0, 133, 0, 134, 0, 0, 25, 0, 0, + 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 26, 27, 28, 0, 0, 0, 0, 29, 0, 0, + 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, + 31, 309, 32, 0, 33, 34, 0, 0, 0, 310, + 0, 0, 0, 0, 35, 36, 37, 38, 39, 40, + 41, 42, 0, 184, 43, 0, 44, 311, 312, 185, + 313, 186, 0, 0, 0, 45, 314, 0, 0, 0, + 46, 47, 48, 0, 49, 50, 0, 0, 51, 52, + 0, 0, 0, 0, 0, 0, 0, 187, 53, 0, + 0, 0, 0, 315, 316, 0, 0, 317, 318, 0, + 319, 320, 321, 0, 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 313, 314, 0, 0, 315, 316, 0, 317, 318, 319, - 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 342, 0, 343, 0, 0, 0, 0, 344, 0, 0, - 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 188, 0, 189, 0, + 0, 0, 0, 0, 190, 0, 191, 0, 0, 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 321 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 323, + 0, 193, 194 }; static const yytype_int16 yycheck[] = { - 14, 37, 181, 156, 157, 60, 29, 27, 5, 60, - 43, 38, 48, 36, 61, 184, 39, 196, 55, 91, - 11, 4, 41, 37, 65, 194, 67, 1, 144, 32, - 34, 103, 179, 60, 7, 8, 10, 181, 182, 144, - 14, 15, 16, 26, 58, 65, 60, 67, 22, 23, - 54, 60, 25, 76, 60, 29, 30, 60, 154, 33, - 60, 154, 36, 37, 154, 244, 40, 64, 154, 66, - 154, 154, 154, 77, 93, 49, 181, 182, 194, 53, - 60, 60, 119, 130, 107, 59, 154, 61, 154, 154, - 63, 185, 186, 187, 188, 189, 70, 71, 60, 0, - 74, 3, 255, 256, 78, 79, 97, 60, 82, 83, - 179, 102, 126, 154, 154, 154, 193, 91, 169, 92, - 103, 60, 32, 154, 154, 139, 146, 110, 147, 27, - 104, 105, 106, 27, 154, 168, 191, 111, 165, 84, - 42, 43, 44, 45, 127, 168, 120, 60, 190, 154, - 124, 60, 126, 60, 128, 129, 60, 154, 179, 154, - 60, 154, 154, 60, 138, 139, 140, 141, 142, 143, - 144, 145, 325, 35, 148, 190, 150, 179, 175, 154, - 359, 27, 155, 157, 60, 60, 154, 160, 162, 163, - 164, 174, 166, 167, 177, 179, 170, 171, 10, 193, - 190, 183, 14, 15, 16, 179, 180, 192, 184, 388, - 22, 23, 190, 190, 393, 179, 179, 29, 30, 179, - 190, 33, 193, 259, 36, 37, 193, 6, 40, 98, - 8, 410, 242, 136, 12, 137, 163, 49, 11, 179, - 18, 53, 123, 151, 200, 27, 245, 59, 355, 61, - 390, 153, 31, 287, 404, -1, 158, 159, 70, 71, - -1, -1, 74, -1, -1, -1, 78, 79, -1, 48, - 82, 83, 51, -1, 185, 186, 187, 188, 189, 91, - -1, -1, 28, 194, -1, -1, -1, -1, -1, -1, - 68, 327, 104, 105, 106, -1, 20, -1, -1, 111, - 24, -1, -1, -1, 50, -1, -1, 53, 120, -1, - -1, -1, 124, -1, 126, -1, 128, 129, -1, -1, - -1, -1, -1, 101, 102, -1, 138, 139, 140, 141, - 142, 143, 144, 145, -1, -1, 148, -1, 150, -1, - 118, 13, -1, -1, 123, 157, -1, 19, -1, 21, - 162, 163, 164, -1, 166, 167, 80, 10, 170, 171, - -1, 14, 15, 16, 378, -1, -1, 179, 180, 22, - 23, 149, 151, 152, -1, 47, 29, 30, 157, -1, - 33, -1, -1, 36, 37, -1, -1, 40, 134, 135, - -1, -1, -1, -1, -1, 141, 49, -1, -1, -1, - 53, 125, -1, -1, -1, -1, 59, -1, 61, 133, - -1, -1, 136, -1, 86, -1, 88, 70, 71, -1, - -1, 74, 94, -1, 96, 78, 79, 99, -1, 82, - 83, -1, 156, -1, 9, -1, -1, 161, 91, -1, - -1, -1, 17, -1, -1, -1, -1, -1, -1, 121, - 122, 104, 105, 106, -1, -1, -1, -1, 111, -1, - -1, -1, -1, -1, -1, -1, -1, 120, -1, -1, - -1, 124, -1, 126, -1, 128, 129, 52, 53, -1, - -1, -1, -1, -1, -1, 138, 139, 140, 141, 142, - 143, 144, 145, -1, 69, 148, -1, 150, 55, 56, - 57, 58, -1, -1, 157, -1, -1, -1, 46, 162, - 163, 164, -1, 166, 167, 90, 54, 170, 171, -1, - -1, -1, -1, 98, -1, 100, -1, 180, 85, -1, - 87, -1, 89, -1, 72, 73, -1, 75, 95, 114, - -1, -1, -1, 81, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 131, 132, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 108, 109, -1, -1, 112, 113, -1, 115, 116, 117, - -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, - 165, -1, 167, -1, -1, -1, -1, 172, -1, -1, - -1, 176, -1, -1, -1, -1, -1, -1, -1, -1, + 14, 37, 183, 5, 4, 43, 60, 60, 41, 61, + 55, 144, 48, 28, 156, 157, 65, 198, 67, 1, + 181, 38, 11, 37, 32, 34, 26, 20, 10, 186, + 144, 24, 14, 15, 16, 50, 183, 184, 53, 196, + 22, 23, 60, 60, 58, 54, 60, 29, 30, 91, + 60, 33, 60, 156, 36, 37, 156, 6, 40, 156, + 93, 103, 64, 196, 66, 246, 156, 49, 77, 183, + 184, 53, 156, 60, 119, 156, 156, 59, 130, 61, + 60, 60, 31, 156, 156, 156, 60, 80, 70, 71, + 0, 156, 74, 7, 8, 3, 78, 79, 181, 48, + 82, 83, 51, 103, 195, 156, 60, 156, 97, 91, + 110, 25, 126, 102, 147, 257, 258, 32, 171, 134, + 135, 156, 104, 105, 106, 139, 141, 127, 60, 111, + 168, 27, 125, 156, 42, 43, 44, 45, 120, 193, + 133, 27, 124, 136, 126, 29, 128, 129, 27, 63, + 167, 84, 36, 60, 156, 39, 138, 139, 140, 141, + 142, 143, 144, 145, 192, 158, 148, 60, 150, 65, + 163, 67, 60, 60, 123, 177, 176, 159, 92, 179, + 361, 156, 164, 165, 166, 327, 168, 169, 60, 181, + 172, 173, 76, 156, 156, 60, 156, 8, 35, 181, + 182, 12, 151, 152, 153, 154, 192, 18, 181, 390, + 159, 156, 27, 60, 395, 10, 60, 156, 195, 14, + 15, 16, 192, 107, 181, 261, 194, 22, 23, 137, + 185, 412, 98, 192, 29, 30, 186, 181, 33, 192, + 181, 36, 37, 157, 195, 40, 192, 155, 162, 244, + 146, 181, 160, 161, 49, 195, 136, 68, 53, 163, + 156, 11, 181, 123, 59, 202, 61, 27, 151, 247, + 9, 357, 392, 289, 406, 70, 71, -1, 17, 74, + -1, -1, -1, 78, 79, -1, 170, 82, 83, -1, + 101, 102, -1, 329, -1, -1, 91, 187, 188, 189, + 190, 191, -1, -1, -1, -1, 196, 118, -1, 104, + 105, 106, -1, 52, 53, -1, 111, 187, 188, 189, + 190, 191, -1, -1, -1, 120, -1, -1, -1, 124, + 69, 126, -1, 128, 129, -1, -1, -1, 149, -1, + -1, -1, -1, 138, 139, 140, 141, 142, 143, 144, + 145, 90, -1, 148, -1, 150, -1, -1, -1, 98, + -1, 100, -1, -1, 159, -1, 380, -1, -1, 164, + 165, 166, -1, 168, 169, 114, 10, 172, 173, -1, + 14, 15, 16, -1, -1, -1, 181, 182, 22, 23, + -1, -1, 131, 132, -1, 29, 30, -1, -1, 33, + -1, -1, 36, 37, -1, -1, 40, -1, -1, -1, + -1, -1, -1, -1, -1, 49, -1, -1, -1, 53, + 55, 56, 57, 58, -1, 59, -1, 61, 167, -1, + 169, -1, -1, -1, -1, 174, 70, 71, -1, 178, + 74, -1, -1, -1, 78, 79, -1, -1, 82, 83, + 85, -1, 87, -1, 89, -1, -1, 91, -1, -1, + 95, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 104, 105, 106, -1, -1, -1, -1, 111, -1, -1, + -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, + 124, 46, 126, -1, 128, 129, -1, -1, -1, 54, + -1, -1, -1, -1, 138, 139, 140, 141, 142, 143, + 144, 145, -1, 13, 148, -1, 150, 72, 73, 19, + 75, 21, -1, -1, -1, 159, 81, -1, -1, -1, + 164, 165, 166, -1, 168, 169, -1, -1, 172, 173, + -1, -1, -1, -1, -1, -1, -1, 47, 182, -1, + -1, -1, -1, 108, 109, -1, -1, 112, 113, -1, + 115, 116, 117, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 86, -1, 88, -1, + -1, -1, -1, -1, 94, -1, 96, -1, -1, 99, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 172 + -1, -1, -1, -1, -1, -1, -1, -1, -1, 174, + -1, 121, 122 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1288,80 +1292,81 @@ static const yytype_uint16 yystos[] = 33, 36, 37, 40, 49, 53, 59, 61, 70, 71, 74, 78, 79, 82, 83, 91, 104, 105, 106, 111, 120, 124, 126, 128, 129, 138, 139, 140, 141, 142, - 143, 144, 145, 148, 150, 157, 162, 163, 164, 166, - 167, 170, 171, 180, 196, 197, 198, 199, 200, 212, - 213, 214, 215, 219, 224, 232, 241, 246, 250, 255, - 259, 260, 261, 262, 270, 271, 274, 285, 286, 179, - 60, 60, 216, 8, 12, 18, 68, 101, 102, 118, - 149, 251, 252, 253, 254, 11, 97, 102, 235, 236, - 237, 154, 263, 251, 20, 24, 80, 125, 133, 136, - 156, 161, 226, 65, 67, 154, 201, 202, 203, 154, - 154, 154, 154, 268, 269, 201, 282, 60, 55, 56, - 57, 58, 85, 87, 89, 95, 238, 239, 240, 282, - 154, 154, 281, 60, 7, 8, 25, 63, 92, 155, - 160, 275, 276, 27, 65, 67, 146, 201, 202, 60, - 41, 93, 147, 247, 248, 249, 154, 264, 225, 226, - 154, 6, 31, 48, 51, 123, 151, 152, 157, 256, - 257, 258, 13, 19, 21, 47, 86, 88, 94, 96, - 99, 121, 122, 220, 221, 222, 223, 202, 60, 191, - 278, 279, 280, 60, 277, 0, 198, 179, 201, 201, - 32, 60, 284, 154, 154, 34, 54, 77, 273, 193, - 28, 50, 53, 134, 135, 141, 217, 218, 252, 236, - 60, 32, 227, 3, 42, 43, 44, 45, 137, 153, - 158, 159, 242, 243, 244, 245, 154, 198, 269, 201, - 239, 60, 154, 276, 233, 27, 27, 233, 233, 84, - 248, 60, 190, 226, 257, 284, 38, 60, 165, 283, - 221, 60, 284, 266, 60, 279, 60, 179, 204, 5, - 64, 66, 154, 175, 272, 181, 182, 287, 288, 289, - 60, 154, 29, 36, 39, 76, 107, 168, 228, 229, - 230, 154, 154, 60, 243, 284, 283, 46, 54, 72, - 73, 75, 81, 108, 109, 112, 113, 115, 116, 117, - 119, 172, 234, 233, 233, 202, 154, 61, 130, 267, - 35, 9, 17, 52, 53, 69, 90, 98, 100, 114, - 131, 132, 165, 167, 172, 176, 205, 206, 207, 208, - 209, 210, 211, 144, 288, 290, 291, 293, 179, 190, - 154, 4, 26, 103, 110, 127, 174, 177, 231, 233, - 27, 265, 202, 60, 60, 60, 169, 154, 190, 179, - 194, 291, 193, 284, 192, 201, 183, 292, 190, 184, - 294, 295, 284, 190, 194, 295, 179, 284, 193, 185, - 186, 187, 188, 189, 296, 297, 298, 194, 297, 179, - 190, 179, 284 + 143, 144, 145, 148, 150, 159, 164, 165, 166, 168, + 169, 172, 173, 182, 198, 199, 200, 201, 202, 214, + 215, 216, 217, 221, 226, 234, 243, 248, 252, 257, + 261, 262, 263, 264, 272, 273, 276, 287, 288, 181, + 60, 60, 218, 8, 12, 18, 68, 101, 102, 118, + 149, 253, 254, 255, 256, 11, 97, 102, 237, 238, + 239, 156, 265, 253, 20, 24, 80, 125, 133, 136, + 158, 163, 228, 65, 67, 156, 203, 204, 205, 156, + 156, 156, 156, 270, 271, 203, 284, 60, 55, 56, + 57, 58, 85, 87, 89, 95, 240, 241, 242, 284, + 156, 156, 283, 60, 7, 8, 25, 63, 92, 157, + 162, 277, 278, 27, 65, 67, 146, 203, 204, 60, + 41, 93, 147, 249, 250, 251, 156, 266, 227, 228, + 156, 6, 31, 48, 51, 123, 151, 152, 153, 154, + 159, 258, 259, 260, 13, 19, 21, 47, 86, 88, + 94, 96, 99, 121, 122, 222, 223, 224, 225, 204, + 60, 193, 280, 281, 282, 60, 279, 0, 200, 181, + 203, 203, 32, 60, 286, 156, 156, 34, 54, 77, + 275, 195, 28, 50, 53, 134, 135, 141, 219, 220, + 254, 238, 60, 32, 229, 3, 42, 43, 44, 45, + 137, 155, 160, 161, 244, 245, 246, 247, 156, 200, + 271, 203, 241, 60, 156, 278, 235, 27, 27, 235, + 235, 84, 250, 60, 192, 228, 259, 286, 38, 60, + 167, 285, 223, 60, 286, 268, 60, 281, 60, 181, + 206, 5, 64, 66, 156, 177, 274, 183, 184, 289, + 290, 291, 60, 156, 29, 36, 39, 76, 107, 170, + 230, 231, 232, 156, 156, 60, 245, 286, 285, 46, + 54, 72, 73, 75, 81, 108, 109, 112, 113, 115, + 116, 117, 119, 174, 236, 235, 235, 204, 156, 61, + 130, 269, 35, 9, 17, 52, 53, 69, 90, 98, + 100, 114, 131, 132, 167, 169, 174, 178, 207, 208, + 209, 210, 211, 212, 213, 144, 290, 292, 293, 295, + 181, 192, 156, 4, 26, 103, 110, 127, 176, 179, + 233, 235, 27, 267, 204, 60, 60, 60, 171, 156, + 192, 181, 196, 293, 195, 286, 194, 203, 185, 294, + 192, 186, 296, 297, 286, 192, 196, 297, 181, 286, + 195, 187, 188, 189, 190, 191, 298, 299, 300, 196, + 299, 181, 192, 181, 286 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 195, 196, 197, 197, 197, 198, 198, 198, 198, - 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 199, 200, 200, 200, 200, 200, 201, 201, 202, 203, - 203, 204, 204, 205, 205, 205, 206, 207, 207, 207, - 207, 207, 207, 207, 207, 208, 208, 209, 209, 209, - 209, 209, 209, 210, 211, 212, 213, 213, 214, 214, - 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 216, 216, 217, 217, 218, 218, 218, 218, 218, - 219, 220, 220, 221, 221, 221, 222, 222, 222, 222, - 222, 222, 223, 223, 223, 223, 224, 224, 224, 225, - 225, 226, 226, 226, 226, 226, 226, 226, 226, 227, - 227, 228, 228, 228, 228, 229, 229, 230, 230, 231, - 231, 231, 231, 231, 231, 231, 232, 232, 232, 232, - 232, 232, 232, 232, 233, 233, 234, 234, 234, 234, - 234, 234, 234, 234, 234, 234, 234, 234, 234, 234, - 234, 235, 235, 236, 237, 237, 237, 238, 238, 239, - 240, 240, 240, 240, 240, 240, 240, 240, 241, 242, - 242, 243, 243, 243, 243, 243, 244, 244, 245, 245, - 245, 245, 246, 247, 247, 248, 249, 249, 249, 250, - 250, 251, 251, 252, 252, 253, 253, 253, 253, 253, - 253, 254, 254, 255, 256, 256, 257, 258, 258, 258, - 258, 258, 258, 258, 258, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 260, 260, - 260, 261, 261, 261, 262, 262, 263, 263, 263, 264, - 265, 265, 266, 266, 267, 267, 268, 268, 269, 270, - 270, 271, 271, 272, 272, 272, 272, 273, 273, 273, - 274, 275, 275, 276, 276, 276, 276, 276, 276, 276, - 277, 277, 278, 278, 279, 279, 280, 281, 281, 282, - 282, 283, 283, 283, 284, 284, 285, 286, 287, 287, - 288, 289, 289, 290, 290, 291, 292, 293, 294, 294, - 295, 296, 296, 297, 298, 298, 298, 298, 298 + 0, 197, 198, 199, 199, 199, 200, 200, 200, 200, + 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 201, 202, 202, 202, 202, 202, 203, 203, 204, 205, + 205, 206, 206, 207, 207, 207, 208, 209, 209, 209, + 209, 209, 209, 209, 209, 210, 210, 211, 211, 211, + 211, 211, 211, 212, 213, 214, 215, 215, 216, 216, + 216, 216, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 218, 218, 219, 219, 220, 220, 220, 220, 220, + 221, 222, 222, 223, 223, 223, 224, 224, 224, 224, + 224, 224, 225, 225, 225, 225, 226, 226, 226, 227, + 227, 228, 228, 228, 228, 228, 228, 228, 228, 229, + 229, 230, 230, 230, 230, 231, 231, 232, 232, 233, + 233, 233, 233, 233, 233, 233, 234, 234, 234, 234, + 234, 234, 234, 234, 235, 235, 236, 236, 236, 236, + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, + 236, 237, 237, 238, 239, 239, 239, 240, 240, 241, + 242, 242, 242, 242, 242, 242, 242, 242, 243, 244, + 244, 245, 245, 245, 245, 245, 246, 246, 247, 247, + 247, 247, 248, 249, 249, 250, 251, 251, 251, 252, + 252, 253, 253, 254, 254, 255, 255, 255, 255, 255, + 255, 256, 256, 257, 258, 258, 259, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 261, 261, 261, + 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 262, 262, 262, 263, 263, 263, 264, 264, 265, 265, + 265, 266, 267, 267, 268, 268, 269, 269, 270, 270, + 271, 272, 272, 273, 273, 274, 274, 274, 274, 275, + 275, 275, 276, 277, 277, 278, 278, 278, 278, 278, + 278, 278, 279, 279, 280, 280, 281, 281, 282, 283, + 283, 284, 284, 285, 285, 285, 286, 286, 287, 288, + 289, 289, 290, 291, 291, 292, 292, 293, 294, 295, + 296, 296, 297, 298, 298, 299, 300, 300, 300, 300, + 300 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -1388,16 +1393,17 @@ static const yytype_uint8 yyr2[] = 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, - 3, 1, 2, 2, 2, 2, 3, 2, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 0, 4, - 1, 0, 0, 2, 2, 2, 2, 1, 1, 3, - 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 1, 2, 1, 1, 1, 5, 2, 1, 2, - 1, 1, 1, 1, 1, 1, 5, 1, 3, 2, - 3, 1, 1, 2, 1, 5, 4, 3, 2, 1, - 6, 3, 2, 3, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 2, 2, 3, 1, 2, 2, 2, 2, 3, 2, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 0, 4, 1, 0, 0, 2, 2, 2, 2, 1, + 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, + 1, 1, 2, 1, 2, 1, 1, 1, 5, 2, + 1, 2, 1, 1, 1, 1, 1, 1, 5, 1, + 3, 2, 3, 1, 1, 2, 1, 5, 4, 3, + 2, 1, 6, 3, 2, 3, 1, 1, 1, 1, + 1 }; @@ -2076,7 +2082,7 @@ yyreduce: switch (yyn) { case 5: -#line 371 "ntp_parser.y" /* yacc.c:1646 */ +#line 373 "ntp_parser.y" /* yacc.c:1646 */ { /* I will need to incorporate much more fine grained * error messages. The following should suffice for @@ -2088,85 +2094,85 @@ yyreduce: ip_file->err_line_no, ip_file->err_col_no); } -#line 2092 "ntp_parser.c" /* yacc.c:1646 */ +#line 2098 "ntp_parser.c" /* yacc.c:1646 */ break; case 20: -#line 406 "ntp_parser.y" /* yacc.c:1646 */ +#line 408 "ntp_parser.y" /* yacc.c:1646 */ { peer_node *my_node; my_node = create_peer_node((yyvsp[-2].Integer), (yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); APPEND_G_FIFO(cfgt.peers, my_node); } -#line 2103 "ntp_parser.c" /* yacc.c:1646 */ +#line 2109 "ntp_parser.c" /* yacc.c:1646 */ break; case 27: -#line 425 "ntp_parser.y" /* yacc.c:1646 */ +#line 427 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); } -#line 2109 "ntp_parser.c" /* yacc.c:1646 */ +#line 2115 "ntp_parser.c" /* yacc.c:1646 */ break; case 28: -#line 430 "ntp_parser.y" /* yacc.c:1646 */ +#line 432 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); } -#line 2115 "ntp_parser.c" /* yacc.c:1646 */ +#line 2121 "ntp_parser.c" /* yacc.c:1646 */ break; case 29: -#line 435 "ntp_parser.y" /* yacc.c:1646 */ +#line 437 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = AF_INET; } -#line 2121 "ntp_parser.c" /* yacc.c:1646 */ +#line 2127 "ntp_parser.c" /* yacc.c:1646 */ break; case 30: -#line 437 "ntp_parser.y" /* yacc.c:1646 */ +#line 439 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = AF_INET6; } -#line 2127 "ntp_parser.c" /* yacc.c:1646 */ +#line 2133 "ntp_parser.c" /* yacc.c:1646 */ break; case 31: -#line 442 "ntp_parser.y" /* yacc.c:1646 */ +#line 444 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; } -#line 2133 "ntp_parser.c" /* yacc.c:1646 */ +#line 2139 "ntp_parser.c" /* yacc.c:1646 */ break; case 32: -#line 444 "ntp_parser.y" /* yacc.c:1646 */ +#line 446 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2142 "ntp_parser.c" /* yacc.c:1646 */ +#line 2148 "ntp_parser.c" /* yacc.c:1646 */ break; case 36: -#line 458 "ntp_parser.y" /* yacc.c:1646 */ +#line 460 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } -#line 2148 "ntp_parser.c" /* yacc.c:1646 */ +#line 2154 "ntp_parser.c" /* yacc.c:1646 */ break; case 45: -#line 474 "ntp_parser.y" /* yacc.c:1646 */ +#line 476 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2154 "ntp_parser.c" /* yacc.c:1646 */ +#line 2160 "ntp_parser.c" /* yacc.c:1646 */ break; case 46: -#line 476 "ntp_parser.y" /* yacc.c:1646 */ +#line 478 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2160 "ntp_parser.c" /* yacc.c:1646 */ +#line 2166 "ntp_parser.c" /* yacc.c:1646 */ break; case 53: -#line 490 "ntp_parser.y" /* yacc.c:1646 */ +#line 492 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } -#line 2166 "ntp_parser.c" /* yacc.c:1646 */ +#line 2172 "ntp_parser.c" /* yacc.c:1646 */ break; case 55: -#line 504 "ntp_parser.y" /* yacc.c:1646 */ +#line 506 "ntp_parser.y" /* yacc.c:1646 */ { unpeer_node *my_node; @@ -2174,85 +2180,85 @@ yyreduce: if (my_node) APPEND_G_FIFO(cfgt.unpeers, my_node); } -#line 2178 "ntp_parser.c" /* yacc.c:1646 */ +#line 2184 "ntp_parser.c" /* yacc.c:1646 */ break; case 58: -#line 525 "ntp_parser.y" /* yacc.c:1646 */ +#line 527 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.broadcastclient = 1; } -#line 2184 "ntp_parser.c" /* yacc.c:1646 */ +#line 2190 "ntp_parser.c" /* yacc.c:1646 */ break; case 59: -#line 527 "ntp_parser.y" /* yacc.c:1646 */ +#line 529 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); } -#line 2190 "ntp_parser.c" /* yacc.c:1646 */ +#line 2196 "ntp_parser.c" /* yacc.c:1646 */ break; case 60: -#line 529 "ntp_parser.y" /* yacc.c:1646 */ +#line 531 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); } -#line 2196 "ntp_parser.c" /* yacc.c:1646 */ +#line 2202 "ntp_parser.c" /* yacc.c:1646 */ break; case 61: -#line 531 "ntp_parser.y" /* yacc.c:1646 */ +#line 533 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.mdnstries = (yyvsp[0].Integer); } -#line 2202 "ntp_parser.c" /* yacc.c:1646 */ +#line 2208 "ntp_parser.c" /* yacc.c:1646 */ break; case 62: -#line 542 "ntp_parser.y" /* yacc.c:1646 */ +#line 544 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *atrv; atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); APPEND_G_FIFO(cfgt.vars, atrv); } -#line 2213 "ntp_parser.c" /* yacc.c:1646 */ +#line 2219 "ntp_parser.c" /* yacc.c:1646 */ break; case 63: -#line 549 "ntp_parser.y" /* yacc.c:1646 */ +#line 551 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.control_key = (yyvsp[0].Integer); } -#line 2219 "ntp_parser.c" /* yacc.c:1646 */ +#line 2225 "ntp_parser.c" /* yacc.c:1646 */ break; case 64: -#line 551 "ntp_parser.y" /* yacc.c:1646 */ +#line 553 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.cryptosw++; CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo)); } -#line 2228 "ntp_parser.c" /* yacc.c:1646 */ +#line 2234 "ntp_parser.c" /* yacc.c:1646 */ break; case 65: -#line 556 "ntp_parser.y" /* yacc.c:1646 */ +#line 558 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.keys = (yyvsp[0].String); } -#line 2234 "ntp_parser.c" /* yacc.c:1646 */ +#line 2240 "ntp_parser.c" /* yacc.c:1646 */ break; case 66: -#line 558 "ntp_parser.y" /* yacc.c:1646 */ +#line 560 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.keysdir = (yyvsp[0].String); } -#line 2240 "ntp_parser.c" /* yacc.c:1646 */ +#line 2246 "ntp_parser.c" /* yacc.c:1646 */ break; case 67: -#line 560 "ntp_parser.y" /* yacc.c:1646 */ +#line 562 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.request_key = (yyvsp[0].Integer); } -#line 2246 "ntp_parser.c" /* yacc.c:1646 */ +#line 2252 "ntp_parser.c" /* yacc.c:1646 */ break; case 68: -#line 562 "ntp_parser.y" /* yacc.c:1646 */ +#line 564 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.revoke = (yyvsp[0].Integer); } -#line 2252 "ntp_parser.c" /* yacc.c:1646 */ +#line 2258 "ntp_parser.c" /* yacc.c:1646 */ break; case 69: -#line 564 "ntp_parser.y" /* yacc.c:1646 */ +#line 566 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo); @@ -2261,38 +2267,38 @@ yyreduce: // else // LINK_SLIST(cfgt.auth.trusted_key_list, $2, link); } -#line 2265 "ntp_parser.c" /* yacc.c:1646 */ +#line 2271 "ntp_parser.c" /* yacc.c:1646 */ break; case 70: -#line 573 "ntp_parser.y" /* yacc.c:1646 */ +#line 575 "ntp_parser.y" /* yacc.c:1646 */ { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); } -#line 2271 "ntp_parser.c" /* yacc.c:1646 */ +#line 2277 "ntp_parser.c" /* yacc.c:1646 */ break; case 71: -#line 578 "ntp_parser.y" /* yacc.c:1646 */ +#line 580 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; } -#line 2277 "ntp_parser.c" /* yacc.c:1646 */ +#line 2283 "ntp_parser.c" /* yacc.c:1646 */ break; case 72: -#line 580 "ntp_parser.y" /* yacc.c:1646 */ +#line 582 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2286 "ntp_parser.c" /* yacc.c:1646 */ +#line 2292 "ntp_parser.c" /* yacc.c:1646 */ break; case 73: -#line 588 "ntp_parser.y" /* yacc.c:1646 */ +#line 590 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } -#line 2292 "ntp_parser.c" /* yacc.c:1646 */ +#line 2298 "ntp_parser.c" /* yacc.c:1646 */ break; case 74: -#line 590 "ntp_parser.y" /* yacc.c:1646 */ +#line 592 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = NULL; cfgt.auth.revoke = (yyvsp[0].Integer); @@ -2301,59 +2307,59 @@ yyreduce: "please use 'revoke %d' instead.", cfgt.auth.revoke, cfgt.auth.revoke); } -#line 2305 "ntp_parser.c" /* yacc.c:1646 */ +#line 2311 "ntp_parser.c" /* yacc.c:1646 */ break; case 80: -#line 615 "ntp_parser.y" /* yacc.c:1646 */ +#line 617 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); } -#line 2311 "ntp_parser.c" /* yacc.c:1646 */ +#line 2317 "ntp_parser.c" /* yacc.c:1646 */ break; case 81: -#line 620 "ntp_parser.y" /* yacc.c:1646 */ +#line 622 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2320 "ntp_parser.c" /* yacc.c:1646 */ +#line 2326 "ntp_parser.c" /* yacc.c:1646 */ break; case 82: -#line 625 "ntp_parser.y" /* yacc.c:1646 */ +#line 627 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2329 "ntp_parser.c" /* yacc.c:1646 */ +#line 2335 "ntp_parser.c" /* yacc.c:1646 */ break; case 83: -#line 633 "ntp_parser.y" /* yacc.c:1646 */ +#line 635 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } -#line 2335 "ntp_parser.c" /* yacc.c:1646 */ +#line 2341 "ntp_parser.c" /* yacc.c:1646 */ break; case 84: -#line 635 "ntp_parser.y" /* yacc.c:1646 */ +#line 637 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } -#line 2341 "ntp_parser.c" /* yacc.c:1646 */ +#line 2347 "ntp_parser.c" /* yacc.c:1646 */ break; case 85: -#line 637 "ntp_parser.y" /* yacc.c:1646 */ +#line 639 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); } -#line 2347 "ntp_parser.c" /* yacc.c:1646 */ +#line 2353 "ntp_parser.c" /* yacc.c:1646 */ break; case 96: -#line 663 "ntp_parser.y" /* yacc.c:1646 */ +#line 665 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); } -#line 2353 "ntp_parser.c" /* yacc.c:1646 */ +#line 2359 "ntp_parser.c" /* yacc.c:1646 */ break; case 97: -#line 665 "ntp_parser.y" /* yacc.c:1646 */ +#line 667 "ntp_parser.y" /* yacc.c:1646 */ { if (input_from_file) { cfgt.stats_dir = (yyvsp[0].String); @@ -2362,55 +2368,55 @@ yyreduce: yyerror(ip_file, "statsdir remote configuration ignored"); } } -#line 2366 "ntp_parser.c" /* yacc.c:1646 */ +#line 2372 "ntp_parser.c" /* yacc.c:1646 */ break; case 98: -#line 674 "ntp_parser.y" /* yacc.c:1646 */ +#line 676 "ntp_parser.y" /* yacc.c:1646 */ { filegen_node *fgn; fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo)); APPEND_G_FIFO(cfgt.filegen_opts, fgn); } -#line 2377 "ntp_parser.c" /* yacc.c:1646 */ +#line 2383 "ntp_parser.c" /* yacc.c:1646 */ break; case 99: -#line 684 "ntp_parser.y" /* yacc.c:1646 */ +#line 686 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 2386 "ntp_parser.c" /* yacc.c:1646 */ +#line 2392 "ntp_parser.c" /* yacc.c:1646 */ break; case 100: -#line 689 "ntp_parser.y" /* yacc.c:1646 */ +#line 691 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = NULL; APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 2395 "ntp_parser.c" /* yacc.c:1646 */ +#line 2401 "ntp_parser.c" /* yacc.c:1646 */ break; case 109: -#line 708 "ntp_parser.y" /* yacc.c:1646 */ +#line 710 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; } -#line 2401 "ntp_parser.c" /* yacc.c:1646 */ +#line 2407 "ntp_parser.c" /* yacc.c:1646 */ break; case 110: -#line 710 "ntp_parser.y" /* yacc.c:1646 */ +#line 712 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2410 "ntp_parser.c" /* yacc.c:1646 */ +#line 2416 "ntp_parser.c" /* yacc.c:1646 */ break; case 111: -#line 718 "ntp_parser.y" /* yacc.c:1646 */ +#line 720 "ntp_parser.y" /* yacc.c:1646 */ { if (input_from_file) { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); @@ -2420,11 +2426,11 @@ yyreduce: yyerror(ip_file, "filegen file remote config ignored"); } } -#line 2424 "ntp_parser.c" /* yacc.c:1646 */ +#line 2430 "ntp_parser.c" /* yacc.c:1646 */ break; case 112: -#line 728 "ntp_parser.y" /* yacc.c:1646 */ +#line 730 "ntp_parser.y" /* yacc.c:1646 */ { if (input_from_file) { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); @@ -2433,11 +2439,11 @@ yyreduce: yyerror(ip_file, "filegen type remote config ignored"); } } -#line 2437 "ntp_parser.c" /* yacc.c:1646 */ +#line 2443 "ntp_parser.c" /* yacc.c:1646 */ break; case 113: -#line 737 "ntp_parser.y" /* yacc.c:1646 */ +#line 739 "ntp_parser.y" /* yacc.c:1646 */ { const char *err; @@ -2452,33 +2458,33 @@ yyreduce: yyerror(ip_file, err); } } -#line 2456 "ntp_parser.c" /* yacc.c:1646 */ +#line 2462 "ntp_parser.c" /* yacc.c:1646 */ break; case 114: -#line 752 "ntp_parser.y" /* yacc.c:1646 */ +#line 754 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } -#line 2462 "ntp_parser.c" /* yacc.c:1646 */ +#line 2468 "ntp_parser.c" /* yacc.c:1646 */ break; case 126: -#line 782 "ntp_parser.y" /* yacc.c:1646 */ +#line 784 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo)); } -#line 2470 "ntp_parser.c" /* yacc.c:1646 */ +#line 2476 "ntp_parser.c" /* yacc.c:1646 */ break; case 127: -#line 786 "ntp_parser.y" /* yacc.c:1646 */ +#line 788 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo)); } -#line 2478 "ntp_parser.c" /* yacc.c:1646 */ +#line 2484 "ntp_parser.c" /* yacc.c:1646 */ break; case 128: -#line 790 "ntp_parser.y" /* yacc.c:1646 */ +#line 792 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node *rn; @@ -2486,11 +2492,11 @@ yyreduce: ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2490 "ntp_parser.c" /* yacc.c:1646 */ +#line 2496 "ntp_parser.c" /* yacc.c:1646 */ break; case 129: -#line 798 "ntp_parser.y" /* yacc.c:1646 */ +#line 800 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node *rn; @@ -2498,11 +2504,11 @@ yyreduce: ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2502 "ntp_parser.c" /* yacc.c:1646 */ +#line 2508 "ntp_parser.c" /* yacc.c:1646 */ break; case 130: -#line 806 "ntp_parser.y" /* yacc.c:1646 */ +#line 808 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node *rn; @@ -2510,11 +2516,11 @@ yyreduce: ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2514 "ntp_parser.c" /* yacc.c:1646 */ +#line 2520 "ntp_parser.c" /* yacc.c:1646 */ break; case 131: -#line 814 "ntp_parser.y" /* yacc.c:1646 */ +#line 816 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node *rn; @@ -2529,11 +2535,11 @@ yyreduce: ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2533 "ntp_parser.c" /* yacc.c:1646 */ +#line 2539 "ntp_parser.c" /* yacc.c:1646 */ break; case 132: -#line 829 "ntp_parser.y" /* yacc.c:1646 */ +#line 831 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node *rn; @@ -2548,11 +2554,11 @@ yyreduce: ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2552 "ntp_parser.c" /* yacc.c:1646 */ +#line 2558 "ntp_parser.c" /* yacc.c:1646 */ break; case 133: -#line 844 "ntp_parser.y" /* yacc.c:1646 */ +#line 846 "ntp_parser.y" /* yacc.c:1646 */ { restrict_node * rn; @@ -2561,199 +2567,199 @@ yyreduce: NULL, NULL, (yyvsp[0].Int_fifo), ip_file->line_no); APPEND_G_FIFO(cfgt.restrict_opts, rn); } -#line 2565 "ntp_parser.c" /* yacc.c:1646 */ +#line 2571 "ntp_parser.c" /* yacc.c:1646 */ break; case 134: -#line 856 "ntp_parser.y" /* yacc.c:1646 */ +#line 858 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = NULL; } -#line 2571 "ntp_parser.c" /* yacc.c:1646 */ +#line 2577 "ntp_parser.c" /* yacc.c:1646 */ break; case 135: -#line 858 "ntp_parser.y" /* yacc.c:1646 */ +#line 860 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 2580 "ntp_parser.c" /* yacc.c:1646 */ +#line 2586 "ntp_parser.c" /* yacc.c:1646 */ break; case 151: -#line 884 "ntp_parser.y" /* yacc.c:1646 */ +#line 886 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2589 "ntp_parser.c" /* yacc.c:1646 */ +#line 2595 "ntp_parser.c" /* yacc.c:1646 */ break; case 152: -#line 889 "ntp_parser.y" /* yacc.c:1646 */ +#line 891 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2598 "ntp_parser.c" /* yacc.c:1646 */ +#line 2604 "ntp_parser.c" /* yacc.c:1646 */ break; case 153: -#line 897 "ntp_parser.y" /* yacc.c:1646 */ +#line 899 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2604 "ntp_parser.c" /* yacc.c:1646 */ +#line 2610 "ntp_parser.c" /* yacc.c:1646 */ break; case 157: -#line 908 "ntp_parser.y" /* yacc.c:1646 */ +#line 910 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2613 "ntp_parser.c" /* yacc.c:1646 */ +#line 2619 "ntp_parser.c" /* yacc.c:1646 */ break; case 158: -#line 913 "ntp_parser.y" /* yacc.c:1646 */ +#line 915 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2622 "ntp_parser.c" /* yacc.c:1646 */ +#line 2628 "ntp_parser.c" /* yacc.c:1646 */ break; case 159: -#line 921 "ntp_parser.y" /* yacc.c:1646 */ +#line 923 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2628 "ntp_parser.c" /* yacc.c:1646 */ +#line 2634 "ntp_parser.c" /* yacc.c:1646 */ break; case 168: -#line 941 "ntp_parser.y" /* yacc.c:1646 */ +#line 943 "ntp_parser.y" /* yacc.c:1646 */ { addr_opts_node *aon; aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); APPEND_G_FIFO(cfgt.fudge, aon); } -#line 2639 "ntp_parser.c" /* yacc.c:1646 */ +#line 2645 "ntp_parser.c" /* yacc.c:1646 */ break; case 169: -#line 951 "ntp_parser.y" /* yacc.c:1646 */ +#line 953 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2648 "ntp_parser.c" /* yacc.c:1646 */ +#line 2654 "ntp_parser.c" /* yacc.c:1646 */ break; case 170: -#line 956 "ntp_parser.y" /* yacc.c:1646 */ +#line 958 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2657 "ntp_parser.c" /* yacc.c:1646 */ +#line 2663 "ntp_parser.c" /* yacc.c:1646 */ break; case 171: -#line 964 "ntp_parser.y" /* yacc.c:1646 */ +#line 966 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } -#line 2663 "ntp_parser.c" /* yacc.c:1646 */ +#line 2669 "ntp_parser.c" /* yacc.c:1646 */ break; case 172: -#line 966 "ntp_parser.y" /* yacc.c:1646 */ +#line 968 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2669 "ntp_parser.c" /* yacc.c:1646 */ +#line 2675 "ntp_parser.c" /* yacc.c:1646 */ break; case 173: -#line 968 "ntp_parser.y" /* yacc.c:1646 */ +#line 970 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2675 "ntp_parser.c" /* yacc.c:1646 */ +#line 2681 "ntp_parser.c" /* yacc.c:1646 */ break; case 174: -#line 970 "ntp_parser.y" /* yacc.c:1646 */ +#line 972 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } -#line 2681 "ntp_parser.c" /* yacc.c:1646 */ +#line 2687 "ntp_parser.c" /* yacc.c:1646 */ break; case 175: -#line 972 "ntp_parser.y" /* yacc.c:1646 */ +#line 974 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); } -#line 2687 "ntp_parser.c" /* yacc.c:1646 */ +#line 2693 "ntp_parser.c" /* yacc.c:1646 */ break; case 182: -#line 993 "ntp_parser.y" /* yacc.c:1646 */ +#line 995 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); } -#line 2693 "ntp_parser.c" /* yacc.c:1646 */ +#line 2699 "ntp_parser.c" /* yacc.c:1646 */ break; case 183: -#line 998 "ntp_parser.y" /* yacc.c:1646 */ +#line 1000 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2702 "ntp_parser.c" /* yacc.c:1646 */ +#line 2708 "ntp_parser.c" /* yacc.c:1646 */ break; case 184: -#line 1003 "ntp_parser.y" /* yacc.c:1646 */ +#line 1005 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2711 "ntp_parser.c" /* yacc.c:1646 */ +#line 2717 "ntp_parser.c" /* yacc.c:1646 */ break; case 185: -#line 1011 "ntp_parser.y" /* yacc.c:1646 */ +#line 1013 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2717 "ntp_parser.c" /* yacc.c:1646 */ +#line 2723 "ntp_parser.c" /* yacc.c:1646 */ break; case 189: -#line 1027 "ntp_parser.y" /* yacc.c:1646 */ +#line 1029 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); } -#line 2723 "ntp_parser.c" /* yacc.c:1646 */ +#line 2729 "ntp_parser.c" /* yacc.c:1646 */ break; case 190: -#line 1029 "ntp_parser.y" /* yacc.c:1646 */ +#line 1031 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); } -#line 2729 "ntp_parser.c" /* yacc.c:1646 */ +#line 2735 "ntp_parser.c" /* yacc.c:1646 */ break; case 191: -#line 1034 "ntp_parser.y" /* yacc.c:1646 */ +#line 1036 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2738 "ntp_parser.c" /* yacc.c:1646 */ +#line 2744 "ntp_parser.c" /* yacc.c:1646 */ break; case 192: -#line 1039 "ntp_parser.y" /* yacc.c:1646 */ +#line 1041 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2747 "ntp_parser.c" /* yacc.c:1646 */ +#line 2753 "ntp_parser.c" /* yacc.c:1646 */ break; case 193: -#line 1047 "ntp_parser.y" /* yacc.c:1646 */ +#line 1049 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); } -#line 2753 "ntp_parser.c" /* yacc.c:1646 */ +#line 2759 "ntp_parser.c" /* yacc.c:1646 */ break; case 194: -#line 1049 "ntp_parser.y" /* yacc.c:1646 */ +#line 1051 "ntp_parser.y" /* yacc.c:1646 */ { if (input_from_file) { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); @@ -2767,63 +2773,63 @@ yyreduce: yyerror(ip_file, err_str); } } -#line 2771 "ntp_parser.c" /* yacc.c:1646 */ +#line 2777 "ntp_parser.c" /* yacc.c:1646 */ break; case 203: -#line 1084 "ntp_parser.y" /* yacc.c:1646 */ +#line 1086 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); } -#line 2777 "ntp_parser.c" /* yacc.c:1646 */ +#line 2783 "ntp_parser.c" /* yacc.c:1646 */ break; case 204: -#line 1089 "ntp_parser.y" /* yacc.c:1646 */ +#line 1091 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2786 "ntp_parser.c" /* yacc.c:1646 */ +#line 2792 "ntp_parser.c" /* yacc.c:1646 */ break; case 205: -#line 1094 "ntp_parser.y" /* yacc.c:1646 */ +#line 1096 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2795 "ntp_parser.c" /* yacc.c:1646 */ +#line 2801 "ntp_parser.c" /* yacc.c:1646 */ break; case 206: -#line 1102 "ntp_parser.y" /* yacc.c:1646 */ +#line 1104 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); } -#line 2801 "ntp_parser.c" /* yacc.c:1646 */ +#line 2807 "ntp_parser.c" /* yacc.c:1646 */ break; - case 217: -#line 1125 "ntp_parser.y" /* yacc.c:1646 */ + case 219: +#line 1129 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *av; av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); APPEND_G_FIFO(cfgt.vars, av); } -#line 2812 "ntp_parser.c" /* yacc.c:1646 */ +#line 2818 "ntp_parser.c" /* yacc.c:1646 */ break; - case 218: -#line 1132 "ntp_parser.y" /* yacc.c:1646 */ + case 220: +#line 1136 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *av; av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); APPEND_G_FIFO(cfgt.vars, av); } -#line 2823 "ntp_parser.c" /* yacc.c:1646 */ +#line 2829 "ntp_parser.c" /* yacc.c:1646 */ break; - case 219: -#line 1139 "ntp_parser.y" /* yacc.c:1646 */ + case 221: +#line 1143 "ntp_parser.y" /* yacc.c:1646 */ { char error_text[64]; attr_val *av; @@ -2839,11 +2845,11 @@ yyreduce: yyerror(ip_file, error_text); } } -#line 2843 "ntp_parser.c" /* yacc.c:1646 */ +#line 2849 "ntp_parser.c" /* yacc.c:1646 */ break; - case 220: -#line 1155 "ntp_parser.y" /* yacc.c:1646 */ + case 222: +#line 1159 "ntp_parser.y" /* yacc.c:1646 */ { if (!input_from_file) { yyerror(ip_file, "remote includefile ignored"); @@ -2862,72 +2868,72 @@ yyreduce: } } } -#line 2866 "ntp_parser.c" /* yacc.c:1646 */ +#line 2872 "ntp_parser.c" /* yacc.c:1646 */ break; - case 221: -#line 1174 "ntp_parser.y" /* yacc.c:1646 */ + case 223: +#line 1178 "ntp_parser.y" /* yacc.c:1646 */ { while (curr_include_level != -1) FCLOSE(fp[curr_include_level--]); } -#line 2875 "ntp_parser.c" /* yacc.c:1646 */ +#line 2881 "ntp_parser.c" /* yacc.c:1646 */ break; - case 222: -#line 1179 "ntp_parser.y" /* yacc.c:1646 */ + case 224: +#line 1183 "ntp_parser.y" /* yacc.c:1646 */ { /* see drift_parm below for actions */ } -#line 2881 "ntp_parser.c" /* yacc.c:1646 */ +#line 2887 "ntp_parser.c" /* yacc.c:1646 */ break; - case 223: -#line 1181 "ntp_parser.y" /* yacc.c:1646 */ + case 225: +#line 1185 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); } -#line 2887 "ntp_parser.c" /* yacc.c:1646 */ +#line 2893 "ntp_parser.c" /* yacc.c:1646 */ break; - case 224: -#line 1183 "ntp_parser.y" /* yacc.c:1646 */ + case 226: +#line 1187 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); } -#line 2893 "ntp_parser.c" /* yacc.c:1646 */ +#line 2899 "ntp_parser.c" /* yacc.c:1646 */ break; - case 225: -#line 1185 "ntp_parser.y" /* yacc.c:1646 */ + case 227: +#line 1189 "ntp_parser.y" /* yacc.c:1646 */ { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); } -#line 2899 "ntp_parser.c" /* yacc.c:1646 */ +#line 2905 "ntp_parser.c" /* yacc.c:1646 */ break; - case 226: -#line 1187 "ntp_parser.y" /* yacc.c:1646 */ + case 228: +#line 1191 "ntp_parser.y" /* yacc.c:1646 */ { addr_opts_node *aon; aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo)); APPEND_G_FIFO(cfgt.trap, aon); } -#line 2910 "ntp_parser.c" /* yacc.c:1646 */ +#line 2916 "ntp_parser.c" /* yacc.c:1646 */ break; - case 227: -#line 1194 "ntp_parser.y" /* yacc.c:1646 */ + case 229: +#line 1198 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); } -#line 2916 "ntp_parser.c" /* yacc.c:1646 */ +#line 2922 "ntp_parser.c" /* yacc.c:1646 */ break; - case 236: -#line 1216 "ntp_parser.y" /* yacc.c:1646 */ + case 238: +#line 1220 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *av; av = create_attr_sval(T_Driftfile, (yyvsp[0].String)); APPEND_G_FIFO(cfgt.vars, av); } -#line 2927 "ntp_parser.c" /* yacc.c:1646 */ +#line 2933 "ntp_parser.c" /* yacc.c:1646 */ break; - case 237: -#line 1223 "ntp_parser.y" /* yacc.c:1646 */ + case 239: +#line 1227 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *av; @@ -2936,82 +2942,82 @@ yyreduce: av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double)); APPEND_G_FIFO(cfgt.vars, av); } -#line 2940 "ntp_parser.c" /* yacc.c:1646 */ +#line 2946 "ntp_parser.c" /* yacc.c:1646 */ break; - case 238: -#line 1232 "ntp_parser.y" /* yacc.c:1646 */ + case 240: +#line 1236 "ntp_parser.y" /* yacc.c:1646 */ { attr_val *av; av = create_attr_sval(T_Driftfile, ""); APPEND_G_FIFO(cfgt.vars, av); } -#line 2951 "ntp_parser.c" /* yacc.c:1646 */ +#line 2957 "ntp_parser.c" /* yacc.c:1646 */ break; - case 239: -#line 1242 "ntp_parser.y" /* yacc.c:1646 */ + case 241: +#line 1246 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); } -#line 2957 "ntp_parser.c" /* yacc.c:1646 */ +#line 2963 "ntp_parser.c" /* yacc.c:1646 */ break; - case 241: -#line 1248 "ntp_parser.y" /* yacc.c:1646 */ + case 243: +#line 1252 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = 0; } -#line 2963 "ntp_parser.c" /* yacc.c:1646 */ +#line 2969 "ntp_parser.c" /* yacc.c:1646 */ break; - case 242: -#line 1253 "ntp_parser.y" /* yacc.c:1646 */ + case 244: +#line 1257 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; } -#line 2969 "ntp_parser.c" /* yacc.c:1646 */ +#line 2975 "ntp_parser.c" /* yacc.c:1646 */ break; - case 243: -#line 1255 "ntp_parser.y" /* yacc.c:1646 */ + case 245: +#line 1259 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 2978 "ntp_parser.c" /* yacc.c:1646 */ +#line 2984 "ntp_parser.c" /* yacc.c:1646 */ break; - case 244: -#line 1263 "ntp_parser.y" /* yacc.c:1646 */ + case 246: +#line 1267 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 2984 "ntp_parser.c" /* yacc.c:1646 */ +#line 2990 "ntp_parser.c" /* yacc.c:1646 */ break; - case 245: -#line 1265 "ntp_parser.y" /* yacc.c:1646 */ + case 247: +#line 1269 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address)); destroy_address_node((yyvsp[0].Address_node)); } -#line 2993 "ntp_parser.c" /* yacc.c:1646 */ +#line 2999 "ntp_parser.c" /* yacc.c:1646 */ break; - case 246: -#line 1273 "ntp_parser.y" /* yacc.c:1646 */ + case 248: +#line 1277 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3002 "ntp_parser.c" /* yacc.c:1646 */ +#line 3008 "ntp_parser.c" /* yacc.c:1646 */ break; - case 247: -#line 1278 "ntp_parser.y" /* yacc.c:1646 */ + case 249: +#line 1282 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3011 "ntp_parser.c" /* yacc.c:1646 */ +#line 3017 "ntp_parser.c" /* yacc.c:1646 */ break; - case 248: -#line 1286 "ntp_parser.y" /* yacc.c:1646 */ + case 250: +#line 1290 "ntp_parser.y" /* yacc.c:1646 */ { char prefix; char * type; @@ -3033,141 +3039,141 @@ yyreduce: (yyval.Attr_val) = create_attr_sval(prefix, estrdup(type)); YYFREE((yyvsp[0].String)); } -#line 3037 "ntp_parser.c" /* yacc.c:1646 */ +#line 3043 "ntp_parser.c" /* yacc.c:1646 */ break; - case 249: -#line 1311 "ntp_parser.y" /* yacc.c:1646 */ + case 251: +#line 1315 "ntp_parser.y" /* yacc.c:1646 */ { nic_rule_node *nrn; nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer)); APPEND_G_FIFO(cfgt.nic_rules, nrn); } -#line 3048 "ntp_parser.c" /* yacc.c:1646 */ +#line 3054 "ntp_parser.c" /* yacc.c:1646 */ break; - case 250: -#line 1318 "ntp_parser.y" /* yacc.c:1646 */ + case 252: +#line 1322 "ntp_parser.y" /* yacc.c:1646 */ { nic_rule_node *nrn; nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer)); APPEND_G_FIFO(cfgt.nic_rules, nrn); } -#line 3059 "ntp_parser.c" /* yacc.c:1646 */ +#line 3065 "ntp_parser.c" /* yacc.c:1646 */ break; - case 260: -#line 1346 "ntp_parser.y" /* yacc.c:1646 */ + case 262: +#line 1350 "ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); } -#line 3065 "ntp_parser.c" /* yacc.c:1646 */ +#line 3071 "ntp_parser.c" /* yacc.c:1646 */ break; - case 261: -#line 1351 "ntp_parser.y" /* yacc.c:1646 */ + case 263: +#line 1355 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3074 "ntp_parser.c" /* yacc.c:1646 */ +#line 3080 "ntp_parser.c" /* yacc.c:1646 */ break; - case 262: -#line 1356 "ntp_parser.y" /* yacc.c:1646 */ + case 264: +#line 1360 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = NULL; APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3083 "ntp_parser.c" /* yacc.c:1646 */ +#line 3089 "ntp_parser.c" /* yacc.c:1646 */ break; - case 270: -#line 1380 "ntp_parser.y" /* yacc.c:1646 */ + case 272: +#line 1384 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3092 "ntp_parser.c" /* yacc.c:1646 */ +#line 3098 "ntp_parser.c" /* yacc.c:1646 */ break; - case 271: -#line 1385 "ntp_parser.y" /* yacc.c:1646 */ + case 273: +#line 1389 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3101 "ntp_parser.c" /* yacc.c:1646 */ +#line 3107 "ntp_parser.c" /* yacc.c:1646 */ break; - case 272: -#line 1393 "ntp_parser.y" /* yacc.c:1646 */ + case 274: +#line 1397 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3110 "ntp_parser.c" /* yacc.c:1646 */ +#line 3116 "ntp_parser.c" /* yacc.c:1646 */ break; - case 273: -#line 1398 "ntp_parser.y" /* yacc.c:1646 */ + case 275: +#line 1402 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3119 "ntp_parser.c" /* yacc.c:1646 */ +#line 3125 "ntp_parser.c" /* yacc.c:1646 */ break; - case 274: -#line 1406 "ntp_parser.y" /* yacc.c:1646 */ + case 276: +#line 1410 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); } -#line 3125 "ntp_parser.c" /* yacc.c:1646 */ +#line 3131 "ntp_parser.c" /* yacc.c:1646 */ break; - case 276: -#line 1412 "ntp_parser.y" /* yacc.c:1646 */ + case 278: +#line 1416 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); } -#line 3131 "ntp_parser.c" /* yacc.c:1646 */ +#line 3137 "ntp_parser.c" /* yacc.c:1646 */ break; - case 277: -#line 1417 "ntp_parser.y" /* yacc.c:1646 */ + case 279: +#line 1421 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.String_fifo) = (yyvsp[-1].String_fifo); APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); } -#line 3140 "ntp_parser.c" /* yacc.c:1646 */ +#line 3146 "ntp_parser.c" /* yacc.c:1646 */ break; - case 278: -#line 1422 "ntp_parser.y" /* yacc.c:1646 */ + case 280: +#line 1426 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.String_fifo) = NULL; APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); } -#line 3149 "ntp_parser.c" /* yacc.c:1646 */ +#line 3155 "ntp_parser.c" /* yacc.c:1646 */ break; - case 279: -#line 1430 "ntp_parser.y" /* yacc.c:1646 */ + case 281: +#line 1434 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_fifo) = (yyvsp[-1].Address_fifo); APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); } -#line 3158 "ntp_parser.c" /* yacc.c:1646 */ +#line 3164 "ntp_parser.c" /* yacc.c:1646 */ break; - case 280: -#line 1435 "ntp_parser.y" /* yacc.c:1646 */ + case 282: +#line 1439 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_fifo) = NULL; APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); } -#line 3167 "ntp_parser.c" /* yacc.c:1646 */ +#line 3173 "ntp_parser.c" /* yacc.c:1646 */ break; - case 281: -#line 1443 "ntp_parser.y" /* yacc.c:1646 */ + case 283: +#line 1447 "ntp_parser.y" /* yacc.c:1646 */ { if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) { yyerror(ip_file, "Integer value is not boolean (0 or 1). Assuming 1"); @@ -3176,29 +3182,29 @@ yyreduce: (yyval.Integer) = (yyvsp[0].Integer); } } -#line 3180 "ntp_parser.c" /* yacc.c:1646 */ - break; - - case 282: -#line 1451 "ntp_parser.y" /* yacc.c:1646 */ - { (yyval.Integer) = 1; } #line 3186 "ntp_parser.c" /* yacc.c:1646 */ break; - case 283: -#line 1452 "ntp_parser.y" /* yacc.c:1646 */ - { (yyval.Integer) = 0; } + case 284: +#line 1455 "ntp_parser.y" /* yacc.c:1646 */ + { (yyval.Integer) = 1; } #line 3192 "ntp_parser.c" /* yacc.c:1646 */ break; - case 284: + case 285: #line 1456 "ntp_parser.y" /* yacc.c:1646 */ - { (yyval.Double) = (double)(yyvsp[0].Integer); } + { (yyval.Integer) = 0; } #line 3198 "ntp_parser.c" /* yacc.c:1646 */ break; case 286: -#line 1467 "ntp_parser.y" /* yacc.c:1646 */ +#line 1460 "ntp_parser.y" /* yacc.c:1646 */ + { (yyval.Double) = (double)(yyvsp[0].Integer); } +#line 3204 "ntp_parser.c" /* yacc.c:1646 */ + break; + + case 288: +#line 1471 "ntp_parser.y" /* yacc.c:1646 */ { sim_node *sn; @@ -3208,125 +3214,125 @@ yyreduce: /* Revert from ; to \n for end-of-command */ old_config_style = 1; } -#line 3212 "ntp_parser.c" /* yacc.c:1646 */ +#line 3218 "ntp_parser.c" /* yacc.c:1646 */ break; - case 287: -#line 1484 "ntp_parser.y" /* yacc.c:1646 */ + case 289: +#line 1488 "ntp_parser.y" /* yacc.c:1646 */ { old_config_style = 0; } -#line 3218 "ntp_parser.c" /* yacc.c:1646 */ +#line 3224 "ntp_parser.c" /* yacc.c:1646 */ break; - case 288: -#line 1489 "ntp_parser.y" /* yacc.c:1646 */ + case 290: +#line 1493 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3227 "ntp_parser.c" /* yacc.c:1646 */ +#line 3233 "ntp_parser.c" /* yacc.c:1646 */ break; - case 289: -#line 1494 "ntp_parser.y" /* yacc.c:1646 */ + case 291: +#line 1498 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3236 "ntp_parser.c" /* yacc.c:1646 */ +#line 3242 "ntp_parser.c" /* yacc.c:1646 */ break; - case 290: -#line 1502 "ntp_parser.y" /* yacc.c:1646 */ + case 292: +#line 1506 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } -#line 3242 "ntp_parser.c" /* yacc.c:1646 */ +#line 3248 "ntp_parser.c" /* yacc.c:1646 */ break; - case 293: -#line 1512 "ntp_parser.y" /* yacc.c:1646 */ + case 295: +#line 1516 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo); APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); } -#line 3251 "ntp_parser.c" /* yacc.c:1646 */ +#line 3257 "ntp_parser.c" /* yacc.c:1646 */ break; - case 294: -#line 1517 "ntp_parser.y" /* yacc.c:1646 */ + case 296: +#line 1521 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server_fifo) = NULL; APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); } -#line 3260 "ntp_parser.c" /* yacc.c:1646 */ +#line 3266 "ntp_parser.c" /* yacc.c:1646 */ break; - case 295: -#line 1525 "ntp_parser.y" /* yacc.c:1646 */ + case 297: +#line 1529 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); } -#line 3266 "ntp_parser.c" /* yacc.c:1646 */ +#line 3272 "ntp_parser.c" /* yacc.c:1646 */ break; - case 296: -#line 1530 "ntp_parser.y" /* yacc.c:1646 */ + case 298: +#line 1534 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Double) = (yyvsp[-1].Double); } -#line 3272 "ntp_parser.c" /* yacc.c:1646 */ +#line 3278 "ntp_parser.c" /* yacc.c:1646 */ break; - case 297: -#line 1535 "ntp_parser.y" /* yacc.c:1646 */ + case 299: +#line 1539 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_node) = (yyvsp[0].Address_node); } -#line 3278 "ntp_parser.c" /* yacc.c:1646 */ +#line 3284 "ntp_parser.c" /* yacc.c:1646 */ break; - case 298: -#line 1540 "ntp_parser.y" /* yacc.c:1646 */ + case 300: +#line 1544 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo); APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); } -#line 3287 "ntp_parser.c" /* yacc.c:1646 */ +#line 3293 "ntp_parser.c" /* yacc.c:1646 */ break; - case 299: -#line 1545 "ntp_parser.y" /* yacc.c:1646 */ + case 301: +#line 1549 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script_fifo) = NULL; APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); } -#line 3296 "ntp_parser.c" /* yacc.c:1646 */ +#line 3302 "ntp_parser.c" /* yacc.c:1646 */ break; - case 300: -#line 1553 "ntp_parser.y" /* yacc.c:1646 */ + case 302: +#line 1557 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); } -#line 3302 "ntp_parser.c" /* yacc.c:1646 */ +#line 3308 "ntp_parser.c" /* yacc.c:1646 */ break; - case 301: -#line 1558 "ntp_parser.y" /* yacc.c:1646 */ + case 303: +#line 1562 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3311 "ntp_parser.c" /* yacc.c:1646 */ +#line 3317 "ntp_parser.c" /* yacc.c:1646 */ break; - case 302: -#line 1563 "ntp_parser.y" /* yacc.c:1646 */ + case 304: +#line 1567 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3320 "ntp_parser.c" /* yacc.c:1646 */ +#line 3326 "ntp_parser.c" /* yacc.c:1646 */ break; - case 303: -#line 1571 "ntp_parser.y" /* yacc.c:1646 */ + case 305: +#line 1575 "ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } -#line 3326 "ntp_parser.c" /* yacc.c:1646 */ +#line 3332 "ntp_parser.c" /* yacc.c:1646 */ break; -#line 3330 "ntp_parser.c" /* yacc.c:1646 */ +#line 3336 "ntp_parser.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -3554,7 +3560,7 @@ yyreturn: #endif return yyresult; } -#line 1582 "ntp_parser.y" /* yacc.c:1906 */ +#line 1586 "ntp_parser.y" /* yacc.c:1906 */ void diff --git a/ntpd/ntp_parser.h b/ntpd/ntp_parser.h index fc2e971ce..2804e5449 100644 --- a/ntpd/ntp_parser.h +++ b/ntpd/ntp_parser.h @@ -194,44 +194,46 @@ extern int yydebug; T_Stats = 404, T_Statsdir = 405, T_Step = 406, - T_Stepout = 407, - T_Stratum = 408, - T_String = 409, - T_Sys = 410, - T_Sysstats = 411, - T_Tick = 412, - T_Time1 = 413, - T_Time2 = 414, - T_Timer = 415, - T_Timingstats = 416, - T_Tinker = 417, - T_Tos = 418, - T_Trap = 419, - T_True = 420, - T_Trustedkey = 421, - T_Ttl = 422, - T_Type = 423, - T_U_int = 424, - T_Unconfig = 425, - T_Unpeer = 426, - T_Version = 427, - T_WanderThreshold = 428, - T_Week = 429, - T_Wildcard = 430, - T_Xleave = 431, - T_Year = 432, - T_Flag = 433, - T_EOC = 434, - T_Simulate = 435, - T_Beep_Delay = 436, - T_Sim_Duration = 437, - T_Server_Offset = 438, - T_Duration = 439, - T_Freq_Offset = 440, - T_Wander = 441, - T_Jitter = 442, - T_Prop_Delay = 443, - T_Proc_Delay = 444 + T_Stepback = 407, + T_Stepfwd = 408, + T_Stepout = 409, + T_Stratum = 410, + T_String = 411, + T_Sys = 412, + T_Sysstats = 413, + T_Tick = 414, + T_Time1 = 415, + T_Time2 = 416, + T_Timer = 417, + T_Timingstats = 418, + T_Tinker = 419, + T_Tos = 420, + T_Trap = 421, + T_True = 422, + T_Trustedkey = 423, + T_Ttl = 424, + T_Type = 425, + T_U_int = 426, + T_Unconfig = 427, + T_Unpeer = 428, + T_Version = 429, + T_WanderThreshold = 430, + T_Week = 431, + T_Wildcard = 432, + T_Xleave = 433, + T_Year = 434, + T_Flag = 435, + T_EOC = 436, + T_Simulate = 437, + T_Beep_Delay = 438, + T_Sim_Duration = 439, + T_Server_Offset = 440, + T_Duration = 441, + T_Freq_Offset = 442, + T_Wander = 443, + T_Jitter = 444, + T_Prop_Delay = 445, + T_Proc_Delay = 446 }; #endif /* Tokens. */ @@ -384,44 +386,46 @@ extern int yydebug; #define T_Stats 404 #define T_Statsdir 405 #define T_Step 406 -#define T_Stepout 407 -#define T_Stratum 408 -#define T_String 409 -#define T_Sys 410 -#define T_Sysstats 411 -#define T_Tick 412 -#define T_Time1 413 -#define T_Time2 414 -#define T_Timer 415 -#define T_Timingstats 416 -#define T_Tinker 417 -#define T_Tos 418 -#define T_Trap 419 -#define T_True 420 -#define T_Trustedkey 421 -#define T_Ttl 422 -#define T_Type 423 -#define T_U_int 424 -#define T_Unconfig 425 -#define T_Unpeer 426 -#define T_Version 427 -#define T_WanderThreshold 428 -#define T_Week 429 -#define T_Wildcard 430 -#define T_Xleave 431 -#define T_Year 432 -#define T_Flag 433 -#define T_EOC 434 -#define T_Simulate 435 -#define T_Beep_Delay 436 -#define T_Sim_Duration 437 -#define T_Server_Offset 438 -#define T_Duration 439 -#define T_Freq_Offset 440 -#define T_Wander 441 -#define T_Jitter 442 -#define T_Prop_Delay 443 -#define T_Proc_Delay 444 +#define T_Stepback 407 +#define T_Stepfwd 408 +#define T_Stepout 409 +#define T_Stratum 410 +#define T_String 411 +#define T_Sys 412 +#define T_Sysstats 413 +#define T_Tick 414 +#define T_Time1 415 +#define T_Time2 416 +#define T_Timer 417 +#define T_Timingstats 418 +#define T_Tinker 419 +#define T_Tos 420 +#define T_Trap 421 +#define T_True 422 +#define T_Trustedkey 423 +#define T_Ttl 424 +#define T_Type 425 +#define T_U_int 426 +#define T_Unconfig 427 +#define T_Unpeer 428 +#define T_Version 429 +#define T_WanderThreshold 430 +#define T_Week 431 +#define T_Wildcard 432 +#define T_Xleave 433 +#define T_Year 434 +#define T_Flag 435 +#define T_EOC 436 +#define T_Simulate 437 +#define T_Beep_Delay 438 +#define T_Sim_Duration 439 +#define T_Server_Offset 440 +#define T_Duration 441 +#define T_Freq_Offset 442 +#define T_Wander 443 +#define T_Jitter 444 +#define T_Prop_Delay 445 +#define T_Proc_Delay 446 /* Value type. */ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED @@ -447,7 +451,7 @@ union YYSTYPE script_info * Sim_script; script_info_fifo * Sim_script_fifo; -#line 451 "ntp_parser.h" /* yacc.c:1909 */ +#line 455 "ntp_parser.h" /* yacc.c:1909 */ }; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 diff --git a/ntpd/ntp_parser.y b/ntpd/ntp_parser.y index c55e0697d..e878e794d 100644 --- a/ntpd/ntp_parser.y +++ b/ntpd/ntp_parser.y @@ -220,6 +220,8 @@ %token T_Stats %token T_Statsdir %token T_Step +%token T_Stepback +%token T_Stepfwd %token T_Stepout %token T_Stratum %token T_String /* not a token */ @@ -1109,6 +1111,8 @@ tinker_option_keyword | T_Huffpuff | T_Panic | T_Step + | T_Stepback + | T_Stepfwd | T_Stepout | T_Tick ;