Index: UPDATING
===================================================================
--- UPDATING	(版本 301052)
+++ UPDATING	(版本 301301)
@@ -16,6 +16,10 @@
 stable/10, and then rebuild without this option. The bootstrap process from
 older version of current is a bit fragile.
 
+20160604	p5	FreeBSD-SA-16:24.ntp
+
+	Fix multiple vulnerabilities of ntp.
+
 20160531	p4	FreeBSD-SA-16:20.linux
 			FreeBSD-SA-16:21.43bsd
 			FreeBSD-SA-16:22.libarchive
Index: contrib/ntp/ChangeLog
===================================================================
--- contrib/ntp/ChangeLog	(版本 301052)
+++ contrib/ntp/ChangeLog	(版本 301301)
@@ -1,4 +1,26 @@
 ---
+(4.2.8p8) 2016/06/02 Released by Harlan Stenn <stenn@ntp.org>
+
+* [Sec 3042] Broadcast Interleave.  HStenn.
+* [Sec 3043] Autokey association reset.  perlinger@ntp.org, stenn@ntp.org
+  - validate origin timestamps on bad MACs, too.  stenn@ntp.org
+* [Sec 3044] Spoofed server packets are partially processed.  HStenn.
+* [Sec 3045] Bad authentication demobilizes ephemeral associations. JPerlinger.
+* [Sec 3046] CRYPTO_NAK crash.  stenn@ntp.org
+* [Bug 3038] NTP fails to build in VS2015. perlinger@ntp.org
+  - provide build environment
+  - 'wint_t' and 'struct timespec' defined by VS2015
+  - fixed print()/scanf() format issues
+* [Bug 3052] Add a .gitignore file.  Edmund Wong.
+* [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
+* [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback,
+  JPerlinger, HStenn.
+* Update the NEWS file for 4.2.8p8.  HStenn.
+* Fix typo in ntp-wait and plot_summary.  HStenn.
+* Make sure we have an "author" file for git imports.  HStenn.
+* Update the sntp problem tests for MacOS.  HStenn.
+  
+---
 (4.2.8p7) 2016/04/26 Released by Harlan Stenn <stenn@ntp.org>
 
 * [Sec 2901] KoD packets must have non-zero transmit timestamps.  HStenn.
Index: contrib/ntp/ntpd/ntp_config.c
===================================================================
--- contrib/ntp/ntpd/ntp_config.c	(版本 301052)
+++ contrib/ntp/ntpd/ntp_config.c	(版本 301301)
@@ -2971,12 +2971,16 @@
 			proto_config(PROTO_MONITOR, enable, 0., NULL);
 			break;
 
+		case T_Mode7:
+			proto_config(PROTO_MODE7, enable, 0., NULL);
+			break;
+
 		case T_Ntp:
 			proto_config(PROTO_NTP, enable, 0., NULL);
 			break;
 
-		case T_Mode7:
-			proto_config(PROTO_MODE7, enable, 0., NULL);
+		case T_PCEdigest:
+			proto_config(PROTO_PCEDIGEST, enable, 0., NULL);
 			break;
 
 		case T_Stats:
Index: contrib/ntp/ntpd/ntp_keyword.h
===================================================================
--- contrib/ntp/ntpd/ntp_keyword.h	(版本 301052)
+++ contrib/ntp/ntpd/ntp_keyword.h	(版本 301301)
@@ -2,7 +2,7 @@
  * ntp_keyword.h
  * 
  * NOTE: edit this file with caution, it is generated by keyword-gen.c
- *	 Generated 2016-01-16 08:33:03 UTC	  diff_ignore_line
+ *	 Generated 2016-05-19 06:35:34 UTC	  diff_ignore_line
  *
  */
 #include "ntp_scanner.h"
@@ -10,7 +10,7 @@
 
 #define LOWEST_KEYWORD_ID 258
 
-const char * const keyword_text[194] = {
+const char * const keyword_text[195] = {
 	/* 0       258             T_Abbrev */	"abbrev",
 	/* 1       259                T_Age */	"age",
 	/* 2       260                T_All */	"all",
@@ -133,83 +133,84 @@
 	/* 119     377     T_NtpSignDsocket */	"ntpsigndsocket",
 	/* 120     378             T_Orphan */	"orphan",
 	/* 121     379         T_Orphanwait */	"orphanwait",
-	/* 122     380              T_Panic */	"panic",
-	/* 123     381               T_Peer */	"peer",
-	/* 124     382          T_Peerstats */	"peerstats",
-	/* 125     383              T_Phone */	"phone",
-	/* 126     384                T_Pid */	"pid",
-	/* 127     385            T_Pidfile */	"pidfile",
-	/* 128     386               T_Pool */	"pool",
-	/* 129     387               T_Port */	"port",
-	/* 130     388            T_Preempt */	"preempt",
-	/* 131     389             T_Prefer */	"prefer",
-	/* 132     390         T_Protostats */	"protostats",
-	/* 133     391                 T_Pw */	"pw",
-	/* 134     392           T_Randfile */	"randfile",
-	/* 135     393           T_Rawstats */	"rawstats",
-	/* 136     394              T_Refid */	"refid",
-	/* 137     395         T_Requestkey */	"requestkey",
-	/* 138     396              T_Reset */	"reset",
-	/* 139     397           T_Restrict */	"restrict",
-	/* 140     398             T_Revoke */	"revoke",
-	/* 141     399             T_Rlimit */	"rlimit",
-	/* 142     400      T_Saveconfigdir */	"saveconfigdir",
-	/* 143     401             T_Server */	"server",
-	/* 144     402             T_Setvar */	"setvar",
-	/* 145     403             T_Source */	"source",
-	/* 146     404          T_Stacksize */	"stacksize",
-	/* 147     405         T_Statistics */	"statistics",
-	/* 148     406              T_Stats */	"stats",
-	/* 149     407           T_Statsdir */	"statsdir",
-	/* 150     408               T_Step */	"step",
-	/* 151     409           T_Stepback */	"stepback",
-	/* 152     410            T_Stepfwd */	"stepfwd",
-	/* 153     411            T_Stepout */	"stepout",
-	/* 154     412            T_Stratum */	"stratum",
-	/* 155     413             T_String */	NULL,
-	/* 156     414                T_Sys */	"sys",
-	/* 157     415           T_Sysstats */	"sysstats",
-	/* 158     416               T_Tick */	"tick",
-	/* 159     417              T_Time1 */	"time1",
-	/* 160     418              T_Time2 */	"time2",
-	/* 161     419              T_Timer */	"timer",
-	/* 162     420        T_Timingstats */	"timingstats",
-	/* 163     421             T_Tinker */	"tinker",
-	/* 164     422                T_Tos */	"tos",
-	/* 165     423               T_Trap */	"trap",
-	/* 166     424               T_True */	"true",
-	/* 167     425         T_Trustedkey */	"trustedkey",
-	/* 168     426                T_Ttl */	"ttl",
-	/* 169     427               T_Type */	"type",
-	/* 170     428              T_U_int */	NULL,
-	/* 171     429           T_UEcrypto */	"unpeer_crypto_early",
-	/* 172     430        T_UEcryptonak */	"unpeer_crypto_nak_early",
-	/* 173     431           T_UEdigest */	"unpeer_digest_early",
-	/* 174     432           T_Unconfig */	"unconfig",
-	/* 175     433             T_Unpeer */	"unpeer",
-	/* 176     434            T_Version */	"version",
-	/* 177     435    T_WanderThreshold */	NULL,
-	/* 178     436               T_Week */	"week",
-	/* 179     437           T_Wildcard */	"wildcard",
-	/* 180     438             T_Xleave */	"xleave",
-	/* 181     439               T_Year */	"year",
-	/* 182     440               T_Flag */	NULL,
-	/* 183     441                T_EOC */	NULL,
-	/* 184     442           T_Simulate */	"simulate",
-	/* 185     443         T_Beep_Delay */	"beep_delay",
-	/* 186     444       T_Sim_Duration */	"simulation_duration",
-	/* 187     445      T_Server_Offset */	"server_offset",
-	/* 188     446           T_Duration */	"duration",
-	/* 189     447        T_Freq_Offset */	"freq_offset",
-	/* 190     448             T_Wander */	"wander",
-	/* 191     449             T_Jitter */	"jitter",
-	/* 192     450         T_Prop_Delay */	"prop_delay",
-	/* 193     451         T_Proc_Delay */	"proc_delay"
+	/* 122     380          T_PCEdigest */	"peer_clear_digest_early",
+	/* 123     381              T_Panic */	"panic",
+	/* 124     382               T_Peer */	"peer",
+	/* 125     383          T_Peerstats */	"peerstats",
+	/* 126     384              T_Phone */	"phone",
+	/* 127     385                T_Pid */	"pid",
+	/* 128     386            T_Pidfile */	"pidfile",
+	/* 129     387               T_Pool */	"pool",
+	/* 130     388               T_Port */	"port",
+	/* 131     389            T_Preempt */	"preempt",
+	/* 132     390             T_Prefer */	"prefer",
+	/* 133     391         T_Protostats */	"protostats",
+	/* 134     392                 T_Pw */	"pw",
+	/* 135     393           T_Randfile */	"randfile",
+	/* 136     394           T_Rawstats */	"rawstats",
+	/* 137     395              T_Refid */	"refid",
+	/* 138     396         T_Requestkey */	"requestkey",
+	/* 139     397              T_Reset */	"reset",
+	/* 140     398           T_Restrict */	"restrict",
+	/* 141     399             T_Revoke */	"revoke",
+	/* 142     400             T_Rlimit */	"rlimit",
+	/* 143     401      T_Saveconfigdir */	"saveconfigdir",
+	/* 144     402             T_Server */	"server",
+	/* 145     403             T_Setvar */	"setvar",
+	/* 146     404             T_Source */	"source",
+	/* 147     405          T_Stacksize */	"stacksize",
+	/* 148     406         T_Statistics */	"statistics",
+	/* 149     407              T_Stats */	"stats",
+	/* 150     408           T_Statsdir */	"statsdir",
+	/* 151     409               T_Step */	"step",
+	/* 152     410           T_Stepback */	"stepback",
+	/* 153     411            T_Stepfwd */	"stepfwd",
+	/* 154     412            T_Stepout */	"stepout",
+	/* 155     413            T_Stratum */	"stratum",
+	/* 156     414             T_String */	NULL,
+	/* 157     415                T_Sys */	"sys",
+	/* 158     416           T_Sysstats */	"sysstats",
+	/* 159     417               T_Tick */	"tick",
+	/* 160     418              T_Time1 */	"time1",
+	/* 161     419              T_Time2 */	"time2",
+	/* 162     420              T_Timer */	"timer",
+	/* 163     421        T_Timingstats */	"timingstats",
+	/* 164     422             T_Tinker */	"tinker",
+	/* 165     423                T_Tos */	"tos",
+	/* 166     424               T_Trap */	"trap",
+	/* 167     425               T_True */	"true",
+	/* 168     426         T_Trustedkey */	"trustedkey",
+	/* 169     427                T_Ttl */	"ttl",
+	/* 170     428               T_Type */	"type",
+	/* 171     429              T_U_int */	NULL,
+	/* 172     430           T_UEcrypto */	"unpeer_crypto_early",
+	/* 173     431        T_UEcryptonak */	"unpeer_crypto_nak_early",
+	/* 174     432           T_UEdigest */	"unpeer_digest_early",
+	/* 175     433           T_Unconfig */	"unconfig",
+	/* 176     434             T_Unpeer */	"unpeer",
+	/* 177     435            T_Version */	"version",
+	/* 178     436    T_WanderThreshold */	NULL,
+	/* 179     437               T_Week */	"week",
+	/* 180     438           T_Wildcard */	"wildcard",
+	/* 181     439             T_Xleave */	"xleave",
+	/* 182     440               T_Year */	"year",
+	/* 183     441               T_Flag */	NULL,
+	/* 184     442                T_EOC */	NULL,
+	/* 185     443           T_Simulate */	"simulate",
+	/* 186     444         T_Beep_Delay */	"beep_delay",
+	/* 187     445       T_Sim_Duration */	"simulation_duration",
+	/* 188     446      T_Server_Offset */	"server_offset",
+	/* 189     447           T_Duration */	"duration",
+	/* 190     448        T_Freq_Offset */	"freq_offset",
+	/* 191     449             T_Wander */	"wander",
+	/* 192     450             T_Jitter */	"jitter",
+	/* 193     451         T_Prop_Delay */	"prop_delay",
+	/* 194     452         T_Proc_Delay */	"proc_delay"
 };
 
-#define SCANNER_INIT_S 887
+#define SCANNER_INIT_S 906
 
-const scan_state sst[890] = {
+const scan_state sst[909] = {
 /*SS_T( ch,	f-by, match, other ),				 */
   0,				      /*     0                   */
   S_ST( '-',	3,      323,     0 ), /*     1                   */
@@ -255,7 +256,7 @@
   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,      443,     0 ), /*    44 beep_del          */
+  S_ST( 'a',	3,      444,     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               */
@@ -355,7 +356,7 @@
   S_ST( 'a',	3,      142,     0 ), /*   141 dur               */
   S_ST( 't',	3,      143,     0 ), /*   142 dura              */
   S_ST( 'i',	3,      144,     0 ), /*   143 durat             */
-  S_ST( 'o',	3,      446,     0 ), /*   144 durati            */
+  S_ST( 'o',	3,      447,     0 ), /*   144 durati            */
   S_ST( 'e',	3,      146,   105 ), /*   145                   */
   S_ST( 'n',	3,      293,     0 ), /*   146 e                 */
   S_ST( 'a',	3,      148,     0 ), /*   147 en                */
@@ -381,7 +382,7 @@
   S_ST( 'f',	3,      168,     0 ), /*   167 freq_o            */
   S_ST( 'f',	3,      169,     0 ), /*   168 freq_of           */
   S_ST( 's',	3,      170,     0 ), /*   169 freq_off          */
-  S_ST( 'e',	3,      447,     0 ), /*   170 freq_offs         */
+  S_ST( 'e',	3,      448,     0 ), /*   170 freq_offs         */
   S_ST( 'u',	3,      172,   163 ), /*   171 f                 */
   S_ST( 'd',	3,      173,     0 ), /*   172 fu                */
   S_ST( 'g',	3,      305,     0 ), /*   173 fud               */
@@ -441,7 +442,7 @@
   S_ST( 'i',	3,      228,     0 ), /*   227 j                 */
   S_ST( 't',	3,      229,     0 ), /*   228 ji                */
   S_ST( 't',	3,      230,     0 ), /*   229 jit               */
-  S_ST( 'e',	3,      449,     0 ), /*   230 jitt              */
+  S_ST( 'e',	3,      450,     0 ), /*   230 jitt              */
   S_ST( 'k',	3,      238,   226 ), /*   231                   */
   S_ST( 'e',	3,      325,     0 ), /*   232 k                 */
   S_ST( 'r',	3,      234,     0 ), /*   233 ke                */
@@ -450,7 +451,7 @@
   S_ST( 'd',	3,      237,     0 ), /*   236 keys              */
   S_ST( 'i',	3,      327,     0 ), /*   237 keysd             */
   S_ST( 'o',	3,      328,   232 ), /*   238 k                 */
-  S_ST( 'l',	3,      452,   231 ), /*   239                   */
+  S_ST( 'l',	3,      453,   231 ), /*   239                   */
   S_ST( 'e',	3,      241,     0 ), /*   240 l                 */
   S_ST( 'a',	3,      242,     0 ), /*   241 le                */
   S_ST( 'p',	3,      246,     0 ), /*   242 lea               */
@@ -498,7 +499,7 @@
   S_ST( 'e',	0,        0,     0 ), /*   284 T_Disable         */
   S_ST( 'd',	0,        0,     0 ), /*   285 T_Discard         */
   S_ST( 'n',	0,        0,     0 ), /*   286 T_Dispersion      */
-  S_ST( 'i',	3,      435,   240 ), /*   287 l                 */
+  S_ST( 'i',	3,      436,   240 ), /*   287 l                 */
   S_ST( 'e',	1,        0,     0 ), /*   288 T_Driftfile       */
   S_ST( 'p',	0,        0,     0 ), /*   289 T_Drop            */
   S_ST( 'p',	0,        0,     0 ), /*   290 T_Dscp            */
@@ -529,7 +530,7 @@
   S_ST( 'e',	1,        0,     0 ), /*   315 T_Includefile     */
   S_ST( 'i',	3,      318,     0 ), /*   316 lim               */
   S_ST( 'e',	0,        0,     0 ), /*   317 T_Interface       */
-  S_ST( 't',	3,      413,     0 ), /*   318 limi              */
+  S_ST( 't',	3,      414,     0 ), /*   318 limi              */
   S_ST( 'o',	0,        0,   195 ), /*   319 T_Io              */
   S_ST( '4',	0,        0,     0 ), /*   320 T_Ipv4            */
   S_ST( '4',	0,        0,     0 ), /*   321 T_Ipv4_flag       */
@@ -560,7 +561,7 @@
   S_ST( 'm',	0,        0,     0 ), /*   346 T_Maxmem          */
   S_ST( 'l',	0,        0,     0 ), /*   347 T_Maxpoll         */
   S_ST( 's',	0,        0,     0 ), /*   348 T_Mdnstries       */
-  S_ST( 'm',	0,      521,     0 ), /*   349 T_Mem             */
+  S_ST( 'm',	0,      522,     0 ), /*   349 T_Mem             */
   S_ST( 'k',	0,        0,     0 ), /*   350 T_Memlock         */
   S_ST( 'k',	0,        0,     0 ), /*   351 T_Minclock        */
   S_ST( 'h',	0,        0,     0 ), /*   352 T_Mindepth        */
@@ -586,520 +587,539 @@
   S_ST( 'e',	0,        0,     0 ), /*   372 T_Noserve         */
   S_ST( 'p',	0,        0,     0 ), /*   373 T_Notrap          */
   S_ST( 't',	0,        0,     0 ), /*   374 T_Notrust         */
-  S_ST( 'p',	0,      617,     0 ), /*   375 T_Ntp             */
+  S_ST( 'p',	0,      618,     0 ), /*   375 T_Ntp             */
   S_ST( 't',	0,        0,     0 ), /*   376 T_Ntpport         */
   S_ST( 't',	1,        0,     0 ), /*   377 T_NtpSignDsocket  */
-  S_ST( 'n',	0,      632,     0 ), /*   378 T_Orphan          */
+  S_ST( 'n',	0,      633,     0 ), /*   378 T_Orphan          */
   S_ST( 't',	0,        0,     0 ), /*   379 T_Orphanwait      */
-  S_ST( 'c',	0,        0,     0 ), /*   380 T_Panic           */
-  S_ST( 'r',	1,      641,     0 ), /*   381 T_Peer            */
-  S_ST( 's',	0,        0,     0 ), /*   382 T_Peerstats       */
-  S_ST( 'e',	2,        0,     0 ), /*   383 T_Phone           */
-  S_ST( 'd',	0,      649,     0 ), /*   384 T_Pid             */
-  S_ST( 'e',	1,        0,     0 ), /*   385 T_Pidfile         */
-  S_ST( 'l',	1,        0,     0 ), /*   386 T_Pool            */
-  S_ST( 't',	0,        0,     0 ), /*   387 T_Port            */
-  S_ST( 't',	0,        0,     0 ), /*   388 T_Preempt         */
-  S_ST( 'r',	0,        0,     0 ), /*   389 T_Prefer          */
-  S_ST( 's',	0,        0,     0 ), /*   390 T_Protostats      */
-  S_ST( 'w',	1,        0,   655 ), /*   391 T_Pw              */
-  S_ST( 'e',	1,        0,     0 ), /*   392 T_Randfile        */
-  S_ST( 's',	0,        0,     0 ), /*   393 T_Rawstats        */
-  S_ST( 'd',	1,        0,     0 ), /*   394 T_Refid           */
-  S_ST( 'y',	0,        0,     0 ), /*   395 T_Requestkey      */
-  S_ST( 't',	0,        0,     0 ), /*   396 T_Reset           */
-  S_ST( 't',	0,        0,     0 ), /*   397 T_Restrict        */
-  S_ST( 'e',	0,        0,     0 ), /*   398 T_Revoke          */
-  S_ST( 't',	0,        0,     0 ), /*   399 T_Rlimit          */
-  S_ST( 'r',	1,        0,     0 ), /*   400 T_Saveconfigdir   */
-  S_ST( 'r',	1,      732,     0 ), /*   401 T_Server          */
-  S_ST( 'r',	1,        0,     0 ), /*   402 T_Setvar          */
-  S_ST( 'e',	0,        0,     0 ), /*   403 T_Source          */
-  S_ST( 'e',	0,        0,     0 ), /*   404 T_Stacksize       */
-  S_ST( 's',	0,        0,     0 ), /*   405 T_Statistics      */
-  S_ST( 's',	0,      775,   770 ), /*   406 T_Stats           */
-  S_ST( 'r',	1,        0,     0 ), /*   407 T_Statsdir        */
-  S_ST( 'p',	0,      783,     0 ), /*   408 T_Step            */
-  S_ST( 'k',	0,        0,     0 ), /*   409 T_Stepback        */
-  S_ST( 'd',	0,        0,     0 ), /*   410 T_Stepfwd         */
-  S_ST( 't',	0,        0,     0 ), /*   411 T_Stepout         */
-  S_ST( 'm',	0,        0,     0 ), /*   412 T_Stratum         */
-  S_ST( 'e',	3,      332,     0 ), /*   413 limit             */
-  S_ST( 's',	0,      790,     0 ), /*   414 T_Sys             */
-  S_ST( 's',	0,        0,     0 ), /*   415 T_Sysstats        */
-  S_ST( 'k',	0,        0,     0 ), /*   416 T_Tick            */
-  S_ST( '1',	0,        0,     0 ), /*   417 T_Time1           */
-  S_ST( '2',	0,        0,   417 ), /*   418 T_Time2           */
-  S_ST( 'r',	0,        0,   418 ), /*   419 T_Timer           */
-  S_ST( 's',	0,        0,     0 ), /*   420 T_Timingstats     */
-  S_ST( 'r',	0,        0,     0 ), /*   421 T_Tinker          */
-  S_ST( 's',	0,        0,     0 ), /*   422 T_Tos             */
-  S_ST( 'p',	1,        0,     0 ), /*   423 T_Trap            */
-  S_ST( 'e',	0,        0,     0 ), /*   424 T_True            */
-  S_ST( 'y',	0,        0,     0 ), /*   425 T_Trustedkey      */
-  S_ST( 'l',	0,        0,     0 ), /*   426 T_Ttl             */
-  S_ST( 'e',	0,        0,     0 ), /*   427 T_Type            */
-  S_ST( 'n',	3,      333,   294 ), /*   428 li                */
-  S_ST( 'y',	0,        0,     0 ), /*   429 T_UEcrypto        */
-  S_ST( 'y',	0,        0,     0 ), /*   430 T_UEcryptonak     */
-  S_ST( 'y',	0,        0,     0 ), /*   431 T_UEdigest        */
-  S_ST( 'g',	1,        0,     0 ), /*   432 T_Unconfig        */
-  S_ST( 'r',	1,      832,     0 ), /*   433 T_Unpeer          */
-  S_ST( 'n',	0,        0,     0 ), /*   434 T_Version         */
-  S_ST( 's',	3,      440,   428 ), /*   435 li                */
-  S_ST( 'k',	0,        0,     0 ), /*   436 T_Week            */
-  S_ST( 'd',	0,        0,     0 ), /*   437 T_Wildcard        */
-  S_ST( 'e',	0,        0,     0 ), /*   438 T_Xleave          */
-  S_ST( 'r',	0,        0,     0 ), /*   439 T_Year            */
-  S_ST( 't',	3,      441,     0 ), /*   440 lis               */
-  S_ST( 'e',	3,      334,     0 ), /*   441 list              */
-  S_ST( 'e',	0,        0,     0 ), /*   442 T_Simulate        */
-  S_ST( 'y',	0,        0,     0 ), /*   443 T_Beep_Delay      */
-  S_ST( 'n',	0,        0,     0 ), /*   444 T_Sim_Duration    */
-  S_ST( 't',	0,        0,     0 ), /*   445 T_Server_Offset   */
-  S_ST( 'n',	0,        0,     0 ), /*   446 T_Duration        */
-  S_ST( 't',	0,        0,     0 ), /*   447 T_Freq_Offset     */
-  S_ST( 'r',	0,        0,     0 ), /*   448 T_Wander          */
-  S_ST( 'r',	0,        0,     0 ), /*   449 T_Jitter          */
-  S_ST( 'y',	0,        0,     0 ), /*   450 T_Prop_Delay      */
-  S_ST( 'y',	0,        0,     0 ), /*   451 T_Proc_Delay      */
-  S_ST( 'o',	3,      468,   287 ), /*   452 l                 */
-  S_ST( 'g',	3,      459,     0 ), /*   453 lo                */
-  S_ST( 'c',	3,      455,     0 ), /*   454 log               */
-  S_ST( 'o',	3,      456,     0 ), /*   455 logc              */
-  S_ST( 'n',	3,      457,     0 ), /*   456 logco             */
-  S_ST( 'f',	3,      458,     0 ), /*   457 logcon            */
-  S_ST( 'i',	3,      335,     0 ), /*   458 logconf           */
-  S_ST( 'f',	3,      460,   454 ), /*   459 log               */
-  S_ST( 'i',	3,      461,     0 ), /*   460 logf              */
-  S_ST( 'l',	3,      336,     0 ), /*   461 logfi             */
-  S_ST( 'o',	3,      463,   453 ), /*   462 lo                */
-  S_ST( 'p',	3,      464,     0 ), /*   463 loo               */
-  S_ST( 's',	3,      465,     0 ), /*   464 loop              */
-  S_ST( 't',	3,      466,     0 ), /*   465 loops             */
-  S_ST( 'a',	3,      467,     0 ), /*   466 loopst            */
-  S_ST( 't',	3,      337,     0 ), /*   467 loopsta           */
-  S_ST( 'w',	3,      469,   462 ), /*   468 lo                */
-  S_ST( 'p',	3,      470,     0 ), /*   469 low               */
-  S_ST( 'r',	3,      471,     0 ), /*   470 lowp              */
-  S_ST( 'i',	3,      472,     0 ), /*   471 lowpr             */
-  S_ST( 'o',	3,      473,     0 ), /*   472 lowpri            */
-  S_ST( 't',	3,      474,     0 ), /*   473 lowprio           */
-  S_ST( 'r',	3,      475,     0 ), /*   474 lowpriot          */
-  S_ST( 'a',	3,      338,     0 ), /*   475 lowpriotr         */
-  S_ST( 'm',	3,      557,   239 ), /*   476                   */
-  S_ST( 'a',	3,      495,     0 ), /*   477 m                 */
-  S_ST( 'n',	3,      479,     0 ), /*   478 ma                */
-  S_ST( 'y',	3,      480,     0 ), /*   479 man               */
-  S_ST( 'c',	3,      481,     0 ), /*   480 many              */
-  S_ST( 'a',	3,      482,     0 ), /*   481 manyc             */
-  S_ST( 's',	3,      483,     0 ), /*   482 manyca            */
-  S_ST( 't',	3,      489,     0 ), /*   483 manycas           */
-  S_ST( 'c',	3,      485,     0 ), /*   484 manycast          */
-  S_ST( 'l',	3,      486,     0 ), /*   485 manycastc         */
-  S_ST( 'i',	3,      487,     0 ), /*   486 manycastcl        */
-  S_ST( 'e',	3,      488,     0 ), /*   487 manycastcli       */
-  S_ST( 'n',	3,      339,     0 ), /*   488 manycastclie      */
-  S_ST( 's',	3,      490,   484 ), /*   489 manycast          */
-  S_ST( 'e',	3,      491,     0 ), /*   490 manycasts         */
-  S_ST( 'r',	3,      492,     0 ), /*   491 manycastse        */
-  S_ST( 'v',	3,      493,     0 ), /*   492 manycastser       */
-  S_ST( 'e',	3,      340,     0 ), /*   493 manycastserv      */
-  S_ST( 's',	3,      341,   478 ), /*   494 ma                */
-  S_ST( 'x',	3,      510,   494 ), /*   495 ma                */
-  S_ST( 'a',	3,      497,     0 ), /*   496 max               */
-  S_ST( 'g',	3,      342,     0 ), /*   497 maxa              */
-  S_ST( 'c',	3,      499,   496 ), /*   498 max               */
-  S_ST( 'l',	3,      500,     0 ), /*   499 maxc              */
-  S_ST( 'o',	3,      501,     0 ), /*   500 maxcl             */
-  S_ST( 'c',	3,      343,     0 ), /*   501 maxclo            */
-  S_ST( 'd',	3,      506,   498 ), /*   502 max               */
-  S_ST( 'e',	3,      504,     0 ), /*   503 maxd              */
-  S_ST( 'p',	3,      505,     0 ), /*   504 maxde             */
-  S_ST( 't',	3,      344,     0 ), /*   505 maxdep            */
-  S_ST( 'i',	3,      507,   503 ), /*   506 maxd              */
-  S_ST( 's',	3,      345,     0 ), /*   507 maxdi             */
-  S_ST( 'm',	3,      509,   502 ), /*   508 max               */
-  S_ST( 'e',	3,      346,     0 ), /*   509 maxm              */
-  S_ST( 'p',	3,      511,   508 ), /*   510 max               */
-  S_ST( 'o',	3,      512,     0 ), /*   511 maxp              */
-  S_ST( 'l',	3,      347,     0 ), /*   512 maxpo             */
-  S_ST( 'd',	3,      514,   477 ), /*   513 m                 */
-  S_ST( 'n',	3,      515,     0 ), /*   514 md                */
-  S_ST( 's',	3,      516,     0 ), /*   515 mdn               */
-  S_ST( 't',	3,      517,     0 ), /*   516 mdns              */
-  S_ST( 'r',	3,      518,     0 ), /*   517 mdnst             */
-  S_ST( 'i',	3,      519,     0 ), /*   518 mdnstr            */
-  S_ST( 'e',	3,      348,     0 ), /*   519 mdnstri           */
-  S_ST( 'e',	3,      349,   513 ), /*   520 m                 */
-  S_ST( 'l',	3,      522,     0 ), /*   521 mem               */
-  S_ST( 'o',	3,      523,     0 ), /*   522 meml              */
-  S_ST( 'c',	3,      350,     0 ), /*   523 memlo             */
-  S_ST( 'i',	3,      525,   520 ), /*   524 m                 */
-  S_ST( 'n',	3,      542,     0 ), /*   525 mi                */
-  S_ST( 'c',	3,      527,     0 ), /*   526 min               */
-  S_ST( 'l',	3,      528,     0 ), /*   527 minc              */
-  S_ST( 'o',	3,      529,     0 ), /*   528 mincl             */
-  S_ST( 'c',	3,      351,     0 ), /*   529 minclo            */
-  S_ST( 'd',	3,      534,   526 ), /*   530 min               */
-  S_ST( 'e',	3,      532,     0 ), /*   531 mind              */
-  S_ST( 'p',	3,      533,     0 ), /*   532 minde             */
-  S_ST( 't',	3,      352,     0 ), /*   533 mindep            */
-  S_ST( 'i',	3,      535,   531 ), /*   534 mind              */
-  S_ST( 's',	3,      353,     0 ), /*   535 mindi             */
-  S_ST( 'i',	3,      537,   530 ), /*   536 min               */
-  S_ST( 'm',	3,      538,     0 ), /*   537 mini              */
-  S_ST( 'u',	3,      354,     0 ), /*   538 minim             */
-  S_ST( 'p',	3,      540,   536 ), /*   539 min               */
-  S_ST( 'o',	3,      541,     0 ), /*   540 minp              */
-  S_ST( 'l',	3,      355,     0 ), /*   541 minpo             */
-  S_ST( 's',	3,      543,   539 ), /*   542 min               */
-  S_ST( 'a',	3,      544,     0 ), /*   543 mins              */
-  S_ST( 'n',	3,      356,     0 ), /*   544 minsa             */
-  S_ST( 'o',	3,      547,   524 ), /*   545 m                 */
-  S_ST( 'd',	3,      357,     0 ), /*   546 mo                */
-  S_ST( 'n',	3,      551,   546 ), /*   547 mo                */
-  S_ST( 'i',	3,      549,     0 ), /*   548 mon               */
-  S_ST( 't',	3,      550,     0 ), /*   549 moni              */
-  S_ST( 'o',	3,      359,     0 ), /*   550 monit             */
-  S_ST( 't',	3,      360,   548 ), /*   551 mon               */
-  S_ST( 'r',	3,      361,   545 ), /*   552 m                 */
-  S_ST( 's',	3,      554,   552 ), /*   553 m                 */
-  S_ST( 's',	3,      555,     0 ), /*   554 ms                */
-  S_ST( 'n',	3,      556,     0 ), /*   555 mss               */
-  S_ST( 't',	3,      329,     0 ), /*   556 mssn              */
-  S_ST( 'u',	3,      558,   553 ), /*   557 m                 */
-  S_ST( 'l',	3,      559,     0 ), /*   558 mu                */
-  S_ST( 't',	3,      560,     0 ), /*   559 mul               */
-  S_ST( 'i',	3,      561,     0 ), /*   560 mult              */
-  S_ST( 'c',	3,      562,     0 ), /*   561 multi             */
-  S_ST( 'a',	3,      563,     0 ), /*   562 multic            */
-  S_ST( 's',	3,      564,     0 ), /*   563 multica           */
-  S_ST( 't',	3,      565,     0 ), /*   564 multicas          */
-  S_ST( 'c',	3,      566,     0 ), /*   565 multicast         */
-  S_ST( 'l',	3,      567,     0 ), /*   566 multicastc        */
-  S_ST( 'i',	3,      568,     0 ), /*   567 multicastcl       */
-  S_ST( 'e',	3,      569,     0 ), /*   568 multicastcli      */
-  S_ST( 'n',	3,      362,     0 ), /*   569 multicastclie     */
-  S_ST( 'n',	3,      613,   476 ), /*   570                   */
-  S_ST( 'i',	3,      363,     0 ), /*   571 n                 */
-  S_ST( 'o',	3,      608,   571 ), /*   572 n                 */
-  S_ST( 'l',	3,      574,     0 ), /*   573 no                */
-  S_ST( 'i',	3,      575,     0 ), /*   574 nol               */
-  S_ST( 'n',	3,      364,     0 ), /*   575 noli              */
-  S_ST( 'm',	3,      581,   573 ), /*   576 no                */
-  S_ST( 'o',	3,      578,     0 ), /*   577 nom               */
-  S_ST( 'd',	3,      579,     0 ), /*   578 nomo              */
-  S_ST( 'i',	3,      580,     0 ), /*   579 nomod             */
-  S_ST( 'f',	3,      365,     0 ), /*   580 nomodi            */
-  S_ST( 'r',	3,      582,   577 ), /*   581 nom               */
-  S_ST( 'u',	3,      583,     0 ), /*   582 nomr              */
-  S_ST( 'l',	3,      584,     0 ), /*   583 nomru             */
-  S_ST( 'i',	3,      585,     0 ), /*   584 nomrul            */
-  S_ST( 's',	3,      366,     0 ), /*   585 nomruli           */
-  S_ST( 'n',	3,      587,   576 ), /*   586 no                */
-  S_ST( 'v',	3,      588,   367 ), /*   587 non               */
-  S_ST( 'o',	3,      589,     0 ), /*   588 nonv              */
-  S_ST( 'l',	3,      590,     0 ), /*   589 nonvo             */
-  S_ST( 'a',	3,      591,     0 ), /*   590 nonvol            */
-  S_ST( 't',	3,      592,     0 ), /*   591 nonvola           */
-  S_ST( 'i',	3,      593,     0 ), /*   592 nonvolat          */
-  S_ST( 'l',	3,      368,     0 ), /*   593 nonvolati         */
-  S_ST( 'p',	3,      595,   586 ), /*   594 no                */
-  S_ST( 'e',	3,      596,     0 ), /*   595 nop               */
-  S_ST( 'e',	3,      369,     0 ), /*   596 nope              */
-  S_ST( 'q',	3,      598,   594 ), /*   597 no                */
-  S_ST( 'u',	3,      599,     0 ), /*   598 noq               */
-  S_ST( 'e',	3,      600,     0 ), /*   599 noqu              */
-  S_ST( 'r',	3,      370,     0 ), /*   600 noque             */
-  S_ST( 's',	3,      602,   597 ), /*   601 no                */
-  S_ST( 'e',	3,      606,     0 ), /*   602 nos               */
-  S_ST( 'l',	3,      604,     0 ), /*   603 nose              */
-  S_ST( 'e',	3,      605,     0 ), /*   604 nosel             */
-  S_ST( 'c',	3,      371,     0 ), /*   605 nosele            */
-  S_ST( 'r',	3,      607,   603 ), /*   606 nose              */
-  S_ST( 'v',	3,      372,     0 ), /*   607 noser             */
-  S_ST( 't',	3,      609,   601 ), /*   608 no                */
-  S_ST( 'r',	3,      611,     0 ), /*   609 not               */
-  S_ST( 'a',	3,      373,     0 ), /*   610 notr              */
-  S_ST( 'u',	3,      612,   610 ), /*   611 notr              */
-  S_ST( 's',	3,      374,     0 ), /*   612 notru             */
-  S_ST( 't',	3,      375,   572 ), /*   613 n                 */
-  S_ST( 'p',	3,      615,     0 ), /*   614 ntp               */
-  S_ST( 'o',	3,      616,     0 ), /*   615 ntpp              */
-  S_ST( 'r',	3,      376,     0 ), /*   616 ntppo             */
-  S_ST( 's',	3,      618,   614 ), /*   617 ntp               */
-  S_ST( 'i',	3,      619,     0 ), /*   618 ntps              */
-  S_ST( 'g',	3,      620,     0 ), /*   619 ntpsi             */
-  S_ST( 'n',	3,      621,     0 ), /*   620 ntpsig            */
-  S_ST( 'd',	3,      622,     0 ), /*   621 ntpsign           */
-  S_ST( 's',	3,      623,     0 ), /*   622 ntpsignd          */
-  S_ST( 'o',	3,      624,     0 ), /*   623 ntpsignds         */
-  S_ST( 'c',	3,      625,     0 ), /*   624 ntpsigndso        */
-  S_ST( 'k',	3,      626,     0 ), /*   625 ntpsigndsoc       */
-  S_ST( 'e',	3,      377,     0 ), /*   626 ntpsigndsock      */
-  S_ST( 'o',	3,      628,   570 ), /*   627                   */
-  S_ST( 'r',	3,      629,     0 ), /*   628 o                 */
-  S_ST( 'p',	3,      630,     0 ), /*   629 or                */
-  S_ST( 'h',	3,      631,     0 ), /*   630 orp               */
-  S_ST( 'a',	3,      378,     0 ), /*   631 orph              */
-  S_ST( 'w',	3,      633,     0 ), /*   632 orphan            */
-  S_ST( 'a',	3,      634,     0 ), /*   633 orphanw           */
-  S_ST( 'i',	3,      379,     0 ), /*   634 orphanwa          */
-  S_ST( 'p',	3,      391,   627 ), /*   635                   */
-  S_ST( 'a',	3,      637,     0 ), /*   636 p                 */
-  S_ST( 'n',	3,      638,     0 ), /*   637 pa                */
-  S_ST( 'i',	3,      380,     0 ), /*   638 pan               */
-  S_ST( 'e',	3,      640,   636 ), /*   639 p                 */
-  S_ST( 'e',	3,      381,     0 ), /*   640 pe                */
-  S_ST( 's',	3,      642,     0 ), /*   641 peer              */
-  S_ST( 't',	3,      643,     0 ), /*   642 peers             */
-  S_ST( 'a',	3,      644,     0 ), /*   643 peerst            */
-  S_ST( 't',	3,      382,     0 ), /*   644 peersta           */
-  S_ST( 'h',	3,      646,   639 ), /*   645 p                 */
-  S_ST( 'o',	3,      647,     0 ), /*   646 ph                */
-  S_ST( 'n',	3,      383,     0 ), /*   647 pho               */
-  S_ST( 'i',	3,      384,   645 ), /*   648 p                 */
-  S_ST( 'f',	3,      650,     0 ), /*   649 pid               */
-  S_ST( 'i',	3,      651,     0 ), /*   650 pidf              */
-  S_ST( 'l',	3,      385,     0 ), /*   651 pidfi             */
-  S_ST( 'o',	3,      654,   648 ), /*   652 p                 */
-  S_ST( 'o',	3,      386,     0 ), /*   653 po                */
-  S_ST( 'r',	3,      387,   653 ), /*   654 po                */
-  S_ST( 'r',	3,      662,   652 ), /*   655 p                 */
-  S_ST( 'e',	3,      660,     0 ), /*   656 pr                */
-  S_ST( 'e',	3,      658,     0 ), /*   657 pre               */
-  S_ST( 'm',	3,      659,     0 ), /*   658 pree              */
-  S_ST( 'p',	3,      388,     0 ), /*   659 preem             */
-  S_ST( 'f',	3,      661,   657 ), /*   660 pre               */
-  S_ST( 'e',	3,      389,     0 ), /*   661 pref              */
-  S_ST( 'o',	3,      675,   656 ), /*   662 pr                */
-  S_ST( 'c',	3,      664,     0 ), /*   663 pro               */
-  S_ST( '_',	3,      665,     0 ), /*   664 proc              */
-  S_ST( 'd',	3,      666,     0 ), /*   665 proc_             */
-  S_ST( 'e',	3,      667,     0 ), /*   666 proc_d            */
-  S_ST( 'l',	3,      668,     0 ), /*   667 proc_de           */
-  S_ST( 'a',	3,      451,     0 ), /*   668 proc_del          */
-  S_ST( 'p',	3,      670,   663 ), /*   669 pro               */
-  S_ST( '_',	3,      671,     0 ), /*   670 prop              */
-  S_ST( 'd',	3,      672,     0 ), /*   671 prop_             */
-  S_ST( 'e',	3,      673,     0 ), /*   672 prop_d            */
-  S_ST( 'l',	3,      674,     0 ), /*   673 prop_de           */
-  S_ST( 'a',	3,      450,     0 ), /*   674 prop_del          */
-  S_ST( 't',	3,      676,   669 ), /*   675 pro               */
-  S_ST( 'o',	3,      677,     0 ), /*   676 prot              */
-  S_ST( 's',	3,      678,     0 ), /*   677 proto             */
-  S_ST( 't',	3,      679,     0 ), /*   678 protos            */
-  S_ST( 'a',	3,      680,     0 ), /*   679 protost           */
-  S_ST( 't',	3,      390,     0 ), /*   680 protosta          */
-  S_ST( 'r',	3,      712,   635 ), /*   681                   */
-  S_ST( 'a',	3,      688,     0 ), /*   682 r                 */
-  S_ST( 'n',	3,      684,     0 ), /*   683 ra                */
-  S_ST( 'd',	3,      685,     0 ), /*   684 ran               */
-  S_ST( 'f',	3,      686,     0 ), /*   685 rand              */
-  S_ST( 'i',	3,      687,     0 ), /*   686 randf             */
-  S_ST( 'l',	3,      392,     0 ), /*   687 randfi            */
-  S_ST( 'w',	3,      689,   683 ), /*   688 ra                */
-  S_ST( 's',	3,      690,     0 ), /*   689 raw               */
-  S_ST( 't',	3,      691,     0 ), /*   690 raws              */
-  S_ST( 'a',	3,      692,     0 ), /*   691 rawst             */
-  S_ST( 't',	3,      393,     0 ), /*   692 rawsta            */
-  S_ST( 'e',	3,      709,   682 ), /*   693 r                 */
-  S_ST( 'f',	3,      695,     0 ), /*   694 re                */
-  S_ST( 'i',	3,      394,     0 ), /*   695 ref               */
-  S_ST( 'q',	3,      697,   694 ), /*   696 re                */
-  S_ST( 'u',	3,      698,     0 ), /*   697 req               */
-  S_ST( 'e',	3,      699,     0 ), /*   698 requ              */
-  S_ST( 's',	3,      700,     0 ), /*   699 reque             */
-  S_ST( 't',	3,      701,     0 ), /*   700 reques            */
-  S_ST( 'k',	3,      702,     0 ), /*   701 request           */
-  S_ST( 'e',	3,      395,     0 ), /*   702 requestk          */
-  S_ST( 's',	3,      705,   696 ), /*   703 re                */
-  S_ST( 'e',	3,      396,     0 ), /*   704 res               */
-  S_ST( 't',	3,      706,   704 ), /*   705 res               */
-  S_ST( 'r',	3,      707,     0 ), /*   706 rest              */
-  S_ST( 'i',	3,      708,     0 ), /*   707 restr             */
-  S_ST( 'c',	3,      397,     0 ), /*   708 restri            */
-  S_ST( 'v',	3,      710,   703 ), /*   709 re                */
-  S_ST( 'o',	3,      711,     0 ), /*   710 rev               */
-  S_ST( 'k',	3,      398,     0 ), /*   711 revo              */
-  S_ST( 'l',	3,      713,   693 ), /*   712 r                 */
-  S_ST( 'i',	3,      714,     0 ), /*   713 rl                */
-  S_ST( 'm',	3,      715,     0 ), /*   714 rli               */
-  S_ST( 'i',	3,      399,     0 ), /*   715 rlim              */
-  S_ST( 's',	3,      789,   681 ), /*   716                   */
-  S_ST( 'a',	3,      718,     0 ), /*   717 s                 */
-  S_ST( 'v',	3,      719,     0 ), /*   718 sa                */
-  S_ST( 'e',	3,      720,     0 ), /*   719 sav               */
-  S_ST( 'c',	3,      721,     0 ), /*   720 save              */
-  S_ST( 'o',	3,      722,     0 ), /*   721 savec             */
-  S_ST( 'n',	3,      723,     0 ), /*   722 saveco            */
-  S_ST( 'f',	3,      724,     0 ), /*   723 savecon           */
-  S_ST( 'i',	3,      725,     0 ), /*   724 saveconf          */
-  S_ST( 'g',	3,      726,     0 ), /*   725 saveconfi         */
-  S_ST( 'd',	3,      727,     0 ), /*   726 saveconfig        */
-  S_ST( 'i',	3,      400,     0 ), /*   727 saveconfigd       */
-  S_ST( 'e',	3,      738,   717 ), /*   728 s                 */
-  S_ST( 'r',	3,      730,     0 ), /*   729 se                */
-  S_ST( 'v',	3,      731,     0 ), /*   730 ser               */
-  S_ST( 'e',	3,      401,     0 ), /*   731 serv              */
-  S_ST( '_',	3,      733,     0 ), /*   732 server            */
-  S_ST( 'o',	3,      734,     0 ), /*   733 server_           */
-  S_ST( 'f',	3,      735,     0 ), /*   734 server_o          */
-  S_ST( 'f',	3,      736,     0 ), /*   735 server_of         */
-  S_ST( 's',	3,      737,     0 ), /*   736 server_off        */
-  S_ST( 'e',	3,      445,     0 ), /*   737 server_offs       */
-  S_ST( 't',	3,      739,   729 ), /*   738 se                */
-  S_ST( 'v',	3,      740,     0 ), /*   739 set               */
-  S_ST( 'a',	3,      402,     0 ), /*   740 setv              */
-  S_ST( 'i',	3,      742,   728 ), /*   741 s                 */
-  S_ST( 'm',	3,      743,     0 ), /*   742 si                */
-  S_ST( 'u',	3,      744,     0 ), /*   743 sim               */
-  S_ST( 'l',	3,      745,     0 ), /*   744 simu              */
-  S_ST( 'a',	3,      746,     0 ), /*   745 simul             */
-  S_ST( 't',	3,      747,     0 ), /*   746 simula            */
-  S_ST( 'i',	3,      748,   442 ), /*   747 simulat           */
-  S_ST( 'o',	3,      749,     0 ), /*   748 simulati          */
-  S_ST( 'n',	3,      750,     0 ), /*   749 simulatio         */
-  S_ST( '_',	3,      751,     0 ), /*   750 simulation        */
-  S_ST( 'd',	3,      752,     0 ), /*   751 simulation_       */
-  S_ST( 'u',	3,      753,     0 ), /*   752 simulation_d      */
-  S_ST( 'r',	3,      754,     0 ), /*   753 simulation_du     */
-  S_ST( 'a',	3,      755,     0 ), /*   754 simulation_dur    */
-  S_ST( 't',	3,      756,     0 ), /*   755 simulation_dura   */
-  S_ST( 'i',	3,      757,     0 ), /*   756 simulation_durat  */
-  S_ST( 'o',	3,      444,     0 ), /*   757 simulation_durati */
-  S_ST( 'o',	3,      759,   741 ), /*   758 s                 */
-  S_ST( 'u',	3,      760,     0 ), /*   759 so                */
-  S_ST( 'r',	3,      761,     0 ), /*   760 sou               */
-  S_ST( 'c',	3,      403,     0 ), /*   761 sour              */
-  S_ST( 't',	3,      785,   758 ), /*   762 s                 */
-  S_ST( 'a',	3,      769,     0 ), /*   763 st                */
-  S_ST( 'c',	3,      765,     0 ), /*   764 sta               */
-  S_ST( 'k',	3,      766,     0 ), /*   765 stac              */
-  S_ST( 's',	3,      767,     0 ), /*   766 stack             */
-  S_ST( 'i',	3,      768,     0 ), /*   767 stacks            */
-  S_ST( 'z',	3,      404,     0 ), /*   768 stacksi           */
-  S_ST( 't',	3,      406,   764 ), /*   769 sta               */
-  S_ST( 'i',	3,      771,     0 ), /*   770 stat              */
-  S_ST( 's',	3,      772,     0 ), /*   771 stati             */
-  S_ST( 't',	3,      773,     0 ), /*   772 statis            */
-  S_ST( 'i',	3,      774,     0 ), /*   773 statist           */
-  S_ST( 'c',	3,      405,     0 ), /*   774 statisti          */
-  S_ST( 'd',	3,      776,     0 ), /*   775 stats             */
-  S_ST( 'i',	3,      407,     0 ), /*   776 statsd            */
-  S_ST( 'e',	3,      408,   763 ), /*   777 st                */
-  S_ST( 'b',	3,      779,     0 ), /*   778 step              */
-  S_ST( 'a',	3,      780,     0 ), /*   779 stepb             */
-  S_ST( 'c',	3,      409,     0 ), /*   780 stepba            */
-  S_ST( 'f',	3,      782,   778 ), /*   781 step              */
-  S_ST( 'w',	3,      410,     0 ), /*   782 stepf             */
-  S_ST( 'o',	3,      784,   781 ), /*   783 step              */
-  S_ST( 'u',	3,      411,     0 ), /*   784 stepo             */
-  S_ST( 'r',	3,      786,   777 ), /*   785 st                */
-  S_ST( 'a',	3,      787,     0 ), /*   786 str               */
-  S_ST( 't',	3,      788,     0 ), /*   787 stra              */
-  S_ST( 'u',	3,      412,     0 ), /*   788 strat             */
-  S_ST( 'y',	3,      414,   762 ), /*   789 s                 */
-  S_ST( 's',	3,      791,     0 ), /*   790 sys               */
-  S_ST( 't',	3,      792,     0 ), /*   791 syss              */
-  S_ST( 'a',	3,      793,     0 ), /*   792 sysst             */
-  S_ST( 't',	3,      415,     0 ), /*   793 syssta            */
-  S_ST( 't',	3,      820,   716 ), /*   794                   */
-  S_ST( 'i',	3,      806,     0 ), /*   795 t                 */
-  S_ST( 'c',	3,      416,     0 ), /*   796 ti                */
-  S_ST( 'm',	3,      799,   796 ), /*   797 ti                */
-  S_ST( 'e',	3,      419,     0 ), /*   798 tim               */
-  S_ST( 'i',	3,      800,   798 ), /*   799 tim               */
-  S_ST( 'n',	3,      801,     0 ), /*   800 timi              */
-  S_ST( 'g',	3,      802,     0 ), /*   801 timin             */
-  S_ST( 's',	3,      803,     0 ), /*   802 timing            */
-  S_ST( 't',	3,      804,     0 ), /*   803 timings           */
-  S_ST( 'a',	3,      805,     0 ), /*   804 timingst          */
-  S_ST( 't',	3,      420,     0 ), /*   805 timingsta         */
-  S_ST( 'n',	3,      807,   797 ), /*   806 ti                */
-  S_ST( 'k',	3,      808,     0 ), /*   807 tin               */
-  S_ST( 'e',	3,      421,     0 ), /*   808 tink              */
-  S_ST( 'o',	3,      422,   795 ), /*   809 t                 */
-  S_ST( 'r',	3,      812,   809 ), /*   810 t                 */
-  S_ST( 'a',	3,      423,     0 ), /*   811 tr                */
-  S_ST( 'u',	3,      813,   811 ), /*   812 tr                */
-  S_ST( 's',	3,      814,   424 ), /*   813 tru               */
-  S_ST( 't',	3,      815,     0 ), /*   814 trus              */
-  S_ST( 'e',	3,      816,     0 ), /*   815 trust             */
-  S_ST( 'd',	3,      817,     0 ), /*   816 truste            */
-  S_ST( 'k',	3,      818,     0 ), /*   817 trusted           */
-  S_ST( 'e',	3,      425,     0 ), /*   818 trustedk          */
-  S_ST( 't',	3,      426,   810 ), /*   819 t                 */
-  S_ST( 'y',	3,      821,   819 ), /*   820 t                 */
-  S_ST( 'p',	3,      427,     0 ), /*   821 ty                */
-  S_ST( 'u',	3,      823,   794 ), /*   822                   */
-  S_ST( 'n',	3,      829,     0 ), /*   823 u                 */
-  S_ST( 'c',	3,      825,     0 ), /*   824 un                */
-  S_ST( 'o',	3,      826,     0 ), /*   825 unc               */
-  S_ST( 'n',	3,      827,     0 ), /*   826 unco              */
-  S_ST( 'f',	3,      828,     0 ), /*   827 uncon             */
-  S_ST( 'i',	3,      432,     0 ), /*   828 unconf            */
-  S_ST( 'p',	3,      830,   824 ), /*   829 un                */
-  S_ST( 'e',	3,      831,     0 ), /*   830 unp               */
-  S_ST( 'e',	3,      433,     0 ), /*   831 unpe              */
-  S_ST( '_',	3,      852,     0 ), /*   832 unpeer            */
-  S_ST( 'c',	3,      834,     0 ), /*   833 unpeer_           */
-  S_ST( 'r',	3,      835,     0 ), /*   834 unpeer_c          */
-  S_ST( 'y',	3,      836,     0 ), /*   835 unpeer_cr         */
-  S_ST( 'p',	3,      837,     0 ), /*   836 unpeer_cry        */
-  S_ST( 't',	3,      838,     0 ), /*   837 unpeer_cryp       */
-  S_ST( 'o',	3,      839,     0 ), /*   838 unpeer_crypt      */
-  S_ST( '_',	3,      844,     0 ), /*   839 unpeer_crypto     */
-  S_ST( 'e',	3,      841,     0 ), /*   840 unpeer_crypto_    */
-  S_ST( 'a',	3,      842,     0 ), /*   841 unpeer_crypto_e   */
-  S_ST( 'r',	3,      843,     0 ), /*   842 unpeer_crypto_ea  */
-  S_ST( 'l',	3,      429,     0 ), /*   843 unpeer_crypto_ear */
-  S_ST( 'n',	3,      845,   840 ), /*   844 unpeer_crypto_    */
-  S_ST( 'a',	3,      846,     0 ), /*   845 unpeer_crypto_n   */
-  S_ST( 'k',	3,      847,     0 ), /*   846 unpeer_crypto_na  */
-  S_ST( '_',	3,      848,     0 ), /*   847 unpeer_crypto_nak */
-  S_ST( 'e',	3,      849,     0 ), /*   848 unpeer_crypto_nak_ */
-  S_ST( 'a',	3,      850,     0 ), /*   849 unpeer_crypto_nak_e */
-  S_ST( 'r',	3,      851,     0 ), /*   850 unpeer_crypto_nak_ea */
-  S_ST( 'l',	3,      430,     0 ), /*   851 unpeer_crypto_nak_ear */
-  S_ST( 'd',	3,      853,   833 ), /*   852 unpeer_           */
-  S_ST( 'i',	3,      854,     0 ), /*   853 unpeer_d          */
-  S_ST( 'g',	3,      855,     0 ), /*   854 unpeer_di         */
-  S_ST( 'e',	3,      856,     0 ), /*   855 unpeer_dig        */
-  S_ST( 's',	3,      857,     0 ), /*   856 unpeer_dige       */
-  S_ST( 't',	3,      858,     0 ), /*   857 unpeer_diges      */
-  S_ST( '_',	3,      859,     0 ), /*   858 unpeer_digest     */
-  S_ST( 'e',	3,      860,     0 ), /*   859 unpeer_digest_    */
-  S_ST( 'a',	3,      861,     0 ), /*   860 unpeer_digest_e   */
-  S_ST( 'r',	3,      862,     0 ), /*   861 unpeer_digest_ea  */
-  S_ST( 'l',	3,      431,     0 ), /*   862 unpeer_digest_ear */
-  S_ST( 'v',	3,      864,   822 ), /*   863                   */
-  S_ST( 'e',	3,      865,     0 ), /*   864 v                 */
-  S_ST( 'r',	3,      866,     0 ), /*   865 ve                */
-  S_ST( 's',	3,      867,     0 ), /*   866 ver               */
-  S_ST( 'i',	3,      868,     0 ), /*   867 vers              */
-  S_ST( 'o',	3,      434,     0 ), /*   868 versi             */
-  S_ST( 'w',	3,      876,   863 ), /*   869                   */
-  S_ST( 'a',	3,      871,     0 ), /*   870 w                 */
-  S_ST( 'n',	3,      872,     0 ), /*   871 wa                */
-  S_ST( 'd',	3,      873,     0 ), /*   872 wan               */
-  S_ST( 'e',	3,      448,     0 ), /*   873 wand              */
-  S_ST( 'e',	3,      875,   870 ), /*   874 w                 */
-  S_ST( 'e',	3,      436,     0 ), /*   875 we                */
-  S_ST( 'i',	3,      877,   874 ), /*   876 w                 */
-  S_ST( 'l',	3,      878,     0 ), /*   877 wi                */
-  S_ST( 'd',	3,      879,     0 ), /*   878 wil               */
-  S_ST( 'c',	3,      880,     0 ), /*   879 wild              */
-  S_ST( 'a',	3,      881,     0 ), /*   880 wildc             */
-  S_ST( 'r',	3,      437,     0 ), /*   881 wildca            */
-  S_ST( 'x',	3,      883,   869 ), /*   882                   */
-  S_ST( 'l',	3,      884,     0 ), /*   883 x                 */
-  S_ST( 'e',	3,      885,     0 ), /*   884 xl                */
-  S_ST( 'a',	3,      886,     0 ), /*   885 xle               */
-  S_ST( 'v',	3,      438,     0 ), /*   886 xlea              */
-  S_ST( 'y',	3,      888,   882 ), /*   887 [initial state]   */
-  S_ST( 'e',	3,      889,     0 ), /*   888 y                 */
-  S_ST( 'a',	3,      439,     0 )  /*   889 ye                */
+  S_ST( 'y',	0,        0,     0 ), /*   380 T_PCEdigest       */
+  S_ST( 'c',	0,        0,     0 ), /*   381 T_Panic           */
+  S_ST( 'r',	1,      660,     0 ), /*   382 T_Peer            */
+  S_ST( 's',	0,        0,     0 ), /*   383 T_Peerstats       */
+  S_ST( 'e',	2,        0,     0 ), /*   384 T_Phone           */
+  S_ST( 'd',	0,      668,     0 ), /*   385 T_Pid             */
+  S_ST( 'e',	1,        0,     0 ), /*   386 T_Pidfile         */
+  S_ST( 'l',	1,        0,     0 ), /*   387 T_Pool            */
+  S_ST( 't',	0,        0,     0 ), /*   388 T_Port            */
+  S_ST( 't',	0,        0,     0 ), /*   389 T_Preempt         */
+  S_ST( 'r',	0,        0,     0 ), /*   390 T_Prefer          */
+  S_ST( 's',	0,        0,     0 ), /*   391 T_Protostats      */
+  S_ST( 'w',	1,        0,   674 ), /*   392 T_Pw              */
+  S_ST( 'e',	1,        0,     0 ), /*   393 T_Randfile        */
+  S_ST( 's',	0,        0,     0 ), /*   394 T_Rawstats        */
+  S_ST( 'd',	1,        0,     0 ), /*   395 T_Refid           */
+  S_ST( 'y',	0,        0,     0 ), /*   396 T_Requestkey      */
+  S_ST( 't',	0,        0,     0 ), /*   397 T_Reset           */
+  S_ST( 't',	0,        0,     0 ), /*   398 T_Restrict        */
+  S_ST( 'e',	0,        0,     0 ), /*   399 T_Revoke          */
+  S_ST( 't',	0,        0,     0 ), /*   400 T_Rlimit          */
+  S_ST( 'r',	1,        0,     0 ), /*   401 T_Saveconfigdir   */
+  S_ST( 'r',	1,      751,     0 ), /*   402 T_Server          */
+  S_ST( 'r',	1,        0,     0 ), /*   403 T_Setvar          */
+  S_ST( 'e',	0,        0,     0 ), /*   404 T_Source          */
+  S_ST( 'e',	0,        0,     0 ), /*   405 T_Stacksize       */
+  S_ST( 's',	0,        0,     0 ), /*   406 T_Statistics      */
+  S_ST( 's',	0,      794,   789 ), /*   407 T_Stats           */
+  S_ST( 'r',	1,        0,     0 ), /*   408 T_Statsdir        */
+  S_ST( 'p',	0,      802,     0 ), /*   409 T_Step            */
+  S_ST( 'k',	0,        0,     0 ), /*   410 T_Stepback        */
+  S_ST( 'd',	0,        0,     0 ), /*   411 T_Stepfwd         */
+  S_ST( 't',	0,        0,     0 ), /*   412 T_Stepout         */
+  S_ST( 'm',	0,        0,     0 ), /*   413 T_Stratum         */
+  S_ST( 'e',	3,      332,     0 ), /*   414 limit             */
+  S_ST( 's',	0,      809,     0 ), /*   415 T_Sys             */
+  S_ST( 's',	0,        0,     0 ), /*   416 T_Sysstats        */
+  S_ST( 'k',	0,        0,     0 ), /*   417 T_Tick            */
+  S_ST( '1',	0,        0,     0 ), /*   418 T_Time1           */
+  S_ST( '2',	0,        0,   418 ), /*   419 T_Time2           */
+  S_ST( 'r',	0,        0,   419 ), /*   420 T_Timer           */
+  S_ST( 's',	0,        0,     0 ), /*   421 T_Timingstats     */
+  S_ST( 'r',	0,        0,     0 ), /*   422 T_Tinker          */
+  S_ST( 's',	0,        0,     0 ), /*   423 T_Tos             */
+  S_ST( 'p',	1,        0,     0 ), /*   424 T_Trap            */
+  S_ST( 'e',	0,        0,     0 ), /*   425 T_True            */
+  S_ST( 'y',	0,        0,     0 ), /*   426 T_Trustedkey      */
+  S_ST( 'l',	0,        0,     0 ), /*   427 T_Ttl             */
+  S_ST( 'e',	0,        0,     0 ), /*   428 T_Type            */
+  S_ST( 'n',	3,      333,   294 ), /*   429 li                */
+  S_ST( 'y',	0,        0,     0 ), /*   430 T_UEcrypto        */
+  S_ST( 'y',	0,        0,     0 ), /*   431 T_UEcryptonak     */
+  S_ST( 'y',	0,        0,     0 ), /*   432 T_UEdigest        */
+  S_ST( 'g',	1,        0,     0 ), /*   433 T_Unconfig        */
+  S_ST( 'r',	1,      851,     0 ), /*   434 T_Unpeer          */
+  S_ST( 'n',	0,        0,     0 ), /*   435 T_Version         */
+  S_ST( 's',	3,      441,   429 ), /*   436 li                */
+  S_ST( 'k',	0,        0,     0 ), /*   437 T_Week            */
+  S_ST( 'd',	0,        0,     0 ), /*   438 T_Wildcard        */
+  S_ST( 'e',	0,        0,     0 ), /*   439 T_Xleave          */
+  S_ST( 'r',	0,        0,     0 ), /*   440 T_Year            */
+  S_ST( 't',	3,      442,     0 ), /*   441 lis               */
+  S_ST( 'e',	3,      334,     0 ), /*   442 list              */
+  S_ST( 'e',	0,        0,     0 ), /*   443 T_Simulate        */
+  S_ST( 'y',	0,        0,     0 ), /*   444 T_Beep_Delay      */
+  S_ST( 'n',	0,        0,     0 ), /*   445 T_Sim_Duration    */
+  S_ST( 't',	0,        0,     0 ), /*   446 T_Server_Offset   */
+  S_ST( 'n',	0,        0,     0 ), /*   447 T_Duration        */
+  S_ST( 't',	0,        0,     0 ), /*   448 T_Freq_Offset     */
+  S_ST( 'r',	0,        0,     0 ), /*   449 T_Wander          */
+  S_ST( 'r',	0,        0,     0 ), /*   450 T_Jitter          */
+  S_ST( 'y',	0,        0,     0 ), /*   451 T_Prop_Delay      */
+  S_ST( 'y',	0,        0,     0 ), /*   452 T_Proc_Delay      */
+  S_ST( 'o',	3,      469,   287 ), /*   453 l                 */
+  S_ST( 'g',	3,      460,     0 ), /*   454 lo                */
+  S_ST( 'c',	3,      456,     0 ), /*   455 log               */
+  S_ST( 'o',	3,      457,     0 ), /*   456 logc              */
+  S_ST( 'n',	3,      458,     0 ), /*   457 logco             */
+  S_ST( 'f',	3,      459,     0 ), /*   458 logcon            */
+  S_ST( 'i',	3,      335,     0 ), /*   459 logconf           */
+  S_ST( 'f',	3,      461,   455 ), /*   460 log               */
+  S_ST( 'i',	3,      462,     0 ), /*   461 logf              */
+  S_ST( 'l',	3,      336,     0 ), /*   462 logfi             */
+  S_ST( 'o',	3,      464,   454 ), /*   463 lo                */
+  S_ST( 'p',	3,      465,     0 ), /*   464 loo               */
+  S_ST( 's',	3,      466,     0 ), /*   465 loop              */
+  S_ST( 't',	3,      467,     0 ), /*   466 loops             */
+  S_ST( 'a',	3,      468,     0 ), /*   467 loopst            */
+  S_ST( 't',	3,      337,     0 ), /*   468 loopsta           */
+  S_ST( 'w',	3,      470,   463 ), /*   469 lo                */
+  S_ST( 'p',	3,      471,     0 ), /*   470 low               */
+  S_ST( 'r',	3,      472,     0 ), /*   471 lowp              */
+  S_ST( 'i',	3,      473,     0 ), /*   472 lowpr             */
+  S_ST( 'o',	3,      474,     0 ), /*   473 lowpri            */
+  S_ST( 't',	3,      475,     0 ), /*   474 lowprio           */
+  S_ST( 'r',	3,      476,     0 ), /*   475 lowpriot          */
+  S_ST( 'a',	3,      338,     0 ), /*   476 lowpriotr         */
+  S_ST( 'm',	3,      558,   239 ), /*   477                   */
+  S_ST( 'a',	3,      496,     0 ), /*   478 m                 */
+  S_ST( 'n',	3,      480,     0 ), /*   479 ma                */
+  S_ST( 'y',	3,      481,     0 ), /*   480 man               */
+  S_ST( 'c',	3,      482,     0 ), /*   481 many              */
+  S_ST( 'a',	3,      483,     0 ), /*   482 manyc             */
+  S_ST( 's',	3,      484,     0 ), /*   483 manyca            */
+  S_ST( 't',	3,      490,     0 ), /*   484 manycas           */
+  S_ST( 'c',	3,      486,     0 ), /*   485 manycast          */
+  S_ST( 'l',	3,      487,     0 ), /*   486 manycastc         */
+  S_ST( 'i',	3,      488,     0 ), /*   487 manycastcl        */
+  S_ST( 'e',	3,      489,     0 ), /*   488 manycastcli       */
+  S_ST( 'n',	3,      339,     0 ), /*   489 manycastclie      */
+  S_ST( 's',	3,      491,   485 ), /*   490 manycast          */
+  S_ST( 'e',	3,      492,     0 ), /*   491 manycasts         */
+  S_ST( 'r',	3,      493,     0 ), /*   492 manycastse        */
+  S_ST( 'v',	3,      494,     0 ), /*   493 manycastser       */
+  S_ST( 'e',	3,      340,     0 ), /*   494 manycastserv      */
+  S_ST( 's',	3,      341,   479 ), /*   495 ma                */
+  S_ST( 'x',	3,      511,   495 ), /*   496 ma                */
+  S_ST( 'a',	3,      498,     0 ), /*   497 max               */
+  S_ST( 'g',	3,      342,     0 ), /*   498 maxa              */
+  S_ST( 'c',	3,      500,   497 ), /*   499 max               */
+  S_ST( 'l',	3,      501,     0 ), /*   500 maxc              */
+  S_ST( 'o',	3,      502,     0 ), /*   501 maxcl             */
+  S_ST( 'c',	3,      343,     0 ), /*   502 maxclo            */
+  S_ST( 'd',	3,      507,   499 ), /*   503 max               */
+  S_ST( 'e',	3,      505,     0 ), /*   504 maxd              */
+  S_ST( 'p',	3,      506,     0 ), /*   505 maxde             */
+  S_ST( 't',	3,      344,     0 ), /*   506 maxdep            */
+  S_ST( 'i',	3,      508,   504 ), /*   507 maxd              */
+  S_ST( 's',	3,      345,     0 ), /*   508 maxdi             */
+  S_ST( 'm',	3,      510,   503 ), /*   509 max               */
+  S_ST( 'e',	3,      346,     0 ), /*   510 maxm              */
+  S_ST( 'p',	3,      512,   509 ), /*   511 max               */
+  S_ST( 'o',	3,      513,     0 ), /*   512 maxp              */
+  S_ST( 'l',	3,      347,     0 ), /*   513 maxpo             */
+  S_ST( 'd',	3,      515,   478 ), /*   514 m                 */
+  S_ST( 'n',	3,      516,     0 ), /*   515 md                */
+  S_ST( 's',	3,      517,     0 ), /*   516 mdn               */
+  S_ST( 't',	3,      518,     0 ), /*   517 mdns              */
+  S_ST( 'r',	3,      519,     0 ), /*   518 mdnst             */
+  S_ST( 'i',	3,      520,     0 ), /*   519 mdnstr            */
+  S_ST( 'e',	3,      348,     0 ), /*   520 mdnstri           */
+  S_ST( 'e',	3,      349,   514 ), /*   521 m                 */
+  S_ST( 'l',	3,      523,     0 ), /*   522 mem               */
+  S_ST( 'o',	3,      524,     0 ), /*   523 meml              */
+  S_ST( 'c',	3,      350,     0 ), /*   524 memlo             */
+  S_ST( 'i',	3,      526,   521 ), /*   525 m                 */
+  S_ST( 'n',	3,      543,     0 ), /*   526 mi                */
+  S_ST( 'c',	3,      528,     0 ), /*   527 min               */
+  S_ST( 'l',	3,      529,     0 ), /*   528 minc              */
+  S_ST( 'o',	3,      530,     0 ), /*   529 mincl             */
+  S_ST( 'c',	3,      351,     0 ), /*   530 minclo            */
+  S_ST( 'd',	3,      535,   527 ), /*   531 min               */
+  S_ST( 'e',	3,      533,     0 ), /*   532 mind              */
+  S_ST( 'p',	3,      534,     0 ), /*   533 minde             */
+  S_ST( 't',	3,      352,     0 ), /*   534 mindep            */
+  S_ST( 'i',	3,      536,   532 ), /*   535 mind              */
+  S_ST( 's',	3,      353,     0 ), /*   536 mindi             */
+  S_ST( 'i',	3,      538,   531 ), /*   537 min               */
+  S_ST( 'm',	3,      539,     0 ), /*   538 mini              */
+  S_ST( 'u',	3,      354,     0 ), /*   539 minim             */
+  S_ST( 'p',	3,      541,   537 ), /*   540 min               */
+  S_ST( 'o',	3,      542,     0 ), /*   541 minp              */
+  S_ST( 'l',	3,      355,     0 ), /*   542 minpo             */
+  S_ST( 's',	3,      544,   540 ), /*   543 min               */
+  S_ST( 'a',	3,      545,     0 ), /*   544 mins              */
+  S_ST( 'n',	3,      356,     0 ), /*   545 minsa             */
+  S_ST( 'o',	3,      548,   525 ), /*   546 m                 */
+  S_ST( 'd',	3,      357,     0 ), /*   547 mo                */
+  S_ST( 'n',	3,      552,   547 ), /*   548 mo                */
+  S_ST( 'i',	3,      550,     0 ), /*   549 mon               */
+  S_ST( 't',	3,      551,     0 ), /*   550 moni              */
+  S_ST( 'o',	3,      359,     0 ), /*   551 monit             */
+  S_ST( 't',	3,      360,   549 ), /*   552 mon               */
+  S_ST( 'r',	3,      361,   546 ), /*   553 m                 */
+  S_ST( 's',	3,      555,   553 ), /*   554 m                 */
+  S_ST( 's',	3,      556,     0 ), /*   555 ms                */
+  S_ST( 'n',	3,      557,     0 ), /*   556 mss               */
+  S_ST( 't',	3,      329,     0 ), /*   557 mssn              */
+  S_ST( 'u',	3,      559,   554 ), /*   558 m                 */
+  S_ST( 'l',	3,      560,     0 ), /*   559 mu                */
+  S_ST( 't',	3,      561,     0 ), /*   560 mul               */
+  S_ST( 'i',	3,      562,     0 ), /*   561 mult              */
+  S_ST( 'c',	3,      563,     0 ), /*   562 multi             */
+  S_ST( 'a',	3,      564,     0 ), /*   563 multic            */
+  S_ST( 's',	3,      565,     0 ), /*   564 multica           */
+  S_ST( 't',	3,      566,     0 ), /*   565 multicas          */
+  S_ST( 'c',	3,      567,     0 ), /*   566 multicast         */
+  S_ST( 'l',	3,      568,     0 ), /*   567 multicastc        */
+  S_ST( 'i',	3,      569,     0 ), /*   568 multicastcl       */
+  S_ST( 'e',	3,      570,     0 ), /*   569 multicastcli      */
+  S_ST( 'n',	3,      362,     0 ), /*   570 multicastclie     */
+  S_ST( 'n',	3,      614,   477 ), /*   571                   */
+  S_ST( 'i',	3,      363,     0 ), /*   572 n                 */
+  S_ST( 'o',	3,      609,   572 ), /*   573 n                 */
+  S_ST( 'l',	3,      575,     0 ), /*   574 no                */
+  S_ST( 'i',	3,      576,     0 ), /*   575 nol               */
+  S_ST( 'n',	3,      364,     0 ), /*   576 noli              */
+  S_ST( 'm',	3,      582,   574 ), /*   577 no                */
+  S_ST( 'o',	3,      579,     0 ), /*   578 nom               */
+  S_ST( 'd',	3,      580,     0 ), /*   579 nomo              */
+  S_ST( 'i',	3,      581,     0 ), /*   580 nomod             */
+  S_ST( 'f',	3,      365,     0 ), /*   581 nomodi            */
+  S_ST( 'r',	3,      583,   578 ), /*   582 nom               */
+  S_ST( 'u',	3,      584,     0 ), /*   583 nomr              */
+  S_ST( 'l',	3,      585,     0 ), /*   584 nomru             */
+  S_ST( 'i',	3,      586,     0 ), /*   585 nomrul            */
+  S_ST( 's',	3,      366,     0 ), /*   586 nomruli           */
+  S_ST( 'n',	3,      588,   577 ), /*   587 no                */
+  S_ST( 'v',	3,      589,   367 ), /*   588 non               */
+  S_ST( 'o',	3,      590,     0 ), /*   589 nonv              */
+  S_ST( 'l',	3,      591,     0 ), /*   590 nonvo             */
+  S_ST( 'a',	3,      592,     0 ), /*   591 nonvol            */
+  S_ST( 't',	3,      593,     0 ), /*   592 nonvola           */
+  S_ST( 'i',	3,      594,     0 ), /*   593 nonvolat          */
+  S_ST( 'l',	3,      368,     0 ), /*   594 nonvolati         */
+  S_ST( 'p',	3,      596,   587 ), /*   595 no                */
+  S_ST( 'e',	3,      597,     0 ), /*   596 nop               */
+  S_ST( 'e',	3,      369,     0 ), /*   597 nope              */
+  S_ST( 'q',	3,      599,   595 ), /*   598 no                */
+  S_ST( 'u',	3,      600,     0 ), /*   599 noq               */
+  S_ST( 'e',	3,      601,     0 ), /*   600 noqu              */
+  S_ST( 'r',	3,      370,     0 ), /*   601 noque             */
+  S_ST( 's',	3,      603,   598 ), /*   602 no                */
+  S_ST( 'e',	3,      607,     0 ), /*   603 nos               */
+  S_ST( 'l',	3,      605,     0 ), /*   604 nose              */
+  S_ST( 'e',	3,      606,     0 ), /*   605 nosel             */
+  S_ST( 'c',	3,      371,     0 ), /*   606 nosele            */
+  S_ST( 'r',	3,      608,   604 ), /*   607 nose              */
+  S_ST( 'v',	3,      372,     0 ), /*   608 noser             */
+  S_ST( 't',	3,      610,   602 ), /*   609 no                */
+  S_ST( 'r',	3,      612,     0 ), /*   610 not               */
+  S_ST( 'a',	3,      373,     0 ), /*   611 notr              */
+  S_ST( 'u',	3,      613,   611 ), /*   612 notr              */
+  S_ST( 's',	3,      374,     0 ), /*   613 notru             */
+  S_ST( 't',	3,      375,   573 ), /*   614 n                 */
+  S_ST( 'p',	3,      616,     0 ), /*   615 ntp               */
+  S_ST( 'o',	3,      617,     0 ), /*   616 ntpp              */
+  S_ST( 'r',	3,      376,     0 ), /*   617 ntppo             */
+  S_ST( 's',	3,      619,   615 ), /*   618 ntp               */
+  S_ST( 'i',	3,      620,     0 ), /*   619 ntps              */
+  S_ST( 'g',	3,      621,     0 ), /*   620 ntpsi             */
+  S_ST( 'n',	3,      622,     0 ), /*   621 ntpsig            */
+  S_ST( 'd',	3,      623,     0 ), /*   622 ntpsign           */
+  S_ST( 's',	3,      624,     0 ), /*   623 ntpsignd          */
+  S_ST( 'o',	3,      625,     0 ), /*   624 ntpsignds         */
+  S_ST( 'c',	3,      626,     0 ), /*   625 ntpsigndso        */
+  S_ST( 'k',	3,      627,     0 ), /*   626 ntpsigndsoc       */
+  S_ST( 'e',	3,      377,     0 ), /*   627 ntpsigndsock      */
+  S_ST( 'o',	3,      629,   571 ), /*   628                   */
+  S_ST( 'r',	3,      630,     0 ), /*   629 o                 */
+  S_ST( 'p',	3,      631,     0 ), /*   630 or                */
+  S_ST( 'h',	3,      632,     0 ), /*   631 orp               */
+  S_ST( 'a',	3,      378,     0 ), /*   632 orph              */
+  S_ST( 'w',	3,      634,     0 ), /*   633 orphan            */
+  S_ST( 'a',	3,      635,     0 ), /*   634 orphanw           */
+  S_ST( 'i',	3,      379,     0 ), /*   635 orphanwa          */
+  S_ST( 'p',	3,      392,   628 ), /*   636                   */
+  S_ST( 'a',	3,      638,     0 ), /*   637 p                 */
+  S_ST( 'n',	3,      639,     0 ), /*   638 pa                */
+  S_ST( 'i',	3,      381,     0 ), /*   639 pan               */
+  S_ST( 'e',	3,      641,   637 ), /*   640 p                 */
+  S_ST( 'e',	3,      382,     0 ), /*   641 pe                */
+  S_ST( '_',	3,      643,     0 ), /*   642 peer              */
+  S_ST( 'c',	3,      644,     0 ), /*   643 peer_             */
+  S_ST( 'l',	3,      645,     0 ), /*   644 peer_c            */
+  S_ST( 'e',	3,      646,     0 ), /*   645 peer_cl           */
+  S_ST( 'a',	3,      647,     0 ), /*   646 peer_cle          */
+  S_ST( 'r',	3,      648,     0 ), /*   647 peer_clea         */
+  S_ST( '_',	3,      649,     0 ), /*   648 peer_clear        */
+  S_ST( 'd',	3,      650,     0 ), /*   649 peer_clear_       */
+  S_ST( 'i',	3,      651,     0 ), /*   650 peer_clear_d      */
+  S_ST( 'g',	3,      652,     0 ), /*   651 peer_clear_di     */
+  S_ST( 'e',	3,      653,     0 ), /*   652 peer_clear_dig    */
+  S_ST( 's',	3,      654,     0 ), /*   653 peer_clear_dige   */
+  S_ST( 't',	3,      655,     0 ), /*   654 peer_clear_diges  */
+  S_ST( '_',	3,      656,     0 ), /*   655 peer_clear_digest */
+  S_ST( 'e',	3,      657,     0 ), /*   656 peer_clear_digest_ */
+  S_ST( 'a',	3,      658,     0 ), /*   657 peer_clear_digest_e */
+  S_ST( 'r',	3,      659,     0 ), /*   658 peer_clear_digest_ea */
+  S_ST( 'l',	3,      380,     0 ), /*   659 peer_clear_digest_ear */
+  S_ST( 's',	3,      661,   642 ), /*   660 peer              */
+  S_ST( 't',	3,      662,     0 ), /*   661 peers             */
+  S_ST( 'a',	3,      663,     0 ), /*   662 peerst            */
+  S_ST( 't',	3,      383,     0 ), /*   663 peersta           */
+  S_ST( 'h',	3,      665,   640 ), /*   664 p                 */
+  S_ST( 'o',	3,      666,     0 ), /*   665 ph                */
+  S_ST( 'n',	3,      384,     0 ), /*   666 pho               */
+  S_ST( 'i',	3,      385,   664 ), /*   667 p                 */
+  S_ST( 'f',	3,      669,     0 ), /*   668 pid               */
+  S_ST( 'i',	3,      670,     0 ), /*   669 pidf              */
+  S_ST( 'l',	3,      386,     0 ), /*   670 pidfi             */
+  S_ST( 'o',	3,      673,   667 ), /*   671 p                 */
+  S_ST( 'o',	3,      387,     0 ), /*   672 po                */
+  S_ST( 'r',	3,      388,   672 ), /*   673 po                */
+  S_ST( 'r',	3,      681,   671 ), /*   674 p                 */
+  S_ST( 'e',	3,      679,     0 ), /*   675 pr                */
+  S_ST( 'e',	3,      677,     0 ), /*   676 pre               */
+  S_ST( 'm',	3,      678,     0 ), /*   677 pree              */
+  S_ST( 'p',	3,      389,     0 ), /*   678 preem             */
+  S_ST( 'f',	3,      680,   676 ), /*   679 pre               */
+  S_ST( 'e',	3,      390,     0 ), /*   680 pref              */
+  S_ST( 'o',	3,      694,   675 ), /*   681 pr                */
+  S_ST( 'c',	3,      683,     0 ), /*   682 pro               */
+  S_ST( '_',	3,      684,     0 ), /*   683 proc              */
+  S_ST( 'd',	3,      685,     0 ), /*   684 proc_             */
+  S_ST( 'e',	3,      686,     0 ), /*   685 proc_d            */
+  S_ST( 'l',	3,      687,     0 ), /*   686 proc_de           */
+  S_ST( 'a',	3,      452,     0 ), /*   687 proc_del          */
+  S_ST( 'p',	3,      689,   682 ), /*   688 pro               */
+  S_ST( '_',	3,      690,     0 ), /*   689 prop              */
+  S_ST( 'd',	3,      691,     0 ), /*   690 prop_             */
+  S_ST( 'e',	3,      692,     0 ), /*   691 prop_d            */
+  S_ST( 'l',	3,      693,     0 ), /*   692 prop_de           */
+  S_ST( 'a',	3,      451,     0 ), /*   693 prop_del          */
+  S_ST( 't',	3,      695,   688 ), /*   694 pro               */
+  S_ST( 'o',	3,      696,     0 ), /*   695 prot              */
+  S_ST( 's',	3,      697,     0 ), /*   696 proto             */
+  S_ST( 't',	3,      698,     0 ), /*   697 protos            */
+  S_ST( 'a',	3,      699,     0 ), /*   698 protost           */
+  S_ST( 't',	3,      391,     0 ), /*   699 protosta          */
+  S_ST( 'r',	3,      731,   636 ), /*   700                   */
+  S_ST( 'a',	3,      707,     0 ), /*   701 r                 */
+  S_ST( 'n',	3,      703,     0 ), /*   702 ra                */
+  S_ST( 'd',	3,      704,     0 ), /*   703 ran               */
+  S_ST( 'f',	3,      705,     0 ), /*   704 rand              */
+  S_ST( 'i',	3,      706,     0 ), /*   705 randf             */
+  S_ST( 'l',	3,      393,     0 ), /*   706 randfi            */
+  S_ST( 'w',	3,      708,   702 ), /*   707 ra                */
+  S_ST( 's',	3,      709,     0 ), /*   708 raw               */
+  S_ST( 't',	3,      710,     0 ), /*   709 raws              */
+  S_ST( 'a',	3,      711,     0 ), /*   710 rawst             */
+  S_ST( 't',	3,      394,     0 ), /*   711 rawsta            */
+  S_ST( 'e',	3,      728,   701 ), /*   712 r                 */
+  S_ST( 'f',	3,      714,     0 ), /*   713 re                */
+  S_ST( 'i',	3,      395,     0 ), /*   714 ref               */
+  S_ST( 'q',	3,      716,   713 ), /*   715 re                */
+  S_ST( 'u',	3,      717,     0 ), /*   716 req               */
+  S_ST( 'e',	3,      718,     0 ), /*   717 requ              */
+  S_ST( 's',	3,      719,     0 ), /*   718 reque             */
+  S_ST( 't',	3,      720,     0 ), /*   719 reques            */
+  S_ST( 'k',	3,      721,     0 ), /*   720 request           */
+  S_ST( 'e',	3,      396,     0 ), /*   721 requestk          */
+  S_ST( 's',	3,      724,   715 ), /*   722 re                */
+  S_ST( 'e',	3,      397,     0 ), /*   723 res               */
+  S_ST( 't',	3,      725,   723 ), /*   724 res               */
+  S_ST( 'r',	3,      726,     0 ), /*   725 rest              */
+  S_ST( 'i',	3,      727,     0 ), /*   726 restr             */
+  S_ST( 'c',	3,      398,     0 ), /*   727 restri            */
+  S_ST( 'v',	3,      729,   722 ), /*   728 re                */
+  S_ST( 'o',	3,      730,     0 ), /*   729 rev               */
+  S_ST( 'k',	3,      399,     0 ), /*   730 revo              */
+  S_ST( 'l',	3,      732,   712 ), /*   731 r                 */
+  S_ST( 'i',	3,      733,     0 ), /*   732 rl                */
+  S_ST( 'm',	3,      734,     0 ), /*   733 rli               */
+  S_ST( 'i',	3,      400,     0 ), /*   734 rlim              */
+  S_ST( 's',	3,      808,   700 ), /*   735                   */
+  S_ST( 'a',	3,      737,     0 ), /*   736 s                 */
+  S_ST( 'v',	3,      738,     0 ), /*   737 sa                */
+  S_ST( 'e',	3,      739,     0 ), /*   738 sav               */
+  S_ST( 'c',	3,      740,     0 ), /*   739 save              */
+  S_ST( 'o',	3,      741,     0 ), /*   740 savec             */
+  S_ST( 'n',	3,      742,     0 ), /*   741 saveco            */
+  S_ST( 'f',	3,      743,     0 ), /*   742 savecon           */
+  S_ST( 'i',	3,      744,     0 ), /*   743 saveconf          */
+  S_ST( 'g',	3,      745,     0 ), /*   744 saveconfi         */
+  S_ST( 'd',	3,      746,     0 ), /*   745 saveconfig        */
+  S_ST( 'i',	3,      401,     0 ), /*   746 saveconfigd       */
+  S_ST( 'e',	3,      757,   736 ), /*   747 s                 */
+  S_ST( 'r',	3,      749,     0 ), /*   748 se                */
+  S_ST( 'v',	3,      750,     0 ), /*   749 ser               */
+  S_ST( 'e',	3,      402,     0 ), /*   750 serv              */
+  S_ST( '_',	3,      752,     0 ), /*   751 server            */
+  S_ST( 'o',	3,      753,     0 ), /*   752 server_           */
+  S_ST( 'f',	3,      754,     0 ), /*   753 server_o          */
+  S_ST( 'f',	3,      755,     0 ), /*   754 server_of         */
+  S_ST( 's',	3,      756,     0 ), /*   755 server_off        */
+  S_ST( 'e',	3,      446,     0 ), /*   756 server_offs       */
+  S_ST( 't',	3,      758,   748 ), /*   757 se                */
+  S_ST( 'v',	3,      759,     0 ), /*   758 set               */
+  S_ST( 'a',	3,      403,     0 ), /*   759 setv              */
+  S_ST( 'i',	3,      761,   747 ), /*   760 s                 */
+  S_ST( 'm',	3,      762,     0 ), /*   761 si                */
+  S_ST( 'u',	3,      763,     0 ), /*   762 sim               */
+  S_ST( 'l',	3,      764,     0 ), /*   763 simu              */
+  S_ST( 'a',	3,      765,     0 ), /*   764 simul             */
+  S_ST( 't',	3,      766,     0 ), /*   765 simula            */
+  S_ST( 'i',	3,      767,   443 ), /*   766 simulat           */
+  S_ST( 'o',	3,      768,     0 ), /*   767 simulati          */
+  S_ST( 'n',	3,      769,     0 ), /*   768 simulatio         */
+  S_ST( '_',	3,      770,     0 ), /*   769 simulation        */
+  S_ST( 'd',	3,      771,     0 ), /*   770 simulation_       */
+  S_ST( 'u',	3,      772,     0 ), /*   771 simulation_d      */
+  S_ST( 'r',	3,      773,     0 ), /*   772 simulation_du     */
+  S_ST( 'a',	3,      774,     0 ), /*   773 simulation_dur    */
+  S_ST( 't',	3,      775,     0 ), /*   774 simulation_dura   */
+  S_ST( 'i',	3,      776,     0 ), /*   775 simulation_durat  */
+  S_ST( 'o',	3,      445,     0 ), /*   776 simulation_durati */
+  S_ST( 'o',	3,      778,   760 ), /*   777 s                 */
+  S_ST( 'u',	3,      779,     0 ), /*   778 so                */
+  S_ST( 'r',	3,      780,     0 ), /*   779 sou               */
+  S_ST( 'c',	3,      404,     0 ), /*   780 sour              */
+  S_ST( 't',	3,      804,   777 ), /*   781 s                 */
+  S_ST( 'a',	3,      788,     0 ), /*   782 st                */
+  S_ST( 'c',	3,      784,     0 ), /*   783 sta               */
+  S_ST( 'k',	3,      785,     0 ), /*   784 stac              */
+  S_ST( 's',	3,      786,     0 ), /*   785 stack             */
+  S_ST( 'i',	3,      787,     0 ), /*   786 stacks            */
+  S_ST( 'z',	3,      405,     0 ), /*   787 stacksi           */
+  S_ST( 't',	3,      407,   783 ), /*   788 sta               */
+  S_ST( 'i',	3,      790,     0 ), /*   789 stat              */
+  S_ST( 's',	3,      791,     0 ), /*   790 stati             */
+  S_ST( 't',	3,      792,     0 ), /*   791 statis            */
+  S_ST( 'i',	3,      793,     0 ), /*   792 statist           */
+  S_ST( 'c',	3,      406,     0 ), /*   793 statisti          */
+  S_ST( 'd',	3,      795,     0 ), /*   794 stats             */
+  S_ST( 'i',	3,      408,     0 ), /*   795 statsd            */
+  S_ST( 'e',	3,      409,   782 ), /*   796 st                */
+  S_ST( 'b',	3,      798,     0 ), /*   797 step              */
+  S_ST( 'a',	3,      799,     0 ), /*   798 stepb             */
+  S_ST( 'c',	3,      410,     0 ), /*   799 stepba            */
+  S_ST( 'f',	3,      801,   797 ), /*   800 step              */
+  S_ST( 'w',	3,      411,     0 ), /*   801 stepf             */
+  S_ST( 'o',	3,      803,   800 ), /*   802 step              */
+  S_ST( 'u',	3,      412,     0 ), /*   803 stepo             */
+  S_ST( 'r',	3,      805,   796 ), /*   804 st                */
+  S_ST( 'a',	3,      806,     0 ), /*   805 str               */
+  S_ST( 't',	3,      807,     0 ), /*   806 stra              */
+  S_ST( 'u',	3,      413,     0 ), /*   807 strat             */
+  S_ST( 'y',	3,      415,   781 ), /*   808 s                 */
+  S_ST( 's',	3,      810,     0 ), /*   809 sys               */
+  S_ST( 't',	3,      811,     0 ), /*   810 syss              */
+  S_ST( 'a',	3,      812,     0 ), /*   811 sysst             */
+  S_ST( 't',	3,      416,     0 ), /*   812 syssta            */
+  S_ST( 't',	3,      839,   735 ), /*   813                   */
+  S_ST( 'i',	3,      825,     0 ), /*   814 t                 */
+  S_ST( 'c',	3,      417,     0 ), /*   815 ti                */
+  S_ST( 'm',	3,      818,   815 ), /*   816 ti                */
+  S_ST( 'e',	3,      420,     0 ), /*   817 tim               */
+  S_ST( 'i',	3,      819,   817 ), /*   818 tim               */
+  S_ST( 'n',	3,      820,     0 ), /*   819 timi              */
+  S_ST( 'g',	3,      821,     0 ), /*   820 timin             */
+  S_ST( 's',	3,      822,     0 ), /*   821 timing            */
+  S_ST( 't',	3,      823,     0 ), /*   822 timings           */
+  S_ST( 'a',	3,      824,     0 ), /*   823 timingst          */
+  S_ST( 't',	3,      421,     0 ), /*   824 timingsta         */
+  S_ST( 'n',	3,      826,   816 ), /*   825 ti                */
+  S_ST( 'k',	3,      827,     0 ), /*   826 tin               */
+  S_ST( 'e',	3,      422,     0 ), /*   827 tink              */
+  S_ST( 'o',	3,      423,   814 ), /*   828 t                 */
+  S_ST( 'r',	3,      831,   828 ), /*   829 t                 */
+  S_ST( 'a',	3,      424,     0 ), /*   830 tr                */
+  S_ST( 'u',	3,      832,   830 ), /*   831 tr                */
+  S_ST( 's',	3,      833,   425 ), /*   832 tru               */
+  S_ST( 't',	3,      834,     0 ), /*   833 trus              */
+  S_ST( 'e',	3,      835,     0 ), /*   834 trust             */
+  S_ST( 'd',	3,      836,     0 ), /*   835 truste            */
+  S_ST( 'k',	3,      837,     0 ), /*   836 trusted           */
+  S_ST( 'e',	3,      426,     0 ), /*   837 trustedk          */
+  S_ST( 't',	3,      427,   829 ), /*   838 t                 */
+  S_ST( 'y',	3,      840,   838 ), /*   839 t                 */
+  S_ST( 'p',	3,      428,     0 ), /*   840 ty                */
+  S_ST( 'u',	3,      842,   813 ), /*   841                   */
+  S_ST( 'n',	3,      848,     0 ), /*   842 u                 */
+  S_ST( 'c',	3,      844,     0 ), /*   843 un                */
+  S_ST( 'o',	3,      845,     0 ), /*   844 unc               */
+  S_ST( 'n',	3,      846,     0 ), /*   845 unco              */
+  S_ST( 'f',	3,      847,     0 ), /*   846 uncon             */
+  S_ST( 'i',	3,      433,     0 ), /*   847 unconf            */
+  S_ST( 'p',	3,      849,   843 ), /*   848 un                */
+  S_ST( 'e',	3,      850,     0 ), /*   849 unp               */
+  S_ST( 'e',	3,      434,     0 ), /*   850 unpe              */
+  S_ST( '_',	3,      871,     0 ), /*   851 unpeer            */
+  S_ST( 'c',	3,      853,     0 ), /*   852 unpeer_           */
+  S_ST( 'r',	3,      854,     0 ), /*   853 unpeer_c          */
+  S_ST( 'y',	3,      855,     0 ), /*   854 unpeer_cr         */
+  S_ST( 'p',	3,      856,     0 ), /*   855 unpeer_cry        */
+  S_ST( 't',	3,      857,     0 ), /*   856 unpeer_cryp       */
+  S_ST( 'o',	3,      858,     0 ), /*   857 unpeer_crypt      */
+  S_ST( '_',	3,      863,     0 ), /*   858 unpeer_crypto     */
+  S_ST( 'e',	3,      860,     0 ), /*   859 unpeer_crypto_    */
+  S_ST( 'a',	3,      861,     0 ), /*   860 unpeer_crypto_e   */
+  S_ST( 'r',	3,      862,     0 ), /*   861 unpeer_crypto_ea  */
+  S_ST( 'l',	3,      430,     0 ), /*   862 unpeer_crypto_ear */
+  S_ST( 'n',	3,      864,   859 ), /*   863 unpeer_crypto_    */
+  S_ST( 'a',	3,      865,     0 ), /*   864 unpeer_crypto_n   */
+  S_ST( 'k',	3,      866,     0 ), /*   865 unpeer_crypto_na  */
+  S_ST( '_',	3,      867,     0 ), /*   866 unpeer_crypto_nak */
+  S_ST( 'e',	3,      868,     0 ), /*   867 unpeer_crypto_nak_ */
+  S_ST( 'a',	3,      869,     0 ), /*   868 unpeer_crypto_nak_e */
+  S_ST( 'r',	3,      870,     0 ), /*   869 unpeer_crypto_nak_ea */
+  S_ST( 'l',	3,      431,     0 ), /*   870 unpeer_crypto_nak_ear */
+  S_ST( 'd',	3,      872,   852 ), /*   871 unpeer_           */
+  S_ST( 'i',	3,      873,     0 ), /*   872 unpeer_d          */
+  S_ST( 'g',	3,      874,     0 ), /*   873 unpeer_di         */
+  S_ST( 'e',	3,      875,     0 ), /*   874 unpeer_dig        */
+  S_ST( 's',	3,      876,     0 ), /*   875 unpeer_dige       */
+  S_ST( 't',	3,      877,     0 ), /*   876 unpeer_diges      */
+  S_ST( '_',	3,      878,     0 ), /*   877 unpeer_digest     */
+  S_ST( 'e',	3,      879,     0 ), /*   878 unpeer_digest_    */
+  S_ST( 'a',	3,      880,     0 ), /*   879 unpeer_digest_e   */
+  S_ST( 'r',	3,      881,     0 ), /*   880 unpeer_digest_ea  */
+  S_ST( 'l',	3,      432,     0 ), /*   881 unpeer_digest_ear */
+  S_ST( 'v',	3,      883,   841 ), /*   882                   */
+  S_ST( 'e',	3,      884,     0 ), /*   883 v                 */
+  S_ST( 'r',	3,      885,     0 ), /*   884 ve                */
+  S_ST( 's',	3,      886,     0 ), /*   885 ver               */
+  S_ST( 'i',	3,      887,     0 ), /*   886 vers              */
+  S_ST( 'o',	3,      435,     0 ), /*   887 versi             */
+  S_ST( 'w',	3,      895,   882 ), /*   888                   */
+  S_ST( 'a',	3,      890,     0 ), /*   889 w                 */
+  S_ST( 'n',	3,      891,     0 ), /*   890 wa                */
+  S_ST( 'd',	3,      892,     0 ), /*   891 wan               */
+  S_ST( 'e',	3,      449,     0 ), /*   892 wand              */
+  S_ST( 'e',	3,      894,   889 ), /*   893 w                 */
+  S_ST( 'e',	3,      437,     0 ), /*   894 we                */
+  S_ST( 'i',	3,      896,   893 ), /*   895 w                 */
+  S_ST( 'l',	3,      897,     0 ), /*   896 wi                */
+  S_ST( 'd',	3,      898,     0 ), /*   897 wil               */
+  S_ST( 'c',	3,      899,     0 ), /*   898 wild              */
+  S_ST( 'a',	3,      900,     0 ), /*   899 wildc             */
+  S_ST( 'r',	3,      438,     0 ), /*   900 wildca            */
+  S_ST( 'x',	3,      902,   888 ), /*   901                   */
+  S_ST( 'l',	3,      903,     0 ), /*   902 x                 */
+  S_ST( 'e',	3,      904,     0 ), /*   903 xl                */
+  S_ST( 'a',	3,      905,     0 ), /*   904 xle               */
+  S_ST( 'v',	3,      439,     0 ), /*   905 xlea              */
+  S_ST( 'y',	3,      907,   901 ), /*   906 [initial state]   */
+  S_ST( 'e',	3,      908,     0 ), /*   907 y                 */
+  S_ST( 'a',	3,      440,     0 )  /*   908 ye                */
 };
 
Index: contrib/ntp/ntpd/ntp_parser.h
===================================================================
--- contrib/ntp/ntpd/ntp_parser.h	(版本 301052)
+++ contrib/ntp/ntpd/ntp_parser.h	(版本 301301)
@@ -1,19 +1,19 @@
-/* A Bison parser, made by GNU Bison 2.7.12-4996.  */
+/* A Bison parser, made by GNU Bison 3.0.4.  */
 
 /* Bison interface for Yacc-like parsers in C
-   
-      Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
-   
+
+   Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
+
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
@@ -26,13 +26,13 @@
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-   
+
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
-#ifndef YY_YY_NTP_PARSER_H_INCLUDED
-# define YY_YY_NTP_PARSER_H_INCLUDED
-/* Enabling traces.  */
+#ifndef YY_YY_Y_TAB_H_INCLUDED
+# define YY_YY_Y_TAB_H_INCLUDED
+/* Debug traces.  */
 #ifndef YYDEBUG
 # define YYDEBUG 1
 #endif
@@ -40,207 +40,207 @@
 extern int yydebug;
 #endif
 
-/* Tokens.  */
+/* Token type.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     T_Abbrev = 258,
-     T_Age = 259,
-     T_All = 260,
-     T_Allan = 261,
-     T_Allpeers = 262,
-     T_Auth = 263,
-     T_Autokey = 264,
-     T_Automax = 265,
-     T_Average = 266,
-     T_Bclient = 267,
-     T_Beacon = 268,
-     T_Broadcast = 269,
-     T_Broadcastclient = 270,
-     T_Broadcastdelay = 271,
-     T_Burst = 272,
-     T_Calibrate = 273,
-     T_Ceiling = 274,
-     T_Clockstats = 275,
-     T_Cohort = 276,
-     T_ControlKey = 277,
-     T_Crypto = 278,
-     T_Cryptostats = 279,
-     T_Ctl = 280,
-     T_Day = 281,
-     T_Default = 282,
-     T_Digest = 283,
-     T_Disable = 284,
-     T_Discard = 285,
-     T_Dispersion = 286,
-     T_Double = 287,
-     T_Driftfile = 288,
-     T_Drop = 289,
-     T_Dscp = 290,
-     T_Ellipsis = 291,
-     T_Enable = 292,
-     T_End = 293,
-     T_False = 294,
-     T_File = 295,
-     T_Filegen = 296,
-     T_Filenum = 297,
-     T_Flag1 = 298,
-     T_Flag2 = 299,
-     T_Flag3 = 300,
-     T_Flag4 = 301,
-     T_Flake = 302,
-     T_Floor = 303,
-     T_Freq = 304,
-     T_Fudge = 305,
-     T_Host = 306,
-     T_Huffpuff = 307,
-     T_Iburst = 308,
-     T_Ident = 309,
-     T_Ignore = 310,
-     T_Incalloc = 311,
-     T_Incmem = 312,
-     T_Initalloc = 313,
-     T_Initmem = 314,
-     T_Includefile = 315,
-     T_Integer = 316,
-     T_Interface = 317,
-     T_Intrange = 318,
-     T_Io = 319,
-     T_Ipv4 = 320,
-     T_Ipv4_flag = 321,
-     T_Ipv6 = 322,
-     T_Ipv6_flag = 323,
-     T_Kernel = 324,
-     T_Key = 325,
-     T_Keys = 326,
-     T_Keysdir = 327,
-     T_Kod = 328,
-     T_Mssntp = 329,
-     T_Leapfile = 330,
-     T_Leapsmearinterval = 331,
-     T_Limited = 332,
-     T_Link = 333,
-     T_Listen = 334,
-     T_Logconfig = 335,
-     T_Logfile = 336,
-     T_Loopstats = 337,
-     T_Lowpriotrap = 338,
-     T_Manycastclient = 339,
-     T_Manycastserver = 340,
-     T_Mask = 341,
-     T_Maxage = 342,
-     T_Maxclock = 343,
-     T_Maxdepth = 344,
-     T_Maxdist = 345,
-     T_Maxmem = 346,
-     T_Maxpoll = 347,
-     T_Mdnstries = 348,
-     T_Mem = 349,
-     T_Memlock = 350,
-     T_Minclock = 351,
-     T_Mindepth = 352,
-     T_Mindist = 353,
-     T_Minimum = 354,
-     T_Minpoll = 355,
-     T_Minsane = 356,
-     T_Mode = 357,
-     T_Mode7 = 358,
-     T_Monitor = 359,
-     T_Month = 360,
-     T_Mru = 361,
-     T_Multicastclient = 362,
-     T_Nic = 363,
-     T_Nolink = 364,
-     T_Nomodify = 365,
-     T_Nomrulist = 366,
-     T_None = 367,
-     T_Nonvolatile = 368,
-     T_Nopeer = 369,
-     T_Noquery = 370,
-     T_Noselect = 371,
-     T_Noserve = 372,
-     T_Notrap = 373,
-     T_Notrust = 374,
-     T_Ntp = 375,
-     T_Ntpport = 376,
-     T_NtpSignDsocket = 377,
-     T_Orphan = 378,
-     T_Orphanwait = 379,
-     T_Panic = 380,
-     T_Peer = 381,
-     T_Peerstats = 382,
-     T_Phone = 383,
-     T_Pid = 384,
-     T_Pidfile = 385,
-     T_Pool = 386,
-     T_Port = 387,
-     T_Preempt = 388,
-     T_Prefer = 389,
-     T_Protostats = 390,
-     T_Pw = 391,
-     T_Randfile = 392,
-     T_Rawstats = 393,
-     T_Refid = 394,
-     T_Requestkey = 395,
-     T_Reset = 396,
-     T_Restrict = 397,
-     T_Revoke = 398,
-     T_Rlimit = 399,
-     T_Saveconfigdir = 400,
-     T_Server = 401,
-     T_Setvar = 402,
-     T_Source = 403,
-     T_Stacksize = 404,
-     T_Statistics = 405,
-     T_Stats = 406,
-     T_Statsdir = 407,
-     T_Step = 408,
-     T_Stepback = 409,
-     T_Stepfwd = 410,
-     T_Stepout = 411,
-     T_Stratum = 412,
-     T_String = 413,
-     T_Sys = 414,
-     T_Sysstats = 415,
-     T_Tick = 416,
-     T_Time1 = 417,
-     T_Time2 = 418,
-     T_Timer = 419,
-     T_Timingstats = 420,
-     T_Tinker = 421,
-     T_Tos = 422,
-     T_Trap = 423,
-     T_True = 424,
-     T_Trustedkey = 425,
-     T_Ttl = 426,
-     T_Type = 427,
-     T_U_int = 428,
-     T_UEcrypto = 429,
-     T_UEcryptonak = 430,
-     T_UEdigest = 431,
-     T_Unconfig = 432,
-     T_Unpeer = 433,
-     T_Version = 434,
-     T_WanderThreshold = 435,
-     T_Week = 436,
-     T_Wildcard = 437,
-     T_Xleave = 438,
-     T_Year = 439,
-     T_Flag = 440,
-     T_EOC = 441,
-     T_Simulate = 442,
-     T_Beep_Delay = 443,
-     T_Sim_Duration = 444,
-     T_Server_Offset = 445,
-     T_Duration = 446,
-     T_Freq_Offset = 447,
-     T_Wander = 448,
-     T_Jitter = 449,
-     T_Prop_Delay = 450,
-     T_Proc_Delay = 451
-   };
+  enum yytokentype
+  {
+    T_Abbrev = 258,
+    T_Age = 259,
+    T_All = 260,
+    T_Allan = 261,
+    T_Allpeers = 262,
+    T_Auth = 263,
+    T_Autokey = 264,
+    T_Automax = 265,
+    T_Average = 266,
+    T_Bclient = 267,
+    T_Beacon = 268,
+    T_Broadcast = 269,
+    T_Broadcastclient = 270,
+    T_Broadcastdelay = 271,
+    T_Burst = 272,
+    T_Calibrate = 273,
+    T_Ceiling = 274,
+    T_Clockstats = 275,
+    T_Cohort = 276,
+    T_ControlKey = 277,
+    T_Crypto = 278,
+    T_Cryptostats = 279,
+    T_Ctl = 280,
+    T_Day = 281,
+    T_Default = 282,
+    T_Digest = 283,
+    T_Disable = 284,
+    T_Discard = 285,
+    T_Dispersion = 286,
+    T_Double = 287,
+    T_Driftfile = 288,
+    T_Drop = 289,
+    T_Dscp = 290,
+    T_Ellipsis = 291,
+    T_Enable = 292,
+    T_End = 293,
+    T_False = 294,
+    T_File = 295,
+    T_Filegen = 296,
+    T_Filenum = 297,
+    T_Flag1 = 298,
+    T_Flag2 = 299,
+    T_Flag3 = 300,
+    T_Flag4 = 301,
+    T_Flake = 302,
+    T_Floor = 303,
+    T_Freq = 304,
+    T_Fudge = 305,
+    T_Host = 306,
+    T_Huffpuff = 307,
+    T_Iburst = 308,
+    T_Ident = 309,
+    T_Ignore = 310,
+    T_Incalloc = 311,
+    T_Incmem = 312,
+    T_Initalloc = 313,
+    T_Initmem = 314,
+    T_Includefile = 315,
+    T_Integer = 316,
+    T_Interface = 317,
+    T_Intrange = 318,
+    T_Io = 319,
+    T_Ipv4 = 320,
+    T_Ipv4_flag = 321,
+    T_Ipv6 = 322,
+    T_Ipv6_flag = 323,
+    T_Kernel = 324,
+    T_Key = 325,
+    T_Keys = 326,
+    T_Keysdir = 327,
+    T_Kod = 328,
+    T_Mssntp = 329,
+    T_Leapfile = 330,
+    T_Leapsmearinterval = 331,
+    T_Limited = 332,
+    T_Link = 333,
+    T_Listen = 334,
+    T_Logconfig = 335,
+    T_Logfile = 336,
+    T_Loopstats = 337,
+    T_Lowpriotrap = 338,
+    T_Manycastclient = 339,
+    T_Manycastserver = 340,
+    T_Mask = 341,
+    T_Maxage = 342,
+    T_Maxclock = 343,
+    T_Maxdepth = 344,
+    T_Maxdist = 345,
+    T_Maxmem = 346,
+    T_Maxpoll = 347,
+    T_Mdnstries = 348,
+    T_Mem = 349,
+    T_Memlock = 350,
+    T_Minclock = 351,
+    T_Mindepth = 352,
+    T_Mindist = 353,
+    T_Minimum = 354,
+    T_Minpoll = 355,
+    T_Minsane = 356,
+    T_Mode = 357,
+    T_Mode7 = 358,
+    T_Monitor = 359,
+    T_Month = 360,
+    T_Mru = 361,
+    T_Multicastclient = 362,
+    T_Nic = 363,
+    T_Nolink = 364,
+    T_Nomodify = 365,
+    T_Nomrulist = 366,
+    T_None = 367,
+    T_Nonvolatile = 368,
+    T_Nopeer = 369,
+    T_Noquery = 370,
+    T_Noselect = 371,
+    T_Noserve = 372,
+    T_Notrap = 373,
+    T_Notrust = 374,
+    T_Ntp = 375,
+    T_Ntpport = 376,
+    T_NtpSignDsocket = 377,
+    T_Orphan = 378,
+    T_Orphanwait = 379,
+    T_PCEdigest = 380,
+    T_Panic = 381,
+    T_Peer = 382,
+    T_Peerstats = 383,
+    T_Phone = 384,
+    T_Pid = 385,
+    T_Pidfile = 386,
+    T_Pool = 387,
+    T_Port = 388,
+    T_Preempt = 389,
+    T_Prefer = 390,
+    T_Protostats = 391,
+    T_Pw = 392,
+    T_Randfile = 393,
+    T_Rawstats = 394,
+    T_Refid = 395,
+    T_Requestkey = 396,
+    T_Reset = 397,
+    T_Restrict = 398,
+    T_Revoke = 399,
+    T_Rlimit = 400,
+    T_Saveconfigdir = 401,
+    T_Server = 402,
+    T_Setvar = 403,
+    T_Source = 404,
+    T_Stacksize = 405,
+    T_Statistics = 406,
+    T_Stats = 407,
+    T_Statsdir = 408,
+    T_Step = 409,
+    T_Stepback = 410,
+    T_Stepfwd = 411,
+    T_Stepout = 412,
+    T_Stratum = 413,
+    T_String = 414,
+    T_Sys = 415,
+    T_Sysstats = 416,
+    T_Tick = 417,
+    T_Time1 = 418,
+    T_Time2 = 419,
+    T_Timer = 420,
+    T_Timingstats = 421,
+    T_Tinker = 422,
+    T_Tos = 423,
+    T_Trap = 424,
+    T_True = 425,
+    T_Trustedkey = 426,
+    T_Ttl = 427,
+    T_Type = 428,
+    T_U_int = 429,
+    T_UEcrypto = 430,
+    T_UEcryptonak = 431,
+    T_UEdigest = 432,
+    T_Unconfig = 433,
+    T_Unpeer = 434,
+    T_Version = 435,
+    T_WanderThreshold = 436,
+    T_Week = 437,
+    T_Wildcard = 438,
+    T_Xleave = 439,
+    T_Year = 440,
+    T_Flag = 441,
+    T_EOC = 442,
+    T_Simulate = 443,
+    T_Beep_Delay = 444,
+    T_Sim_Duration = 445,
+    T_Server_Offset = 446,
+    T_Duration = 447,
+    T_Freq_Offset = 448,
+    T_Wander = 449,
+    T_Jitter = 450,
+    T_Prop_Delay = 451,
+    T_Proc_Delay = 452
+  };
 #endif
 /* Tokens.  */
 #define T_Abbrev 258
@@ -365,86 +365,86 @@
 #define T_NtpSignDsocket 377
 #define T_Orphan 378
 #define T_Orphanwait 379
-#define T_Panic 380
-#define T_Peer 381
-#define T_Peerstats 382
-#define T_Phone 383
-#define T_Pid 384
-#define T_Pidfile 385
-#define T_Pool 386
-#define T_Port 387
-#define T_Preempt 388
-#define T_Prefer 389
-#define T_Protostats 390
-#define T_Pw 391
-#define T_Randfile 392
-#define T_Rawstats 393
-#define T_Refid 394
-#define T_Requestkey 395
-#define T_Reset 396
-#define T_Restrict 397
-#define T_Revoke 398
-#define T_Rlimit 399
-#define T_Saveconfigdir 400
-#define T_Server 401
-#define T_Setvar 402
-#define T_Source 403
-#define T_Stacksize 404
-#define T_Statistics 405
-#define T_Stats 406
-#define T_Statsdir 407
-#define T_Step 408
-#define T_Stepback 409
-#define T_Stepfwd 410
-#define T_Stepout 411
-#define T_Stratum 412
-#define T_String 413
-#define T_Sys 414
-#define T_Sysstats 415
-#define T_Tick 416
-#define T_Time1 417
-#define T_Time2 418
-#define T_Timer 419
-#define T_Timingstats 420
-#define T_Tinker 421
-#define T_Tos 422
-#define T_Trap 423
-#define T_True 424
-#define T_Trustedkey 425
-#define T_Ttl 426
-#define T_Type 427
-#define T_U_int 428
-#define T_UEcrypto 429
-#define T_UEcryptonak 430
-#define T_UEdigest 431
-#define T_Unconfig 432
-#define T_Unpeer 433
-#define T_Version 434
-#define T_WanderThreshold 435
-#define T_Week 436
-#define T_Wildcard 437
-#define T_Xleave 438
-#define T_Year 439
-#define T_Flag 440
-#define T_EOC 441
-#define T_Simulate 442
-#define T_Beep_Delay 443
-#define T_Sim_Duration 444
-#define T_Server_Offset 445
-#define T_Duration 446
-#define T_Freq_Offset 447
-#define T_Wander 448
-#define T_Jitter 449
-#define T_Prop_Delay 450
-#define T_Proc_Delay 451
+#define T_PCEdigest 380
+#define T_Panic 381
+#define T_Peer 382
+#define T_Peerstats 383
+#define T_Phone 384
+#define T_Pid 385
+#define T_Pidfile 386
+#define T_Pool 387
+#define T_Port 388
+#define T_Preempt 389
+#define T_Prefer 390
+#define T_Protostats 391
+#define T_Pw 392
+#define T_Randfile 393
+#define T_Rawstats 394
+#define T_Refid 395
+#define T_Requestkey 396
+#define T_Reset 397
+#define T_Restrict 398
+#define T_Revoke 399
+#define T_Rlimit 400
+#define T_Saveconfigdir 401
+#define T_Server 402
+#define T_Setvar 403
+#define T_Source 404
+#define T_Stacksize 405
+#define T_Statistics 406
+#define T_Stats 407
+#define T_Statsdir 408
+#define T_Step 409
+#define T_Stepback 410
+#define T_Stepfwd 411
+#define T_Stepout 412
+#define T_Stratum 413
+#define T_String 414
+#define T_Sys 415
+#define T_Sysstats 416
+#define T_Tick 417
+#define T_Time1 418
+#define T_Time2 419
+#define T_Timer 420
+#define T_Timingstats 421
+#define T_Tinker 422
+#define T_Tos 423
+#define T_Trap 424
+#define T_True 425
+#define T_Trustedkey 426
+#define T_Ttl 427
+#define T_Type 428
+#define T_U_int 429
+#define T_UEcrypto 430
+#define T_UEcryptonak 431
+#define T_UEdigest 432
+#define T_Unconfig 433
+#define T_Unpeer 434
+#define T_Version 435
+#define T_WanderThreshold 436
+#define T_Week 437
+#define T_Wildcard 438
+#define T_Xleave 439
+#define T_Year 440
+#define T_Flag 441
+#define T_EOC 442
+#define T_Simulate 443
+#define T_Beep_Delay 444
+#define T_Sim_Duration 445
+#define T_Server_Offset 446
+#define T_Duration 447
+#define T_Freq_Offset 448
+#define T_Wander 449
+#define T_Jitter 450
+#define T_Prop_Delay 451
+#define T_Proc_Delay 452
 
+/* Value type.  */
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE
+union YYSTYPE
 {
-/* Line 2053 of yacc.c  */
-#line 51 "../../ntpd/ntp_parser.y"
+#line 51 "../../ntpd/ntp_parser.y" /* yacc.c:1909  */
 
 	char *			String;
 	double			Double;
@@ -463,29 +463,17 @@
 	script_info *		Sim_script;
 	script_info_fifo *	Sim_script_fifo;
 
+#line 467 "../../ntpd/ntp_parser.h" /* yacc.c:1909  */
+};
 
-/* Line 2053 of yacc.c  */
-#line 469 "ntp_parser.h"
-} YYSTYPE;
+typedef union YYSTYPE YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #endif
 
+
 extern YYSTYPE yylval;
 
-#ifdef YYPARSE_PARAM
-#if defined __STDC__ || defined __cplusplus
-int yyparse (void *YYPARSE_PARAM);
-#else
-int yyparse ();
-#endif
-#else /* ! YYPARSE_PARAM */
-#if defined __STDC__ || defined __cplusplus
 int yyparse (void);
-#else
-int yyparse ();
-#endif
-#endif /* ! YYPARSE_PARAM */
 
-#endif /* !YY_YY_NTP_PARSER_H_INCLUDED  */
+#endif /* !YY_YY_Y_TAB_H_INCLUDED  */
Index: contrib/ntp/ntpd/ntpd-opts.c
===================================================================
--- contrib/ntp/ntpd/ntpd-opts.c	(版本 301052)
+++ contrib/ntp/ntpd/ntpd-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpd-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:26:14 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:32:42 AM by AutoGen 5.18.5
  *  From the definitions    ntpd-opts.def
  *  and the template file   options
  *
@@ -75,7 +75,7 @@
  *  static const strings for ntpd options
  */
 static char const ntpd_opt_strs[3129] =
-/*     0 */ "ntpd 4.2.8p7\n"
+/*     0 */ "ntpd 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -205,12 +205,12 @@
 /*  2900 */ "output version information and exit\0"
 /*  2936 */ "version\0"
 /*  2944 */ "NTPD\0"
-/*  2949 */ "ntpd - NTP daemon program - Ver. 4.2.8p7\n"
+/*  2949 */ "ntpd - NTP daemon program - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \\\n"
             "\t\t[ <server1> ... <serverN> ]\n\0"
 /*  3080 */ "http://bugs.ntp.org, bugs@ntp.org\0"
 /*  3114 */ "\n\0"
-/*  3116 */ "ntpd 4.2.8p7";
+/*  3116 */ "ntpd 4.2.8p8";
 
 /**
  *  ipv4 option description with
@@ -1529,7 +1529,7 @@
      translate option names.
    */
   /* referenced via ntpdOptions.pzCopyright */
-  puts(_("ntpd 4.2.8p7\n\
+  puts(_("ntpd 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -1670,7 +1670,7 @@
   puts(_("output version information and exit"));
 
   /* referenced via ntpdOptions.pzUsageTitle */
-  puts(_("ntpd - NTP daemon program - Ver. 4.2.8p7\n\
+  puts(_("ntpd - NTP daemon program - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \\\n\
 \t\t[ <server1> ... <serverN> ]\n"));
 
@@ -1678,7 +1678,7 @@
   puts(_("\n"));
 
   /* referenced via ntpdOptions.pzFullVersion */
-  puts(_("ntpd 4.2.8p7"));
+  puts(_("ntpd 4.2.8p8"));
 
   /* referenced via ntpdOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/ntpd/ntpd.1ntpdman
===================================================================
--- contrib/ntp/ntpd/ntpd.1ntpdman	(版本 301052)
+++ contrib/ntp/ntpd/ntpd.1ntpdman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpd 1ntpdman "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpd 1ntpdman "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-0uayDF/ag-avaqCF)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-Jnai2U/ag-Ynaa1U)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:28:23 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:36:01 AM by AutoGen 5.18.5
 .\" From the definitions ntpd-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpd/ntpd.man.in
===================================================================
--- contrib/ntp/ntpd/ntpd.man.in	(版本 301052)
+++ contrib/ntp/ntpd/ntpd.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpd @NTPD_MS@ "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpd @NTPD_MS@ "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-0uayDF/ag-avaqCF)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-Jnai2U/ag-Ynaa1U)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:28:23 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:36:01 AM by AutoGen 5.18.5
 .\" From the definitions ntpd-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpdc/invoke-ntpdc.texi
===================================================================
--- contrib/ntp/ntpdc/invoke-ntpdc.texi	(版本 301052)
+++ contrib/ntp/ntpdc/invoke-ntpdc.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntpdc.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:29:05 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:36:54 AM by AutoGen 5.18.5
 # From the definitions    ntpdc-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -76,7 +76,7 @@
 
 @exampleindent 0
 @example
-ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p7
+ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p8
 Usage:  ntpdc [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... [ host ...]
   Flg Arg Option-Name    Description
    -4 no  ipv4           Force IPv4 DNS name resolution
Index: contrib/ntp/ntpd/ntpd.1ntpdmdoc
===================================================================
--- contrib/ntp/ntpd/ntpd.1ntpdmdoc	(版本 301052)
+++ contrib/ntp/ntpd/ntpd.1ntpdmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPD 1ntpdmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpd-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:22 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpd-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpd/ntpd.mdoc.in
===================================================================
--- contrib/ntp/ntpd/ntpd.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpd/ntpd.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPD @NTPD_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpd-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:22 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpd-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpdc/ntpdc-opts.c
===================================================================
--- contrib/ntp/ntpdc/ntpdc-opts.c	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpdc-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:28:50 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:36:34 AM by AutoGen 5.18.5
  *  From the definitions    ntpdc-opts.def
  *  and the template file   options
  *
@@ -69,7 +69,7 @@
  *  static const strings for ntpdc options
  */
 static char const ntpdc_opt_strs[1911] =
-/*     0 */ "ntpdc 4.2.8p7\n"
+/*     0 */ "ntpdc 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -128,7 +128,7 @@
 /*  1694 */ "no-load-opts\0"
 /*  1707 */ "no\0"
 /*  1710 */ "NTPDC\0"
-/*  1716 */ "ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p7\n"
+/*  1716 */ "ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [ host ...]\n\0"
 /*  1846 */ "$HOME\0"
 /*  1852 */ ".\0"
@@ -135,7 +135,7 @@
 /*  1854 */ ".ntprc\0"
 /*  1861 */ "http://bugs.ntp.org, bugs@ntp.org\0"
 /*  1895 */ "\n\0"
-/*  1897 */ "ntpdc 4.2.8p7";
+/*  1897 */ "ntpdc 4.2.8p8";
 
 /**
  *  ipv4 option description with
@@ -796,7 +796,7 @@
      translate option names.
    */
   /* referenced via ntpdcOptions.pzCopyright */
-  puts(_("ntpdc 4.2.8p7\n\
+  puts(_("ntpdc 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -862,7 +862,7 @@
   puts(_("load options from a config file"));
 
   /* referenced via ntpdcOptions.pzUsageTitle */
-  puts(_("ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p7\n\
+  puts(_("ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [ host ...]\n"));
 
   /* referenced via ntpdcOptions.pzExplain */
@@ -869,7 +869,7 @@
   puts(_("\n"));
 
   /* referenced via ntpdcOptions.pzFullVersion */
-  puts(_("ntpdc 4.2.8p7"));
+  puts(_("ntpdc 4.2.8p8"));
 
   /* referenced via ntpdcOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/CommitLog
===================================================================
--- contrib/ntp/CommitLog	(版本 301052)
+++ contrib/ntp/CommitLog	(版本 301301)
@@ -1,3 +1,774 @@
+ChangeSet@1.3686, 2016-06-02 07:40:06-04:00, stenn@deacon.udel.edu
+  NTP_4_2_8P8
+  TAG: NTP_4_2_8P8
+
+  ChangeLog@1.1834 +1 -0
+    NTP_4_2_8P8
+
+  ntpd/invoke-ntp.conf.texi@1.200 +1 -1
+    NTP_4_2_8P8
+
+  ntpd/invoke-ntp.keys.texi@1.190 +1 -1
+    NTP_4_2_8P8
+
+  ntpd/invoke-ntpd.texi@1.506 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.conf.5man@1.234 +3 -3
+    NTP_4_2_8P8
+
+  ntpd/ntp.conf.5mdoc@1.234 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.conf.html@1.185 +55 -19
+    NTP_4_2_8P8
+
+  ntpd/ntp.conf.man.in@1.234 +3 -3
+    NTP_4_2_8P8
+
+  ntpd/ntp.conf.mdoc.in@1.234 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.keys.5man@1.224 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.keys.5mdoc@1.224 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.keys.html@1.186 +1 -1
+    NTP_4_2_8P8
+
+  ntpd/ntp.keys.man.in@1.224 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntp.keys.mdoc.in@1.224 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntpd-opts.c@1.528 +7 -7
+    NTP_4_2_8P8
+
+  ntpd/ntpd-opts.h@1.527 +3 -3
+    NTP_4_2_8P8
+
+  ntpd/ntpd.1ntpdman@1.335 +3 -3
+    NTP_4_2_8P8
+
+  ntpd/ntpd.1ntpdmdoc@1.335 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntpd.html@1.179 +2 -2
+    NTP_4_2_8P8
+
+  ntpd/ntpd.man.in@1.335 +3 -3
+    NTP_4_2_8P8
+
+  ntpd/ntpd.mdoc.in@1.335 +2 -2
+    NTP_4_2_8P8
+
+  ntpdc/invoke-ntpdc.texi@1.503 +2 -2
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc-opts.c@1.521 +7 -7
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc-opts.h@1.520 +3 -3
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc.1ntpdcman@1.334 +3 -3
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc.1ntpdcmdoc@1.334 +2 -2
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc.html@1.347 +2 -2
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc.man.in@1.334 +3 -3
+    NTP_4_2_8P8
+
+  ntpdc/ntpdc.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P8
+
+  ntpq/invoke-ntpq.texi@1.511 +2 -2
+    NTP_4_2_8P8
+
+  ntpq/ntpq-opts.c@1.528 +7 -7
+    NTP_4_2_8P8
+
+  ntpq/ntpq-opts.h@1.526 +3 -3
+    NTP_4_2_8P8
+
+  ntpq/ntpq.1ntpqman@1.339 +3 -3
+    NTP_4_2_8P8
+
+  ntpq/ntpq.1ntpqmdoc@1.339 +2 -2
+    NTP_4_2_8P8
+
+  ntpq/ntpq.html@1.176 +2 -2
+    NTP_4_2_8P8
+
+  ntpq/ntpq.man.in@1.339 +3 -3
+    NTP_4_2_8P8
+
+  ntpq/ntpq.mdoc.in@1.339 +2 -2
+    NTP_4_2_8P8
+
+  ntpsnmpd/invoke-ntpsnmpd.texi@1.505 +2 -2
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd-opts.c@1.523 +7 -7
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd-opts.h@1.522 +3 -3
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdman@1.334 +3 -3
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc@1.334 +2 -2
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd.html@1.174 +1 -1
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd.man.in@1.334 +3 -3
+    NTP_4_2_8P8
+
+  ntpsnmpd/ntpsnmpd.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P8
+
+  packageinfo.sh@1.528 +2 -2
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjman@1.95 +3 -3
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc@1.96 +2 -2
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/calc_tickadj.html@1.97 +1 -1
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/calc_tickadj.man.in@1.94 +3 -3
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/calc_tickadj.mdoc.in@1.96 +2 -2
+    NTP_4_2_8P8
+
+  scripts/calc_tickadj/invoke-calc_tickadj.texi@1.99 +1 -1
+    NTP_4_2_8P8
+
+  scripts/invoke-plot_summary.texi@1.117 +2 -2
+    NTP_4_2_8P8
+
+  scripts/invoke-summary.texi@1.116 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/invoke-ntp-wait.texi@1.326 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait-opts@1.62 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitman@1.323 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitmdoc@1.324 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait.html@1.343 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait.man.in@1.323 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntp-wait/ntp-wait.mdoc.in@1.324 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/invoke-ntpsweep.texi@1.114 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep-opts@1.64 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepman@1.102 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepmdoc@1.102 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep.html@1.115 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep.man.in@1.102 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntpsweep/ntpsweep.mdoc.in@1.103 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntptrace/invoke-ntptrace.texi@1.115 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace-opts@1.64 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace.1ntptraceman@1.102 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace.1ntptracemdoc@1.103 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace.html@1.116 +2 -2
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace.man.in@1.102 +3 -3
+    NTP_4_2_8P8
+
+  scripts/ntptrace/ntptrace.mdoc.in@1.104 +2 -2
+    NTP_4_2_8P8
+
+  scripts/plot_summary-opts@1.65 +2 -2
+    NTP_4_2_8P8
+
+  scripts/plot_summary.1plot_summaryman@1.115 +3 -3
+    NTP_4_2_8P8
+
+  scripts/plot_summary.1plot_summarymdoc@1.115 +2 -2
+    NTP_4_2_8P8
+
+  scripts/plot_summary.html@1.118 +40 -58
+    NTP_4_2_8P8
+
+  scripts/plot_summary.man.in@1.115 +3 -3
+    NTP_4_2_8P8
+
+  scripts/plot_summary.mdoc.in@1.115 +2 -2
+    NTP_4_2_8P8
+
+  scripts/summary-opts@1.64 +2 -2
+    NTP_4_2_8P8
+
+  scripts/summary.1summaryman@1.114 +3 -3
+    NTP_4_2_8P8
+
+  scripts/summary.1summarymdoc@1.114 +2 -2
+    NTP_4_2_8P8
+
+  scripts/summary.html@1.117 +2 -2
+    NTP_4_2_8P8
+
+  scripts/summary.man.in@1.114 +3 -3
+    NTP_4_2_8P8
+
+  scripts/summary.mdoc.in@1.114 +2 -2
+    NTP_4_2_8P8
+
+  scripts/update-leap/invoke-update-leap.texi@1.15 +1 -1
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap-opts@1.15 +2 -2
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap.1update-leapman@1.15 +3 -3
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap.1update-leapmdoc@1.15 +2 -2
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap.html@1.15 +1 -1
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap.man.in@1.15 +3 -3
+    NTP_4_2_8P8
+
+  scripts/update-leap/update-leap.mdoc.in@1.15 +2 -2
+    NTP_4_2_8P8
+
+  sntp/invoke-sntp.texi@1.503 +2 -2
+    NTP_4_2_8P8
+
+  sntp/sntp-opts.c@1.522 +7 -7
+    NTP_4_2_8P8
+
+  sntp/sntp-opts.h@1.520 +3 -3
+    NTP_4_2_8P8
+
+  sntp/sntp.1sntpman@1.338 +3 -3
+    NTP_4_2_8P8
+
+  sntp/sntp.1sntpmdoc@1.338 +2 -2
+    NTP_4_2_8P8
+
+  sntp/sntp.html@1.518 +2 -2
+    NTP_4_2_8P8
+
+  sntp/sntp.man.in@1.338 +3 -3
+    NTP_4_2_8P8
+
+  sntp/sntp.mdoc.in@1.338 +2 -2
+    NTP_4_2_8P8
+
+  util/invoke-ntp-keygen.texi@1.506 +2 -2
+    NTP_4_2_8P8
+
+  util/ntp-keygen-opts.c@1.524 +7 -7
+    NTP_4_2_8P8
+
+  util/ntp-keygen-opts.h@1.522 +3 -3
+    NTP_4_2_8P8
+
+  util/ntp-keygen.1ntp-keygenman@1.334 +3 -3
+    NTP_4_2_8P8
+
+  util/ntp-keygen.1ntp-keygenmdoc@1.334 +2 -2
+    NTP_4_2_8P8
+
+  util/ntp-keygen.html@1.180 +2 -2
+    NTP_4_2_8P8
+
+  util/ntp-keygen.man.in@1.334 +3 -3
+    NTP_4_2_8P8
+
+  util/ntp-keygen.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P8
+
+ChangeSet@1.3685, 2016-06-02 06:50:37-04:00, stenn@deacon.udel.edu
+  4.2.8p8
+
+  packageinfo.sh@1.527 +1 -1
+    4.2.8p8
+
+ChangeSet@1.3684, 2016-05-27 08:02:09+00:00, stenn@psp-deb1.ntp.org
+  typo
+
+  NEWS@1.174 +1 -1
+    typo
+
+ChangeSet@1.3683, 2016-05-27 00:07:22-07:00, harlan@max.pfcs.com
+  [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback, JPerlinger, HStenn.
+
+  ChangeLog@1.1833 +2 -0
+    [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback, JPerlinger, HStenn.
+
+  NEWS@1.173 +2 -0
+    [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback, JPerlinger, HStenn.
+
+  ntpd/ntp_io.c@1.417 +41 -41
+    [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback, JPerlinger, HStenn.
+
+ChangeSet@1.3682, 2016-05-26 22:37:19-07:00, harlan@max.pfcs.com
+  [Sec3043] - validate origin timestamps on bad MACs, too.  stenn@ntp.org
+
+  ChangeLog@1.1832 +2 -1
+    [Sec3043] - validate origin timestamps on bad MACs, too.  stenn@ntp.org
+
+  NEWS@1.172 +9 -9
+    [Sec3043] - validate origin timestamps on bad MACs, too.  stenn@ntp.org
+
+  ntpd/ntp_proto.c@1.392 +19 -6
+    [Sec3043] - validate origin timestamps on bad MACs, too.  stenn@ntp.org
+
+ChangeSet@1.3681, 2016-05-24 23:31:36+00:00, stenn@psp-deb1.ntp.org
+  Update the NEWS file for 4.2.8p8.  HStenn.
+
+  ChangeLog@1.1831 +1 -0
+    Update the NEWS file for 4.2.8p8.  HStenn.
+
+  NEWS@1.171 +103 -2
+    Update the NEWS file for 4.2.8p8.  HStenn.
+
+ChangeSet@1.3680, 2016-05-24 12:05:06+00:00, stenn@psp-deb1.ntp.org
+  [Sec 3044] Spoofed server packets are partially processed.  HStenn.
+
+  ChangeLog@1.1830 +3 -2
+    [Sec 3044] Spoofed server packets are partially processed.  HStenn.
+
+  ntpd/ntp_proto.c@1.391 +39 -24
+    [Sec 3044] Spoofed server packets are partially processed.  HStenn.
+
+ChangeSet@1.3669.3.2, 2016-05-24 02:58:00-07:00, harlan@hms-mbp11.pfcs.com
+  Make sure we have an "author" file for git imports.  HStenn.
+
+  ChangeLog@1.1820.3.3 +1 -0
+    Update the problem tests for MacOS for sntp.  HStenn.
+
+  ChangeLog@1.1820.3.2 +1 -0
+    Make sure we have an "author" file for git imports.  HStenn.
+
+  configure.ac@1.606 +1 -0
+    Make sure we have an "author" file for git imports.  HStenn.
+
+  scripts/build/Makefile.am@1.5 +1 -1
+    Make sure we have an "author" file for git imports.  HStenn.
+
+  scripts/build/genAuthors.in@1.1 +82 -0
+    BitKeeper file /Users/harlan/src/ntp-stable/scripts/build/genAuthors.in
+
+  scripts/build/genAuthors.in@1.0 +0 -0
+
+  sntp/configure.ac@1.83 +2 -0
+    Make sure we have an "author" file for git imports.  HStenn.
+
+  sntp/m4/ntp_problemtests.m4@1.5 +1 -0
+    Make sure we have an "author" file for git imports.  HStenn.
+
+  sntp/m4/sntp_problemtests.m4@1.1 +47 -0
+    BitKeeper file /Users/harlan/src/ntp-stable/sntp/m4/sntp_problemtests.m4
+
+  sntp/m4/sntp_problemtests.m4@1.0 +0 -0
+
+  sntp/tests/Makefile.am@1.67 +8 -2
+    Update the problem tests for MacOS for sntp.  HStenn.
+
+ChangeSet@1.3669.3.1, 2016-05-24 02:25:46-07:00, harlan@hms-mbp11.pfcs.com
+  [Sec 3042] Broadcast Interleave.  HStenn.
+
+  ChangeLog@1.1820.3.1 +4 -0
+    [Sec 3042] Broadcast Interleave.  HStenn.
+
+  ntpd/ntp_proto.c@1.386.1.1 +69 -14
+    [Sec 3042] Broadcast Interleave.  HStenn.
+
+ChangeSet@1.3678, 2016-05-23 09:53:37+00:00, stenn@psp-deb1.ntp.org
+  [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ChangeLog@1.1828 +1 -1
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  include/ntp.h@1.220 +1 -0
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/complete.conf.in@1.31 +1 -1
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/invoke-ntp.conf.texi@1.199 +23 -3
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/keyword-gen-utd@1.28 +1 -1
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/keyword-gen.c@1.34 +2 -1
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp.conf.5man@1.233 +27 -6
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp.conf.5mdoc@1.233 +24 -2
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp.conf.def@1.24 +22 -0
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp.conf.man.in@1.233 +27 -6
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp.conf.mdoc.in@1.233 +24 -2
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_config.c@1.338 +6 -2
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_keyword.h@1.30 +617 -597
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_parser.c@1.102 +1541 -1773
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_parser.h@1.66 +294 -306
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_parser.y@1.92 +2 -0
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+  ntpd/ntp_proto.c@1.389 +29 -8
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org, stenn@ntp.org
+
+ChangeSet@1.3671.1.3, 2016-05-17 06:49:41+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
+
+  ChangeLog@1.1822.1.3 +1 -0
+    [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
+
+  html/miscopt.html@1.86 +2 -2
+    [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
+
+ChangeSet@1.3671.1.2, 2016-05-17 04:25:50+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3052] Add a .gitignore file.  Edmund Wong.
+
+  .gitignore@1.1 +9 -0
+    BitKeeper file /home/stenn/ntp-stable/.gitignore
+
+  .gitignore@1.0 +0 -0
+
+  BitKeeper/etc/ignore@1.91 +0 -1
+    [Bug 3052] Add a .gitignore file.  Edmund Wong.
+
+  ChangeLog@1.1822.1.2 +1 -0
+    [Bug 3052] Add a .gitignore file.  Edmund Wong.
+
+ChangeSet@1.3675, 2016-05-08 11:59:28+02:00, perlinger@ntp.org
+  [Sec 3043]  Autokey association reset. perlinger@ntp.org
+   (fixes [Sec 3044] and [Sec 3045], too)
+
+  ChangeLog@1.1825 +2 -0
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org
+
+  ntpd/ntp_proto.c@1.388 +28 -22
+    [Sec 3043]  Autokey association reset. perlinger@ntp.org
+     (fixes [Sec 3044] and [Sec 3045], too)
+
+ChangeSet@1.3674, 2016-05-06 11:05:44+00:00, stenn@psp-deb1.ntp.org
+  [Sec 3046] CRYPTO_NAK crash
+
+  ChangeLog@1.1824 +1 -0
+    [Sec 3046] CRYPTO_NAK crash
+
+  ntpd/ntp_proto.c@1.387 +2 -1
+    [Sec 3046] CRYPTO_NAK crash
+
+ChangeSet@1.3669.2.1, 2016-05-06 09:20:29+00:00, stenn@psp-deb1.ntp.org
+  Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  ChangeLog@1.1820.2.1 +4 -0
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/invoke-plot_summary.texi@1.116 +2 -2
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/ntp-wait/ntp-wait.in@1.12 +1 -1
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary-opts@1.64 +1 -1
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary-opts.def@1.3 +1 -1
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary.1plot_summaryman@1.114 +4 -4
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary.1plot_summarymdoc@1.114 +3 -3
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary.html@1.117 +58 -40
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary.man.in@1.114 +4 -4
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/plot_summary.mdoc.in@1.114 +3 -3
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+  scripts/t/ntp-wait.t@1.2 +1 -1
+    Fix typo in ntp-wait and plot_summary.  HStenn.
+
+ChangeSet@1.3672, 2016-05-05 06:17:20+00:00, stenn@psp-deb1.ntp.org
+  Update NEWS file for 4.2.8p9 for Bug 3038
+
+  NEWS@1.170 +9 -0
+    Update NEWS file for 4.2.8p9 for Bug 3038
+
+ChangeSet@1.3671, 2016-05-05 06:09:53+00:00, stenn@psp-deb1.ntp.org
+  trivial cleanup
+
+  ChangeLog@1.1822 +1 -0
+    trivial cleanup
+
+ChangeSet@1.3670, 2016-04-27 21:54:12+02:00, perlinger@ntp.org
+  [Bug 3038] NTP fails to build in VS2015 Community Edition
+   - new build environment
+   - 'wint_t' and 'struct timespec' defined by VS2015
+   - fixed several format clashes in 'printf()' and 'scanf'
+
+  BitKeeper/etc/ignore@1.90 +1 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - skip next version of MSVC symbol database
+
+  ChangeLog@1.1821 +6 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+
+  ntpd/refclock_parse.c@1.83 +6 -6
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - work around clash SOCKET vs file descriptor formatting
+
+  ntpdc/ntpdc.c@1.107 +2 -2
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - fix format warnings/errors
+
+  ntpq/ntpq.c@1.170 +5 -2
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - fix format warnings/errors
+
+  ports/winnt/include/config.h@1.115 +4 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - VS2015 has 'wint_t'
+
+  ports/winnt/include/sys/time.h@1.9 +2 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - VS2015 has 'struct timespec'
+
+  ports/winnt/libntp/termios.c@1.33 +3 -3
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - fix format parsing error
+
+  ports/winnt/ppsapi/loopback/src/sys/time.h@1.2 +2 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - VS2015 has 'struct timespec'
+
+  ports/winnt/vs2013/common.props@1.3 +1 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     -enable multiprocessor build
+
+  ports/winnt/vs2015/common.props@1.1 +60 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/common.props@1.0 +0 -0
+
+  ports/winnt/vs2015/debug-x64.props@1.1 +24 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/debug-x64.props@1.0 +0 -0
+
+  ports/winnt/vs2015/debug.props@1.1 +24 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/debug.props@1.0 +0 -0
+
+  ports/winnt/vs2015/instsrv/instsrv.vcxproj@1.1 +269 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/instsrv/instsrv.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/instsrv/instsrv.vcxproj.filters@1.1 +28 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/instsrv/instsrv.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.1 +431 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.1 +574 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/loopback-pps/loopback-ppsapi-provider.vcxproj@1.1 +252 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/loopback-pps/loopback-ppsapi-provider.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/loopback-pps/loopback-ppsapi-provider.vcxproj.filters@1.1 +39 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/loopback-pps/loopback-ppsapi-provider.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntp-keygen/ntp-keygen.vcxproj@1.1 +270 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntp-keygen/ntp-keygen.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntp-keygen/ntp-keygen.vcxproj.filters@1.1 +36 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntp-keygen/ntp-keygen.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntp.sln@1.1 +166 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntp.sln@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpd-keyword-gen/ntpd-keyword-gen.vcxproj@1.1 +227 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpd-keyword-gen/ntpd-keyword-gen.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpd-keyword-gen/ntpd-keyword-gen.vcxproj.filters@1.1 +69 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpd-keyword-gen/ntpd-keyword-gen.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpd/gen-ntp_keyword.bat@1.1 +53 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpd/gen-ntp_keyword.bat@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpd/ntpd.vcxproj@1.1 +515 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpd/ntpd.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpd/ntpd.vcxproj.filters@1.1 +556 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpd/ntpd.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpdate/ntpdate.vcxproj@1.1 +287 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpdate/ntpdate.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpdate/ntpdate.vcxproj.filters@1.1 +72 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpdate/ntpdate.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpdc/ntpdc.vcxproj@1.1 +278 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpdc/ntpdc.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpdc/ntpdc.vcxproj.filters@1.1 +45 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpdc/ntpdc.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpq/ntpq.vcxproj@1.1 +277 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpq/ntpq.vcxproj@1.0 +0 -0
+
+  ports/winnt/vs2015/ntpq/ntpq.vcxproj.filters@1.1 +42 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/ntpq/ntpq.vcxproj.filters@1.0 +0 -0
+
+  ports/winnt/vs2015/release-x64.props@1.1 +25 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/release-x64.props@1.0 +0 -0
+
+  ports/winnt/vs2015/release.props@1.1 +25 -0
+    [Bug 3038] NTP fails to build in VS2015 Community Edition
+     - add build environment
+
+  ports/winnt/vs2015/release.props@1.0 +0 -0
+
 ChangeSet@1.3669, 2016-04-26 20:30:51-04:00, stenn@deacon.udel.edu
   NTP_4_2_8P7
   TAG: NTP_4_2_8P7
Index: contrib/ntp/NEWS
===================================================================
--- contrib/ntp/NEWS	(版本 301052)
+++ contrib/ntp/NEWS	(版本 301301)
@@ -1,4 +1,116 @@
 ---
+NTP 4.2.8p8 (Harlan Stenn <stenn@ntp.org>, 2016/06/02) 
+
+Focus: Security, Bug fixes, enhancements.
+
+Severity: HIGH
+
+In addition to bug fixes and enhancements, this release fixes the
+following 1 high- and 4 low-severity vulnerabilities:
+
+* CRYPTO_NAK crash
+   Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
+   References: Sec 3046 / CVE-2016-4957 / VU#321640
+   Affects: ntp-4.2.8p7, and ntp-4.3.92.
+   CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
+   CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
+   Summary: The fix for Sec 3007 in ntp-4.2.8p7 contained a bug that
+	could cause ntpd to crash.
+   Mitigation:
+        Implement BCP-38.
+        Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
+	    or the NTP Public Services Project Download Page
+        If you cannot upgrade from 4.2.8p7, the only other alternatives
+	    are to patch your code or filter CRYPTO_NAK packets.
+        Properly monitor your ntpd instances, and auto-restart ntpd
+	    (without -g) if it stops running. 
+   Credit: This weakness was discovered by Nicolas Edet of Cisco. 
+
+* Bad authentication demobilizes ephemeral associations
+   Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
+   References: Sec 3045 / CVE-2016-4953 / VU#321640
+   Affects: ntp-4, up to but not including ntp-4.2.8p8, and
+	ntp-4.3.0 up to, but not including ntp-4.3.93.
+   CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
+   CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
+   Summary: An attacker who knows the origin timestamp and can send a
+	spoofed packet containing a CRYPTO-NAK to an ephemeral peer
+	target before any other response is sent can demobilize that
+	association.
+   Mitigation:
+	Implement BCP-38.
+	Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
+	    or the NTP Public Services Project Download Page
+	Properly monitor your ntpd instances. 
+	Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 
+
+* Processing spoofed server packets
+   Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
+   References: Sec 3044 / CVE-2016-4954 / VU#321640
+   Affects: ntp-4, up to but not including ntp-4.2.8p8, and
+	ntp-4.3.0 up to, but not including ntp-4.3.93.
+   CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
+   CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
+   Summary: An attacker who is able to spoof packets with correct origin
+	timestamps from enough servers before the expected response
+	packets arrive at the target machine can affect some peer
+	variables and, for example, cause a false leap indication to be set.
+   Mitigation:
+	Implement BCP-38.
+	Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
+	    or the NTP Public Services Project Download Page
+	Properly monitor your ntpd instances. 
+   Credit: This weakness was discovered by Jakub Prokes of Red Hat. 
+
+* Autokey association reset
+   Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
+   References: Sec 3043 / CVE-2016-4955 / VU#321640
+   Affects: ntp-4, up to but not including ntp-4.2.8p8, and
+	ntp-4.3.0 up to, but not including ntp-4.3.93.
+   CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
+   CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
+   Summary: An attacker who is able to spoof a packet with a correct
+	origin timestamp before the expected response packet arrives at
+	the target machine can send a CRYPTO_NAK or a bad MAC and cause
+	the association's peer variables to be cleared. If this can be
+	done often enough, it will prevent that association from working.
+   Mitigation:
+	Implement BCP-38.
+	Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
+	    or the NTP Public Services Project Download Page
+	Properly monitor your ntpd instances. 
+   Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 
+ 
+* Broadcast interleave
+   Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
+   References: Sec 3042 / CVE-2016-4956 / VU#321640
+   Affects: ntp-4, up to but not including ntp-4.2.8p8, and
+   	ntp-4.3.0 up to, but not including ntp-4.3.93.
+   CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
+   CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
+   Summary: The fix for NtpBug2978 does not cover broadcast associations,
+   	so broadcast clients can be triggered to flip into interleave mode.
+   Mitigation:
+	Implement BCP-38.
+	Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
+	    or the NTP Public Services Project Download Page
+	Properly monitor your ntpd instances. 
+   Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 
+
+Other fixes:
+* [Bug 3038] NTP fails to build in VS2015. perlinger@ntp.org
+  - provide build environment
+  - 'wint_t' and 'struct timespec' defined by VS2015
+  - fixed print()/scanf() format issues
+* [Bug 3052] Add a .gitignore file.  Edmund Wong.
+* [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
+* [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback,
+  JPerlinger, HStenn.
+* Fix typo in ntp-wait and plot_summary.  HStenn.
+* Make sure we have an "author" file for git imports.  HStenn.
+* Update the sntp problem tests for MacOS.  HStenn.
+
+---
 NTP 4.2.8p7 (Harlan Stenn <stenn@ntp.org>, 2016/04/26) 
 
 Focus: Security, Bug fixes, enhancements.
Index: contrib/ntp/configure
===================================================================
--- contrib/ntp/configure	(版本 301052)
+++ contrib/ntp/configure	(版本 301301)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for ntp 4.2.8p7.
+# Generated by GNU Autoconf 2.69 for ntp 4.2.8p8.
 #
 # Report bugs to <http://bugs.ntp.org./>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='ntp'
 PACKAGE_TARNAME='ntp'
-PACKAGE_VERSION='4.2.8p7'
-PACKAGE_STRING='ntp 4.2.8p7'
+PACKAGE_VERSION='4.2.8p8'
+PACKAGE_STRING='ntp 4.2.8p8'
 PACKAGE_BUGREPORT='http://bugs.ntp.org./'
 PACKAGE_URL='http://www.ntp.org./'
 
@@ -1618,7 +1618,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures ntp 4.2.8p7 to adapt to many kinds of systems.
+\`configure' configures ntp 4.2.8p8 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1688,7 +1688,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ntp 4.2.8p7:";;
+     short | recursive ) echo "Configuration of ntp 4.2.8p8:";;
    esac
   cat <<\_ACEOF
 
@@ -1924,7 +1924,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-ntp configure 4.2.8p7
+ntp configure 4.2.8p8
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2754,7 +2754,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ntp $as_me 4.2.8p7, which was
+It was created by ntp $as_me 4.2.8p8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3755,7 +3755,7 @@
 
 # Define the identity of the package.
  PACKAGE='ntp'
- VERSION='4.2.8p7'
+ VERSION='4.2.8p8'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -37251,6 +37251,7 @@
 
 
 
+
 ###
 
 
@@ -37309,6 +37310,8 @@
 
 ac_config_files="$ac_config_files scripts/build/Makefile"
 
+ac_config_files="$ac_config_files scripts/build/genAuthors"
+
 ac_config_files="$ac_config_files scripts/build/mkver"
 
 ac_config_files="$ac_config_files scripts/calc_tickadj/Makefile"
@@ -38000,7 +38003,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by ntp $as_me 4.2.8p7, which was
+This file was extended by ntp $as_me 4.2.8p8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -38067,7 +38070,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-ntp config.status 4.2.8p7
+ntp config.status 4.2.8p8
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -38595,6 +38598,7 @@
     "parseutil/Makefile") CONFIG_FILES="$CONFIG_FILES parseutil/Makefile" ;;
     "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;;
     "scripts/build/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/build/Makefile" ;;
+    "scripts/build/genAuthors") CONFIG_FILES="$CONFIG_FILES scripts/build/genAuthors" ;;
     "scripts/build/mkver") CONFIG_FILES="$CONFIG_FILES scripts/build/mkver" ;;
     "scripts/calc_tickadj/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/calc_tickadj/Makefile" ;;
     "scripts/calc_tickadj/calc_tickadj") CONFIG_FILES="$CONFIG_FILES scripts/calc_tickadj/calc_tickadj" ;;
@@ -40149,6 +40153,7 @@
  ;;
     "ntpd/complete.conf":F) sed -e '/^rlimit$/d' -e '/^$/d' < ntpd/complete.conf > ntpd/complete.conf.new && mv ntpd/complete.conf.new ntpd/complete.conf ;;
     "ntpdc/nl.pl":F) chmod +x ntpdc/nl.pl ;;
+    "scripts/build/genAuthors":F) chmod +x scripts/build/genAuthors ;;
     "scripts/build/mkver":F) chmod +x scripts/build/mkver ;;
     "scripts/calc_tickadj/calc_tickadj":F) chmod +x scripts/calc_tickadj/calc_tickadj ;;
     "scripts/ntp-wait/ntp-wait":F) chmod +x scripts/ntp-wait/ntp-wait ;;
Index: contrib/ntp/configure.ac
===================================================================
--- contrib/ntp/configure.ac	(版本 301052)
+++ contrib/ntp/configure.ac	(版本 301301)
@@ -4397,6 +4397,7 @@
 AC_CONFIG_FILES([parseutil/Makefile])
 AC_CONFIG_FILES([scripts/Makefile])
 AC_CONFIG_FILES([scripts/build/Makefile])
+AC_CONFIG_FILES([scripts/build/genAuthors],	[chmod +x scripts/build/genAuthors])
 AC_CONFIG_FILES([scripts/build/mkver],	[chmod +x scripts/build/mkver])
 AC_CONFIG_FILES([scripts/calc_tickadj/Makefile])
 AC_CONFIG_FILES([scripts/calc_tickadj/calc_tickadj], [chmod +x scripts/calc_tickadj/calc_tickadj])
Index: contrib/ntp/html/miscopt.html
===================================================================
--- contrib/ntp/html/miscopt.html	(版本 301052)
+++ contrib/ntp/html/miscopt.html	(版本 301301)
@@ -11,7 +11,7 @@
 <img src="pic/boom3.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>Pogo</i>, Walt Kelly</a>
 <p>We have three, now looking for more.</p>
 <p>Last update:
-  <!-- #BeginDate format:En2m -->16-Jan-2016  13:08<!-- #EndDate -->
+  <!-- #BeginDate format:En2m -->17-May-2016  06:26<!-- #EndDate -->
     UTC</p>
 <br clear="left">
 <h4>Related Links</h4>
@@ -129,7 +129,7 @@
   <dd>
     <dl>
       <dt><tt>allan <i>allan</i></tt></dt>
-      <dd>Specifies the Allan intercept, which is a parameter of the PLL/FLL clock discipline algorithm, in seconds with default 1500 s.</dd>
+      <dd>Specifies the Allan intercept, which is a parameter of the PLL/FLL clock discipline algorithm, in log2 seconds with default 11 (2048 s).</dd>
       <dt><tt>dispersion <i>dispersion</i></tt></dt>
       <dd>Specifies the dispersion increase rate in parts-per-million (PPM) with default 15 PPM.</dd>
       <dt><tt>freq <i>freq</i></tt></dt>
Index: contrib/ntp/include/ntp.h
===================================================================
--- contrib/ntp/include/ntp.h	(版本 301052)
+++ contrib/ntp/include/ntp.h	(版本 301301)
@@ -723,6 +723,7 @@
 #define	PROTO_UECRYPTO		29
 #define	PROTO_UECRYPTONAK	30
 #define	PROTO_UEDIGEST		31
+#define	PROTO_PCEDIGEST		32
 
 /*
  * Configuration items for the loop filter
Index: contrib/ntp/ntpd/complete.conf.in
===================================================================
--- contrib/ntp/ntpd/complete.conf.in	(版本 301052)
+++ contrib/ntp/ntpd/complete.conf.in	(版本 301301)
@@ -25,7 +25,7 @@
 controlkey 12
 requestkey 12
 enable auth ntp monitor stats
-disable bclient calibrate kernel mode7
+disable bclient calibrate kernel mode7 peer_clear_digest_early unpeer_crypto_early unpeer_crypto_nak_early unpeer_digest_early
 tos beacon 3600 ceiling 16 cohort 0 floor 1 maxclock 10 maxdist 1.5 minclock 3 mindist 0.001 minsane 1 orphan 16 orphanwait 300
 rlimit@HAVE_RLIMIT_MEMLOCK@@HAVE_RLIMIT_STACK@
 tinker allan 1500 dispersion 15 freq 0 huffpuff 7200 panic 1000 step 0.128 stepout 900 tick 0.01
Index: contrib/ntp/ntpd/invoke-ntp.conf.texi
===================================================================
--- contrib/ntp/ntpd/invoke-ntp.conf.texi	(版本 301052)
+++ contrib/ntp/ntpd/invoke-ntp.conf.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntp.conf.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:28:27 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:36:07 AM by AutoGen 5.18.5
 # From the definitions    ntp.conf.def
 # and the template file   agtexi-file.tpl
 @end ignore
@@ -2335,8 +2335,8 @@
 This option specifies the Differentiated Services Control Point (DSCP) value,
 a 6-bit code.
 The default value is 46, signifying Expedited Forwarding.
-@item @code{enable} @code{[@code{auth} | @code{bclient} | @code{calibrate} | @code{kernel} | @code{mode7} | @code{monitor} | @code{ntp} | @code{stats} | @code{unpeer_crypto_early} | @code{unpeer_crypto_nak_early} | @code{unpeer_digest_early}]}
-@item @code{disable} @code{[@code{auth} | @code{bclient} | @code{calibrate} | @code{kernel} | @code{mode7} | @code{monitor} | @code{ntp} | @code{stats} | @code{unpeer_crypto_early} | @code{unpeer_crypto_nak_early} | @code{unpeer_digest_early}]}
+@item @code{enable} @code{[@code{auth} | @code{bclient} | @code{calibrate} | @code{kernel} | @code{mode7} | @code{monitor} | @code{ntp} | @code{stats} | @code{peer_clear_digest_early} | @code{unpeer_crypto_early} | @code{unpeer_crypto_nak_early} | @code{unpeer_digest_early}]}
+@item @code{disable} @code{[@code{auth} | @code{bclient} | @code{calibrate} | @code{kernel} | @code{mode7} | @code{monitor} | @code{ntp} | @code{stats} | @code{peer_clear_digest_early} | @code{unpeer_crypto_early} | @code{unpeer_crypto_nak_early} | @code{unpeer_digest_early}]}
 Provides a way to enable or disable various server options.
 Flags not mentioned are unaffected.
 Note that all of these flags
@@ -2401,6 +2401,26 @@
 The default for
 this flag is
 @code{enable}.
+@item @code{peer_clear_digest_early}
+By default, if
+@code{ntpd(1ntpdmdoc)}
+is using autokey and it
+receives a crypto-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+@code{peerstats}
+file for evidence of any of these attacks.
+The
+default for this flag is
+@code{enable}.
 @item @code{stats}
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/invoke-ntp.keys.texi
===================================================================
--- contrib/ntp/ntpd/invoke-ntp.keys.texi	(版本 301052)
+++ contrib/ntp/ntpd/invoke-ntp.keys.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntp.keys.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:28:30 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:36:10 AM by AutoGen 5.18.5
 # From the definitions    ntp.keys.def
 # and the template file   agtexi-file.tpl
 @end ignore
Index: contrib/ntp/ntpd/invoke-ntpd.texi
===================================================================
--- contrib/ntp/ntpd/invoke-ntpd.texi	(版本 301052)
+++ contrib/ntp/ntpd/invoke-ntpd.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntpd.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:28:32 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:36:12 AM by AutoGen 5.18.5
 # From the definitions    ntpd-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -142,7 +142,7 @@
 
 @exampleindent 0
 @example
-ntpd - NTP daemon program - Ver. 4.2.8p7
+ntpd - NTP daemon program - Ver. 4.2.8p8
 Usage:  ntpd [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... \
                 [ <server1> ... <serverN> ]
   Flg Arg Option-Name    Description
Index: contrib/ntp/ntpd/keyword-gen-utd
===================================================================
--- contrib/ntp/ntpd/keyword-gen-utd	(版本 301052)
+++ contrib/ntp/ntpd/keyword-gen-utd	(版本 301301)
@@ -1 +1 @@
- *	 Generated 2016-01-16 08:33:03 UTC	  diff_ignore_line
+ *	 Generated 2016-05-19 06:35:34 UTC	  diff_ignore_line
Index: contrib/ntp/ntpd/keyword-gen.c
===================================================================
--- contrib/ntp/ntpd/keyword-gen.c	(版本 301052)
+++ contrib/ntp/ntpd/keyword-gen.c	(版本 301301)
@@ -199,8 +199,9 @@
 { "bclient",		T_Bclient,		FOLLBY_TOKEN },
 { "calibrate",		T_Calibrate,		FOLLBY_TOKEN },
 { "kernel",		T_Kernel,		FOLLBY_TOKEN },
+{ "mode7",		T_Mode7,		FOLLBY_TOKEN },
 { "ntp",		T_Ntp,			FOLLBY_TOKEN },
-{ "mode7",		T_Mode7,		FOLLBY_TOKEN },
+{ "peer_clear_digest_early",	T_PCEdigest,	FOLLBY_TOKEN },
 { "stats",		T_Stats,		FOLLBY_TOKEN },
 { "unpeer_crypto_early",	T_UEcrypto,	FOLLBY_TOKEN },
 { "unpeer_crypto_nak_early",	T_UEcryptonak,	FOLLBY_TOKEN },
Index: contrib/ntp/ntpd/ntp.conf.5man
===================================================================
--- contrib/ntp/ntpd/ntp.conf.5man	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.5man	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp.conf 5man "26 Apr 2016" "4.2.8p7" "File Formats"
+.TH ntp.conf 5man "02 Jun 2016" "4.2.8p8" "File Formats"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-ana4jE/ag-QnaWiE)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-OzaOIT/ag-3zaGHT)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:28:14 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:35:50 AM by AutoGen 5.18.5
 .\" From the definitions ntp.conf.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
@@ -2618,9 +2618,9 @@
 a 6-bit code.
 The default value is 46, signifying Expedited Forwarding.
 .TP 7
-.NOP \f\*[B-Font]enable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
+.NOP \f\*[B-Font]enable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]peer_clear_digest_early\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
 .TP 7
-.NOP \f\*[B-Font]disable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
+.NOP \f\*[B-Font]disable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]peer_clear_digest_early\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
 Provides a way to enable or disable various server options.
 Flags not mentioned are unaffected.
 Note that all of these flags
@@ -2693,6 +2693,27 @@
 this flag is
 \f\*[B-Font]enable\f[].
 .TP 7
+.NOP \f\*[B-Font]peer_clear_digest_early\f[]
+By default, if
+\fCntpd\f[]\fR(1ntpdmdoc)\f[]
+is using autokey and it
+receives a crypto-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+\f\*[B-Font]peerstats\f[]
+file for evidence of any of these attacks.
+The
+default for this flag is
+\f\*[B-Font]enable\f[].
+.TP 7
 .NOP \f\*[B-Font]stats\f[]
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/ntp.conf.5mdoc
===================================================================
--- contrib/ntp/ntpd/ntp.conf.5mdoc	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.5mdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_CONF 5mdoc File Formats
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:36 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:16 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.conf.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
@@ -2440,6 +2440,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2449,6 +2450,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2516,6 +2518,26 @@
 The default for
 this flag is
 .Ic enable .
+.It Cm peer_clear_digest_early
+By default, if
+.Xr ntpd 1ntpdmdoc
+is using autokey and it
+receives a crypto\-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto\-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+.Cm peerstats
+file for evidence of any of these attacks.
+The
+default for this flag is
+.Ic enable .
 .It Cm stats
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/ntp.conf.def
===================================================================
--- contrib/ntp/ntpd/ntp.conf.def	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.def	(版本 301301)
@@ -2442,6 +2442,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2451,6 +2452,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2518,6 +2520,26 @@
 The default for
 this flag is
 .Ic enable .
+.It Cm peer_clear_digest_early
+By default, if
+.Xr ntpd 1ntpdmdoc
+is using autokey and it
+receives a crypto-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+.Cm peerstats
+file for evidence of any of these attacks.
+The
+default for this flag is
+.Ic enable .
 .It Cm stats
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/ntp.conf.html
===================================================================
--- contrib/ntp/ntpd/ntp.conf.html	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.html	(版本 301301)
@@ -33,7 +33,7 @@
 <p>This document describes the configuration file for the NTP Project's
 <code>ntpd</code> program.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntp.conf</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntp.conf</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -167,8 +167,14 @@
   <p>If the Basic Socket Interface Extensions for IPv6 (RFC-2553)
 is detected, support for the IPv6 address family is generated
 in addition to the default support of the IPv4 address family. 
-In a few cases, including the reslist billboard generated
-by ntpdc, IPv6 addresses are automatically generated. 
+In a few cases, including the
+<code>reslist</code>
+billboard generated
+by
+<code>ntpq(1ntpqmdoc)</code>
+or
+<code>ntpdc(1ntpdcmdoc)</code>,
+IPv6 addresses are automatically generated. 
 IPv6 addresses can be identified by the presence of colons
 :
 in the address field. 
@@ -187,7 +193,7 @@
 See IPv6 references for the
 equivalent classes for that address family.
      <dl>
-<dt><code>pool</code> <kbd>address</kbd> <code>[burst]</code> <code>[iburst]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code><br><dt><code>server</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[burst]</code> <code>[iburst]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code><br><dt><code>peer</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code><br><dt><code>broadcast</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[ttl </code><kbd>ttl</kbd><code>]</code><br><dt><code>manycastclient</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code> <code>[ttl </code><kbd>ttl</kbd><code>]</code><dd></dl>
+<dt><code>pool</code> <kbd>address</kbd> <code>[burst]</code> <code>[iburst]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code><br><dt><code>server</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[burst]</code> <code>[iburst]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code> <code>[true]</code><br><dt><code>peer</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code> <code>[true]</code> <code>[xleave]</code><br><dt><code>broadcast</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[ttl </code><kbd>ttl</kbd><code>]</code> <code>[xleave]</code><br><dt><code>manycastclient</code> <kbd>address</kbd> <code>[key </code><kbd>key</kbd> <kbd>|</kbd><code> autokey]</code> <code>[version </code><kbd>version</kbd><code>]</code> <code>[prefer]</code> <code>[minpoll </code><kbd>minpoll</kbd><code>]</code> <code>[maxpoll </code><kbd>maxpoll</kbd><code>]</code> <code>[ttl </code><kbd>ttl</kbd><code>]</code><dd></dl>
 
   <p>These five commands specify the time server name or address to
 be used and the mode in which to operate. 
@@ -341,6 +347,7 @@
 The server is discarded by the selection algroithm. 
 <br><dt><code>preempt</code><dd>Says the association can be preempted. 
 <br><dt><code>true</code><dd>Marks the server as a truechimer. 
+Use this option only for testing. 
 <br><dt><code>prefer</code><dd>Marks the server as preferred. 
 All other things being equal,
 this host will be chosen for synchronization among a set of
@@ -352,6 +359,10 @@
 provided in
 <span class="file">/usr/share/doc/ntp</span>)
 for further information. 
+<br><dt><code>true</code><dd>Forces the association to always survive the selection and clustering algorithms. 
+This option should almost certainly
+<em>only</em>
+be used while testing an association. 
 <br><dt><code>ttl</code> <kbd>ttl</kbd><dd>This option is used only with broadcast server and manycast
 client modes. 
 It specifies the time-to-live
@@ -523,7 +534,7 @@
 commands and also by remote
 configuration commands sent by a
 <code>ntpdc(1ntpdcmdoc)</code>
-program running in
+program running on
 another machine. 
 If this flag is enabled, which is the default
 case, new broadcast client and symmetric passive associations and
@@ -709,7 +720,7 @@
 all of which are bound together by the protocol specifically
 to deflect masquerade attacks. 
 For this reason Autokey
-includes the source and destinatino IP addresses in message digest
+includes the source and destination IP addresses in message digest
 computations and so the same addresses must be available
 at both the server and client. 
 For this reason operation
@@ -895,8 +906,8 @@
 the link
 <span class="file">ntpkey_key_</span><kbd>hostname</kbd>
 in the keys directory. 
-<br><dt><code>iffpar</code> <kbd>file</kbd><dd>Specifies the location of the optional IFF parameters file.This
-overrides the link
+<br><dt><code>iffpar</code> <kbd>file</kbd><dd>Specifies the location of the optional IFF parameters file. 
+This overrides the link
 <span class="file">ntpkey_iff_</span><kbd>hostname</kbd>
 in the keys directory. 
 <br><dt><code>leap</code> <kbd>file</kbd><dd>Specifies the location of the optional leapsecond file. 
@@ -904,8 +915,7 @@
 <span class="file">ntpkey_leap</span>
 in the keys directory. 
 <br><dt><code>mvpar</code> <kbd>file</kbd><dd>Specifies the location of the optional MV parameters file. 
-This
-overrides the link
+This overrides the link
 <span class="file">ntpkey_mv_</span><kbd>hostname</kbd>
 in the keys directory. 
 <br><dt><code>pw</code> <kbd>password</kbd><dd>Specifies the password to decrypt files containing private keys and
@@ -1033,7 +1043,7 @@
 Statistic files are managed using file generation sets
 and scripts in the
 <span class="file">./scripts</span>
-directory of this distribution. 
+directory of the source code distribution. 
 Using
 these facilities and
 <span class="sc">unix</span>
@@ -1331,7 +1341,9 @@
 the number of links of this file is one, it is renamed appending a
 dot, the letter
 <code>C</code>,
-and the pid of the ntpd server process. 
+and the pid of the
+<code>ntpd(1ntpdmdoc)</code>
+server process. 
 When the
 number of links is greater than one, the file is unlinked. 
 This
@@ -1392,9 +1404,9 @@
 Some violations cause denied service
 only for the offending packet, others cause denied service
 for a timed period and others cause the denied service for
-an indefinate period. 
+an indefinite period. 
 When a client or network is denied access
-for an indefinate period, the only way at present to remove
+for an indefinite period, the only way at present to remove
 the restrictions is by restarting the server.
 
 <h5 class="subsubsection">The Kiss-of-Death Packet</h5>
@@ -1560,7 +1572,9 @@
 queries. 
 <br><dt><code>notrap</code><dd>Decline to provide mode 6 control message trap service to matching
 hosts. 
-The trap service is a subsystem of the ntpdq control message
+The trap service is a subsystem of the
+<code>ntpq(1ntpqmdoc)</code>
+control message
 protocol which is intended for use by remote event logging programs. 
 <br><dt><code>notrust</code><dd>Deny service unless the packet is cryptographically authenticated. 
 <br><dt><code>ntpport</code><dd>This is actually a match algorithm modifier, rather than a
@@ -2309,8 +2323,9 @@
 drift file is located in, and that file system links, symbolic or
 otherwise, should be avoided. 
 <br><dt><code>dscp</code> <kbd>value</kbd><dd>This option specifies the Differentiated Services Control Point (DSCP) value,
-a 6-bit code.  The default value is 46, signifying Expedited Forwarding. 
-<br><dt><code>enable</code> <code>[auth | bclient | calibrate | kernel | mode7 | monitor | ntp | stats | unpeer_crypto_early | unpeer_crypto_nak_early | unpeer_digest_early]</code><br><dt><code>disable</code> <code>[auth | bclient | calibrate | kernel | mode7 | monitor | ntp | stats | unpeer_crypto_early | unpeer_crypto_nak_early | unpeer_digest_early]</code><dd>Provides a way to enable or disable various server options. 
+a 6-bit code. 
+The default value is 46, signifying Expedited Forwarding. 
+<br><dt><code>enable</code> <code>[auth | bclient | calibrate | kernel | mode7 | monitor | ntp | stats | peer_clear_digest_early | unpeer_crypto_early | unpeer_crypto_nak_early | unpeer_digest_early]</code><br><dt><code>disable</code> <code>[auth | bclient | calibrate | kernel | mode7 | monitor | ntp | stats | peer_clear_digest_early | unpeer_crypto_early | unpeer_crypto_nak_early | unpeer_digest_early]</code><dd>Provides a way to enable or disable various server options. 
 Flags not mentioned are unaffected. 
 Note that all of these flags
 can be controlled remotely using the
@@ -2367,6 +2382,25 @@
 The default for
 this flag is
 <code>enable</code>. 
+<br><dt><code>peer_clear_digest_early</code><dd>By default, if
+<code>ntpd(1ntpdmdoc)</code>
+is using autokey and it
+receives a crypto-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared. 
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto-NAK packet
+can be used in a DoS attack. 
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option. 
+You can check your
+<code>peerstats</code>
+file for evidence of any of these attacks. 
+The
+default for this flag is
+<code>enable</code>. 
 <br><dt><code>stats</code><dd>Enables the statistics facility. 
 See the
 <a href="#Monitoring-Options">Monitoring Options</a>
@@ -2502,7 +2536,8 @@
 message class may also be followed by the
 <code>all</code>
 keyword to enable/disable all
-messages of the respective message class.Thus, a minimal log configuration
+messages of the respective message class. 
+Thus, a minimal log configuration
 could look like this:
 <pre class="verbatim">     
      logconfig =syncstatus +sysevents
@@ -2641,7 +2676,8 @@
 <code>mlockall()</code>
 function. 
 Defaults to 50 4k pages (200 4k pages in OpenBSD). 
-<br><dt><code>filenum</code> <kbd>Nfiledescriptors</kbd><dd>Specifies the maximum number of file descriptors ntpd may have open at once. Defaults to the system default. 
+<br><dt><code>filenum</code> <kbd>Nfiledescriptors</kbd><dd>Specifies the maximum number of file descriptors ntpd may have open at once. 
+Defaults to the system default. 
 </dl>
      <br><dt><code>trap</code> <kbd>host_address</kbd> <code>[port </code><kbd>port_number</kbd><code>]</code> <code>[interface </code><kbd>interface_address</kbd><code>]</code><dd>This command configures a trap receiver at the given host
 address and port number for sending messages with the specified
Index: contrib/ntp/ntpd/ntp.conf.man.in
===================================================================
--- contrib/ntp/ntpd/ntp.conf.man.in	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp.conf 5 "26 Apr 2016" "4.2.8p7" "File Formats"
+.TH ntp.conf 5 "02 Jun 2016" "4.2.8p8" "File Formats"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-ana4jE/ag-QnaWiE)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-OzaOIT/ag-3zaGHT)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:28:14 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:35:50 AM by AutoGen 5.18.5
 .\" From the definitions ntp.conf.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
@@ -2618,9 +2618,9 @@
 a 6-bit code.
 The default value is 46, signifying Expedited Forwarding.
 .TP 7
-.NOP \f\*[B-Font]enable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
+.NOP \f\*[B-Font]enable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]peer_clear_digest_early\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
 .TP 7
-.NOP \f\*[B-Font]disable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
+.NOP \f\*[B-Font]disable\f[] [\f\*[B-Font]auth\f[] | \f\*[B-Font]bclient\f[] | \f\*[B-Font]calibrate\f[] | \f\*[B-Font]kernel\f[] | \f\*[B-Font]mode7\f[] | \f\*[B-Font]monitor\f[] | \f\*[B-Font]ntp\f[] | \f\*[B-Font]stats\f[] | \f\*[B-Font]peer_clear_digest_early\f[] | \f\*[B-Font]unpeer_crypto_early\f[] | \f\*[B-Font]unpeer_crypto_nak_early\f[] | \f\*[B-Font]unpeer_digest_early\f[]]
 Provides a way to enable or disable various server options.
 Flags not mentioned are unaffected.
 Note that all of these flags
@@ -2693,6 +2693,27 @@
 this flag is
 \f\*[B-Font]enable\f[].
 .TP 7
+.NOP \f\*[B-Font]peer_clear_digest_early\f[]
+By default, if
+\fCntpd\f[]\fR(@NTPD_MS@)\f[]
+is using autokey and it
+receives a crypto-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+\f\*[B-Font]peerstats\f[]
+file for evidence of any of these attacks.
+The
+default for this flag is
+\f\*[B-Font]enable\f[].
+.TP 7
 .NOP \f\*[B-Font]stats\f[]
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/ntp.conf.mdoc.in
===================================================================
--- contrib/ntp/ntpd/ntp.conf.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpd/ntp.conf.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_CONF 5 File Formats
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:36 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:16 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.conf.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
@@ -2440,6 +2440,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2449,6 +2450,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2516,6 +2518,26 @@
 The default for
 this flag is
 .Ic enable .
+.It Cm peer_clear_digest_early
+By default, if
+.Xr ntpd @NTPD_MS@
+is using autokey and it
+receives a crypto\-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto\-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+.Cm peerstats
+file for evidence of any of these attacks.
+The
+default for this flag is
+.Ic enable .
 .It Cm stats
 Enables the statistics facility.
 See the
Index: contrib/ntp/ntpd/ntp.keys.5man
===================================================================
--- contrib/ntp/ntpd/ntp.keys.5man	(版本 301052)
+++ contrib/ntp/ntpd/ntp.keys.5man	(版本 301301)
@@ -1,8 +1,8 @@
-.TH ntp.keys 5man "26 Apr 2016" "4.2.8p7" "File Formats"
+.TH ntp.keys 5man "02 Jun 2016" "4.2.8p8" "File Formats"
 .\"
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.man)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:19 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:35:57 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.keys.def
 .\"  and the template file   agman-file.tpl
 .Sh NAME
Index: contrib/ntp/ntpd/ntp.keys.5mdoc
===================================================================
--- contrib/ntp/ntpd/ntp.keys.5mdoc	(版本 301052)
+++ contrib/ntp/ntpd/ntp.keys.5mdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYS 5mdoc File Formats
 .Os SunOS 5.10
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:39 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:20 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.keys.def
 .\"  and the template file   agmdoc-file.tpl
 .Sh NAME
Index: contrib/ntp/ntpd/ntp.keys.html
===================================================================
--- contrib/ntp/ntpd/ntp.keys.html	(版本 301052)
+++ contrib/ntp/ntpd/ntp.keys.html	(版本 301301)
@@ -33,7 +33,7 @@
 <p>This document describes the symmetric key file for the NTP Project's
 <code>ntpd</code> program.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntp.keys</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntp.keys</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
Index: contrib/ntp/ntpd/ntp.keys.man.in
===================================================================
--- contrib/ntp/ntpd/ntp.keys.man.in	(版本 301052)
+++ contrib/ntp/ntpd/ntp.keys.man.in	(版本 301301)
@@ -1,8 +1,8 @@
-.TH ntp.keys 5 "26 Apr 2016" "4.2.8p7" "File Formats"
+.TH ntp.keys 5 "02 Jun 2016" "4.2.8p8" "File Formats"
 .\"
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.man)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:19 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:35:57 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.keys.def
 .\"  and the template file   agman-file.tpl
 .Sh NAME
Index: contrib/ntp/ntpd/ntp.keys.mdoc.in
===================================================================
--- contrib/ntp/ntpd/ntp.keys.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpd/ntp.keys.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYS 5 File Formats
 .Os SunOS 5.10
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:39 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:20 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.keys.def
 .\"  and the template file   agmdoc-file.tpl
 .Sh NAME
Index: contrib/ntp/ntpd/ntp_io.c
===================================================================
--- contrib/ntp/ntpd/ntp_io.c	(版本 301052)
+++ contrib/ntp/ntpd/ntp_io.c	(版本 301301)
@@ -3285,15 +3285,6 @@
 	)
 {
 	struct cmsghdr *	cmsghdr;
-#ifdef HAVE_BINTIME
-	struct bintime *	btp;
-#endif
-#ifdef HAVE_TIMESTAMPNS
-	struct timespec *	tsp;
-#endif
-#ifdef HAVE_TIMESTAMP
-	struct timeval *	tvp;
-#endif
 	unsigned long		ticks;
 	double			fuzz;
 	l_fp			lfpfuzz;
@@ -3320,49 +3311,58 @@
 			{
 #ifdef HAVE_BINTIME
 			case SCM_BINTIME:
-				btp = (struct bintime *)CMSG_DATA(cmsghdr);
-				/*
-				 * bintime documentation is at http://phk.freebsd.dk/pubs/timecounter.pdf
-				 */
-				nts.l_i = btp->sec + JAN_1970;
-				nts.l_uf = (u_int32)(btp->frac >> 32);
-				if (sys_tick > measured_tick &&
-				    sys_tick > 1e-9) {
-					ticks = (unsigned long)(nts.l_uf / (unsigned long)(sys_tick * FRAC));
-					nts.l_uf = (unsigned long)(ticks * (unsigned long)(sys_tick * FRAC));
+				{
+					struct bintime	pbt;
+					memcpy(&pbt, CMSG_DATA(cmsghdr), sizeof(pbt));
+					/*
+					 * bintime documentation is at http://phk.freebsd.dk/pubs/timecounter.pdf
+					 */
+					nts.l_i = pbt.sec + JAN_1970;
+					nts.l_uf = (u_int32)(pbt.frac >> 32);
+					if (sys_tick > measured_tick &&
+					    sys_tick > 1e-9) {
+						ticks = (unsigned long)(nts.l_uf / (unsigned long)(sys_tick * FRAC));
+						nts.l_uf = (unsigned long)(ticks * (unsigned long)(sys_tick * FRAC));
+					}
+					DPRINTF(4, ("fetch_timestamp: system bintime network time stamp: %ld.%09lu\n",
+						    pbt.sec, (unsigned long)((nts.l_uf / FRAC) * 1e9)));
 				}
-                                DPRINTF(4, ("fetch_timestamp: system bintime network time stamp: %ld.%09lu\n",
-                                            btp->sec, (unsigned long)((nts.l_uf / FRAC) * 1e9)));
 				break;
 #endif  /* HAVE_BINTIME */
 #ifdef HAVE_TIMESTAMPNS
 			case SCM_TIMESTAMPNS:
-				tsp = UA_PTR(struct timespec, CMSG_DATA(cmsghdr));
-				if (sys_tick > measured_tick &&
-				    sys_tick > 1e-9) {
-					ticks = (unsigned long)((tsp->tv_nsec * 1e-9) /
-						       sys_tick);
-					tsp->tv_nsec = (long)(ticks * 1e9 *
-							      sys_tick);
+				{
+					struct timespec	pts;
+					memcpy(&pts, CMSG_DATA(cmsghdr), sizeof(pts));
+					if (sys_tick > measured_tick &&
+					    sys_tick > 1e-9) {
+						ticks = (unsigned long)((pts.tv_nsec * 1e-9) /
+									sys_tick);
+						pts.tv_nsec = (long)(ticks * 1e9 *
+								     sys_tick);
+					}
+					DPRINTF(4, ("fetch_timestamp: system nsec network time stamp: %ld.%09ld\n",
+						    pts.tv_sec, pts.tv_nsec));
+					nts = tspec_stamp_to_lfp(pts);
 				}
-				DPRINTF(4, ("fetch_timestamp: system nsec network time stamp: %ld.%09ld\n",
-					    tsp->tv_sec, tsp->tv_nsec));
-				nts = tspec_stamp_to_lfp(*tsp);
 				break;
 #endif	/* HAVE_TIMESTAMPNS */
 #ifdef HAVE_TIMESTAMP
 			case SCM_TIMESTAMP:
-				tvp = (struct timeval *)CMSG_DATA(cmsghdr);
-				if (sys_tick > measured_tick &&
-				    sys_tick > 1e-6) {
-					ticks = (unsigned long)((tvp->tv_usec * 1e-6) /
-						       sys_tick);
-					tvp->tv_usec = (long)(ticks * 1e6 *
-							      sys_tick);
+				{
+					struct timeval	ptv;
+					memcpy(&ptv, CMSG_DATA(cmsghdr), sizeof(ptv));
+					if (sys_tick > measured_tick &&
+					    sys_tick > 1e-6) {
+						ticks = (unsigned long)((ptv.tv_usec * 1e-6) /
+									sys_tick);
+						ptv.tv_usec = (long)(ticks * 1e6 *
+								    sys_tick);
+					}
+					DPRINTF(4, ("fetch_timestamp: system usec network time stamp: %jd.%06ld\n",
+						    (intmax_t)ptv.tv_sec, (long)ptv.tv_usec));
+					nts = tval_stamp_to_lfp(ptv);
 				}
-				DPRINTF(4, ("fetch_timestamp: system usec network time stamp: %jd.%06ld\n",
-					    (intmax_t)tvp->tv_sec, (long)tvp->tv_usec));
-				nts = tval_stamp_to_lfp(*tvp);
 				break;
 #endif  /* HAVE_TIMESTAMP */
 			}
Index: contrib/ntp/ntpd/ntp_parser.c
===================================================================
--- contrib/ntp/ntpd/ntp_parser.c	(版本 301052)
+++ contrib/ntp/ntpd/ntp_parser.c	(版本 301301)
@@ -1,19 +1,19 @@
-/* A Bison parser, made by GNU Bison 2.7.12-4996.  */
+/* A Bison parser, made by GNU Bison 3.0.4.  */
 
 /* Bison implementation for Yacc-like parsers in C
-   
-      Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
-   
+
+   Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
+
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
@@ -26,7 +26,7 @@
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-   
+
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
@@ -44,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "2.7.12-4996"
+#define YYBISON_VERSION "3.0.4"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
@@ -62,8 +62,7 @@
 
 
 /* Copy the first part of user declarations.  */
-/* Line 371 of yacc.c  */
-#line 11 "../../ntpd/ntp_parser.y"
+#line 11 "../../ntpd/ntp_parser.y" /* yacc.c:339  */
 
   #ifdef HAVE_CONFIG_H
   # include <config.h>
@@ -97,14 +96,13 @@
   #  define ONLY_SIM(a)	NULL
   #endif
 
-/* Line 371 of yacc.c  */
-#line 102 "ntp_parser.c"
+#line 100 "../../ntpd/ntp_parser.c" /* yacc.c:339  */
 
-# ifndef YY_NULL
+# ifndef YY_NULLPTR
 #  if defined __cplusplus && 201103L <= __cplusplus
-#   define YY_NULL nullptr
+#   define YY_NULLPTR nullptr
 #  else
-#   define YY_NULL 0
+#   define YY_NULLPTR 0
 #  endif
 # endif
 
@@ -118,9 +116,9 @@
 
 /* In a future release of Bison, this section will be replaced
    by #include "y.tab.h".  */
-#ifndef YY_YY_NTP_PARSER_H_INCLUDED
-# define YY_YY_NTP_PARSER_H_INCLUDED
-/* Enabling traces.  */
+#ifndef YY_YY_Y_TAB_H_INCLUDED
+# define YY_YY_Y_TAB_H_INCLUDED
+/* Debug traces.  */
 #ifndef YYDEBUG
 # define YYDEBUG 1
 #endif
@@ -128,207 +126,207 @@
 extern int yydebug;
 #endif
 
-/* Tokens.  */
+/* Token type.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     T_Abbrev = 258,
-     T_Age = 259,
-     T_All = 260,
-     T_Allan = 261,
-     T_Allpeers = 262,
-     T_Auth = 263,
-     T_Autokey = 264,
-     T_Automax = 265,
-     T_Average = 266,
-     T_Bclient = 267,
-     T_Beacon = 268,
-     T_Broadcast = 269,
-     T_Broadcastclient = 270,
-     T_Broadcastdelay = 271,
-     T_Burst = 272,
-     T_Calibrate = 273,
-     T_Ceiling = 274,
-     T_Clockstats = 275,
-     T_Cohort = 276,
-     T_ControlKey = 277,
-     T_Crypto = 278,
-     T_Cryptostats = 279,
-     T_Ctl = 280,
-     T_Day = 281,
-     T_Default = 282,
-     T_Digest = 283,
-     T_Disable = 284,
-     T_Discard = 285,
-     T_Dispersion = 286,
-     T_Double = 287,
-     T_Driftfile = 288,
-     T_Drop = 289,
-     T_Dscp = 290,
-     T_Ellipsis = 291,
-     T_Enable = 292,
-     T_End = 293,
-     T_False = 294,
-     T_File = 295,
-     T_Filegen = 296,
-     T_Filenum = 297,
-     T_Flag1 = 298,
-     T_Flag2 = 299,
-     T_Flag3 = 300,
-     T_Flag4 = 301,
-     T_Flake = 302,
-     T_Floor = 303,
-     T_Freq = 304,
-     T_Fudge = 305,
-     T_Host = 306,
-     T_Huffpuff = 307,
-     T_Iburst = 308,
-     T_Ident = 309,
-     T_Ignore = 310,
-     T_Incalloc = 311,
-     T_Incmem = 312,
-     T_Initalloc = 313,
-     T_Initmem = 314,
-     T_Includefile = 315,
-     T_Integer = 316,
-     T_Interface = 317,
-     T_Intrange = 318,
-     T_Io = 319,
-     T_Ipv4 = 320,
-     T_Ipv4_flag = 321,
-     T_Ipv6 = 322,
-     T_Ipv6_flag = 323,
-     T_Kernel = 324,
-     T_Key = 325,
-     T_Keys = 326,
-     T_Keysdir = 327,
-     T_Kod = 328,
-     T_Mssntp = 329,
-     T_Leapfile = 330,
-     T_Leapsmearinterval = 331,
-     T_Limited = 332,
-     T_Link = 333,
-     T_Listen = 334,
-     T_Logconfig = 335,
-     T_Logfile = 336,
-     T_Loopstats = 337,
-     T_Lowpriotrap = 338,
-     T_Manycastclient = 339,
-     T_Manycastserver = 340,
-     T_Mask = 341,
-     T_Maxage = 342,
-     T_Maxclock = 343,
-     T_Maxdepth = 344,
-     T_Maxdist = 345,
-     T_Maxmem = 346,
-     T_Maxpoll = 347,
-     T_Mdnstries = 348,
-     T_Mem = 349,
-     T_Memlock = 350,
-     T_Minclock = 351,
-     T_Mindepth = 352,
-     T_Mindist = 353,
-     T_Minimum = 354,
-     T_Minpoll = 355,
-     T_Minsane = 356,
-     T_Mode = 357,
-     T_Mode7 = 358,
-     T_Monitor = 359,
-     T_Month = 360,
-     T_Mru = 361,
-     T_Multicastclient = 362,
-     T_Nic = 363,
-     T_Nolink = 364,
-     T_Nomodify = 365,
-     T_Nomrulist = 366,
-     T_None = 367,
-     T_Nonvolatile = 368,
-     T_Nopeer = 369,
-     T_Noquery = 370,
-     T_Noselect = 371,
-     T_Noserve = 372,
-     T_Notrap = 373,
-     T_Notrust = 374,
-     T_Ntp = 375,
-     T_Ntpport = 376,
-     T_NtpSignDsocket = 377,
-     T_Orphan = 378,
-     T_Orphanwait = 379,
-     T_Panic = 380,
-     T_Peer = 381,
-     T_Peerstats = 382,
-     T_Phone = 383,
-     T_Pid = 384,
-     T_Pidfile = 385,
-     T_Pool = 386,
-     T_Port = 387,
-     T_Preempt = 388,
-     T_Prefer = 389,
-     T_Protostats = 390,
-     T_Pw = 391,
-     T_Randfile = 392,
-     T_Rawstats = 393,
-     T_Refid = 394,
-     T_Requestkey = 395,
-     T_Reset = 396,
-     T_Restrict = 397,
-     T_Revoke = 398,
-     T_Rlimit = 399,
-     T_Saveconfigdir = 400,
-     T_Server = 401,
-     T_Setvar = 402,
-     T_Source = 403,
-     T_Stacksize = 404,
-     T_Statistics = 405,
-     T_Stats = 406,
-     T_Statsdir = 407,
-     T_Step = 408,
-     T_Stepback = 409,
-     T_Stepfwd = 410,
-     T_Stepout = 411,
-     T_Stratum = 412,
-     T_String = 413,
-     T_Sys = 414,
-     T_Sysstats = 415,
-     T_Tick = 416,
-     T_Time1 = 417,
-     T_Time2 = 418,
-     T_Timer = 419,
-     T_Timingstats = 420,
-     T_Tinker = 421,
-     T_Tos = 422,
-     T_Trap = 423,
-     T_True = 424,
-     T_Trustedkey = 425,
-     T_Ttl = 426,
-     T_Type = 427,
-     T_U_int = 428,
-     T_UEcrypto = 429,
-     T_UEcryptonak = 430,
-     T_UEdigest = 431,
-     T_Unconfig = 432,
-     T_Unpeer = 433,
-     T_Version = 434,
-     T_WanderThreshold = 435,
-     T_Week = 436,
-     T_Wildcard = 437,
-     T_Xleave = 438,
-     T_Year = 439,
-     T_Flag = 440,
-     T_EOC = 441,
-     T_Simulate = 442,
-     T_Beep_Delay = 443,
-     T_Sim_Duration = 444,
-     T_Server_Offset = 445,
-     T_Duration = 446,
-     T_Freq_Offset = 447,
-     T_Wander = 448,
-     T_Jitter = 449,
-     T_Prop_Delay = 450,
-     T_Proc_Delay = 451
-   };
+  enum yytokentype
+  {
+    T_Abbrev = 258,
+    T_Age = 259,
+    T_All = 260,
+    T_Allan = 261,
+    T_Allpeers = 262,
+    T_Auth = 263,
+    T_Autokey = 264,
+    T_Automax = 265,
+    T_Average = 266,
+    T_Bclient = 267,
+    T_Beacon = 268,
+    T_Broadcast = 269,
+    T_Broadcastclient = 270,
+    T_Broadcastdelay = 271,
+    T_Burst = 272,
+    T_Calibrate = 273,
+    T_Ceiling = 274,
+    T_Clockstats = 275,
+    T_Cohort = 276,
+    T_ControlKey = 277,
+    T_Crypto = 278,
+    T_Cryptostats = 279,
+    T_Ctl = 280,
+    T_Day = 281,
+    T_Default = 282,
+    T_Digest = 283,
+    T_Disable = 284,
+    T_Discard = 285,
+    T_Dispersion = 286,
+    T_Double = 287,
+    T_Driftfile = 288,
+    T_Drop = 289,
+    T_Dscp = 290,
+    T_Ellipsis = 291,
+    T_Enable = 292,
+    T_End = 293,
+    T_False = 294,
+    T_File = 295,
+    T_Filegen = 296,
+    T_Filenum = 297,
+    T_Flag1 = 298,
+    T_Flag2 = 299,
+    T_Flag3 = 300,
+    T_Flag4 = 301,
+    T_Flake = 302,
+    T_Floor = 303,
+    T_Freq = 304,
+    T_Fudge = 305,
+    T_Host = 306,
+    T_Huffpuff = 307,
+    T_Iburst = 308,
+    T_Ident = 309,
+    T_Ignore = 310,
+    T_Incalloc = 311,
+    T_Incmem = 312,
+    T_Initalloc = 313,
+    T_Initmem = 314,
+    T_Includefile = 315,
+    T_Integer = 316,
+    T_Interface = 317,
+    T_Intrange = 318,
+    T_Io = 319,
+    T_Ipv4 = 320,
+    T_Ipv4_flag = 321,
+    T_Ipv6 = 322,
+    T_Ipv6_flag = 323,
+    T_Kernel = 324,
+    T_Key = 325,
+    T_Keys = 326,
+    T_Keysdir = 327,
+    T_Kod = 328,
+    T_Mssntp = 329,
+    T_Leapfile = 330,
+    T_Leapsmearinterval = 331,
+    T_Limited = 332,
+    T_Link = 333,
+    T_Listen = 334,
+    T_Logconfig = 335,
+    T_Logfile = 336,
+    T_Loopstats = 337,
+    T_Lowpriotrap = 338,
+    T_Manycastclient = 339,
+    T_Manycastserver = 340,
+    T_Mask = 341,
+    T_Maxage = 342,
+    T_Maxclock = 343,
+    T_Maxdepth = 344,
+    T_Maxdist = 345,
+    T_Maxmem = 346,
+    T_Maxpoll = 347,
+    T_Mdnstries = 348,
+    T_Mem = 349,
+    T_Memlock = 350,
+    T_Minclock = 351,
+    T_Mindepth = 352,
+    T_Mindist = 353,
+    T_Minimum = 354,
+    T_Minpoll = 355,
+    T_Minsane = 356,
+    T_Mode = 357,
+    T_Mode7 = 358,
+    T_Monitor = 359,
+    T_Month = 360,
+    T_Mru = 361,
+    T_Multicastclient = 362,
+    T_Nic = 363,
+    T_Nolink = 364,
+    T_Nomodify = 365,
+    T_Nomrulist = 366,
+    T_None = 367,
+    T_Nonvolatile = 368,
+    T_Nopeer = 369,
+    T_Noquery = 370,
+    T_Noselect = 371,
+    T_Noserve = 372,
+    T_Notrap = 373,
+    T_Notrust = 374,
+    T_Ntp = 375,
+    T_Ntpport = 376,
+    T_NtpSignDsocket = 377,
+    T_Orphan = 378,
+    T_Orphanwait = 379,
+    T_PCEdigest = 380,
+    T_Panic = 381,
+    T_Peer = 382,
+    T_Peerstats = 383,
+    T_Phone = 384,
+    T_Pid = 385,
+    T_Pidfile = 386,
+    T_Pool = 387,
+    T_Port = 388,
+    T_Preempt = 389,
+    T_Prefer = 390,
+    T_Protostats = 391,
+    T_Pw = 392,
+    T_Randfile = 393,
+    T_Rawstats = 394,
+    T_Refid = 395,
+    T_Requestkey = 396,
+    T_Reset = 397,
+    T_Restrict = 398,
+    T_Revoke = 399,
+    T_Rlimit = 400,
+    T_Saveconfigdir = 401,
+    T_Server = 402,
+    T_Setvar = 403,
+    T_Source = 404,
+    T_Stacksize = 405,
+    T_Statistics = 406,
+    T_Stats = 407,
+    T_Statsdir = 408,
+    T_Step = 409,
+    T_Stepback = 410,
+    T_Stepfwd = 411,
+    T_Stepout = 412,
+    T_Stratum = 413,
+    T_String = 414,
+    T_Sys = 415,
+    T_Sysstats = 416,
+    T_Tick = 417,
+    T_Time1 = 418,
+    T_Time2 = 419,
+    T_Timer = 420,
+    T_Timingstats = 421,
+    T_Tinker = 422,
+    T_Tos = 423,
+    T_Trap = 424,
+    T_True = 425,
+    T_Trustedkey = 426,
+    T_Ttl = 427,
+    T_Type = 428,
+    T_U_int = 429,
+    T_UEcrypto = 430,
+    T_UEcryptonak = 431,
+    T_UEdigest = 432,
+    T_Unconfig = 433,
+    T_Unpeer = 434,
+    T_Version = 435,
+    T_WanderThreshold = 436,
+    T_Week = 437,
+    T_Wildcard = 438,
+    T_Xleave = 439,
+    T_Year = 440,
+    T_Flag = 441,
+    T_EOC = 442,
+    T_Simulate = 443,
+    T_Beep_Delay = 444,
+    T_Sim_Duration = 445,
+    T_Server_Offset = 446,
+    T_Duration = 447,
+    T_Freq_Offset = 448,
+    T_Wander = 449,
+    T_Jitter = 450,
+    T_Prop_Delay = 451,
+    T_Proc_Delay = 452
+  };
 #endif
 /* Tokens.  */
 #define T_Abbrev 258
@@ -453,86 +451,86 @@
 #define T_NtpSignDsocket 377
 #define T_Orphan 378
 #define T_Orphanwait 379
-#define T_Panic 380
-#define T_Peer 381
-#define T_Peerstats 382
-#define T_Phone 383
-#define T_Pid 384
-#define T_Pidfile 385
-#define T_Pool 386
-#define T_Port 387
-#define T_Preempt 388
-#define T_Prefer 389
-#define T_Protostats 390
-#define T_Pw 391
-#define T_Randfile 392
-#define T_Rawstats 393
-#define T_Refid 394
-#define T_Requestkey 395
-#define T_Reset 396
-#define T_Restrict 397
-#define T_Revoke 398
-#define T_Rlimit 399
-#define T_Saveconfigdir 400
-#define T_Server 401
-#define T_Setvar 402
-#define T_Source 403
-#define T_Stacksize 404
-#define T_Statistics 405
-#define T_Stats 406
-#define T_Statsdir 407
-#define T_Step 408
-#define T_Stepback 409
-#define T_Stepfwd 410
-#define T_Stepout 411
-#define T_Stratum 412
-#define T_String 413
-#define T_Sys 414
-#define T_Sysstats 415
-#define T_Tick 416
-#define T_Time1 417
-#define T_Time2 418
-#define T_Timer 419
-#define T_Timingstats 420
-#define T_Tinker 421
-#define T_Tos 422
-#define T_Trap 423
-#define T_True 424
-#define T_Trustedkey 425
-#define T_Ttl 426
-#define T_Type 427
-#define T_U_int 428
-#define T_UEcrypto 429
-#define T_UEcryptonak 430
-#define T_UEdigest 431
-#define T_Unconfig 432
-#define T_Unpeer 433
-#define T_Version 434
-#define T_WanderThreshold 435
-#define T_Week 436
-#define T_Wildcard 437
-#define T_Xleave 438
-#define T_Year 439
-#define T_Flag 440
-#define T_EOC 441
-#define T_Simulate 442
-#define T_Beep_Delay 443
-#define T_Sim_Duration 444
-#define T_Server_Offset 445
-#define T_Duration 446
-#define T_Freq_Offset 447
-#define T_Wander 448
-#define T_Jitter 449
-#define T_Prop_Delay 450
-#define T_Proc_Delay 451
+#define T_PCEdigest 380
+#define T_Panic 381
+#define T_Peer 382
+#define T_Peerstats 383
+#define T_Phone 384
+#define T_Pid 385
+#define T_Pidfile 386
+#define T_Pool 387
+#define T_Port 388
+#define T_Preempt 389
+#define T_Prefer 390
+#define T_Protostats 391
+#define T_Pw 392
+#define T_Randfile 393
+#define T_Rawstats 394
+#define T_Refid 395
+#define T_Requestkey 396
+#define T_Reset 397
+#define T_Restrict 398
+#define T_Revoke 399
+#define T_Rlimit 400
+#define T_Saveconfigdir 401
+#define T_Server 402
+#define T_Setvar 403
+#define T_Source 404
+#define T_Stacksize 405
+#define T_Statistics 406
+#define T_Stats 407
+#define T_Statsdir 408
+#define T_Step 409
+#define T_Stepback 410
+#define T_Stepfwd 411
+#define T_Stepout 412
+#define T_Stratum 413
+#define T_String 414
+#define T_Sys 415
+#define T_Sysstats 416
+#define T_Tick 417
+#define T_Time1 418
+#define T_Time2 419
+#define T_Timer 420
+#define T_Timingstats 421
+#define T_Tinker 422
+#define T_Tos 423
+#define T_Trap 424
+#define T_True 425
+#define T_Trustedkey 426
+#define T_Ttl 427
+#define T_Type 428
+#define T_U_int 429
+#define T_UEcrypto 430
+#define T_UEcryptonak 431
+#define T_UEdigest 432
+#define T_Unconfig 433
+#define T_Unpeer 434
+#define T_Version 435
+#define T_WanderThreshold 436
+#define T_Week 437
+#define T_Wildcard 438
+#define T_Xleave 439
+#define T_Year 440
+#define T_Flag 441
+#define T_EOC 442
+#define T_Simulate 443
+#define T_Beep_Delay 444
+#define T_Sim_Duration 445
+#define T_Server_Offset 446
+#define T_Duration 447
+#define T_Freq_Offset 448
+#define T_Wander 449
+#define T_Jitter 450
+#define T_Prop_Delay 451
+#define T_Proc_Delay 452
 
+/* Value type.  */
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE
+union YYSTYPE
 {
-/* Line 387 of yacc.c  */
-#line 51 "../../ntpd/ntp_parser.y"
+#line 51 "../../ntpd/ntp_parser.y" /* yacc.c:355  */
 
 	char *			String;
 	double			Double;
@@ -551,37 +549,24 @@
 	script_info *		Sim_script;
 	script_info_fifo *	Sim_script_fifo;
 
+#line 553 "../../ntpd/ntp_parser.c" /* yacc.c:355  */
+};
 
-/* Line 387 of yacc.c  */
-#line 557 "ntp_parser.c"
-} YYSTYPE;
+typedef union YYSTYPE YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #endif
 
+
 extern YYSTYPE yylval;
 
-#ifdef YYPARSE_PARAM
-#if defined __STDC__ || defined __cplusplus
-int yyparse (void *YYPARSE_PARAM);
-#else
-int yyparse ();
-#endif
-#else /* ! YYPARSE_PARAM */
-#if defined __STDC__ || defined __cplusplus
 int yyparse (void);
-#else
-int yyparse ();
-#endif
-#endif /* ! YYPARSE_PARAM */
 
-#endif /* !YY_YY_NTP_PARSER_H_INCLUDED  */
+#endif /* !YY_YY_Y_TAB_H_INCLUDED  */
 
 /* Copy the second part of user declarations.  */
 
-/* Line 390 of yacc.c  */
-#line 585 "ntp_parser.c"
+#line 570 "../../ntpd/ntp_parser.c" /* yacc.c:358  */
 
 #ifdef short
 # undef short
@@ -595,11 +580,8 @@
 
 #ifdef YYTYPE_INT8
 typedef YYTYPE_INT8 yytype_int8;
-#elif (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+#else
 typedef signed char yytype_int8;
-#else
-typedef short int yytype_int8;
 #endif
 
 #ifdef YYTYPE_UINT16
@@ -619,8 +601,7 @@
 #  define YYSIZE_T __SIZE_TYPE__
 # elif defined size_t
 #  define YYSIZE_T size_t
-# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+# elif ! defined YYSIZE_T
 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
 #  define YYSIZE_T size_t
 # else
@@ -642,14 +623,33 @@
 # endif
 #endif
 
-#ifndef __attribute__
-/* This feature is available in gcc versions 2.5 and later.  */
-# if (! defined __GNUC__ || __GNUC__ < 2 \
-      || (__GNUC__ == 2 && __GNUC_MINOR__ < 5))
-#  define __attribute__(Spec) /* empty */
+#ifndef YY_ATTRIBUTE
+# if (defined __GNUC__                                               \
+      && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
+     || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
+#  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
+# else
+#  define YY_ATTRIBUTE(Spec) /* empty */
 # endif
 #endif
 
+#ifndef YY_ATTRIBUTE_PURE
+# define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
+#endif
+
+#ifndef YY_ATTRIBUTE_UNUSED
+# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
+#endif
+
+#if !defined _Noreturn \
+     && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
+# if defined _MSC_VER && 1200 <= _MSC_VER
+#  define _Noreturn __declspec (noreturn)
+# else
+#  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
+# endif
+#endif
+
 /* Suppress unused-variable warnings by "using" E.  */
 #if ! defined lint || defined __GNUC__
 # define YYUSE(E) ((void) (E))
@@ -657,25 +657,26 @@
 # define YYUSE(E) /* empty */
 #endif
 
-
-/* Identity function, used to suppress warnings about constant conditions.  */
-#ifndef lint
-# define YYID(N) (N)
+#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
+/* Suppress an incorrect diagnostic about yylval being uninitialized.  */
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
+    _Pragma ("GCC diagnostic push") \
+    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
+    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
+    _Pragma ("GCC diagnostic pop")
 #else
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-static int
-YYID (int yyi)
-#else
-static int
-YYID (yyi)
-    int yyi;
+# define YY_INITIAL_VALUE(Value) Value
 #endif
-{
-  return yyi;
-}
+#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END
 #endif
+#ifndef YY_INITIAL_VALUE
+# define YY_INITIAL_VALUE(Value) /* Nothing. */
+#endif
 
+
 #if ! defined yyoverflow || YYERROR_VERBOSE
 
 /* The parser invokes alloca or malloc; define the necessary symbols.  */
@@ -693,8 +694,7 @@
 #    define alloca _alloca
 #   else
 #    define YYSTACK_ALLOC alloca
-#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
 #     ifndef EXIT_SUCCESS
@@ -706,8 +706,8 @@
 # endif
 
 # ifdef YYSTACK_ALLOC
-   /* Pacify GCC's `empty if-body' warning.  */
-#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
+   /* Pacify GCC's 'empty if-body' warning.  */
+#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
 #  ifndef YYSTACK_ALLOC_MAXIMUM
     /* The OS might guarantee only one guard page at the bottom of the stack,
        and a page size can be as small as 4096 bytes.  So we cannot safely
@@ -723,7 +723,7 @@
 #  endif
 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
        && ! ((defined YYMALLOC || defined malloc) \
-	     && (defined YYFREE || defined free)))
+             && (defined YYFREE || defined free)))
 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
 #   ifndef EXIT_SUCCESS
 #    define EXIT_SUCCESS 0
@@ -731,15 +731,13 @@
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+#   if ! defined malloc && ! defined EXIT_SUCCESS
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+#   if ! defined free && ! defined EXIT_SUCCESS
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
@@ -749,7 +747,7 @@
 
 #if (! defined yyoverflow \
      && (! defined __cplusplus \
-	 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+         || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
 
 /* A type that is properly aligned for any stack member.  */
 union yyalloc
@@ -774,16 +772,16 @@
    elements in the stack, and YYPTR gives the new location of the
    stack.  Advance YYPTR to a properly aligned location for the next
    stack.  */
-# define YYSTACK_RELOCATE(Stack_alloc, Stack)				\
-    do									\
-      {									\
-	YYSIZE_T yynewbytes;						\
-	YYCOPY (&yyptr->Stack_alloc, Stack, yysize);			\
-	Stack = &yyptr->Stack_alloc;					\
-	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
-	yyptr += yynewbytes / sizeof (*yyptr);				\
-      }									\
-    while (YYID (0))
+# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
+    do                                                                  \
+      {                                                                 \
+        YYSIZE_T yynewbytes;                                            \
+        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
+        Stack = &yyptr->Stack_alloc;                                    \
+        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
+        yyptr += yynewbytes / sizeof (*yyptr);                          \
+      }                                                                 \
+    while (0)
 
 #endif
 
@@ -802,33 +800,35 @@
           for (yyi = 0; yyi < (Count); yyi++)   \
             (Dst)[yyi] = (Src)[yyi];            \
         }                                       \
-      while (YYID (0))
+      while (0)
 #  endif
 # endif
 #endif /* !YYCOPY_NEEDED */
 
 /* YYFINAL -- State number of the termination state.  */
-#define YYFINAL  213
+#define YYFINAL  214
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   624
+#define YYLAST   655
 
 /* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  202
+#define YYNTOKENS  203
 /* YYNNTS -- Number of nonterminals.  */
 #define YYNNTS  105
 /* YYNRULES -- Number of rules.  */
-#define YYNRULES  316
-/* YYNRULES -- Number of states.  */
-#define YYNSTATES  422
+#define YYNRULES  317
+/* YYNSTATES -- Number of states.  */
+#define YYNSTATES  423
 
-/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
+/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
+   by yylex, with out-of-bounds checking.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   451
+#define YYMAXUTOK   452
 
-#define YYTRANSLATE(YYX)						\
+#define YYTRANSLATE(YYX)                                                \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
-/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
+/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
+   as returned by yylex, without out-of-bounds checking.  */
 static const yytype_uint8 yytranslate[] =
 {
        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -835,15 +835,15 @@
        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,
-     198,   199,     2,     2,     2,     2,     2,     2,     2,     2,
+     199,   200,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,   197,     2,     2,     2,     2,     2,     2,     2,     2,
+       2,   198,     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,   200,     2,   201,     2,     2,     2,     2,
+       2,     2,     2,   201,     2,   202,     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,
@@ -876,165 +876,45 @@
      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,   190,   191,   192,   193,   194,
-     195,   196
+     195,   196,   197
 };
 
 #if YYDEBUG
-/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
-   YYRHS.  */
-static const yytype_uint16 yyprhs[] =
-{
-       0,     0,     3,     5,     9,    12,    15,    16,    18,    20,
-      22,    24,    26,    28,    30,    32,    34,    36,    38,    40,
-      42,    46,    48,    50,    52,    54,    56,    58,    61,    63,
-      65,    67,    68,    71,    73,    75,    77,    79,    81,    83,
-      85,    87,    89,    91,    93,    95,    98,   101,   103,   105,
-     107,   109,   111,   113,   116,   118,   121,   123,   125,   127,
-     130,   133,   136,   139,   142,   145,   148,   151,   154,   157,
-     160,   163,   164,   167,   170,   173,   175,   177,   179,   181,
-     183,   186,   189,   191,   194,   197,   200,   202,   204,   206,
-     208,   210,   212,   214,   216,   218,   220,   223,   226,   230,
-     233,   235,   237,   239,   241,   243,   245,   247,   249,   251,
-     252,   255,   258,   261,   263,   265,   267,   269,   271,   273,
-     275,   277,   279,   281,   283,   285,   287,   290,   293,   297,
-     303,   307,   312,   317,   321,   322,   325,   327,   329,   331,
-     333,   335,   337,   339,   341,   343,   345,   347,   349,   351,
-     353,   355,   358,   360,   363,   365,   367,   369,   372,   374,
-     377,   379,   381,   383,   385,   387,   389,   391,   393,   397,
-     400,   402,   405,   408,   411,   414,   417,   419,   421,   423,
-     425,   427,   429,   432,   435,   437,   440,   442,   444,   446,
-     449,   452,   455,   457,   459,   461,   463,   465,   467,   469,
-     471,   473,   475,   477,   479,   481,   483,   486,   489,   491,
-     494,   496,   498,   500,   502,   504,   506,   508,   510,   512,
-     514,   516,   518,   521,   524,   527,   530,   534,   536,   539,
-     542,   545,   548,   552,   555,   557,   559,   561,   563,   565,
-     567,   569,   571,   573,   575,   577,   580,   581,   586,   588,
-     589,   590,   593,   596,   599,   602,   604,   606,   610,   614,
-     616,   618,   620,   622,   624,   626,   628,   630,   632,   635,
-     638,   640,   642,   644,   646,   648,   650,   652,   654,   657,
-     659,   662,   664,   666,   668,   674,   677,   679,   682,   684,
-     686,   688,   690,   692,   694,   700,   702,   706,   709,   713,
-     715,   717,   720,   722,   728,   733,   737,   740,   742,   749,
-     753,   756,   760,   762,   764,   766,   768
-};
-
-/* YYRHS -- A `-1'-separated list of the rules' RHS.  */
-static const yytype_int16 yyrhs[] =
-{
-     203,     0,    -1,   204,    -1,   204,   205,   186,    -1,   205,
-     186,    -1,     1,   186,    -1,    -1,   206,    -1,   219,    -1,
-     221,    -1,   222,    -1,   231,    -1,   239,    -1,   226,    -1,
-     248,    -1,   253,    -1,   257,    -1,   262,    -1,   266,    -1,
-     293,    -1,   207,   208,   211,    -1,   146,    -1,   131,    -1,
-     126,    -1,    14,    -1,    84,    -1,   209,    -1,   210,   158,
-      -1,   158,    -1,    66,    -1,    68,    -1,    -1,   211,   212,
-      -1,   213,    -1,   215,    -1,   217,    -1,   214,    -1,     9,
-      -1,    17,    -1,    53,    -1,   116,    -1,   133,    -1,   134,
-      -1,   169,    -1,   183,    -1,   216,    61,    -1,   216,   173,
-      -1,    70,    -1,   100,    -1,    92,    -1,   171,    -1,   102,
-      -1,   179,    -1,   218,   158,    -1,    54,    -1,   220,   208,
-      -1,   177,    -1,   178,    -1,    15,    -1,    85,   290,    -1,
-     107,   290,    -1,    93,    61,    -1,    10,    61,    -1,    22,
-      61,    -1,    23,   223,    -1,    71,   158,    -1,    72,   158,
-      -1,   140,    61,    -1,   143,    61,    -1,   170,   286,    -1,
-     122,   158,    -1,    -1,   223,   224,    -1,   225,   158,    -1,
-     143,    61,    -1,    51,    -1,    54,    -1,   136,    -1,   137,
-      -1,    28,    -1,   167,   227,    -1,   227,   228,    -1,   228,
-      -1,   229,    61,    -1,   230,   292,    -1,    21,   291,    -1,
-      19,    -1,    48,    -1,   123,    -1,   124,    -1,   101,    -1,
-      13,    -1,    98,    -1,    90,    -1,    96,    -1,    88,    -1,
-     150,   232,    -1,   152,   158,    -1,    41,   233,   234,    -1,
-     232,   233,    -1,   233,    -1,    20,    -1,    24,    -1,    82,
-      -1,   127,    -1,   138,    -1,   160,    -1,   165,    -1,   135,
-      -1,    -1,   234,   235,    -1,    40,   158,    -1,   172,   238,
-      -1,   236,    -1,   237,    -1,    78,    -1,   109,    -1,    37,
-      -1,    29,    -1,   112,    -1,   129,    -1,    26,    -1,   181,
-      -1,   105,    -1,   184,    -1,     4,    -1,    30,   242,    -1,
-     106,   245,    -1,   142,   208,   240,    -1,   142,   209,    86,
-     209,   240,    -1,   142,    27,   240,    -1,   142,    66,    27,
-     240,    -1,   142,    68,    27,   240,    -1,   142,   148,   240,
-      -1,    -1,   240,   241,    -1,    47,    -1,    55,    -1,    73,
-      -1,    74,    -1,    77,    -1,    83,    -1,   110,    -1,   111,
-      -1,   114,    -1,   115,    -1,   117,    -1,   118,    -1,   119,
-      -1,   121,    -1,   179,    -1,   242,   243,    -1,   243,    -1,
-     244,    61,    -1,    11,    -1,    99,    -1,   104,    -1,   245,
-     246,    -1,   246,    -1,   247,    61,    -1,    56,    -1,    57,
-      -1,    58,    -1,    59,    -1,    87,    -1,    89,    -1,    91,
-      -1,    97,    -1,    50,   208,   249,    -1,   249,   250,    -1,
-     250,    -1,   251,   292,    -1,   252,   291,    -1,   157,    61,
-      -1,     3,   158,    -1,   139,   158,    -1,   162,    -1,   163,
-      -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,   144,
-     254,    -1,   254,   255,    -1,   255,    -1,   256,    61,    -1,
-      95,    -1,   149,    -1,    42,    -1,    37,   258,    -1,    29,
-     258,    -1,   258,   259,    -1,   259,    -1,   260,    -1,   261,
-      -1,     8,    -1,    12,    -1,    18,    -1,    69,    -1,   104,
-      -1,   120,    -1,   103,    -1,   151,    -1,   174,    -1,   175,
-      -1,   176,    -1,   166,   263,    -1,   263,   264,    -1,   264,
-      -1,   265,   292,    -1,     6,    -1,    31,    -1,    49,    -1,
-      52,    -1,   125,    -1,   153,    -1,   154,    -1,   155,    -1,
-     156,    -1,   161,    -1,   278,    -1,   282,    -1,   267,   292,
-      -1,   268,    61,    -1,   269,   158,    -1,   270,   158,    -1,
-      60,   158,   205,    -1,    38,    -1,    33,   271,    -1,    80,
-     276,    -1,   128,   289,    -1,   147,   272,    -1,   168,   209,
-     274,    -1,   171,   285,    -1,    16,    -1,   113,    -1,   161,
-      -1,    35,    -1,    76,    -1,    54,    -1,    75,    -1,    81,
-      -1,   130,    -1,   145,    -1,   158,    -1,   158,    32,    -1,
-      -1,   158,   197,   158,   273,    -1,    27,    -1,    -1,    -1,
-     274,   275,    -1,   132,    61,    -1,    62,   209,    -1,   276,
-     277,    -1,   277,    -1,   158,    -1,   279,   281,   280,    -1,
-     279,   281,   158,    -1,    62,    -1,   108,    -1,     5,    -1,
-      65,    -1,    67,    -1,   182,    -1,    79,    -1,    55,    -1,
-      34,    -1,   141,   283,    -1,   283,   284,    -1,   284,    -1,
-       7,    -1,     8,    -1,    25,    -1,    64,    -1,    94,    -1,
-     159,    -1,   164,    -1,   285,    61,    -1,    61,    -1,   286,
-     287,    -1,   287,    -1,    61,    -1,   288,    -1,   198,    61,
-      36,    61,   199,    -1,   289,   158,    -1,   158,    -1,   290,
-     208,    -1,   208,    -1,    61,    -1,   169,    -1,    39,    -1,
-      61,    -1,    32,    -1,   294,   200,   295,   298,   201,    -1,
-     187,    -1,   295,   296,   186,    -1,   296,   186,    -1,   297,
-     197,   292,    -1,   188,    -1,   189,    -1,   298,   299,    -1,
-     299,    -1,   301,   200,   300,   302,   201,    -1,   190,   197,
-     292,   186,    -1,   146,   197,   208,    -1,   302,   303,    -1,
-     303,    -1,   191,   197,   292,   200,   304,   201,    -1,   304,
-     305,   186,    -1,   305,   186,    -1,   306,   197,   292,    -1,
-     192,    -1,   193,    -1,   194,    -1,   195,    -1,   196,    -1
-};
-
-/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
+  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
-       0,   369,   369,   373,   374,   375,   390,   391,   392,   393,
-     394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
-     411,   421,   422,   423,   424,   425,   429,   430,   435,   440,
-     442,   448,   449,   457,   458,   459,   463,   468,   469,   470,
-     471,   472,   473,   474,   475,   479,   481,   486,   487,   488,
-     489,   490,   491,   495,   500,   509,   519,   520,   530,   532,
-     534,   536,   547,   554,   556,   561,   563,   565,   567,   569,
-     578,   584,   585,   593,   595,   607,   608,   609,   610,   611,
-     620,   625,   630,   638,   640,   642,   647,   648,   649,   650,
-     651,   652,   656,   657,   658,   659,   668,   670,   679,   689,
-     694,   702,   703,   704,   705,   706,   707,   708,   709,   714,
-     715,   723,   733,   742,   757,   762,   763,   767,   768,   772,
-     773,   774,   775,   776,   777,   778,   787,   791,   795,   803,
-     811,   819,   834,   849,   862,   863,   871,   872,   873,   874,
-     875,   876,   877,   878,   879,   880,   881,   882,   883,   884,
-     885,   889,   894,   902,   907,   908,   909,   913,   918,   926,
-     931,   932,   933,   934,   935,   936,   937,   938,   946,   956,
-     961,   969,   971,   973,   982,   984,   989,   990,   994,   995,
-     996,   997,  1005,  1010,  1015,  1023,  1028,  1029,  1030,  1039,
-    1041,  1046,  1051,  1059,  1061,  1078,  1079,  1080,  1081,  1082,
-    1083,  1087,  1088,  1089,  1090,  1091,  1099,  1104,  1109,  1117,
-    1122,  1123,  1124,  1125,  1126,  1127,  1128,  1129,  1130,  1131,
-    1140,  1141,  1142,  1149,  1156,  1163,  1179,  1198,  1200,  1202,
-    1204,  1206,  1208,  1215,  1220,  1221,  1222,  1226,  1230,  1239,
-    1240,  1244,  1245,  1246,  1250,  1261,  1275,  1287,  1292,  1294,
-    1299,  1300,  1308,  1310,  1318,  1323,  1331,  1356,  1363,  1373,
-    1374,  1378,  1379,  1380,  1381,  1385,  1386,  1387,  1391,  1396,
-    1401,  1409,  1410,  1411,  1412,  1413,  1414,  1415,  1425,  1430,
-    1438,  1443,  1451,  1453,  1457,  1462,  1467,  1475,  1480,  1488,
-    1497,  1498,  1502,  1503,  1512,  1530,  1534,  1539,  1547,  1552,
-    1553,  1557,  1562,  1570,  1575,  1580,  1585,  1590,  1598,  1603,
-    1608,  1616,  1621,  1622,  1623,  1624,  1625
+       0,   370,   370,   374,   375,   376,   391,   392,   393,   394,
+     395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
+     412,   422,   423,   424,   425,   426,   430,   431,   436,   441,
+     443,   449,   450,   458,   459,   460,   464,   469,   470,   471,
+     472,   473,   474,   475,   476,   480,   482,   487,   488,   489,
+     490,   491,   492,   496,   501,   510,   520,   521,   531,   533,
+     535,   537,   548,   555,   557,   562,   564,   566,   568,   570,
+     579,   585,   586,   594,   596,   608,   609,   610,   611,   612,
+     621,   626,   631,   639,   641,   643,   648,   649,   650,   651,
+     652,   653,   657,   658,   659,   660,   669,   671,   680,   690,
+     695,   703,   704,   705,   706,   707,   708,   709,   710,   715,
+     716,   724,   734,   743,   758,   763,   764,   768,   769,   773,
+     774,   775,   776,   777,   778,   779,   788,   792,   796,   804,
+     812,   820,   835,   850,   863,   864,   872,   873,   874,   875,
+     876,   877,   878,   879,   880,   881,   882,   883,   884,   885,
+     886,   890,   895,   903,   908,   909,   910,   914,   919,   927,
+     932,   933,   934,   935,   936,   937,   938,   939,   947,   957,
+     962,   970,   972,   974,   983,   985,   990,   991,   995,   996,
+     997,   998,  1006,  1011,  1016,  1024,  1029,  1030,  1031,  1040,
+    1042,  1047,  1052,  1060,  1062,  1079,  1080,  1081,  1082,  1083,
+    1084,  1088,  1089,  1090,  1091,  1092,  1093,  1101,  1106,  1111,
+    1119,  1124,  1125,  1126,  1127,  1128,  1129,  1130,  1131,  1132,
+    1133,  1142,  1143,  1144,  1151,  1158,  1165,  1181,  1200,  1202,
+    1204,  1206,  1208,  1210,  1217,  1222,  1223,  1224,  1228,  1232,
+    1241,  1242,  1246,  1247,  1248,  1252,  1263,  1277,  1289,  1294,
+    1296,  1301,  1302,  1310,  1312,  1320,  1325,  1333,  1358,  1365,
+    1375,  1376,  1380,  1381,  1382,  1383,  1387,  1388,  1389,  1393,
+    1398,  1403,  1411,  1412,  1413,  1414,  1415,  1416,  1417,  1427,
+    1432,  1440,  1445,  1453,  1455,  1459,  1464,  1469,  1477,  1482,
+    1490,  1499,  1500,  1504,  1505,  1514,  1532,  1536,  1541,  1549,
+    1554,  1555,  1559,  1564,  1572,  1577,  1582,  1587,  1592,  1600,
+    1605,  1610,  1618,  1623,  1624,  1625,  1626,  1627
 };
 #endif
 
@@ -1066,9 +946,9 @@
   "T_Mru", "T_Multicastclient", "T_Nic", "T_Nolink", "T_Nomodify",
   "T_Nomrulist", "T_None", "T_Nonvolatile", "T_Nopeer", "T_Noquery",
   "T_Noselect", "T_Noserve", "T_Notrap", "T_Notrust", "T_Ntp", "T_Ntpport",
-  "T_NtpSignDsocket", "T_Orphan", "T_Orphanwait", "T_Panic", "T_Peer",
-  "T_Peerstats", "T_Phone", "T_Pid", "T_Pidfile", "T_Pool", "T_Port",
-  "T_Preempt", "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile",
+  "T_NtpSignDsocket", "T_Orphan", "T_Orphanwait", "T_PCEdigest", "T_Panic",
+  "T_Peer", "T_Peerstats", "T_Phone", "T_Pid", "T_Pidfile", "T_Pool",
+  "T_Port", "T_Preempt", "T_Prefer", "T_Protostats", "T_Pw", "T_Randfile",
   "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",
@@ -1112,13 +992,13 @@
   "sim_init_statement_list", "sim_init_statement", "sim_init_keyword",
   "sim_server_list", "sim_server", "sim_server_offset", "sim_server_name",
   "sim_act_list", "sim_act", "sim_act_stmt_list", "sim_act_stmt",
-  "sim_act_keyword", YY_NULL
+  "sim_act_keyword", YY_NULLPTR
 };
 #endif
 
 # ifdef YYPRINT
-/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
-   token YYLEX-NUM.  */
+/* YYTOKNUM[NUM] -- (External) token number corresponding to the
+   (internal) symbol number NUM (which must be that of a token).  */
 static const yytype_uint16 yytoknum[] =
 {
        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
@@ -1140,435 +1020,429 @@
      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,
-     445,   446,   447,   448,   449,   450,   451,    61,    40,    41,
-     123,   125
+     445,   446,   447,   448,   449,   450,   451,   452,    61,    40,
+      41,   123,   125
 };
 # endif
 
-/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
-static const yytype_uint16 yyr1[] =
-{
-       0,   202,   203,   204,   204,   204,   205,   205,   205,   205,
-     205,   205,   205,   205,   205,   205,   205,   205,   205,   205,
-     206,   207,   207,   207,   207,   207,   208,   208,   209,   210,
-     210,   211,   211,   212,   212,   212,   213,   214,   214,   214,
-     214,   214,   214,   214,   214,   215,   215,   216,   216,   216,
-     216,   216,   216,   217,   218,   219,   220,   220,   221,   221,
-     221,   221,   222,   222,   222,   222,   222,   222,   222,   222,
-     222,   223,   223,   224,   224,   225,   225,   225,   225,   225,
-     226,   227,   227,   228,   228,   228,   229,   229,   229,   229,
-     229,   229,   230,   230,   230,   230,   231,   231,   231,   232,
-     232,   233,   233,   233,   233,   233,   233,   233,   233,   234,
-     234,   235,   235,   235,   235,   236,   236,   237,   237,   238,
-     238,   238,   238,   238,   238,   238,   239,   239,   239,   239,
-     239,   239,   239,   239,   240,   240,   241,   241,   241,   241,
-     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
-     241,   242,   242,   243,   244,   244,   244,   245,   245,   246,
-     247,   247,   247,   247,   247,   247,   247,   247,   248,   249,
-     249,   250,   250,   250,   250,   250,   251,   251,   252,   252,
-     252,   252,   253,   254,   254,   255,   256,   256,   256,   257,
-     257,   258,   258,   259,   259,   260,   260,   260,   260,   260,
-     260,   261,   261,   261,   261,   261,   262,   263,   263,   264,
-     265,   265,   265,   265,   265,   265,   265,   265,   265,   265,
-     266,   266,   266,   266,   266,   266,   266,   266,   266,   266,
-     266,   266,   266,   266,   267,   267,   267,   268,   268,   269,
-     269,   270,   270,   270,   271,   271,   271,   272,   273,   273,
-     274,   274,   275,   275,   276,   276,   277,   278,   278,   279,
-     279,   280,   280,   280,   280,   281,   281,   281,   282,   283,
-     283,   284,   284,   284,   284,   284,   284,   284,   285,   285,
-     286,   286,   287,   287,   288,   289,   289,   290,   290,   291,
-     291,   291,   292,   292,   293,   294,   295,   295,   296,   297,
-     297,   298,   298,   299,   300,   301,   302,   302,   303,   304,
-     304,   305,   306,   306,   306,   306,   306
-};
+#define YYPACT_NINF -189
 
-/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
-static const yytype_uint8 yyr2[] =
+#define yypact_value_is_default(Yystate) \
+  (!!((Yystate) == (-189)))
+
+#define YYTABLE_NINF -7
+
+#define yytable_value_is_error(Yytable_value) \
+  0
+
+  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+     STATE-NUM.  */
+static const yytype_int16 yypact[] =
 {
-       0,     2,     1,     3,     2,     2,     0,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       3,     1,     1,     1,     1,     1,     1,     2,     1,     1,
-       1,     0,     2,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
-       1,     1,     1,     2,     1,     2,     1,     1,     1,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     0,     2,     2,     2,     1,     1,     1,     1,     1,
-       2,     2,     1,     2,     2,     2,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     2,     2,     3,     2,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
-       2,     2,     2,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     2,     2,     3,     5,
-       3,     4,     4,     3,     0,     2,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     2,     1,     2,     1,     1,     1,     2,     1,     2,
-       1,     1,     1,     1,     1,     1,     1,     1,     3,     2,
-       1,     2,     2,     2,     2,     2,     1,     1,     1,     1,
-       1,     1,     2,     2,     1,     2,     1,     1,     1,     2,
-       2,     2,     1,     1,     1,     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,
-       1,     1,     2,     2,     2,     2,     3,     1,     2,     2,
-       2,     2,     3,     2,     1,     1,     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
+      20,  -174,   -32,  -189,  -189,  -189,   -29,  -189,   315,     3,
+    -133,  -189,   315,  -189,   119,   -48,  -189,  -126,  -189,  -118,
+    -115,  -189,  -189,  -113,  -189,  -189,   -48,    -5,   374,   -48,
+    -189,  -189,  -105,  -189,  -100,  -189,  -189,     1,    81,    46,
+       2,   -31,  -189,  -189,   -90,   119,   -88,  -189,   148,   380,
+     -81,   -53,    23,  -189,  -189,  -189,    87,   207,  -106,  -189,
+     -48,  -189,   -48,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,    -9,    29,   -62,   -61,  -189,    -7,  -189,
+    -189,  -102,  -189,  -189,  -189,    32,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   315,  -189,
+    -189,  -189,  -189,  -189,  -189,     3,  -189,    42,    78,  -189,
+     315,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,   112,  -189,   -39,   367,  -189,  -189,  -189,
+    -113,  -189,  -189,   -48,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,   374,  -189,    60,   -48,  -189,  -189,   -34,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,    81,  -189,
+    -189,    97,   102,  -189,  -189,    44,  -189,  -189,  -189,  -189,
+     -31,  -189,    71,   -63,  -189,   119,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   148,  -189,
+      -9,  -189,  -189,   -36,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,   380,  -189,    75,    -9,  -189,  -189,    76,   -53,
+    -189,  -189,  -189,    77,  -189,   -43,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,     0,  -150,
+    -189,  -189,  -189,  -189,  -189,    89,  -189,    -6,  -189,  -189,
+    -189,  -189,    39,    13,  -189,  -189,  -189,  -189,    15,    99,
+    -189,  -189,   112,  -189,    -9,   -36,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,   475,  -189,  -189,   475,   475,   -81,
+    -189,  -189,    18,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,   -58,   144,  -189,  -189,  -189,   353,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,   -96,    -3,   -13,
+    -189,  -189,  -189,  -189,    27,  -189,  -189,    11,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,   475,   475,  -189,   163,   -81,   133,  -189,
+     141,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+     -52,  -189,    45,     5,    19,  -125,  -189,     8,  -189,    -9,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,   475,
+    -189,  -189,  -189,  -189,    14,  -189,  -189,  -189,   -48,  -189,
+    -189,  -189,    22,  -189,  -189,  -189,    21,    24,    -9,    36,
+    -164,  -189,    33,    -9,  -189,  -189,  -189,    10,    69,  -189,
+    -189,  -189,  -189,  -189,    31,    48,    40,  -189,    52,  -189,
+      -9,  -189,  -189
 };
 
-/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
-   Performed when YYTABLE doesn't specify something else to do.  Zero
-   means the default is an error.  */
+  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
+     Performed when YYTABLE does not specify something else to do.  Zero
+     means the default is an error.  */
 static const yytype_uint16 yydefact[] =
 {
-       0,     0,     0,    24,    58,   234,     0,    71,     0,     0,
-     246,   237,     0,   227,     0,     0,   239,     0,   259,     0,
-       0,   240,   238,     0,   241,    25,     0,     0,     0,     0,
-     260,   235,     0,    23,     0,   242,    22,     0,     0,     0,
-       0,     0,   243,    21,     0,     0,     0,   236,     0,     0,
-       0,     0,     0,    56,    57,   295,     0,     2,     0,     7,
+       0,     0,     0,    24,    58,   235,     0,    71,     0,     0,
+     247,   238,     0,   228,     0,     0,   240,     0,   260,     0,
+       0,   241,   239,     0,   242,    25,     0,     0,     0,     0,
+     261,   236,     0,    23,     0,   243,    22,     0,     0,     0,
+       0,     0,   244,    21,     0,     0,     0,   237,     0,     0,
+       0,     0,     0,    56,    57,   296,     0,     2,     0,     7,
        0,     8,     0,     9,    10,    13,    11,    12,    14,    15,
-      16,    17,    18,     0,     0,     0,     0,   220,     0,   221,
+      16,    17,    18,     0,     0,     0,     0,   221,     0,   222,
       19,     0,     5,    62,    63,    64,   195,   196,   197,   198,
-     201,   199,   200,   202,   203,   204,   205,   190,   192,   193,
-     194,   154,   155,   156,   126,   152,     0,   244,   228,   189,
-     101,   102,   103,   104,   108,   105,   106,   107,   109,    29,
-      30,    28,     0,    26,     0,     6,    65,    66,   256,   229,
-     255,   288,    59,    61,   160,   161,   162,   163,   164,   165,
-     166,   167,   127,   158,     0,    60,    70,   286,   230,    67,
-     271,   272,   273,   274,   275,   276,   277,   268,   270,   134,
-      29,    30,   134,   134,    26,    68,   188,   186,   187,   182,
-     184,     0,     0,   231,    96,   100,    97,   210,   211,   212,
-     213,   214,   215,   216,   217,   218,   219,   206,   208,     0,
-      91,    86,     0,    87,    95,    93,    94,    92,    90,    88,
-      89,    80,    82,     0,     0,   250,   282,     0,    69,   281,
-     283,   279,   233,     1,     0,     4,    31,    55,   293,   292,
-     222,   223,   224,   225,   267,   266,   265,     0,     0,    79,
-      75,    76,    77,    78,     0,    72,     0,   191,   151,   153,
-     245,    98,     0,   178,   179,   180,   181,     0,     0,   176,
-     177,   168,   170,     0,     0,    27,   226,   254,   287,   157,
-     159,   285,   269,   130,   134,   134,   133,   128,     0,   183,
-     185,     0,    99,   207,   209,   291,   289,   290,    85,    81,
-      83,    84,   232,     0,   280,   278,     3,    20,   261,   262,
-     263,   258,   264,   257,   299,   300,     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,   249,     0,     0,   251,     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,   302,     0,   297,     0,   111,
-     125,   121,   123,   119,   120,   122,   124,   112,   129,   248,
-     247,   253,   252,     0,    45,    46,    53,     0,   296,   294,
-     301,     0,   298,   284,   305,     0,     0,     0,     0,     0,
-     307,     0,     0,   303,   306,   304,     0,     0,   312,   313,
-     314,   315,   316,     0,     0,     0,   308,     0,   310,     0,
-     309,   311
+     201,   199,   200,   202,   203,   204,   205,   206,   190,   192,
+     193,   194,   154,   155,   156,   126,   152,     0,   245,   229,
+     189,   101,   102,   103,   104,   108,   105,   106,   107,   109,
+      29,    30,    28,     0,    26,     0,     6,    65,    66,   257,
+     230,   256,   289,    59,    61,   160,   161,   162,   163,   164,
+     165,   166,   167,   127,   158,     0,    60,    70,   287,   231,
+      67,   272,   273,   274,   275,   276,   277,   278,   269,   271,
+     134,    29,    30,   134,   134,    26,    68,   188,   186,   187,
+     182,   184,     0,     0,   232,    96,   100,    97,   211,   212,
+     213,   214,   215,   216,   217,   218,   219,   220,   207,   209,
+       0,    91,    86,     0,    87,    95,    93,    94,    92,    90,
+      88,    89,    80,    82,     0,     0,   251,   283,     0,    69,
+     282,   284,   280,   234,     1,     0,     4,    31,    55,   294,
+     293,   223,   224,   225,   226,   268,   267,   266,     0,     0,
+      79,    75,    76,    77,    78,     0,    72,     0,   191,   151,
+     153,   246,    98,     0,   178,   179,   180,   181,     0,     0,
+     176,   177,   168,   170,     0,     0,    27,   227,   255,   288,
+     157,   159,   286,   270,   130,   134,   134,   133,   128,     0,
+     183,   185,     0,    99,   208,   210,   292,   290,   291,    85,
+      81,    83,    84,   233,     0,   281,   279,     3,    20,   262,
+     263,   264,   259,   265,   258,   300,   301,     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,   250,     0,     0,   252,
+       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,   303,     0,   298,     0,
+     111,   125,   121,   123,   119,   120,   122,   124,   112,   129,
+     249,   248,   254,   253,     0,    45,    46,    53,     0,   297,
+     295,   302,     0,   299,   285,   306,     0,     0,     0,     0,
+       0,   308,     0,     0,   304,   307,   305,     0,     0,   313,
+     314,   315,   316,   317,     0,     0,     0,   309,     0,   311,
+       0,   310,   312
 };
 
-/* YYDEFGOTO[NTERM-NUM].  */
-static const yytype_int16 yydefgoto[] =
+  /* YYPGOTO[NTERM-NUM].  */
+static const yytype_int16 yypgoto[] =
 {
-      -1,    56,    57,    58,    59,    60,   131,   123,   124,   287,
-     355,   356,   357,   358,   359,   360,   361,    61,    62,    63,
-      64,    85,   235,   236,    65,   201,   202,   203,   204,    66,
-     174,   118,   241,   307,   308,   309,   377,    67,   263,   331,
-     104,   105,   106,   142,   143,   144,    68,   251,   252,   253,
-     254,    69,   169,   170,   171,    70,    97,    98,    99,   100,
-      71,   187,   188,   189,    72,    73,    74,    75,    76,   108,
-     173,   380,   282,   338,   129,   130,    77,    78,   293,   227,
-      79,   157,   158,   212,   208,   209,   210,   148,   132,   278,
-     220,    80,    81,   296,   297,   298,   364,   365,   396,   366,
-     399,   400,   413,   414,   415
+    -189,  -189,  -189,   -41,  -189,  -189,   -15,   -38,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,  -189,    16,  -189,  -189,  -189,
+    -189,   -35,  -189,  -189,  -189,  -189,  -189,  -189,  -157,  -189,
+    -189,   138,  -189,  -189,   106,  -189,  -189,  -189,    -2,  -189,
+    -189,  -189,  -189,    83,  -189,  -189,   239,   -79,  -189,  -189,
+    -189,  -189,    66,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
+    -189,  -189,  -189,  -189,  -189,   126,  -189,  -189,  -189,  -189,
+    -189,  -189,   101,  -189,  -189,    51,  -189,  -189,   242,    17,
+    -188,  -189,  -189,  -189,   -24,  -189,  -189,   -97,  -189,  -189,
+    -189,  -123,  -189,  -130,  -189
 };
 
-/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
-   STATE-NUM.  */
-#define YYPACT_NINF -188
-static const yytype_int16 yypact[] =
+  /* YYDEFGOTO[NTERM-NUM].  */
+static const yytype_int16 yydefgoto[] =
 {
-       5,  -160,   -28,  -188,  -188,  -188,   -24,  -188,    60,     0,
-    -119,  -188,    60,  -188,   118,     7,  -188,  -117,  -188,  -110,
-    -108,  -188,  -188,  -101,  -188,  -188,     7,    -1,   345,     7,
-    -188,  -188,   -96,  -188,   -95,  -188,  -188,    21,    -3,    73,
-      33,    11,  -188,  -188,   -94,   118,   -61,  -188,    43,   446,
-     -57,   -58,    41,  -188,  -188,  -188,   105,   179,   -79,  -188,
-       7,  -188,     7,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,    -7,    48,   -48,   -39,  -188,    24,  -188,
-    -188,   -86,  -188,  -188,  -188,    42,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,    60,  -188,  -188,
-    -188,  -188,  -188,  -188,     0,  -188,    59,    89,  -188,    60,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,    80,  -188,     9,   338,  -188,  -188,  -188,  -101,
-    -188,  -188,     7,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,   345,  -188,    67,     7,  -188,  -188,    12,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,    -3,  -188,  -188,
-     107,   116,  -188,  -188,    83,  -188,  -188,  -188,  -188,    11,
-    -188,   113,   -20,  -188,   118,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,    43,  -188,    -7,
-    -188,  -188,   -25,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,   446,  -188,   127,    -7,  -188,  -188,   129,   -58,  -188,
-    -188,  -188,   142,  -188,    19,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,     4,  -158,  -188,
-    -188,  -188,  -188,  -188,   145,  -188,    49,  -188,  -188,  -188,
-    -188,   233,    55,  -188,  -188,  -188,  -188,    64,   157,  -188,
-    -188,    80,  -188,    -7,   -25,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,   445,  -188,  -188,   445,   445,   -57,  -188,
-    -188,    82,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,   -44,   202,  -188,  -188,  -188,   324,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,   -30,    58,    50,  -188,
-    -188,  -188,  -188,    88,  -188,  -188,     3,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,   445,   445,  -188,   221,   -57,   188,  -188,   191,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,   -51,
-    -188,    99,    61,    75,  -114,  -188,    65,  -188,    -7,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,   445,  -188,
-    -188,  -188,  -188,    68,  -188,  -188,  -188,     7,  -188,  -188,
-    -188,    76,  -188,  -188,  -188,    71,    78,    -7,    74,  -178,
-    -188,    90,    -7,  -188,  -188,  -188,    77,    32,  -188,  -188,
-    -188,  -188,  -188,   101,    93,    84,  -188,    94,  -188,    -7,
-    -188,  -188
+      -1,    56,    57,    58,    59,    60,   132,   124,   125,   288,
+     356,   357,   358,   359,   360,   361,   362,    61,    62,    63,
+      64,    85,   236,   237,    65,   202,   203,   204,   205,    66,
+     175,   119,   242,   308,   309,   310,   378,    67,   264,   332,
+     105,   106,   107,   143,   144,   145,    68,   252,   253,   254,
+     255,    69,   170,   171,   172,    70,    98,    99,   100,   101,
+      71,   188,   189,   190,    72,    73,    74,    75,    76,   109,
+     174,   381,   283,   339,   130,   131,    77,    78,   294,   228,
+      79,   158,   159,   213,   209,   210,   211,   149,   133,   279,
+     221,    80,    81,   297,   298,   299,   365,   366,   397,   367,
+     400,   401,   414,   415,   416
 };
 
-/* YYPGOTO[NTERM-NUM].  */
-static const yytype_int16 yypgoto[] =
-{
-    -188,  -188,  -188,   -41,  -188,  -188,   -15,   -38,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,  -188,    81,  -188,  -188,  -188,
-    -188,   -37,  -188,  -188,  -188,  -188,  -188,  -188,  -111,  -188,
-    -188,   170,  -188,  -188,   133,  -188,  -188,  -188,    37,  -188,
-    -188,  -188,  -188,   115,  -188,  -188,   277,   -53,  -188,  -188,
-    -188,  -188,   103,  -188,  -188,  -188,  -188,  -188,  -188,  -188,
-    -188,  -188,  -188,  -188,  -188,   162,  -188,  -188,  -188,  -188,
-    -188,  -188,   143,  -188,  -188,    91,  -188,  -188,   274,    52,
-    -187,  -188,  -188,  -188,     8,  -188,  -188,   -56,  -188,  -188,
-    -188,   -87,  -188,  -100,  -188
-};
-
-/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
-   positive, shift that token.  If negative, reduce the rule which
-   number is the opposite.  If YYTABLE_NINF, syntax error.  */
-#define YYTABLE_NINF -7
+  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
+     positive, shift that token.  If negative, reduce the rule whose
+     number is the opposite.  If YYTABLE_NINF, syntax error.  */
 static const yytype_int16 yytable[] =
 {
-     122,   164,   274,   206,   150,   151,     1,   370,   175,   288,
-     384,   101,   205,   398,   275,     2,   214,   281,   336,     3,
-       4,     5,   152,   403,   163,   218,    82,     6,     7,   371,
-     294,   295,   362,    83,     8,     9,   276,    84,    10,   107,
-      11,   125,    12,    13,   237,   216,    14,   217,   126,   177,
-     127,   266,   267,   166,   219,    15,   237,   128,   224,    16,
-     133,   153,   146,   147,   172,    17,   314,    18,    86,   289,
-     229,   290,    87,   119,   178,   120,    19,    20,    88,   225,
-      21,    22,   149,   242,   256,    23,    24,   389,   337,    25,
-      26,   154,   179,   230,   165,   180,   231,   176,    27,   102,
-     159,   121,   211,   226,   103,   213,   167,   215,   372,   221,
-     222,    28,    29,    30,   228,   373,   362,   258,    31,   223,
-     239,   240,   385,   243,   244,   245,   246,    32,   260,    89,
-     258,    33,   374,    34,   264,    35,    36,   272,   110,   160,
-     207,   161,   111,   265,   277,    37,    38,    39,    40,    41,
-      42,    43,    44,   332,   333,    45,   155,    46,   294,   295,
-     168,   156,   291,    90,    91,   121,    47,   255,   181,   268,
-     261,    48,    49,    50,   270,    51,    52,   271,   232,   233,
-      92,   392,    53,    54,   375,   234,   292,   376,   280,     2,
-     283,    -6,    55,     3,     4,     5,   182,   183,   184,   185,
-     112,     6,     7,   285,   186,   286,   299,   300,     8,     9,
-     401,    93,    10,   310,    11,   406,    12,    13,   312,   247,
-      14,   162,   311,   378,   408,   409,   410,   411,   412,    15,
-     334,   121,   421,    16,    94,    95,    96,   248,   339,    17,
-     335,    18,   249,   250,   367,   113,   369,   368,   379,   382,
-      19,    20,   383,   114,    21,    22,   115,   386,   387,    23,
-      24,   388,   301,    25,    26,   391,   395,   393,   397,   398,
-     302,   402,    27,   303,   238,   259,   405,   407,   116,   418,
-     420,   419,   279,   117,   269,    28,    29,    30,   313,   109,
-     273,   257,    31,   408,   409,   410,   411,   412,   381,   284,
-     262,    32,   416,   145,   363,    33,   315,    34,   390,    35,
-      36,   304,   404,   417,     0,     0,     0,     0,     0,    37,
-      38,    39,    40,    41,    42,    43,    44,     0,     0,    45,
-       0,    46,     0,   340,     0,     0,     0,     0,     0,     0,
-      47,   341,   305,     0,     0,    48,    49,    50,     2,    51,
-      52,     0,     3,     4,     5,     0,    53,    54,     0,     0,
-       6,     7,     0,     0,     0,    -6,    55,     8,     9,     0,
-       0,    10,   394,    11,     0,    12,    13,   342,   343,    14,
-       0,     0,     0,     0,     0,     0,     0,     0,    15,     0,
-       0,     0,    16,     0,   344,     0,     0,     0,    17,     0,
-      18,   134,   135,   136,   137,   306,     0,     0,     0,    19,
-      20,     0,     0,    21,    22,     0,   345,     0,    23,    24,
-       0,     0,    25,    26,   346,     0,   347,     0,     0,     0,
-       0,    27,   138,     0,   139,     0,   140,     0,     0,     0,
-     348,     0,   141,     0,    28,    29,    30,     0,     0,     0,
-       0,    31,     0,     0,     0,     0,     0,   349,   350,   190,
-      32,     0,     0,     0,    33,   191,    34,   192,    35,    36,
+     123,   165,   275,   276,   337,   289,   267,   268,   207,   385,
+     176,   167,   206,    82,   102,   371,   215,   282,   120,   238,
+     121,     1,   363,   219,   164,   277,   108,   225,   399,    83,
+       2,   238,    84,   126,     3,     4,     5,   372,   404,   295,
+     296,   127,     6,     7,   128,   217,   129,   218,   226,     8,
+       9,   363,   220,    10,   147,    11,   134,    12,    13,   148,
+     230,    14,   150,   166,   168,   290,   315,   291,   302,   173,
+      15,   177,   227,   160,    16,   338,   303,   390,   122,   304,
+      17,   216,    18,   231,   212,   257,   232,   214,   151,   152,
+     222,    19,    20,   295,   296,    21,    22,   223,   224,   229,
+      23,    24,   103,   240,    25,    26,   153,   104,   333,   334,
+     241,   122,   161,    27,   162,   243,   373,   305,   259,   169,
+     256,   261,   386,   374,   265,   262,    28,    29,    30,   266,
+     269,   259,   271,    31,   278,   272,   281,   284,   286,   111,
+     273,   375,    32,   112,   287,   154,   208,    33,   306,    34,
+     300,    35,    36,   301,   178,   244,   245,   246,   247,   292,
+     313,    37,    38,    39,    40,    41,    42,    43,    44,   233,
+     234,    45,   311,    46,   312,   155,   235,   336,   379,   179,
+     340,   393,    47,   293,   368,   369,   370,    48,    49,    50,
+     380,    51,    52,   376,   383,   163,   377,   180,    53,    54,
+     181,   113,   384,   388,   387,   122,   389,    -6,    55,   392,
+     402,   408,   307,   396,   394,   407,   399,     2,   280,   398,
+     406,     3,     4,     5,   409,   410,   411,   412,   413,     6,
+       7,   335,   422,   417,   403,   419,     8,     9,   420,   421,
+      10,   156,    11,   239,    12,    13,   157,   114,    14,   260,
+     314,   110,   248,   270,   274,   115,   258,    15,   116,   263,
+     285,    16,   409,   410,   411,   412,   413,    17,   391,    18,
+     249,   146,   316,   364,   182,   250,   251,   405,    19,    20,
+     117,     0,    21,    22,   418,   118,     0,    23,    24,     0,
+       0,    25,    26,     0,     0,     0,     0,     0,     0,   382,
+      27,     0,   183,   184,   185,   186,     0,     0,     0,     0,
+     187,     0,     0,    28,    29,    30,     0,     0,     0,     0,
+      31,     0,     0,    86,     0,     0,     0,    87,     0,    32,
+       0,     0,     0,    88,    33,     0,    34,     0,    35,    36,
        0,     0,     0,     0,     0,     0,     0,     0,    37,    38,
       39,    40,    41,    42,    43,    44,     0,     0,    45,     0,
-      46,     0,   316,   351,   193,   352,     0,     0,     0,    47,
-     317,     0,     0,   353,    48,    49,    50,   354,    51,    52,
-       0,     0,     0,     0,     0,    53,    54,     0,   318,   319,
-       0,     0,   320,     0,     0,    55,     0,     0,   321,     0,
-       0,     0,     0,     0,   194,     0,   195,     0,     0,     0,
-       0,     0,   196,     0,   197,     0,     0,   198,     0,     0,
-       0,     0,     0,     0,     0,   322,   323,     0,     0,   324,
-     325,     0,   326,   327,   328,     0,   329,     0,     0,   199,
-     200,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+      46,     0,   341,     0,     0,     0,     0,     0,     0,    47,
+     342,     0,     0,   395,    48,    49,    50,     2,    51,    52,
+       0,     3,     4,     5,    89,    53,    54,     0,     0,     6,
+       7,     0,     0,   191,    -6,    55,     8,     9,     0,   192,
+      10,   193,    11,     0,    12,    13,   343,   344,    14,     0,
+       0,     0,     0,     0,     0,     0,     0,    15,    90,    91,
+       0,    16,     0,   345,     0,     0,     0,    17,   194,    18,
+     135,   136,   137,   138,     0,    92,     0,     0,    19,    20,
+      93,     0,    21,    22,     0,   346,     0,    23,    24,     0,
+       0,    25,    26,   347,     0,   348,     0,     0,     0,     0,
+      27,   139,     0,   140,     0,   141,     0,    94,   195,   349,
+     196,   142,     0,    28,    29,    30,   197,     0,   198,     0,
+      31,   199,     0,     0,     0,     0,     0,   350,   351,    32,
+      95,    96,    97,     0,    33,     0,    34,     0,    35,    36,
+       0,     0,     0,   200,   201,     0,     0,     0,    37,    38,
+      39,    40,    41,    42,    43,    44,     0,     0,    45,     0,
+      46,     0,   317,   352,     0,   353,     0,     0,     0,    47,
+     318,     0,     0,   354,    48,    49,    50,   355,    51,    52,
+       0,     0,     0,     0,     0,    53,    54,     0,   319,   320,
+       0,     0,   321,     0,     0,    55,     0,     0,   322,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   323,   324,     0,     0,   325,
+     326,     0,   327,   328,   329,     0,   330,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   330
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   331
 };
 
-#define yypact_value_is_default(Yystate) \
-  (!!((Yystate) == (-188)))
-
-#define yytable_value_is_error(Yytable_value) \
-  YYID (0)
-
 static const yytype_int16 yycheck[] =
 {
-      15,    39,   189,    61,     7,     8,     1,     4,    45,     5,
-      61,    11,    50,   191,    39,    10,    57,   204,    62,    14,
-      15,    16,    25,   201,    39,    32,   186,    22,    23,    26,
-     188,   189,   146,    61,    29,    30,    61,    61,    33,   158,
-      35,   158,    37,    38,    97,    60,    41,    62,   158,     6,
-     158,   162,   163,    42,    61,    50,   109,   158,    34,    54,
-      61,    64,   158,   158,   158,    60,   253,    62,     8,    65,
-      28,    67,    12,    66,    31,    68,    71,    72,    18,    55,
-      75,    76,    61,     3,   125,    80,    81,   201,   132,    84,
-      85,    94,    49,    51,    61,    52,    54,   158,    93,    99,
-      27,   158,    61,    79,   104,     0,    95,   186,   105,    61,
-     158,   106,   107,   108,   200,   112,   146,   132,   113,   158,
-      61,    32,   173,    43,    44,    45,    46,   122,    61,    69,
-     145,   126,   129,   128,    27,   130,   131,   174,    20,    66,
-     198,    68,    24,    27,   169,   140,   141,   142,   143,   144,
-     145,   146,   147,   264,   265,   150,   159,   152,   188,   189,
-     149,   164,   158,   103,   104,   158,   161,   158,   125,    86,
-     158,   166,   167,   168,    61,   170,   171,   197,   136,   137,
-     120,   368,   177,   178,   181,   143,   182,   184,    61,    10,
-      61,   186,   187,    14,    15,    16,   153,   154,   155,   156,
-      82,    22,    23,    61,   161,   186,    61,   158,    29,    30,
-     397,   151,    33,   158,    35,   402,    37,    38,    61,   139,
-      41,   148,   158,   334,   192,   193,   194,   195,   196,    50,
-     268,   158,   419,    54,   174,   175,   176,   157,    36,    60,
-     158,    62,   162,   163,   186,   127,   158,   197,    27,    61,
-      71,    72,    61,   135,    75,    76,   138,   158,   197,    80,
-      81,   186,    29,    84,    85,   200,   190,   199,   197,   191,
-      37,   197,    93,    40,   104,   142,   186,   200,   160,   186,
-     186,   197,   201,   165,   169,   106,   107,   108,   251,    12,
-     187,   129,   113,   192,   193,   194,   195,   196,   336,   208,
-     157,   122,   201,    29,   296,   126,   254,   128,   364,   130,
-     131,    78,   399,   413,    -1,    -1,    -1,    -1,    -1,   140,
-     141,   142,   143,   144,   145,   146,   147,    -1,    -1,   150,
-      -1,   152,    -1,     9,    -1,    -1,    -1,    -1,    -1,    -1,
-     161,    17,   109,    -1,    -1,   166,   167,   168,    10,   170,
-     171,    -1,    14,    15,    16,    -1,   177,   178,    -1,    -1,
-      22,    23,    -1,    -1,    -1,   186,   187,    29,    30,    -1,
-      -1,    33,   387,    35,    -1,    37,    38,    53,    54,    41,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    50,    -1,
-      -1,    -1,    54,    -1,    70,    -1,    -1,    -1,    60,    -1,
-      62,    56,    57,    58,    59,   172,    -1,    -1,    -1,    71,
-      72,    -1,    -1,    75,    76,    -1,    92,    -1,    80,    81,
-      -1,    -1,    84,    85,   100,    -1,   102,    -1,    -1,    -1,
-      -1,    93,    87,    -1,    89,    -1,    91,    -1,    -1,    -1,
-     116,    -1,    97,    -1,   106,   107,   108,    -1,    -1,    -1,
-      -1,   113,    -1,    -1,    -1,    -1,    -1,   133,   134,    13,
-     122,    -1,    -1,    -1,   126,    19,   128,    21,   130,   131,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   140,   141,
-     142,   143,   144,   145,   146,   147,    -1,    -1,   150,    -1,
-     152,    -1,    47,   169,    48,   171,    -1,    -1,    -1,   161,
-      55,    -1,    -1,   179,   166,   167,   168,   183,   170,   171,
-      -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    73,    74,
-      -1,    -1,    77,    -1,    -1,   187,    -1,    -1,    83,    -1,
-      -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    -1,    -1,
-      -1,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
+      15,    39,   190,    39,    62,     5,   163,   164,    61,    61,
+      45,    42,    50,   187,    11,     4,    57,   205,    66,    98,
+      68,     1,   147,    32,    39,    61,   159,    34,   192,    61,
+      10,   110,    61,   159,    14,    15,    16,    26,   202,   189,
+     190,   159,    22,    23,   159,    60,   159,    62,    55,    29,
+      30,   147,    61,    33,   159,    35,    61,    37,    38,   159,
+      28,    41,    61,    61,    95,    65,   254,    67,    29,   159,
+      50,   159,    79,    27,    54,   133,    37,   202,   159,    40,
+      60,   187,    62,    51,    61,   126,    54,     0,     7,     8,
+      61,    71,    72,   189,   190,    75,    76,   159,   159,   201,
+      80,    81,    99,    61,    84,    85,    25,   104,   265,   266,
+      32,   159,    66,    93,    68,     3,   105,    78,   133,   150,
+     159,    61,   174,   112,    27,   159,   106,   107,   108,    27,
+      86,   146,    61,   113,   170,   198,    61,    61,    61,    20,
+     175,   130,   122,    24,   187,    64,   199,   127,   109,   129,
+      61,   131,   132,   159,     6,    43,    44,    45,    46,   159,
+      61,   141,   142,   143,   144,   145,   146,   147,   148,   137,
+     138,   151,   159,   153,   159,    94,   144,   159,   335,    31,
+      36,   369,   162,   183,   187,   198,   159,   167,   168,   169,
+      27,   171,   172,   182,    61,   149,   185,    49,   178,   179,
+      52,    82,    61,   198,   159,   159,   187,   187,   188,   201,
+     398,   201,   173,   191,   200,   403,   192,    10,   202,   198,
+     187,    14,    15,    16,   193,   194,   195,   196,   197,    22,
+      23,   269,   420,   202,   198,   187,    29,    30,   198,   187,
+      33,   160,    35,   105,    37,    38,   165,   128,    41,   143,
+     252,    12,   140,   170,   188,   136,   130,    50,   139,   158,
+     209,    54,   193,   194,   195,   196,   197,    60,   365,    62,
+     158,    29,   255,   297,   126,   163,   164,   400,    71,    72,
+     161,    -1,    75,    76,   414,   166,    -1,    80,    81,    -1,
+      -1,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,   337,
+      93,    -1,   154,   155,   156,   157,    -1,    -1,    -1,    -1,
+     162,    -1,    -1,   106,   107,   108,    -1,    -1,    -1,    -1,
+     113,    -1,    -1,     8,    -1,    -1,    -1,    12,    -1,   122,
+      -1,    -1,    -1,    18,   127,    -1,   129,    -1,   131,   132,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
+     143,   144,   145,   146,   147,   148,    -1,    -1,   151,    -1,
+     153,    -1,     9,    -1,    -1,    -1,    -1,    -1,    -1,   162,
+      17,    -1,    -1,   388,   167,   168,   169,    10,   171,   172,
+      -1,    14,    15,    16,    69,   178,   179,    -1,    -1,    22,
+      23,    -1,    -1,    13,   187,   188,    29,    30,    -1,    19,
+      33,    21,    35,    -1,    37,    38,    53,    54,    41,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    50,   103,   104,
+      -1,    54,    -1,    70,    -1,    -1,    -1,    60,    48,    62,
+      56,    57,    58,    59,    -1,   120,    -1,    -1,    71,    72,
+     125,    -1,    75,    76,    -1,    92,    -1,    80,    81,    -1,
+      -1,    84,    85,   100,    -1,   102,    -1,    -1,    -1,    -1,
+      93,    87,    -1,    89,    -1,    91,    -1,   152,    88,   116,
+      90,    97,    -1,   106,   107,   108,    96,    -1,    98,    -1,
+     113,   101,    -1,    -1,    -1,    -1,    -1,   134,   135,   122,
+     175,   176,   177,    -1,   127,    -1,   129,    -1,   131,   132,
+      -1,    -1,    -1,   123,   124,    -1,    -1,    -1,   141,   142,
+     143,   144,   145,   146,   147,   148,    -1,    -1,   151,    -1,
+     153,    -1,    47,   170,    -1,   172,    -1,    -1,    -1,   162,
+      55,    -1,    -1,   180,   167,   168,   169,   184,   171,   172,
+      -1,    -1,    -1,    -1,    -1,   178,   179,    -1,    73,    74,
+      -1,    -1,    77,    -1,    -1,   188,    -1,    -1,    83,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,   110,   111,    -1,    -1,   114,
-     115,    -1,   117,   118,   119,    -1,   121,    -1,    -1,   123,
-     124,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     115,    -1,   117,   118,   119,    -1,   121,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   179
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   180
 };
 
-/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
-   symbol of state STATE-NUM.  */
+  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
+     symbol of state STATE-NUM.  */
 static const yytype_uint16 yystos[] =
 {
        0,     1,    10,    14,    15,    16,    22,    23,    29,    30,
       33,    35,    37,    38,    41,    50,    54,    60,    62,    71,
       72,    75,    76,    80,    81,    84,    85,    93,   106,   107,
-     108,   113,   122,   126,   128,   130,   131,   140,   141,   142,
-     143,   144,   145,   146,   147,   150,   152,   161,   166,   167,
-     168,   170,   171,   177,   178,   187,   203,   204,   205,   206,
-     207,   219,   220,   221,   222,   226,   231,   239,   248,   253,
-     257,   262,   266,   267,   268,   269,   270,   278,   279,   282,
-     293,   294,   186,    61,    61,   223,     8,    12,    18,    69,
-     103,   104,   120,   151,   174,   175,   176,   258,   259,   260,
-     261,    11,    99,   104,   242,   243,   244,   158,   271,   258,
-      20,    24,    82,   127,   135,   138,   160,   165,   233,    66,
-      68,   158,   208,   209,   210,   158,   158,   158,   158,   276,
-     277,   208,   290,    61,    56,    57,    58,    59,    87,    89,
-      91,    97,   245,   246,   247,   290,   158,   158,   289,    61,
-       7,     8,    25,    64,    94,   159,   164,   283,   284,    27,
-      66,    68,   148,   208,   209,    61,    42,    95,   149,   254,
-     255,   256,   158,   272,   232,   233,   158,     6,    31,    49,
-      52,   125,   153,   154,   155,   156,   161,   263,   264,   265,
-      13,    19,    21,    48,    88,    90,    96,    98,   101,   123,
-     124,   227,   228,   229,   230,   209,    61,   198,   286,   287,
-     288,    61,   285,     0,   205,   186,   208,   208,    32,    61,
-     292,    61,   158,   158,    34,    55,    79,   281,   200,    28,
-      51,    54,   136,   137,   143,   224,   225,   259,   243,    61,
-      32,   234,     3,    43,    44,    45,    46,   139,   157,   162,
-     163,   249,   250,   251,   252,   158,   205,   277,   208,   246,
-      61,   158,   284,   240,    27,    27,   240,   240,    86,   255,
-      61,   197,   233,   264,   292,    39,    61,   169,   291,   228,
-      61,   292,   274,    61,   287,    61,   186,   211,     5,    65,
-      67,   158,   182,   280,   188,   189,   295,   296,   297,    61,
-     158,    29,    37,    40,    78,   109,   172,   235,   236,   237,
-     158,   158,    61,   250,   292,   291,    47,    55,    73,    74,
-      77,    83,   110,   111,   114,   115,   117,   118,   119,   121,
-     179,   241,   240,   240,   209,   158,    62,   132,   275,    36,
-       9,    17,    53,    54,    70,    92,   100,   102,   116,   133,
-     134,   169,   171,   179,   183,   212,   213,   214,   215,   216,
-     217,   218,   146,   296,   298,   299,   301,   186,   197,   158,
-       4,    26,   105,   112,   129,   181,   184,   238,   240,    27,
-     273,   209,    61,    61,    61,   173,   158,   197,   186,   201,
-     299,   200,   292,   199,   208,   190,   300,   197,   191,   302,
-     303,   292,   197,   201,   303,   186,   292,   200,   192,   193,
-     194,   195,   196,   304,   305,   306,   201,   305,   186,   197,
-     186,   292
+     108,   113,   122,   127,   129,   131,   132,   141,   142,   143,
+     144,   145,   146,   147,   148,   151,   153,   162,   167,   168,
+     169,   171,   172,   178,   179,   188,   204,   205,   206,   207,
+     208,   220,   221,   222,   223,   227,   232,   240,   249,   254,
+     258,   263,   267,   268,   269,   270,   271,   279,   280,   283,
+     294,   295,   187,    61,    61,   224,     8,    12,    18,    69,
+     103,   104,   120,   125,   152,   175,   176,   177,   259,   260,
+     261,   262,    11,    99,   104,   243,   244,   245,   159,   272,
+     259,    20,    24,    82,   128,   136,   139,   161,   166,   234,
+      66,    68,   159,   209,   210,   211,   159,   159,   159,   159,
+     277,   278,   209,   291,    61,    56,    57,    58,    59,    87,
+      89,    91,    97,   246,   247,   248,   291,   159,   159,   290,
+      61,     7,     8,    25,    64,    94,   160,   165,   284,   285,
+      27,    66,    68,   149,   209,   210,    61,    42,    95,   150,
+     255,   256,   257,   159,   273,   233,   234,   159,     6,    31,
+      49,    52,   126,   154,   155,   156,   157,   162,   264,   265,
+     266,    13,    19,    21,    48,    88,    90,    96,    98,   101,
+     123,   124,   228,   229,   230,   231,   210,    61,   199,   287,
+     288,   289,    61,   286,     0,   206,   187,   209,   209,    32,
+      61,   293,    61,   159,   159,    34,    55,    79,   282,   201,
+      28,    51,    54,   137,   138,   144,   225,   226,   260,   244,
+      61,    32,   235,     3,    43,    44,    45,    46,   140,   158,
+     163,   164,   250,   251,   252,   253,   159,   206,   278,   209,
+     247,    61,   159,   285,   241,    27,    27,   241,   241,    86,
+     256,    61,   198,   234,   265,   293,    39,    61,   170,   292,
+     229,    61,   293,   275,    61,   288,    61,   187,   212,     5,
+      65,    67,   159,   183,   281,   189,   190,   296,   297,   298,
+      61,   159,    29,    37,    40,    78,   109,   173,   236,   237,
+     238,   159,   159,    61,   251,   293,   292,    47,    55,    73,
+      74,    77,    83,   110,   111,   114,   115,   117,   118,   119,
+     121,   180,   242,   241,   241,   210,   159,    62,   133,   276,
+      36,     9,    17,    53,    54,    70,    92,   100,   102,   116,
+     134,   135,   170,   172,   180,   184,   213,   214,   215,   216,
+     217,   218,   219,   147,   297,   299,   300,   302,   187,   198,
+     159,     4,    26,   105,   112,   130,   182,   185,   239,   241,
+      27,   274,   210,    61,    61,    61,   174,   159,   198,   187,
+     202,   300,   201,   293,   200,   209,   191,   301,   198,   192,
+     303,   304,   293,   198,   202,   304,   187,   293,   201,   193,
+     194,   195,   196,   197,   305,   306,   307,   202,   306,   187,
+     198,   187,   293
 };
 
-#define yyerrok		(yyerrstatus = 0)
-#define yyclearin	(yychar = YYEMPTY)
-#define YYEMPTY		(-2)
-#define YYEOF		0
+  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
+static const yytype_uint16 yyr1[] =
+{
+       0,   203,   204,   205,   205,   205,   206,   206,   206,   206,
+     206,   206,   206,   206,   206,   206,   206,   206,   206,   206,
+     207,   208,   208,   208,   208,   208,   209,   209,   210,   211,
+     211,   212,   212,   213,   213,   213,   214,   215,   215,   215,
+     215,   215,   215,   215,   215,   216,   216,   217,   217,   217,
+     217,   217,   217,   218,   219,   220,   221,   221,   222,   222,
+     222,   222,   223,   223,   223,   223,   223,   223,   223,   223,
+     223,   224,   224,   225,   225,   226,   226,   226,   226,   226,
+     227,   228,   228,   229,   229,   229,   230,   230,   230,   230,
+     230,   230,   231,   231,   231,   231,   232,   232,   232,   233,
+     233,   234,   234,   234,   234,   234,   234,   234,   234,   235,
+     235,   236,   236,   236,   236,   237,   237,   238,   238,   239,
+     239,   239,   239,   239,   239,   239,   240,   240,   240,   240,
+     240,   240,   240,   240,   241,   241,   242,   242,   242,   242,
+     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
+     242,   243,   243,   244,   245,   245,   245,   246,   246,   247,
+     248,   248,   248,   248,   248,   248,   248,   248,   249,   250,
+     250,   251,   251,   251,   251,   251,   252,   252,   253,   253,
+     253,   253,   254,   255,   255,   256,   257,   257,   257,   258,
+     258,   259,   259,   260,   260,   261,   261,   261,   261,   261,
+     261,   262,   262,   262,   262,   262,   262,   263,   264,   264,
+     265,   266,   266,   266,   266,   266,   266,   266,   266,   266,
+     266,   267,   267,   267,   267,   267,   267,   267,   267,   267,
+     267,   267,   267,   267,   267,   268,   268,   268,   269,   269,
+     270,   270,   271,   271,   271,   272,   272,   272,   273,   274,
+     274,   275,   275,   276,   276,   277,   277,   278,   279,   279,
+     280,   280,   281,   281,   281,   281,   282,   282,   282,   283,
+     284,   284,   285,   285,   285,   285,   285,   285,   285,   286,
+     286,   287,   287,   288,   288,   289,   290,   290,   291,   291,
+     292,   292,   292,   293,   293,   294,   295,   296,   296,   297,
+     298,   298,   299,   299,   300,   301,   302,   303,   303,   304,
+     305,   305,   306,   307,   307,   307,   307,   307
+};
 
-#define YYACCEPT	goto yyacceptlab
-#define YYABORT		goto yyabortlab
-#define YYERROR		goto yyerrorlab
+  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
+static const yytype_uint8 yyr2[] =
+{
+       0,     2,     1,     3,     2,     2,     0,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
+       3,     1,     1,     1,     1,     1,     1,     2,     1,     1,
+       1,     0,     2,     1,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
+       1,     1,     1,     2,     1,     2,     1,     1,     1,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+       2,     0,     2,     2,     2,     1,     1,     1,     1,     1,
+       2,     2,     1,     2,     2,     2,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     2,     2,     3,     2,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
+       2,     2,     2,     1,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     2,     2,     3,     5,
+       3,     4,     4,     3,     0,     2,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
+       1,     2,     1,     2,     1,     1,     1,     2,     1,     2,
+       1,     1,     1,     1,     1,     1,     1,     1,     3,     2,
+       1,     2,     2,     2,     2,     2,     1,     1,     1,     1,
+       1,     1,     2,     2,     1,     2,     1,     1,     1,     2,
+       2,     2,     1,     1,     1,     1,     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,     1,     1,     2,     2,     2,     2,     3,     1,     2,
+       2,     2,     2,     3,     2,     1,     1,     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
+};
 
 
-/* Like YYERROR except do call yyerror.  This remains here temporarily
-   to ease the transition to the new meaning of YYERROR, for GCC.
-   Once GCC version 2 has supplanted version 1, this can go.  However,
-   YYFAIL appears to be in use.  Nevertheless, it is formally deprecated
-   in Bison 2.4.2's NEWS entry, where a plan to phase it out is
-   discussed.  */
+#define yyerrok         (yyerrstatus = 0)
+#define yyclearin       (yychar = YYEMPTY)
+#define YYEMPTY         (-2)
+#define YYEOF           0
 
-#define YYFAIL		goto yyerrlab
-#if defined YYFAIL
-  /* This is here to suppress warnings from the GCC cpp's
-     -Wunused-macros.  Normally we don't worry about that warning, but
-     some users do, and we want to make it easy for users to remove
-     YYFAIL uses, which will produce warnings from Bison 2.5.  */
-#endif
+#define YYACCEPT        goto yyacceptlab
+#define YYABORT         goto yyabortlab
+#define YYERROR         goto yyerrorlab
 
+
 #define YYRECOVERING()  (!!yyerrstatus)
 
 #define YYBACKUP(Token, Value)                                  \
@@ -1584,28 +1458,16 @@
   else                                                          \
     {                                                           \
       yyerror (YY_("syntax error: cannot back up")); \
-      YYERROR;							\
-    }								\
-while (YYID (0))
+      YYERROR;                                                  \
+    }                                                           \
+while (0)
 
 /* Error token number */
-#define YYTERROR	1
-#define YYERRCODE	256
+#define YYTERROR        1
+#define YYERRCODE       256
 
 
-/* This macro is provided for backward compatibility. */
-#ifndef YY_LOCATION_PRINT
-# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-#endif
 
-
-/* YYLEX -- calling `yylex' with the right arguments.  */
-#ifdef YYLEX_PARAM
-# define YYLEX yylex (YYLEX_PARAM)
-#else
-# define YYLEX yylex ()
-#endif
-
 /* Enable debugging if requested.  */
 #if YYDEBUG
 
@@ -1614,40 +1476,36 @@
 #  define YYFPRINTF fprintf
 # endif
 
-# define YYDPRINTF(Args)			\
-do {						\
-  if (yydebug)					\
-    YYFPRINTF Args;				\
-} while (YYID (0))
+# define YYDPRINTF(Args)                        \
+do {                                            \
+  if (yydebug)                                  \
+    YYFPRINTF Args;                             \
+} while (0)
 
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location)			  \
-do {									  \
-  if (yydebug)								  \
-    {									  \
-      YYFPRINTF (stderr, "%s ", Title);					  \
-      yy_symbol_print (stderr,						  \
-		  Type, Value); \
-      YYFPRINTF (stderr, "\n");						  \
-    }									  \
-} while (YYID (0))
+/* This macro is provided for backward compatibility. */
+#ifndef YY_LOCATION_PRINT
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+#endif
 
 
-/*--------------------------------.
-| Print this symbol on YYOUTPUT.  |
-`--------------------------------*/
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
+do {                                                                      \
+  if (yydebug)                                                            \
+    {                                                                     \
+      YYFPRINTF (stderr, "%s ", Title);                                   \
+      yy_symbol_print (stderr,                                            \
+                  Type, Value); \
+      YYFPRINTF (stderr, "\n");                                           \
+    }                                                                     \
+} while (0)
 
-/*ARGSUSED*/
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
+
+/*----------------------------------------.
+| Print this symbol's value on YYOUTPUT.  |
+`----------------------------------------*/
+
 static void
 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
-#else
-static void
-yy_symbol_value_print (yyoutput, yytype, yyvaluep)
-    FILE *yyoutput;
-    int yytype;
-    YYSTYPE const * const yyvaluep;
-#endif
 {
   FILE *yyo = yyoutput;
   YYUSE (yyo);
@@ -1656,8 +1514,6 @@
 # ifdef YYPRINT
   if (yytype < YYNTOKENS)
     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-# else
-  YYUSE (yyoutput);
 # endif
   YYUSE (yytype);
 }
@@ -1667,22 +1523,11 @@
 | Print this symbol on YYOUTPUT.  |
 `--------------------------------*/
 
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static void
 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
-#else
-static void
-yy_symbol_print (yyoutput, yytype, yyvaluep)
-    FILE *yyoutput;
-    int yytype;
-    YYSTYPE const * const yyvaluep;
-#endif
 {
-  if (yytype < YYNTOKENS)
-    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
-  else
-    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+  YYFPRINTF (yyoutput, "%s %s (",
+             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
 
   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
   YYFPRINTF (yyoutput, ")");
@@ -1693,16 +1538,8 @@
 | TOP (included).                                                   |
 `------------------------------------------------------------------*/
 
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static void
 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
-#else
-static void
-yy_stack_print (yybottom, yytop)
-    yytype_int16 *yybottom;
-    yytype_int16 *yytop;
-#endif
 {
   YYFPRINTF (stderr, "Stack now");
   for (; yybottom <= yytop; yybottom++)
@@ -1713,11 +1550,11 @@
   YYFPRINTF (stderr, "\n");
 }
 
-# define YY_STACK_PRINT(Bottom, Top)				\
-do {								\
-  if (yydebug)							\
-    yy_stack_print ((Bottom), (Top));				\
-} while (YYID (0))
+# define YY_STACK_PRINT(Bottom, Top)                            \
+do {                                                            \
+  if (yydebug)                                                  \
+    yy_stack_print ((Bottom), (Top));                           \
+} while (0)
 
 
 /*------------------------------------------------.
@@ -1724,38 +1561,31 @@
 | Report that the YYRULE is going to be reduced.  |
 `------------------------------------------------*/
 
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static void
-yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
-#else
-static void
-yy_reduce_print (yyvsp, yyrule)
-    YYSTYPE *yyvsp;
-    int yyrule;
-#endif
+yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)
 {
+  unsigned long int yylno = yyrline[yyrule];
   int yynrhs = yyr2[yyrule];
   int yyi;
-  unsigned long int yylno = yyrline[yyrule];
   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
-	     yyrule - 1, yylno);
+             yyrule - 1, yylno);
   /* The symbols being reduced.  */
   for (yyi = 0; yyi < yynrhs; yyi++)
     {
       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
-      yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
-		       &(yyvsp[(yyi + 1) - (yynrhs)])
-		       		       );
+      yy_symbol_print (stderr,
+                       yystos[yyssp[yyi + 1 - yynrhs]],
+                       &(yyvsp[(yyi + 1) - (yynrhs)])
+                                              );
       YYFPRINTF (stderr, "\n");
     }
 }
 
-# define YY_REDUCE_PRINT(Rule)		\
-do {					\
-  if (yydebug)				\
-    yy_reduce_print (yyvsp, Rule); \
-} while (YYID (0))
+# define YY_REDUCE_PRINT(Rule)          \
+do {                                    \
+  if (yydebug)                          \
+    yy_reduce_print (yyssp, yyvsp, Rule); \
+} while (0)
 
 /* Nonzero means print parse trace.  It is left uninitialized so that
    multiple parsers can coexist.  */
@@ -1769,7 +1599,7 @@
 
 
 /* YYINITDEPTH -- initial size of the parser's stacks.  */
-#ifndef	YYINITDEPTH
+#ifndef YYINITDEPTH
 # define YYINITDEPTH 200
 #endif
 
@@ -1792,15 +1622,8 @@
 #   define yystrlen strlen
 #  else
 /* Return the length of YYSTR.  */
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static YYSIZE_T
 yystrlen (const char *yystr)
-#else
-static YYSIZE_T
-yystrlen (yystr)
-    const char *yystr;
-#endif
 {
   YYSIZE_T yylen;
   for (yylen = 0; yystr[yylen]; yylen++)
@@ -1816,16 +1639,8 @@
 #  else
 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
    YYDEST.  */
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static char *
 yystpcpy (char *yydest, const char *yysrc)
-#else
-static char *
-yystpcpy (yydest, yysrc)
-    char *yydest;
-    const char *yysrc;
-#endif
 {
   char *yyd = yydest;
   const char *yys = yysrc;
@@ -1855,27 +1670,27 @@
       char const *yyp = yystr;
 
       for (;;)
-	switch (*++yyp)
-	  {
-	  case '\'':
-	  case ',':
-	    goto do_not_strip_quotes;
+        switch (*++yyp)
+          {
+          case '\'':
+          case ',':
+            goto do_not_strip_quotes;
 
-	  case '\\':
-	    if (*++yyp != '\\')
-	      goto do_not_strip_quotes;
-	    /* Fall through.  */
-	  default:
-	    if (yyres)
-	      yyres[yyn] = *yyp;
-	    yyn++;
-	    break;
+          case '\\':
+            if (*++yyp != '\\')
+              goto do_not_strip_quotes;
+            /* Fall through.  */
+          default:
+            if (yyres)
+              yyres[yyn] = *yyp;
+            yyn++;
+            break;
 
-	  case '"':
-	    if (yyres)
-	      yyres[yyn] = '\0';
-	    return yyn;
-	  }
+          case '"':
+            if (yyres)
+              yyres[yyn] = '\0';
+            return yyn;
+          }
     do_not_strip_quotes: ;
     }
 
@@ -1898,11 +1713,11 @@
 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
                 yytype_int16 *yyssp, int yytoken)
 {
-  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
+  YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
   YYSIZE_T yysize = yysize0;
   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
   /* Internationalized format string. */
-  const char *yyformat = YY_NULL;
+  const char *yyformat = YY_NULLPTR;
   /* Arguments of yyformat. */
   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
   /* Number of reported tokens (one for the "unexpected", one per
@@ -1910,10 +1725,6 @@
   int yycount = 0;
 
   /* There are many possibilities here to consider:
-     - Assume YYFAIL is not used.  It's too flawed to consider.  See
-       <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
-       for details.  YYERROR is fine as it does not invoke this
-       function.
      - If this state is a consistent state with a default action, then
        the only way this function was invoked is if the default action
        is an error action.  In that case, don't check for expected
@@ -1963,7 +1774,7 @@
                   }
                 yyarg[yycount++] = yytname[yyx];
                 {
-                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
+                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
                   if (! (yysize <= yysize1
                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
                     return 2;
@@ -2030,26 +1841,17 @@
 | Release the memory associated to this symbol.  |
 `-----------------------------------------------*/
 
-/*ARGSUSED*/
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 static void
 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
-#else
-static void
-yydestruct (yymsg, yytype, yyvaluep)
-    const char *yymsg;
-    int yytype;
-    YYSTYPE *yyvaluep;
-#endif
 {
   YYUSE (yyvaluep);
-
   if (!yymsg)
     yymsg = "Deleting";
   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
 
+  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   YYUSE (yytype);
+  YY_IGNORE_MAYBE_UNINITIALIZED_END
 }
 
 
@@ -2058,18 +1860,8 @@
 /* The lookahead symbol.  */
 int yychar;
 
-
-#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
-# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
-# define YY_IGNORE_MAYBE_UNINITIALIZED_END
-#endif
-#ifndef YY_INITIAL_VALUE
-# define YY_INITIAL_VALUE(Value) /* Nothing. */
-#endif
-
 /* The semantic value of the lookahead symbol.  */
-YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
-
+YYSTYPE yylval;
 /* Number of syntax errors so far.  */
 int yynerrs;
 
@@ -2078,27 +1870,8 @@
 | yyparse.  |
 `----------*/
 
-#ifdef YYPARSE_PARAM
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
 int
-yyparse (void *YYPARSE_PARAM)
-#else
-int
-yyparse (YYPARSE_PARAM)
-    void *YYPARSE_PARAM;
-#endif
-#else /* ! YYPARSE_PARAM */
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-int
 yyparse (void)
-#else
-int
-yyparse ()
-
-#endif
-#endif
 {
     int yystate;
     /* Number of tokens to shift before error messages enabled.  */
@@ -2105,8 +1878,8 @@
     int yyerrstatus;
 
     /* The stacks and their tools:
-       `yyss': related to states.
-       `yyvs': related to semantic values.
+       'yyss': related to states.
+       'yyvs': related to semantic values.
 
        Refer to the stacks through separate pointers, to allow yyoverflow
        to reallocate them elsewhere.  */
@@ -2174,23 +1947,23 @@
 
 #ifdef yyoverflow
       {
-	/* Give user a chance to reallocate the stack.  Use copies of
-	   these so that the &'s don't force the real ones into
-	   memory.  */
-	YYSTYPE *yyvs1 = yyvs;
-	yytype_int16 *yyss1 = yyss;
+        /* Give user a chance to reallocate the stack.  Use copies of
+           these so that the &'s don't force the real ones into
+           memory.  */
+        YYSTYPE *yyvs1 = yyvs;
+        yytype_int16 *yyss1 = yyss;
 
-	/* Each stack pointer address is followed by the size of the
-	   data in use in that stack, in bytes.  This used to be a
-	   conditional around just the two extra args, but that might
-	   be undefined if yyoverflow is a macro.  */
-	yyoverflow (YY_("memory exhausted"),
-		    &yyss1, yysize * sizeof (*yyssp),
-		    &yyvs1, yysize * sizeof (*yyvsp),
-		    &yystacksize);
+        /* Each stack pointer address is followed by the size of the
+           data in use in that stack, in bytes.  This used to be a
+           conditional around just the two extra args, but that might
+           be undefined if yyoverflow is a macro.  */
+        yyoverflow (YY_("memory exhausted"),
+                    &yyss1, yysize * sizeof (*yyssp),
+                    &yyvs1, yysize * sizeof (*yyvsp),
+                    &yystacksize);
 
-	yyss = yyss1;
-	yyvs = yyvs1;
+        yyss = yyss1;
+        yyvs = yyvs1;
       }
 #else /* no yyoverflow */
 # ifndef YYSTACK_RELOCATE
@@ -2198,22 +1971,22 @@
 # else
       /* Extend the stack our own way.  */
       if (YYMAXDEPTH <= yystacksize)
-	goto yyexhaustedlab;
+        goto yyexhaustedlab;
       yystacksize *= 2;
       if (YYMAXDEPTH < yystacksize)
-	yystacksize = YYMAXDEPTH;
+        yystacksize = YYMAXDEPTH;
 
       {
-	yytype_int16 *yyss1 = yyss;
-	union yyalloc *yyptr =
-	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
-	if (! yyptr)
-	  goto yyexhaustedlab;
-	YYSTACK_RELOCATE (yyss_alloc, yyss);
-	YYSTACK_RELOCATE (yyvs_alloc, yyvs);
+        yytype_int16 *yyss1 = yyss;
+        union yyalloc *yyptr =
+          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
+        if (! yyptr)
+          goto yyexhaustedlab;
+        YYSTACK_RELOCATE (yyss_alloc, yyss);
+        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
 #  undef YYSTACK_RELOCATE
-	if (yyss1 != yyssa)
-	  YYSTACK_FREE (yyss1);
+        if (yyss1 != yyssa)
+          YYSTACK_FREE (yyss1);
       }
 # endif
 #endif /* no yyoverflow */
@@ -2222,10 +1995,10 @@
       yyvsp = yyvs + yysize - 1;
 
       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
-		  (unsigned long int) yystacksize));
+                  (unsigned long int) yystacksize));
 
       if (yyss + yystacksize - 1 <= yyssp)
-	YYABORT;
+        YYABORT;
     }
 
   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
@@ -2254,7 +2027,7 @@
   if (yychar == YYEMPTY)
     {
       YYDPRINTF ((stderr, "Reading a token: "));
-      yychar = YYLEX;
+      yychar = yylex ();
     }
 
   if (yychar <= YYEOF)
@@ -2319,7 +2092,7 @@
   yylen = yyr2[yyn];
 
   /* If YYLEN is nonzero, implement the default value of the action:
-     `$$ = $1'.
+     '$$ = $1'.
 
      Otherwise, the following line sets YYVAL to garbage.
      This behavior is undocumented and Bison
@@ -2333,8 +2106,7 @@
   switch (yyn)
     {
         case 5:
-/* Line 1787 of yacc.c  */
-#line 376 "../../ntpd/ntp_parser.y"
+#line 377 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			/* I will need to incorporate much more fine grained
 			 * error messages. The following should suffice for
@@ -2347,173 +2119,173 @@
 				ip_ctx->errpos.nline,
 				ip_ctx->errpos.ncol);
 		}
+#line 2123 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 20:
-/* Line 1787 of yacc.c  */
-#line 412 "../../ntpd/ntp_parser.y"
+#line 413 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			peer_node *my_node;
 
-			my_node = create_peer_node((yyvsp[(1) - (3)].Integer), (yyvsp[(2) - (3)].Address_node), (yyvsp[(3) - (3)].Attr_val_fifo));
+			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 2134 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 27:
-/* Line 1787 of yacc.c  */
-#line 431 "../../ntpd/ntp_parser.y"
-    { (yyval.Address_node) = create_address_node((yyvsp[(2) - (2)].String), (yyvsp[(1) - (2)].Integer)); }
+#line 432 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Address_node) = create_address_node((yyvsp[0].String), (yyvsp[-1].Integer)); }
+#line 2140 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 28:
-/* Line 1787 of yacc.c  */
-#line 436 "../../ntpd/ntp_parser.y"
-    { (yyval.Address_node) = create_address_node((yyvsp[(1) - (1)].String), AF_UNSPEC); }
+#line 437 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Address_node) = create_address_node((yyvsp[0].String), AF_UNSPEC); }
+#line 2146 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 29:
-/* Line 1787 of yacc.c  */
-#line 441 "../../ntpd/ntp_parser.y"
+#line 442 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Integer) = AF_INET; }
+#line 2152 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 30:
-/* Line 1787 of yacc.c  */
-#line 443 "../../ntpd/ntp_parser.y"
+#line 444 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Integer) = AF_INET6; }
+#line 2158 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 31:
-/* Line 1787 of yacc.c  */
-#line 448 "../../ntpd/ntp_parser.y"
+#line 449 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Attr_val_fifo) = NULL; }
+#line 2164 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 32:
-/* Line 1787 of yacc.c  */
-#line 450 "../../ntpd/ntp_parser.y"
+#line 451 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2173 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 36:
-/* Line 1787 of yacc.c  */
-#line 464 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[(1) - (1)].Integer)); }
+#line 465 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
+#line 2179 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 45:
-/* Line 1787 of yacc.c  */
-#line 480 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 481 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2185 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 46:
-/* Line 1787 of yacc.c  */
-#line 482 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_uval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 483 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_uval((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2191 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 53:
-/* Line 1787 of yacc.c  */
-#line 496 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String)); }
+#line 497 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
+#line 2197 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 55:
-/* Line 1787 of yacc.c  */
-#line 510 "../../ntpd/ntp_parser.y"
+#line 511 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			unpeer_node *my_node;
 
-			my_node = create_unpeer_node((yyvsp[(2) - (2)].Address_node));
+			my_node = create_unpeer_node((yyvsp[0].Address_node));
 			if (my_node)
 				APPEND_G_FIFO(cfgt.unpeers, my_node);
 		}
+#line 2209 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 58:
-/* Line 1787 of yacc.c  */
-#line 531 "../../ntpd/ntp_parser.y"
+#line 532 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { cfgt.broadcastclient = 1; }
+#line 2215 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 59:
-/* Line 1787 of yacc.c  */
-#line 533 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[(2) - (2)].Address_fifo)); }
+#line 534 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.manycastserver, (yyvsp[0].Address_fifo)); }
+#line 2221 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 60:
-/* Line 1787 of yacc.c  */
-#line 535 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[(2) - (2)].Address_fifo)); }
+#line 536 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.multicastclient, (yyvsp[0].Address_fifo)); }
+#line 2227 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 61:
-/* Line 1787 of yacc.c  */
-#line 537 "../../ntpd/ntp_parser.y"
-    { cfgt.mdnstries = (yyvsp[(2) - (2)].Integer); }
+#line 538 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.mdnstries = (yyvsp[0].Integer); }
+#line 2233 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 62:
-/* Line 1787 of yacc.c  */
-#line 548 "../../ntpd/ntp_parser.y"
+#line 549 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			attr_val *atrv;
 
-			atrv = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer));
+			atrv = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
 			APPEND_G_FIFO(cfgt.vars, atrv);
 		}
+#line 2244 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 63:
-/* Line 1787 of yacc.c  */
-#line 555 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.control_key = (yyvsp[(2) - (2)].Integer); }
+#line 556 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.control_key = (yyvsp[0].Integer); }
+#line 2250 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 64:
-/* Line 1787 of yacc.c  */
-#line 557 "../../ntpd/ntp_parser.y"
+#line 558 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			cfgt.auth.cryptosw++;
-			CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[(2) - (2)].Attr_val_fifo));
+			CONCAT_G_FIFOS(cfgt.auth.crypto_cmd_list, (yyvsp[0].Attr_val_fifo));
 		}
+#line 2259 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 65:
-/* Line 1787 of yacc.c  */
-#line 562 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.keys = (yyvsp[(2) - (2)].String); }
+#line 563 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.keys = (yyvsp[0].String); }
+#line 2265 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 66:
-/* Line 1787 of yacc.c  */
-#line 564 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.keysdir = (yyvsp[(2) - (2)].String); }
+#line 565 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.keysdir = (yyvsp[0].String); }
+#line 2271 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 67:
-/* Line 1787 of yacc.c  */
-#line 566 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.request_key = (yyvsp[(2) - (2)].Integer); }
+#line 567 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.request_key = (yyvsp[0].Integer); }
+#line 2277 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 68:
-/* Line 1787 of yacc.c  */
-#line 568 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.revoke = (yyvsp[(2) - (2)].Integer); }
+#line 569 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.revoke = (yyvsp[0].Integer); }
+#line 2283 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 69:
-/* Line 1787 of yacc.c  */
-#line 570 "../../ntpd/ntp_parser.y"
+#line 571 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			cfgt.auth.trusted_key_list = (yyvsp[(2) - (2)].Attr_val_fifo);
+			cfgt.auth.trusted_key_list = (yyvsp[0].Attr_val_fifo);
 
 			// if (!cfgt.auth.trusted_key_list)
 			// 	cfgt.auth.trusted_key_list = $2;
@@ -2520,191 +2292,191 @@
 			// else
 			// 	LINK_SLIST(cfgt.auth.trusted_key_list, $2, link);
 		}
+#line 2296 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 70:
-/* Line 1787 of yacc.c  */
-#line 579 "../../ntpd/ntp_parser.y"
-    { cfgt.auth.ntp_signd_socket = (yyvsp[(2) - (2)].String); }
+#line 580 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { cfgt.auth.ntp_signd_socket = (yyvsp[0].String); }
+#line 2302 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 71:
-/* Line 1787 of yacc.c  */
-#line 584 "../../ntpd/ntp_parser.y"
+#line 585 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Attr_val_fifo) = NULL; }
+#line 2308 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 72:
-/* Line 1787 of yacc.c  */
-#line 586 "../../ntpd/ntp_parser.y"
+#line 587 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2317 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 73:
-/* Line 1787 of yacc.c  */
-#line 594 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String)); }
+#line 595 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
+#line 2323 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 74:
-/* Line 1787 of yacc.c  */
-#line 596 "../../ntpd/ntp_parser.y"
+#line 597 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val) = NULL;
-			cfgt.auth.revoke = (yyvsp[(2) - (2)].Integer);
+			cfgt.auth.revoke = (yyvsp[0].Integer);
 			msyslog(LOG_WARNING,
 				"'crypto revoke %d' is deprecated, "
 				"please use 'revoke %d' instead.",
 				cfgt.auth.revoke, cfgt.auth.revoke);
 		}
+#line 2336 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 80:
-/* Line 1787 of yacc.c  */
-#line 621 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+#line 622 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.orphan_cmds, (yyvsp[0].Attr_val_fifo)); }
+#line 2342 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 81:
-/* Line 1787 of yacc.c  */
-#line 626 "../../ntpd/ntp_parser.y"
+#line 627 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2351 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 82:
-/* Line 1787 of yacc.c  */
-#line 631 "../../ntpd/ntp_parser.y"
+#line 632 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2360 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 83:
-/* Line 1787 of yacc.c  */
-#line 639 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (2)].Integer), (double)(yyvsp[(2) - (2)].Integer)); }
+#line 640 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
+#line 2366 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 84:
-/* Line 1787 of yacc.c  */
-#line 641 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Double)); }
+#line 642 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
+#line 2372 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 85:
-/* Line 1787 of yacc.c  */
-#line 643 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (2)].Integer), (double)(yyvsp[(2) - (2)].Integer)); }
+#line 644 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (double)(yyvsp[0].Integer)); }
+#line 2378 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 96:
-/* Line 1787 of yacc.c  */
-#line 669 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[(2) - (2)].Int_fifo)); }
+#line 670 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.stats_list, (yyvsp[0].Int_fifo)); }
+#line 2384 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 97:
-/* Line 1787 of yacc.c  */
-#line 671 "../../ntpd/ntp_parser.y"
+#line 672 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
-				cfgt.stats_dir = (yyvsp[(2) - (2)].String);
+				cfgt.stats_dir = (yyvsp[0].String);
 			} else {
-				YYFREE((yyvsp[(2) - (2)].String));
+				YYFREE((yyvsp[0].String));
 				yyerror("statsdir remote configuration ignored");
 			}
 		}
+#line 2397 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 98:
-/* Line 1787 of yacc.c  */
-#line 680 "../../ntpd/ntp_parser.y"
+#line 681 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			filegen_node *fgn;
 
-			fgn = create_filegen_node((yyvsp[(2) - (3)].Integer), (yyvsp[(3) - (3)].Attr_val_fifo));
+			fgn = create_filegen_node((yyvsp[-1].Integer), (yyvsp[0].Attr_val_fifo));
 			APPEND_G_FIFO(cfgt.filegen_opts, fgn);
 		}
+#line 2408 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 99:
-/* Line 1787 of yacc.c  */
-#line 690 "../../ntpd/ntp_parser.y"
+#line 691 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Int_fifo) = (yyvsp[(1) - (2)].Int_fifo);
-			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[(2) - (2)].Integer)));
+			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
+			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 2417 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 100:
-/* Line 1787 of yacc.c  */
-#line 695 "../../ntpd/ntp_parser.y"
+#line 696 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Int_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[(1) - (1)].Integer)));
+			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 2426 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 109:
-/* Line 1787 of yacc.c  */
-#line 714 "../../ntpd/ntp_parser.y"
+#line 715 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Attr_val_fifo) = NULL; }
+#line 2432 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 110:
-/* Line 1787 of yacc.c  */
-#line 716 "../../ntpd/ntp_parser.y"
+#line 717 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2441 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 111:
-/* Line 1787 of yacc.c  */
-#line 724 "../../ntpd/ntp_parser.y"
+#line 725 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
-				(yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String));
+				(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
 			} else {
 				(yyval.Attr_val) = NULL;
-				YYFREE((yyvsp[(2) - (2)].String));
+				YYFREE((yyvsp[0].String));
 				yyerror("filegen file remote config ignored");
 			}
 		}
+#line 2455 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 112:
-/* Line 1787 of yacc.c  */
-#line 734 "../../ntpd/ntp_parser.y"
+#line 735 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
-				(yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer));
+				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
 			} else {
 				(yyval.Attr_val) = NULL;
 				yyerror("filegen type remote config ignored");
 			}
 		}
+#line 2468 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 113:
-/* Line 1787 of yacc.c  */
-#line 743 "../../ntpd/ntp_parser.y"
+#line 744 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			const char *err;
 
 			if (lex_from_file()) {
-				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[(1) - (1)].Integer));
+				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
 			} else {
 				(yyval.Attr_val) = NULL;
-				if (T_Link == (yyvsp[(1) - (1)].Integer))
+				if (T_Link == (yyvsp[0].Integer))
 					err = "filegen link remote config ignored";
 				else
 					err = "filegen nolink remote config ignored";
@@ -2711,69 +2483,69 @@
 				yyerror(err);
 			}
 		}
+#line 2487 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 114:
-/* Line 1787 of yacc.c  */
-#line 758 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[(1) - (1)].Integer)); }
+#line 759 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
+#line 2493 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 126:
-/* Line 1787 of yacc.c  */
-#line 788 "../../ntpd/ntp_parser.y"
+#line 789 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[(2) - (2)].Attr_val_fifo));
+			CONCAT_G_FIFOS(cfgt.discard_opts, (yyvsp[0].Attr_val_fifo));
 		}
+#line 2501 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 127:
-/* Line 1787 of yacc.c  */
-#line 792 "../../ntpd/ntp_parser.y"
+#line 793 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[(2) - (2)].Attr_val_fifo));
+			CONCAT_G_FIFOS(cfgt.mru_opts, (yyvsp[0].Attr_val_fifo));
 		}
+#line 2509 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 128:
-/* Line 1787 of yacc.c  */
-#line 796 "../../ntpd/ntp_parser.y"
+#line 797 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *rn;
 
-			rn = create_restrict_node((yyvsp[(2) - (3)].Address_node), NULL, (yyvsp[(3) - (3)].Int_fifo),
+			rn = create_restrict_node((yyvsp[-1].Address_node), NULL, (yyvsp[0].Int_fifo),
 						  lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2521 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 129:
-/* Line 1787 of yacc.c  */
-#line 804 "../../ntpd/ntp_parser.y"
+#line 805 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *rn;
 
-			rn = create_restrict_node((yyvsp[(2) - (5)].Address_node), (yyvsp[(4) - (5)].Address_node), (yyvsp[(5) - (5)].Int_fifo),
+			rn = create_restrict_node((yyvsp[-3].Address_node), (yyvsp[-1].Address_node), (yyvsp[0].Int_fifo),
 						  lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2533 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 130:
-/* Line 1787 of yacc.c  */
-#line 812 "../../ntpd/ntp_parser.y"
+#line 813 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *rn;
 
-			rn = create_restrict_node(NULL, NULL, (yyvsp[(3) - (3)].Int_fifo),
+			rn = create_restrict_node(NULL, NULL, (yyvsp[0].Int_fifo),
 						  lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2545 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 131:
-/* Line 1787 of yacc.c  */
-#line 820 "../../ntpd/ntp_parser.y"
+#line 821 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *rn;
 
@@ -2784,15 +2556,15 @@
 				create_address_node(
 					estrdup("0.0.0.0"),
 					AF_INET),
-				(yyvsp[(4) - (4)].Int_fifo),
+				(yyvsp[0].Int_fifo),
 				lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2564 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 132:
-/* Line 1787 of yacc.c  */
-#line 835 "../../ntpd/ntp_parser.y"
+#line 836 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *rn;
 
@@ -2803,226 +2575,226 @@
 				create_address_node(
 					estrdup("::"),
 					AF_INET6),
-				(yyvsp[(4) - (4)].Int_fifo),
+				(yyvsp[0].Int_fifo),
 				lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2583 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 133:
-/* Line 1787 of yacc.c  */
-#line 850 "../../ntpd/ntp_parser.y"
+#line 851 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			restrict_node *	rn;
 
-			APPEND_G_FIFO((yyvsp[(3) - (3)].Int_fifo), create_int_node((yyvsp[(2) - (3)].Integer)));
+			APPEND_G_FIFO((yyvsp[0].Int_fifo), create_int_node((yyvsp[-1].Integer)));
 			rn = create_restrict_node(
-				NULL, NULL, (yyvsp[(3) - (3)].Int_fifo), lex_current()->curpos.nline);
+				NULL, NULL, (yyvsp[0].Int_fifo), lex_current()->curpos.nline);
 			APPEND_G_FIFO(cfgt.restrict_opts, rn);
 		}
+#line 2596 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 134:
-/* Line 1787 of yacc.c  */
-#line 862 "../../ntpd/ntp_parser.y"
+#line 863 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Int_fifo) = NULL; }
+#line 2602 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 135:
-/* Line 1787 of yacc.c  */
-#line 864 "../../ntpd/ntp_parser.y"
+#line 865 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Int_fifo) = (yyvsp[(1) - (2)].Int_fifo);
-			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[(2) - (2)].Integer)));
+			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
+			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 2611 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 151:
-/* Line 1787 of yacc.c  */
-#line 890 "../../ntpd/ntp_parser.y"
+#line 891 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2620 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 152:
-/* Line 1787 of yacc.c  */
-#line 895 "../../ntpd/ntp_parser.y"
+#line 896 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2629 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 153:
-/* Line 1787 of yacc.c  */
-#line 903 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 904 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2635 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 157:
-/* Line 1787 of yacc.c  */
-#line 914 "../../ntpd/ntp_parser.y"
+#line 915 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2644 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 158:
-/* Line 1787 of yacc.c  */
-#line 919 "../../ntpd/ntp_parser.y"
+#line 920 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2653 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 159:
-/* Line 1787 of yacc.c  */
-#line 927 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 928 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2659 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 168:
-/* Line 1787 of yacc.c  */
-#line 947 "../../ntpd/ntp_parser.y"
+#line 948 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			addr_opts_node *aon;
 
-			aon = create_addr_opts_node((yyvsp[(2) - (3)].Address_node), (yyvsp[(3) - (3)].Attr_val_fifo));
+			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
 			APPEND_G_FIFO(cfgt.fudge, aon);
 		}
+#line 2670 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 169:
-/* Line 1787 of yacc.c  */
-#line 957 "../../ntpd/ntp_parser.y"
+#line 958 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2679 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 170:
-/* Line 1787 of yacc.c  */
-#line 962 "../../ntpd/ntp_parser.y"
+#line 963 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2688 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 171:
-/* Line 1787 of yacc.c  */
-#line 970 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Double)); }
+#line 971 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
+#line 2694 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 172:
-/* Line 1787 of yacc.c  */
-#line 972 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 973 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2700 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 173:
-/* Line 1787 of yacc.c  */
-#line 974 "../../ntpd/ntp_parser.y"
+#line 975 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			if ((yyvsp[(2) - (2)].Integer) >= 0 && (yyvsp[(2) - (2)].Integer) <= 16) {
-				(yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer));
+			if ((yyvsp[0].Integer) >= 0 && (yyvsp[0].Integer) <= 16) {
+				(yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
 			} else {
 				(yyval.Attr_val) = NULL;
 				yyerror("fudge factor: stratum value not in [0..16], ignored");
 			}
 		}
+#line 2713 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 174:
-/* Line 1787 of yacc.c  */
-#line 983 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String)); }
+#line 984 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
+#line 2719 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 175:
-/* Line 1787 of yacc.c  */
-#line 985 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String)); }
+#line 986 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String)); }
+#line 2725 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 182:
-/* Line 1787 of yacc.c  */
-#line 1006 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+#line 1007 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.rlimit, (yyvsp[0].Attr_val_fifo)); }
+#line 2731 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 183:
-/* Line 1787 of yacc.c  */
-#line 1011 "../../ntpd/ntp_parser.y"
+#line 1012 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2740 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 184:
-/* Line 1787 of yacc.c  */
-#line 1016 "../../ntpd/ntp_parser.y"
+#line 1017 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2749 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 185:
-/* Line 1787 of yacc.c  */
-#line 1024 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+#line 1025 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 2755 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 189:
-/* Line 1787 of yacc.c  */
-#line 1040 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+#line 1041 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.enable_opts, (yyvsp[0].Attr_val_fifo)); }
+#line 2761 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 190:
-/* Line 1787 of yacc.c  */
-#line 1042 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+#line 1043 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.disable_opts, (yyvsp[0].Attr_val_fifo)); }
+#line 2767 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 191:
-/* Line 1787 of yacc.c  */
-#line 1047 "../../ntpd/ntp_parser.y"
+#line 1048 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2776 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 192:
-/* Line 1787 of yacc.c  */
-#line 1052 "../../ntpd/ntp_parser.y"
+#line 1053 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2785 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 193:
-/* Line 1787 of yacc.c  */
-#line 1060 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[(1) - (1)].Integer)); }
+#line 1061 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer)); }
+#line 2791 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 194:
-/* Line 1787 of yacc.c  */
-#line 1062 "../../ntpd/ntp_parser.y"
+#line 1063 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
-				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[(1) - (1)].Integer));
+				(yyval.Attr_val) = create_attr_ival(T_Flag, (yyvsp[0].Integer));
 			} else {
 				char err_str[128];
 
@@ -3029,101 +2801,101 @@
 				(yyval.Attr_val) = NULL;
 				snprintf(err_str, sizeof(err_str),
 					 "enable/disable %s remote configuration ignored",
-					 keyword((yyvsp[(1) - (1)].Integer)));
+					 keyword((yyvsp[0].Integer)));
 				yyerror(err_str);
 			}
 		}
+#line 2809 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 206:
-/* Line 1787 of yacc.c  */
-#line 1100 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+  case 207:
+#line 1102 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.tinker, (yyvsp[0].Attr_val_fifo)); }
+#line 2815 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 207:
-/* Line 1787 of yacc.c  */
-#line 1105 "../../ntpd/ntp_parser.y"
+  case 208:
+#line 1107 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2824 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 208:
-/* Line 1787 of yacc.c  */
-#line 1110 "../../ntpd/ntp_parser.y"
+  case 209:
+#line 1112 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 2833 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 209:
-/* Line 1787 of yacc.c  */
-#line 1118 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Double)); }
+  case 210:
+#line 1120 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double)); }
+#line 2839 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 222:
-/* Line 1787 of yacc.c  */
-#line 1143 "../../ntpd/ntp_parser.y"
+  case 223:
+#line 1145 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			attr_val *av;
 
-			av = create_attr_dval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Double));
+			av = create_attr_dval((yyvsp[-1].Integer), (yyvsp[0].Double));
 			APPEND_G_FIFO(cfgt.vars, av);
 		}
+#line 2850 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 223:
-/* Line 1787 of yacc.c  */
-#line 1150 "../../ntpd/ntp_parser.y"
+  case 224:
+#line 1152 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			attr_val *av;
 
-			av = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer));
+			av = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer));
 			APPEND_G_FIFO(cfgt.vars, av);
 		}
+#line 2861 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 224:
-/* Line 1787 of yacc.c  */
-#line 1157 "../../ntpd/ntp_parser.y"
+  case 225:
+#line 1159 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			attr_val *av;
 
-			av = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String));
+			av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
 			APPEND_G_FIFO(cfgt.vars, av);
 		}
+#line 2872 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 225:
-/* Line 1787 of yacc.c  */
-#line 1164 "../../ntpd/ntp_parser.y"
+  case 226:
+#line 1166 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			char error_text[64];
 			attr_val *av;
 
 			if (lex_from_file()) {
-				av = create_attr_sval((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].String));
+				av = create_attr_sval((yyvsp[-1].Integer), (yyvsp[0].String));
 				APPEND_G_FIFO(cfgt.vars, av);
 			} else {
-				YYFREE((yyvsp[(2) - (2)].String));
+				YYFREE((yyvsp[0].String));
 				snprintf(error_text, sizeof(error_text),
 					 "%s remote config ignored",
-					 keyword((yyvsp[(1) - (2)].Integer)));
+					 keyword((yyvsp[-1].Integer)));
 				yyerror(error_text);
 			}
 		}
+#line 2892 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 226:
-/* Line 1787 of yacc.c  */
-#line 1180 "../../ntpd/ntp_parser.y"
+  case 227:
+#line 1182 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (!lex_from_file()) {
-				YYFREE((yyvsp[(2) - (3)].String)); /* avoid leak */
+				YYFREE((yyvsp[-1].String)); /* avoid leak */
 				yyerror("remote includefile ignored");
 				break;
 			}
@@ -3131,108 +2903,108 @@
 				fprintf(stderr, "getconfig: Maximum include file level exceeded.\n");
 				msyslog(LOG_ERR, "getconfig: Maximum include file level exceeded.");
 			} else {
-				const char * path = FindConfig((yyvsp[(2) - (3)].String)); /* might return $2! */
+				const char * path = FindConfig((yyvsp[-1].String)); /* might return $2! */
 				if (!lex_push_file(path, "r")) {
 					fprintf(stderr, "getconfig: Couldn't open <%s>\n", path);
 					msyslog(LOG_ERR, "getconfig: Couldn't open <%s>", path);
 				}
 			}
-			YYFREE((yyvsp[(2) - (3)].String)); /* avoid leak */
+			YYFREE((yyvsp[-1].String)); /* avoid leak */
 		}
+#line 2915 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 227:
-/* Line 1787 of yacc.c  */
-#line 1199 "../../ntpd/ntp_parser.y"
+  case 228:
+#line 1201 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { lex_flush_stack(); }
+#line 2921 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 228:
-/* Line 1787 of yacc.c  */
-#line 1201 "../../ntpd/ntp_parser.y"
+  case 229:
+#line 1203 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { /* see drift_parm below for actions */ }
+#line 2927 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 229:
-/* Line 1787 of yacc.c  */
-#line 1203 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[(2) - (2)].Attr_val_fifo)); }
-    break;
-
   case 230:
-/* Line 1787 of yacc.c  */
-#line 1205 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[(2) - (2)].String_fifo)); }
+#line 1205 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.logconfig, (yyvsp[0].Attr_val_fifo)); }
+#line 2933 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 231:
-/* Line 1787 of yacc.c  */
-#line 1207 "../../ntpd/ntp_parser.y"
-    { APPEND_G_FIFO(cfgt.setvar, (yyvsp[(2) - (2)].Set_var)); }
+#line 1207 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.phone, (yyvsp[0].String_fifo)); }
+#line 2939 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 232:
-/* Line 1787 of yacc.c  */
-#line 1209 "../../ntpd/ntp_parser.y"
+#line 1209 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { APPEND_G_FIFO(cfgt.setvar, (yyvsp[0].Set_var)); }
+#line 2945 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
+    break;
+
+  case 233:
+#line 1211 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			addr_opts_node *aon;
 
-			aon = create_addr_opts_node((yyvsp[(2) - (3)].Address_node), (yyvsp[(3) - (3)].Attr_val_fifo));
+			aon = create_addr_opts_node((yyvsp[-1].Address_node), (yyvsp[0].Attr_val_fifo));
 			APPEND_G_FIFO(cfgt.trap, aon);
 		}
+#line 2956 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 233:
-/* Line 1787 of yacc.c  */
-#line 1216 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[(2) - (2)].Attr_val_fifo)); }
+  case 234:
+#line 1218 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.ttl, (yyvsp[0].Attr_val_fifo)); }
+#line 2962 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 238:
-/* Line 1787 of yacc.c  */
-#line 1231 "../../ntpd/ntp_parser.y"
+  case 239:
+#line 1233 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 #ifndef LEAP_SMEAR
 			yyerror("Built without LEAP_SMEAR support.");
 #endif
 		}
+#line 2972 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 244:
-/* Line 1787 of yacc.c  */
-#line 1251 "../../ntpd/ntp_parser.y"
+  case 245:
+#line 1253 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
 				attr_val *av;
-				av = create_attr_sval(T_Driftfile, (yyvsp[(1) - (1)].String));
+				av = create_attr_sval(T_Driftfile, (yyvsp[0].String));
 				APPEND_G_FIFO(cfgt.vars, av);
 			} else {
-				YYFREE((yyvsp[(1) - (1)].String));
+				YYFREE((yyvsp[0].String));
 				yyerror("driftfile remote configuration ignored");
 			}
 		}
+#line 2987 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 245:
-/* Line 1787 of yacc.c  */
-#line 1262 "../../ntpd/ntp_parser.y"
+  case 246:
+#line 1264 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
 				attr_val *av;
-				av = create_attr_sval(T_Driftfile, (yyvsp[(1) - (2)].String));
+				av = create_attr_sval(T_Driftfile, (yyvsp[-1].String));
 				APPEND_G_FIFO(cfgt.vars, av);
-				av = create_attr_dval(T_WanderThreshold, (yyvsp[(2) - (2)].Double));
+				av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double));
 				APPEND_G_FIFO(cfgt.vars, av);
 			} else {
-				YYFREE((yyvsp[(1) - (2)].String));
+				YYFREE((yyvsp[-1].String));
 				yyerror("driftfile remote configuration ignored");
 			}
 		}
+#line 3004 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 246:
-/* Line 1787 of yacc.c  */
-#line 1275 "../../ntpd/ntp_parser.y"
+  case 247:
+#line 1277 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			if (lex_from_file()) {
 				attr_val *av;
@@ -3242,386 +3014,386 @@
 				yyerror("driftfile remote configuration ignored");
 			}
 		}
+#line 3018 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 247:
-/* Line 1787 of yacc.c  */
-#line 1288 "../../ntpd/ntp_parser.y"
-    { (yyval.Set_var) = create_setvar_node((yyvsp[(1) - (4)].String), (yyvsp[(3) - (4)].String), (yyvsp[(4) - (4)].Integer)); }
+  case 248:
+#line 1290 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); }
+#line 3024 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 249:
-/* Line 1787 of yacc.c  */
-#line 1294 "../../ntpd/ntp_parser.y"
+  case 250:
+#line 1296 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Integer) = 0; }
+#line 3030 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 250:
-/* Line 1787 of yacc.c  */
-#line 1299 "../../ntpd/ntp_parser.y"
+  case 251:
+#line 1301 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Attr_val_fifo) = NULL; }
+#line 3036 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 251:
-/* Line 1787 of yacc.c  */
-#line 1301 "../../ntpd/ntp_parser.y"
+  case 252:
+#line 1303 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 3045 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 252:
-/* Line 1787 of yacc.c  */
-#line 1309 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival((yyvsp[(1) - (2)].Integer), (yyvsp[(2) - (2)].Integer)); }
+  case 253:
+#line 1311 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); }
+#line 3051 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 253:
-/* Line 1787 of yacc.c  */
-#line 1311 "../../ntpd/ntp_parser.y"
+  case 254:
+#line 1313 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val) = create_attr_sval((yyvsp[(1) - (2)].Integer), estrdup((yyvsp[(2) - (2)].Address_node)->address));
-			destroy_address_node((yyvsp[(2) - (2)].Address_node));
+			(yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address));
+			destroy_address_node((yyvsp[0].Address_node));
 		}
+#line 3060 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 254:
-/* Line 1787 of yacc.c  */
-#line 1319 "../../ntpd/ntp_parser.y"
+  case 255:
+#line 1321 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 3069 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 255:
-/* Line 1787 of yacc.c  */
-#line 1324 "../../ntpd/ntp_parser.y"
+  case 256:
+#line 1326 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 3078 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 256:
-/* Line 1787 of yacc.c  */
-#line 1332 "../../ntpd/ntp_parser.y"
+  case 257:
+#line 1334 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			char	prefix;
 			char *	type;
 
-			switch ((yyvsp[(1) - (1)].String)[0]) {
+			switch ((yyvsp[0].String)[0]) {
 
 			case '+':
 			case '-':
 			case '=':
-				prefix = (yyvsp[(1) - (1)].String)[0];
-				type = (yyvsp[(1) - (1)].String) + 1;
+				prefix = (yyvsp[0].String)[0];
+				type = (yyvsp[0].String) + 1;
 				break;
 
 			default:
 				prefix = '=';
-				type = (yyvsp[(1) - (1)].String);
+				type = (yyvsp[0].String);
 			}
 
 			(yyval.Attr_val) = create_attr_sval(prefix, estrdup(type));
-			YYFREE((yyvsp[(1) - (1)].String));
+			YYFREE((yyvsp[0].String));
 		}
+#line 3104 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 257:
-/* Line 1787 of yacc.c  */
-#line 1357 "../../ntpd/ntp_parser.y"
+  case 258:
+#line 1359 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			nic_rule_node *nrn;
 
-			nrn = create_nic_rule_node((yyvsp[(3) - (3)].Integer), NULL, (yyvsp[(2) - (3)].Integer));
+			nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer));
 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
 		}
+#line 3115 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 258:
-/* Line 1787 of yacc.c  */
-#line 1364 "../../ntpd/ntp_parser.y"
+  case 259:
+#line 1366 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			nic_rule_node *nrn;
 
-			nrn = create_nic_rule_node(0, (yyvsp[(3) - (3)].String), (yyvsp[(2) - (3)].Integer));
+			nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer));
 			APPEND_G_FIFO(cfgt.nic_rules, nrn);
 		}
+#line 3126 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 268:
-/* Line 1787 of yacc.c  */
-#line 1392 "../../ntpd/ntp_parser.y"
-    { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[(2) - (2)].Int_fifo)); }
-    break;
-
   case 269:
-/* Line 1787 of yacc.c  */
-#line 1397 "../../ntpd/ntp_parser.y"
-    {
-			(yyval.Int_fifo) = (yyvsp[(1) - (2)].Int_fifo);
-			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[(2) - (2)].Integer)));
-		}
+#line 1394 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); }
+#line 3132 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 270:
-/* Line 1787 of yacc.c  */
-#line 1402 "../../ntpd/ntp_parser.y"
+#line 1399 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Int_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[(1) - (1)].Integer)));
+			(yyval.Int_fifo) = (yyvsp[-1].Int_fifo);
+			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 3141 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 278:
-/* Line 1787 of yacc.c  */
-#line 1426 "../../ntpd/ntp_parser.y"
+  case 271:
+#line 1404 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[(2) - (2)].Integer)));
+			(yyval.Int_fifo) = NULL;
+			APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 3150 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 279:
-/* Line 1787 of yacc.c  */
-#line 1431 "../../ntpd/ntp_parser.y"
+#line 1428 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[(1) - (1)].Integer)));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 3159 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 280:
-/* Line 1787 of yacc.c  */
-#line 1439 "../../ntpd/ntp_parser.y"
+#line 1433 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (2)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (2)].Attr_val));
+			(yyval.Attr_val_fifo) = NULL;
+			APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer)));
 		}
+#line 3168 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 281:
-/* Line 1787 of yacc.c  */
-#line 1444 "../../ntpd/ntp_parser.y"
+#line 1441 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (1)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
 		}
+#line 3177 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 282:
-/* Line 1787 of yacc.c  */
-#line 1452 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[(1) - (1)].Integer)); }
+#line 1446 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    {
+			(yyval.Attr_val_fifo) = NULL;
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val));
+		}
+#line 3186 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 284:
-/* Line 1787 of yacc.c  */
-#line 1458 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[(2) - (5)].Integer), (yyvsp[(4) - (5)].Integer)); }
+  case 283:
+#line 1454 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); }
+#line 3192 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 285:
-/* Line 1787 of yacc.c  */
-#line 1463 "../../ntpd/ntp_parser.y"
-    {
-			(yyval.String_fifo) = (yyvsp[(1) - (2)].String_fifo);
-			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[(2) - (2)].String)));
-		}
+#line 1460 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); }
+#line 3198 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 286:
-/* Line 1787 of yacc.c  */
-#line 1468 "../../ntpd/ntp_parser.y"
+#line 1465 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.String_fifo) = NULL;
-			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[(1) - (1)].String)));
+			(yyval.String_fifo) = (yyvsp[-1].String_fifo);
+			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
 		}
+#line 3207 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 287:
-/* Line 1787 of yacc.c  */
-#line 1476 "../../ntpd/ntp_parser.y"
+#line 1470 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Address_fifo) = (yyvsp[(1) - (2)].Address_fifo);
-			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[(2) - (2)].Address_node));
+			(yyval.String_fifo) = NULL;
+			APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String)));
 		}
+#line 3216 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 288:
-/* Line 1787 of yacc.c  */
-#line 1481 "../../ntpd/ntp_parser.y"
+#line 1478 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Address_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[(1) - (1)].Address_node));
+			(yyval.Address_fifo) = (yyvsp[-1].Address_fifo);
+			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
 		}
+#line 3225 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 289:
-/* Line 1787 of yacc.c  */
-#line 1489 "../../ntpd/ntp_parser.y"
+#line 1483 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			if ((yyvsp[(1) - (1)].Integer) != 0 && (yyvsp[(1) - (1)].Integer) != 1) {
+			(yyval.Address_fifo) = NULL;
+			APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node));
+		}
+#line 3234 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
+    break;
+
+  case 290:
+#line 1491 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    {
+			if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) {
 				yyerror("Integer value is not boolean (0 or 1). Assuming 1");
 				(yyval.Integer) = 1;
 			} else {
-				(yyval.Integer) = (yyvsp[(1) - (1)].Integer);
+				(yyval.Integer) = (yyvsp[0].Integer);
 			}
 		}
+#line 3247 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 290:
-/* Line 1787 of yacc.c  */
-#line 1497 "../../ntpd/ntp_parser.y"
+  case 291:
+#line 1499 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Integer) = 1; }
+#line 3253 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 291:
-/* Line 1787 of yacc.c  */
-#line 1498 "../../ntpd/ntp_parser.y"
+  case 292:
+#line 1500 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { (yyval.Integer) = 0; }
+#line 3259 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 292:
-/* Line 1787 of yacc.c  */
-#line 1502 "../../ntpd/ntp_parser.y"
-    { (yyval.Double) = (double)(yyvsp[(1) - (1)].Integer); }
+  case 293:
+#line 1504 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Double) = (double)(yyvsp[0].Integer); }
+#line 3265 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 294:
-/* Line 1787 of yacc.c  */
-#line 1513 "../../ntpd/ntp_parser.y"
+  case 295:
+#line 1515 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			sim_node *sn;
 
-			sn =  create_sim_node((yyvsp[(3) - (5)].Attr_val_fifo), (yyvsp[(4) - (5)].Sim_server_fifo));
+			sn =  create_sim_node((yyvsp[-2].Attr_val_fifo), (yyvsp[-1].Sim_server_fifo));
 			APPEND_G_FIFO(cfgt.sim_details, sn);
 
 			/* Revert from ; to \n for end-of-command */
 			old_config_style = 1;
 		}
+#line 3279 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 295:
-/* Line 1787 of yacc.c  */
-#line 1530 "../../ntpd/ntp_parser.y"
+  case 296:
+#line 1532 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     { old_config_style = 0; }
+#line 3285 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 296:
-/* Line 1787 of yacc.c  */
-#line 1535 "../../ntpd/ntp_parser.y"
+  case 297:
+#line 1537 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (3)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (3)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
 		}
+#line 3294 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 297:
-/* Line 1787 of yacc.c  */
-#line 1540 "../../ntpd/ntp_parser.y"
+  case 298:
+#line 1542 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (2)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
 		}
+#line 3303 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 298:
-/* Line 1787 of yacc.c  */
-#line 1548 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (3)].Integer), (yyvsp[(3) - (3)].Double)); }
+  case 299:
+#line 1550 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
+#line 3309 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 301:
-/* Line 1787 of yacc.c  */
-#line 1558 "../../ntpd/ntp_parser.y"
+  case 302:
+#line 1560 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Sim_server_fifo) = (yyvsp[(1) - (2)].Sim_server_fifo);
-			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[(2) - (2)].Sim_server));
+			(yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo);
+			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
 		}
+#line 3318 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 302:
-/* Line 1787 of yacc.c  */
-#line 1563 "../../ntpd/ntp_parser.y"
+  case 303:
+#line 1565 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Sim_server_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[(1) - (1)].Sim_server));
+			APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server));
 		}
+#line 3327 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 303:
-/* Line 1787 of yacc.c  */
-#line 1571 "../../ntpd/ntp_parser.y"
-    { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[(1) - (5)].Address_node), (yyvsp[(3) - (5)].Double), (yyvsp[(4) - (5)].Sim_script_fifo))); }
-    break;
-
   case 304:
-/* Line 1787 of yacc.c  */
-#line 1576 "../../ntpd/ntp_parser.y"
-    { (yyval.Double) = (yyvsp[(3) - (4)].Double); }
+#line 1573 "../../ntpd/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 3333 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 305:
-/* Line 1787 of yacc.c  */
-#line 1581 "../../ntpd/ntp_parser.y"
-    { (yyval.Address_node) = (yyvsp[(3) - (3)].Address_node); }
+#line 1578 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Double) = (yyvsp[-1].Double); }
+#line 3339 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
   case 306:
-/* Line 1787 of yacc.c  */
-#line 1586 "../../ntpd/ntp_parser.y"
+#line 1583 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Address_node) = (yyvsp[0].Address_node); }
+#line 3345 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
+    break;
+
+  case 307:
+#line 1588 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Sim_script_fifo) = (yyvsp[(1) - (2)].Sim_script_fifo);
-			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[(2) - (2)].Sim_script));
+			(yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo);
+			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
 		}
+#line 3354 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 307:
-/* Line 1787 of yacc.c  */
-#line 1591 "../../ntpd/ntp_parser.y"
+  case 308:
+#line 1593 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Sim_script_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[(1) - (1)].Sim_script));
+			APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script));
 		}
+#line 3363 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 308:
-/* Line 1787 of yacc.c  */
-#line 1599 "../../ntpd/ntp_parser.y"
-    { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[(3) - (6)].Double), (yyvsp[(5) - (6)].Attr_val_fifo))); }
+  case 309:
+#line 1601 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); }
+#line 3369 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 309:
-/* Line 1787 of yacc.c  */
-#line 1604 "../../ntpd/ntp_parser.y"
+  case 310:
+#line 1606 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
-			(yyval.Attr_val_fifo) = (yyvsp[(1) - (3)].Attr_val_fifo);
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(2) - (3)].Attr_val));
+			(yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo);
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
 		}
+#line 3378 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 310:
-/* Line 1787 of yacc.c  */
-#line 1609 "../../ntpd/ntp_parser.y"
+  case 311:
+#line 1611 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
     {
 			(yyval.Attr_val_fifo) = NULL;
-			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[(1) - (2)].Attr_val));
+			APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val));
 		}
+#line 3387 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
-  case 311:
-/* Line 1787 of yacc.c  */
-#line 1617 "../../ntpd/ntp_parser.y"
-    { (yyval.Attr_val) = create_attr_dval((yyvsp[(1) - (3)].Integer), (yyvsp[(3) - (3)].Double)); }
+  case 312:
+#line 1619 "../../ntpd/ntp_parser.y" /* yacc.c:1646  */
+    { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); }
+#line 3393 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
     break;
 
 
-/* Line 1787 of yacc.c  */
-#line 3625 "ntp_parser.c"
+#line 3397 "../../ntpd/ntp_parser.c" /* yacc.c:1646  */
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
@@ -3643,7 +3415,7 @@
 
   *++yyvsp = yyval;
 
-  /* Now `shift' the result of the reduction.  Determine what state
+  /* Now 'shift' the result of the reduction.  Determine what state
      that goes to, based on the state we popped back to and the rule
      number reduced by.  */
 
@@ -3658,9 +3430,9 @@
   goto yynewstate;
 
 
-/*------------------------------------.
-| yyerrlab -- here on detecting error |
-`------------------------------------*/
+/*--------------------------------------.
+| yyerrlab -- here on detecting error.  |
+`--------------------------------------*/
 yyerrlab:
   /* Make sure we have latest lookahead translation.  See comments at
      user semantic actions for why this is necessary.  */
@@ -3711,20 +3483,20 @@
   if (yyerrstatus == 3)
     {
       /* If just tried and failed to reuse lookahead token after an
-	 error, discard it.  */
+         error, discard it.  */
 
       if (yychar <= YYEOF)
-	{
-	  /* Return failure if at end of input.  */
-	  if (yychar == YYEOF)
-	    YYABORT;
-	}
+        {
+          /* Return failure if at end of input.  */
+          if (yychar == YYEOF)
+            YYABORT;
+        }
       else
-	{
-	  yydestruct ("Error: discarding",
-		      yytoken, &yylval);
-	  yychar = YYEMPTY;
-	}
+        {
+          yydestruct ("Error: discarding",
+                      yytoken, &yylval);
+          yychar = YYEMPTY;
+        }
     }
 
   /* Else will try to reuse lookahead token after shifting the error
@@ -3743,7 +3515,7 @@
   if (/*CONSTCOND*/ 0)
      goto yyerrorlab;
 
-  /* Do not reclaim the symbols of the rule which action triggered
+  /* Do not reclaim the symbols of the rule whose action triggered
      this YYERROR.  */
   YYPOPSTACK (yylen);
   yylen = 0;
@@ -3756,29 +3528,29 @@
 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
 `-------------------------------------------------------------*/
 yyerrlab1:
-  yyerrstatus = 3;	/* Each real token shifted decrements this.  */
+  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
 
   for (;;)
     {
       yyn = yypact[yystate];
       if (!yypact_value_is_default (yyn))
-	{
-	  yyn += YYTERROR;
-	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
-	    {
-	      yyn = yytable[yyn];
-	      if (0 < yyn)
-		break;
-	    }
-	}
+        {
+          yyn += YYTERROR;
+          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
+            {
+              yyn = yytable[yyn];
+              if (0 < yyn)
+                break;
+            }
+        }
 
       /* Pop the current state because it cannot handle the error token.  */
       if (yyssp == yyss)
-	YYABORT;
+        YYABORT;
 
 
       yydestruct ("Error: popping",
-		  yystos[yystate], yyvsp);
+                  yystos[yystate], yyvsp);
       YYPOPSTACK (1);
       yystate = *yyssp;
       YY_STACK_PRINT (yyss, yyssp);
@@ -3829,7 +3601,7 @@
       yydestruct ("Cleanup: discarding lookahead",
                   yytoken, &yylval);
     }
-  /* Do not reclaim the symbols of the rule which action triggered
+  /* Do not reclaim the symbols of the rule whose action triggered
      this YYABORT or YYACCEPT.  */
   YYPOPSTACK (yylen);
   YY_STACK_PRINT (yyss, yyssp);
@@ -3836,7 +3608,7 @@
   while (yyssp != yyss)
     {
       yydestruct ("Cleanup: popping",
-		  yystos[*yyssp], yyvsp);
+                  yystos[*yyssp], yyvsp);
       YYPOPSTACK (1);
     }
 #ifndef yyoverflow
@@ -3847,15 +3619,11 @@
   if (yymsg != yymsgbuf)
     YYSTACK_FREE (yymsg);
 #endif
-  /* Make sure YYID is used.  */
-  return YYID (yyresult);
+  return yyresult;
 }
+#line 1630 "../../ntpd/ntp_parser.y" /* yacc.c:1906  */
 
 
-/* Line 2050 of yacc.c  */
-#line 1628 "../../ntpd/ntp_parser.y"
-
-
 void
 yyerror(
 	const char *msg
Index: contrib/ntp/ntpd/ntp_proto.c
===================================================================
--- contrib/ntp/ntpd/ntp_proto.c	(版本 301052)
+++ contrib/ntp/ntpd/ntp_proto.c	(版本 301301)
@@ -165,7 +165,7 @@
 u_long	sys_kodsent;		/* KoD sent */
 
 /*
- * Mechanism knobs: how soon do we unpeer()?
+ * Mechanism knobs: how soon do we peer_clear() or unpeer()?
  *
  * The default way is "on-receipt".  If this was a packet from a
  * well-behaved source, on-receipt will offer the fastest recovery.
@@ -173,6 +173,7 @@
  * for a bad-guy to DoS us.  So look and see what bites you harder
  * and choose according to your environment.
  */
+int peer_clear_digest_early	= 1;	/* bad digest (TEST5) and Autokey */
 int unpeer_crypto_early		= 1;	/* bad crypto (TEST9) */
 int unpeer_crypto_nak_early	= 1;	/* crypto_NAK (TEST5) */
 int unpeer_digest_early		= 1;	/* bad digest (TEST5) */
@@ -277,10 +278,12 @@
 	  u_char hismode
 	  )
 {
-	int base_packet_length = MIN_V4_PKT_LEN;
-	int remainder_size;
-	struct pkt *rpkt;
-	int keyid;
+	int 		base_packet_length = MIN_V4_PKT_LEN;
+	int		remainder_size;
+	struct pkt *	rpkt;
+	int		keyid;
+	l_fp		p_org;	/* origin timestamp */
+	const l_fp *	myorg;	/* selected peer origin */
 
 	/*
 	 * Check to see if there is something beyond the basic packet
@@ -305,7 +308,7 @@
 	    hismode != MODE_ACTIVE &&
 	    hismode != MODE_PASSIVE
 	    ) {
-		return (INVALIDNAK);
+		return INVALIDNAK;
 	}
 
 	/* 
@@ -314,18 +317,35 @@
 	rpkt = &rbufp->recv_pkt;
 	keyid = ntohl(((u_int32 *)rpkt)[base_packet_length / 4]);
 	if (keyid != 0) {
-		return (INVALIDNAK);
+		return INVALIDNAK;
 	}
 
 	/* 
 	 * Only valid if peer uses a key
 	 */
-	if (peer->keyid > 0 || peer->flags & FLAG_SKEY) {
-		return (VALIDNAK);
+	if (!peer || !peer->keyid || !(peer->flags & FLAG_SKEY)) {
+		return INVALIDNAK;
 	}
-	else {
-		return (INVALIDNAK);
+
+	/*
+	 * The ORIGIN must match, or this cannot be a valid NAK, either.
+	 */
+	NTOHL_FP(&rpkt->org, &p_org);
+	if (peer->flip > 0)
+		myorg = &peer->borg;
+	else
+		myorg = &peer->aorg;
+	
+	if (L_ISZERO(&p_org) ||
+	    L_ISZERO( myorg) ||
+	    !L_ISEQU(&p_org, myorg)) {
+		return INVALIDNAK;
 	}
+
+	/* If we ever passed all that checks, we should be safe. Well,
+	 * as safe as we can ever be with an unauthenticated crypto-nak.
+	 */
+	return VALIDNAK;
 }
 
 
@@ -568,7 +588,7 @@
 	int	kissCode = NOKISS;	/* Kiss Code */
 	int	has_mac;		/* length of MAC field */
 	int	authlen;		/* offset of MAC field */
-	int	is_authentic = 0;	/* cryptosum ok */
+	int	is_authentic = AUTH_NONE;	/* cryptosum ok */
 	int	crypto_nak_test;	/* result of crypto-NAK check */
 	int	retcode = AM_NOMATCH;	/* match code */
 	keyid_t	skeyid = 0;		/* key IDs */
@@ -616,6 +636,8 @@
 	hisleap = PKT_LEAP(pkt->li_vn_mode);
 	hismode = (int)PKT_MODE(pkt->li_vn_mode);
 	hisstratum = PKT_TO_STRATUM(pkt->stratum);
+	INSIST(0 != hisstratum);
+
 	if (restrict_mask & RES_IGNORE) {
 		sys_restricted++;
 		return;				/* ignore everything */
@@ -1512,7 +1534,7 @@
 	 */
 	if (L_ISZERO(&p_xmt)) {
 		peer->flash |= TEST3;			/* unsynch */
-		if (0 == hisstratum) {			/* KoD packet */
+		if (STRATUM_UNSPEC == hisstratum) {	/* KoD packet */
 			peer->bogusorg++;		/* for TEST2 or TEST3 */
 			msyslog(LOG_INFO,
 				"receive: Unexpected zero transmit timestamp in KoD from %s",
@@ -1531,17 +1553,22 @@
 		return;
 
 	/*
-	 * If this is a broadcast mode packet, skip further checking. If
-	 * an initial volley, bail out now and let the client do its
-	 * stuff. If the origin timestamp is nonzero, this is an
-	 * interleaved broadcast. so restart the protocol.
+	 * If this is a broadcast mode packet, make sure hisstratum
+	 * is appropriate.  Don't do anything else here - we wait to
+	 * see if this is an interleave broadcast packet until after
+	 * we've validated the MAC that SHOULD be provided.
+	 *
+	 * hisstratum should never be 0.
+	 * If hisstratum is 15, then we'll advertise as UNSPEC but
+	 * at least we'll be able to sync with the broadcast server.
 	 */
 	} else if (hismode == MODE_BROADCAST) {
-		if (!L_ISZERO(&p_org) && !(peer->flags & FLAG_XB)) {
-			peer->flags |= FLAG_XB;
-			peer->aorg = p_xmt;
-			peer->borg = rbufp->recv_time;
-			report_event(PEVNT_XLEAVE, peer, NULL);
+		if (   0 == hisstratum
+		    || STRATUM_UNSPEC <= hisstratum) {
+			/* Is this a ++sys_declined or ??? */
+			msyslog(LOG_INFO,
+				"receive: Unexpected stratum (%d) in broadcast from %s",
+				hisstratum, ntoa(&peer->srcadr));
 			return;
 		}
 
@@ -1558,7 +1585,7 @@
 	 * (nonzero) org, rec, and xmt timestamps set to the xmt timestamp
 	 * that we have previously sent out.  Watch interleave mode.
 	 */
-	} else if (0 == hisstratum) {
+	} else if (STRATUM_UNSPEC == hisstratum) {
 		DEBUG_INSIST(!L_ISZERO(&p_xmt));
 		if (   L_ISZERO(&p_org)		/* We checked p_xmt above */
 		    || L_ISZERO(&p_rec)) {
@@ -1617,6 +1644,7 @@
 	 */
 	} else if (peer->flip == 0) {
 		INSIST(0 != hisstratum);
+		INSIST(STRATUM_UNSPEC != hisstratum);
 		if (0) {
 		} else if (L_ISZERO(&p_org)) {
 			msyslog(LOG_INFO,
@@ -1654,8 +1682,9 @@
 	/*
 	 * Check for valid nonzero timestamp fields.
 	 */
-	} else if (L_ISZERO(&p_org) || L_ISZERO(&p_rec) ||
-	    L_ISZERO(&peer->dst)) {
+	} else if (   L_ISZERO(&p_org)
+		   || L_ISZERO(&p_rec)
+		   || L_ISZERO(&peer->dst)) {
 		peer->flash |= TEST3;		/* unsynch */
 
 	/*
@@ -1671,6 +1700,8 @@
 		return; /* Bogus packet, we are done */
 	}
 
+	/**/
+
 	/*
 	 * If this is a crypto_NAK, the server cannot authenticate a
 	 * client packet. The server might have just changed keys. Clear
@@ -1687,8 +1718,9 @@
 			return;
 		}
 #ifdef AUTOKEY
-		if (peer->crypto)
+		if (peer->crypto) {
 			peer_clear(peer, "AUTH");
+		}
 #endif	/* AUTOKEY */
 		return;
 
@@ -1702,28 +1734,78 @@
 	 */
 	} else if (!AUTH(peer->keyid || has_mac ||
 			 (restrict_mask & RES_DONTTRUST), is_authentic)) {
+
+		if (peer->flash & PKT_TEST_MASK) {
+			msyslog(LOG_INFO,
+				"receive: Bad auth in packet with bad timestamps from %s denied - spoof?",
+				ntoa(&peer->srcadr));
+			return;
+		}
+
 		report_event(PEVNT_AUTH, peer, "digest");
 		peer->flash |= TEST5;		/* bad auth */
 		peer->badauth++;
 		if (   has_mac
-		    && (hismode == MODE_ACTIVE || hismode == MODE_PASSIVE))
+		    && (   hismode == MODE_ACTIVE
+			|| hismode == MODE_PASSIVE))
 			fast_xmit(rbufp, MODE_ACTIVE, 0, restrict_mask);
 		if (peer->flags & FLAG_PREEMPT) {
 			if (unpeer_digest_early) {
 				unpeer(peer);
 			}
-			return;
 		}
 #ifdef AUTOKEY
-		if (peer->crypto)
+		else if (peer_clear_digest_early && peer->crypto) {
 			peer_clear(peer, "AUTH");
+		}
 #endif	/* AUTOKEY */
 		return;
 	}
 
 	/*
-	 * Update the state variables.
+	 * For broadcast packets:
+	 *
+	 * HMS: This next line never made much sense to me, even
+	 * when it was up higher:
+	 *   If an initial volley, bail out now and let the
+	 *   client do its stuff.
+	 *
+	 * If the packet has not failed authentication, then
+	 * - if the origin timestamp is nonzero this is an
+	 *   interleaved broadcast, so restart the protocol.
+	 * - else, this is not an interleaved broadcast packet.
 	 */
+	if (hismode == MODE_BROADCAST) {
+		if (   is_authentic == AUTH_OK
+		    || is_authentic == AUTH_NONE) {
+			if (!L_ISZERO(&p_org)) {
+				if (!(peer->flags & FLAG_XB)) {
+					msyslog(LOG_INFO,
+						"receive: Broadcast server at %s is in interleave mode",
+						ntoa(&peer->srcadr));
+					peer->flags |= FLAG_XB;
+					peer->aorg = p_xmt;
+					peer->borg = rbufp->recv_time;
+					report_event(PEVNT_XLEAVE, peer, NULL);
+					return;
+				}
+			} else if (peer->flags & FLAG_XB) {
+				msyslog(LOG_INFO,
+					"receive: Broadcast server at %s is no longer in interleave mode",
+					ntoa(&peer->srcadr));
+				peer->flags &= ~FLAG_XB;
+			}
+		} else {
+			msyslog(LOG_INFO,
+				"receive: Bad broadcast auth (%d) from %s",
+				is_authentic, ntoa(&peer->srcadr));
+		}
+	}
+
+
+	/*
+	** Update the state variables.
+	*/
 	if (peer->flip == 0) {
 		if (hismode != MODE_BROADCAST)
 			peer->rec = p_xmt;
@@ -1766,7 +1848,13 @@
 		return;		/* Drop any other kiss code packets */
 	}
 
+
 	/*
+	 * XXX
+	 */
+
+
+	/*
 	 * If:
 	 *	- this is a *cast (uni-, broad-, or m-) server packet
 	 *	- and it's symmetric-key authenticated
@@ -1963,9 +2051,9 @@
 
 
 /*
- * process_packet - Packet Procedure, a la Section 3.4.4 of the
- *	specification. Or almost, at least. If we're in here we have a
- *	reasonable expectation that we will be having a long term
+ * process_packet - Packet Procedure, a la Section 3.4.4 of RFC-1305
+ *	Or almost, at least.  If we're in here we have a reasonable
+ *	expectation that we will be having a long term
  *	relationship with this host.
  */
 void
@@ -1985,8 +2073,10 @@
 	double	etemp, ftemp, td;
 #endif /* ASSYM */
 
+#if 0
 	sys_processed++;
 	peer->processed++;
+#endif
 	p_del = FPTOD(NTOHS_FP(pkt->rootdelay));
 	p_offset = 0;
 	p_disp = FPTOD(NTOHS_FP(pkt->rootdisp));
@@ -1999,7 +2089,40 @@
 	pversion = PKT_VERSION(pkt->li_vn_mode);
 	pstratum = PKT_TO_STRATUM(pkt->stratum);
 
+	/**/
+
+	/**/
+
 	/*
+	 * Verify the server is synchronized; that is, the leap bits,
+	 * stratum and root distance are valid.
+	 */
+	if (   pleap == LEAP_NOTINSYNC		/* test 6 */
+	    || pstratum < sys_floor || pstratum >= sys_ceiling)
+		peer->flash |= TEST6;		/* bad synch or strat */
+	if (p_del / 2 + p_disp >= MAXDISPERSE)	/* test 7 */
+		peer->flash |= TEST7;		/* bad header */
+
+	/*
+	 * If any tests fail at this point, the packet is discarded.
+	 * Note that some flashers may have already been set in the
+	 * receive() routine.
+	 */
+	if (peer->flash & PKT_TEST_MASK) {
+		peer->seldisptoolarge++;
+		DPRINTF(1, ("packet: flash header %04x\n",
+			    peer->flash));
+		return;
+	}
+
+	/**/
+
+#if 1
+	sys_processed++;
+	peer->processed++;
+#endif
+
+	/*
 	 * Capture the header values in the client/peer association..
 	 */
 	record_raw_stats(&peer->srcadr, peer->dstadr ?
@@ -2033,29 +2156,9 @@
 	}
 	poll_update(peer, peer->hpoll);
 
-	/*
-	 * Verify the server is synchronized; that is, the leap bits,
-	 * stratum and root distance are valid.
-	 */
-	if (   pleap == LEAP_NOTINSYNC		/* test 6 */
-	    || pstratum < sys_floor || pstratum >= sys_ceiling)
-		peer->flash |= TEST6;		/* bad synch or strat */
-	if (p_del / 2 + p_disp >= MAXDISPERSE)	/* test 7 */
-		peer->flash |= TEST7;		/* bad header */
+	/**/
 
 	/*
-	 * If any tests fail at this point, the packet is discarded.
-	 * Note that some flashers may have already been set in the
-	 * receive() routine.
-	 */
-	if (peer->flash & PKT_TEST_MASK) {
-		peer->seldisptoolarge++;
-		DPRINTF(1, ("packet: flash header %04x\n",
-			    peer->flash));
-		return;
-	}
-
-	/*
 	 * If the peer was previously unreachable, raise a trap. In any
 	 * case, mark it reachable.
 	 */
@@ -4682,6 +4785,14 @@
 		break;
 
 	/*
+	 * Peer_clear Early policy choices
+	 */
+
+	case PROTO_PCEDIGEST:	/* Digest */
+		peer_clear_digest_early = value;
+		break;
+
+	/*
 	 * Unpeer Early policy choices
 	 */
 
Index: contrib/ntp/ntpd/ntpd-opts.h
===================================================================
--- contrib/ntp/ntpd/ntpd-opts.h	(版本 301052)
+++ contrib/ntp/ntpd/ntpd-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpd-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:26:13 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:32:40 AM by AutoGen 5.18.5
  *  From the definitions    ntpd-opts.def
  *  and the template file   options
  *
@@ -106,9 +106,9 @@
 /** count of all options for ntpd */
 #define OPTION_CT    38
 /** ntpd version */
-#define NTPD_VERSION       "4.2.8p7"
+#define NTPD_VERSION       "4.2.8p8"
 /** Full ntpd version text */
-#define NTPD_FULL_VERSION  "ntpd 4.2.8p7"
+#define NTPD_FULL_VERSION  "ntpd 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/ntpd/ntpd.html
===================================================================
--- contrib/ntp/ntpd/ntpd.html	(版本 301052)
+++ contrib/ntp/ntpd/ntpd.html	(版本 301301)
@@ -39,7 +39,7 @@
 symmetric and broadcast modes, and with both symmetric-key and public-key
 cryptography.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntpd</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntpd</code>.
 
 <ul class="menu">
 <li><a accesskey="1" href="#ntpd-Description">ntpd Description</a>:             Description
@@ -220,7 +220,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntpd - NTP daemon program - Ver. 4.2.8p6
+<pre class="example">ntpd - NTP daemon program - Ver. 4.2.8p7
 Usage:  ntpd [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... \
                 [ &lt;server1&gt; ... &lt;serverN&gt; ]
   Flg Arg Option-Name    Description
Index: contrib/ntp/ntpd/refclock_parse.c
===================================================================
--- contrib/ntp/ntpd/refclock_parse.c	(版本 301052)
+++ contrib/ntp/ntpd/refclock_parse.c	(版本 301301)
@@ -2264,8 +2264,8 @@
 							if (debug > 3)
 							{
 								printf(
-								       "parse: local_receive: fd %d PPSAPI seq %ld - PPS %s\n",
-								       rbufp->fd,
+								       "parse: local_receive: fd %ld PPSAPI seq %ld - PPS %s\n",
+								       (long)rbufp->fd,
 								       (long)pps_info.assert_sequence + (long)pps_info.clear_sequence,
 								       lfptoa(&parse->parseio.parse_dtime.parse_ptime.fp, 6));
 							}
@@ -2277,8 +2277,8 @@
 							if (debug > 3)
 							{
 								printf(
-								       "parse: local_receive: fd %d PPSAPI seq assert %ld, seq clear %ld - NO PPS event\n",
-								       rbufp->fd,
+								       "parse: local_receive: fd %ld PPSAPI seq assert %ld, seq clear %ld - NO PPS event\n",
+								       (long)rbufp->fd,
 								       (long)pps_info.assert_sequence, (long)pps_info.clear_sequence);
 							}
 						}
@@ -2291,8 +2291,8 @@
 						if (debug > 3)
 						{
 							printf(
-							       "parse: local_receive: fd %d PPSAPI time_pps_fetch errno = %d\n",
-							       rbufp->fd,
+							       "parse: local_receive: fd %ld PPSAPI time_pps_fetch errno = %d\n",
+							       (long)rbufp->fd,
 							       errno);
 						}
 					}
Index: contrib/ntp/ntpdc/ntpdc-opts.h
===================================================================
--- contrib/ntp/ntpdc/ntpdc-opts.h	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpdc-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:28:50 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:36:34 AM by AutoGen 5.18.5
  *  From the definitions    ntpdc-opts.def
  *  and the template file   options
  *
@@ -83,9 +83,9 @@
 /** count of all options for ntpdc */
 #define OPTION_CT    15
 /** ntpdc version */
-#define NTPDC_VERSION       "4.2.8p7"
+#define NTPDC_VERSION       "4.2.8p8"
 /** Full ntpdc version text */
-#define NTPDC_FULL_VERSION  "ntpdc 4.2.8p7"
+#define NTPDC_FULL_VERSION  "ntpdc 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/ntpdc/ntpdc.c
===================================================================
--- contrib/ntp/ntpdc/ntpdc.c	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.c	(版本 301301)
@@ -669,7 +669,7 @@
 				printf("Received sequence numbers");
 				for (n = 0; n <= MAXSEQ; n++)
 				    if (haveseq[n])
-					printf(" %zd,", n);
+					printf(" %zd,", (size_t)n);
 				if (lastseq != 999)
 				    printf(" last frame received\n");
 				else
@@ -691,7 +691,7 @@
 	 */
 	if (n < (ssize_t)RESP_HEADER_SIZE) {
 		if (debug)
-			printf("Short (%zd byte) packet received\n", n);
+			printf("Short (%zd byte) packet received\n", (size_t)n);
 		goto again;
 	}
 	if (INFO_VERSION(rpkt.rm_vn_mode) > NTP_VERSION ||
Index: contrib/ntp/ntpq/invoke-ntpq.texi
===================================================================
--- contrib/ntp/ntpq/invoke-ntpq.texi	(版本 301052)
+++ contrib/ntp/ntpq/invoke-ntpq.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntpq.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:29:39 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:37:46 AM by AutoGen 5.18.5
 # From the definitions    ntpq-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -848,7 +848,7 @@
 
 @exampleindent 0
 @example
-ntpq - standard NTP query program - Ver. 4.2.8p7
+ntpq - standard NTP query program - Ver. 4.2.8p8
 Usage:  ntpq [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... [ host ...]
   Flg Arg Option-Name    Description
    -4 no  ipv4           Force IPv4 DNS name resolution
Index: contrib/ntp/ntpq/ntpq.1ntpqmdoc
===================================================================
--- contrib/ntp/ntpq/ntpq.1ntpqmdoc	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.1ntpqmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPQ 1ntpqmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpq-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:37:48 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpq-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpq/ntpq.mdoc.in
===================================================================
--- contrib/ntp/ntpq/ntpq.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPQ @NTPQ_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpq-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:37:48 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpq-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpsnmpd 1ntpsnmpdman "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpsnmpd 1ntpsnmpdman "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-sYaGMJ/ag-EYayLJ)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-IPay_Y/ag-WPaq.Y)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:51 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:39:11 AM by AutoGen 5.18.5
 .\" From the definitions ntpsnmpd-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPSNMPD @NTPSNMPD_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpsnmpd-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:57 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:39:18 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpsnmpd-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/build/genAuthors.in
===================================================================
--- contrib/ntp/scripts/build/genAuthors.in	(不存在的)
+++ contrib/ntp/scripts/build/genAuthors.in	(版本 301301)
@@ -0,0 +1,82 @@
+#! @PATH_PERL@
+
+# DESCRIPTION
+#
+# Make sure we have the list of authors for git imports.
+# Call with the path to the Authors/ subdirectory.
+#
+# AUTHOR
+#
+#  Harlan Stenn
+#
+# LICENSE
+#
+#  This file is Copyright (c) 2016 Network Time Foundation
+#
+#  Copying and distribution of this file, with or without modification, are
+#  permitted in any medium without royalty provided the copyright notice,
+#  author attribution and this notice are preserved.  This file is offered
+#  as-is, without any warranty.
+
+use strict;
+use warnings;
+
+# Read in the list of known authors.
+# run:
+#  bk changes -and:USER: | sort -u
+# to get the list of users who have made commits.
+# Make sure that each of these users is in the set of known authors.
+# Make sure the format of that file is 1 or more lines of the form:
+#  user = User Name <user@place>
+#
+# If all of the above is true, exit 0.
+# If there are any problems, squawk and exit 1. 
+
+my $bk_u = "bk changes -and:USER: | sort -u |";
+chomp(my $bk_root = `bk root`);
+my $A_path = "$bk_root/BitKeeper/etc/authors.txt";
+my %authors;
+my $problem = 0;
+
+die "bkroot: <$bk_root>, A_path: <$A_path>\n" if (! -r $A_path);
+
+# Process the authors.txt file
+open(my $FILE, '<', $A_path) or die "Could not open <$A_path>: $!\n";
+while (<$FILE>) {
+  chomp;
+  if (/^([\S]+) = ([\V]+) <([\w.-]+\@[\w.-]+)>$/) {
+    # print "Got '$1 = $2 <$3>'\n";
+    $authors{$1} = "";
+  } else {
+    print "In $A_path: unrecognized line: '$_'\n";
+    $problem = 1;
+  }
+}
+close($FILE);
+
+#print "\%authors = ", join(' ', sort keys %authors), "\n";
+
+die "Fix the problem(s) noted above!\n" if $problem;
+
+# Process "bk changes ..."
+
+open(BKU, $bk_u) || die "$0: <$bk_u> failed: $!\n";
+while (<BKU>) {
+  chomp;
+  my $Name = $_;
+  my $name = lc;
+  # print "Got Name <$Name>, name <$name>\n";
+  if (!defined($authors{$Name})) {
+    $problem = 1;
+    print "<$Name> is not a defined author!\n";
+    open(my $FILE, '>>', "$A_path/$name.txt") || die "Cannot create '$A_path/$name.txt': $!\n";
+    print $FILE "$Name = \n";
+    close($FILE);
+  }
+}
+
+die "Fix the problem(s) noted above!\n" if $problem;
+
+# Local Variables:	**
+# mode:cperl		**
+# End:			**
Index: contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
===================================================================
--- contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPDC 1ntpdcmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpdc-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:08 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:58 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpdc-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpdc/ntpdc.mdoc.in
===================================================================
--- contrib/ntp/ntpdc/ntpdc.mdoc.in	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPDC @NTPDC_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpdc-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:08 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:58 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpdc-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpq/ntpq.1ntpqman
===================================================================
--- contrib/ntp/ntpq/ntpq.1ntpqman	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.1ntpqman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpq 1ntpqman "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpq 1ntpqman "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-11aqEI/ag-c2aiDI)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-pGa42X/ag-CGaW1X)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:35 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:37:41 AM by AutoGen 5.18.5
 .\" From the definitions ntpq-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpq/ntpq.man.in
===================================================================
--- contrib/ntp/ntpq/ntpq.man.in	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpq @NTPQ_MS@ "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpq @NTPQ_MS@ "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-11aqEI/ag-c2aiDI)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-pGa42X/ag-CGaW1X)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:35 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:37:41 AM by AutoGen 5.18.5
 .\" From the definitions ntpq-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpdc/ntpdc.1ntpdcman
===================================================================
--- contrib/ntp/ntpdc/ntpdc.1ntpdcman	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.1ntpdcman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpdc 1ntpdcman "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpdc 1ntpdcman "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-bTaatH/ag-nTa4rH)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-seaORW/ag-FeaGQW)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:01 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:36:50 AM by AutoGen 5.18.5
 .\" From the definitions ntpdc-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpdc/ntpdc.man.in
===================================================================
--- contrib/ntp/ntpdc/ntpdc.man.in	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpdc @NTPDC_MS@ "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpdc @NTPDC_MS@ "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-bTaatH/ag-nTa4rH)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-seaORW/ag-FeaGQW)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:01 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:36:50 AM by AutoGen 5.18.5
 .\" From the definitions ntpdc-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/ntpq/ntpq-opts.h
===================================================================
--- contrib/ntp/ntpq/ntpq-opts.h	(版本 301052)
+++ contrib/ntp/ntpq/ntpq-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpq-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:29:10 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:37:04 AM by AutoGen 5.18.5
  *  From the definitions    ntpq-opts.def
  *  and the template file   options
  *
@@ -84,9 +84,9 @@
 /** count of all options for ntpq */
 #define OPTION_CT    16
 /** ntpq version */
-#define NTPQ_VERSION       "4.2.8p7"
+#define NTPQ_VERSION       "4.2.8p8"
 /** Full ntpq version text */
-#define NTPQ_FULL_VERSION  "ntpq 4.2.8p7"
+#define NTPQ_FULL_VERSION  "ntpq 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/ntpq/ntpq.html
===================================================================
--- contrib/ntp/ntpq/ntpq.html	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.html	(版本 301301)
@@ -44,7 +44,7 @@
 and determine the performance of
 <code>ntpd</code>, the NTP daemon.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntpq</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntpq</code>.
 
 <ul class="menu">
 <li><a accesskey="1" href="#ntpq-Description">ntpq Description</a>
@@ -770,7 +770,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntpq - standard NTP query program - Ver. 4.2.8p6
+<pre class="example">ntpq - standard NTP query program - Ver. 4.2.8p7
 Usage:  ntpq [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... [ host ...]
   Flg Arg Option-Name    Description
    -4 no  ipv4           Force IPv4 DNS name resolution
Index: contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpsnmpd-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:29:44 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:37:55 AM by AutoGen 5.18.5
  *  From the definitions    ntpsnmpd-opts.def
  *  and the template file   options
  *
@@ -61,7 +61,7 @@
  *  static const strings for ntpsnmpd options
  */
 static char const ntpsnmpd_opt_strs[1610] =
-/*     0 */ "ntpsnmpd 4.2.8p7\n"
+/*     0 */ "ntpsnmpd 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -101,7 +101,7 @@
 /*  1414 */ "no-load-opts\0"
 /*  1427 */ "no\0"
 /*  1430 */ "NTPSNMPD\0"
-/*  1439 */ "ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p7\n"
+/*  1439 */ "ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0"
 /*  1542 */ "$HOME\0"
 /*  1548 */ ".\0"
@@ -108,7 +108,7 @@
 /*  1550 */ ".ntprc\0"
 /*  1557 */ "http://bugs.ntp.org, bugs@ntp.org\0"
 /*  1591 */ "\n\0"
-/*  1593 */ "ntpsnmpd 4.2.8p7";
+/*  1593 */ "ntpsnmpd 4.2.8p8";
 
 /**
  *  nofork option description:
@@ -554,7 +554,7 @@
      translate option names.
    */
   /* referenced via ntpsnmpdOptions.pzCopyright */
-  puts(_("ntpsnmpd 4.2.8p7\n\
+  puts(_("ntpsnmpd 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -599,7 +599,7 @@
   puts(_("load options from a config file"));
 
   /* referenced via ntpsnmpdOptions.pzUsageTitle */
-  puts(_("ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p7\n\
+  puts(_("ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n"));
 
   /* referenced via ntpsnmpdOptions.pzExplain */
@@ -606,7 +606,7 @@
   puts(_("\n"));
 
   /* referenced via ntpsnmpdOptions.pzFullVersion */
-  puts(_("ntpsnmpd 4.2.8p7"));
+  puts(_("ntpsnmpd 4.2.8p8"));
 
   /* referenced via ntpsnmpdOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/ntpsnmpd/ntpsnmpd.html
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd.html	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd.html	(版本 301301)
@@ -42,7 +42,7 @@
 <p>The <code>ntpsnmpd</code> utility program is used to monitor NTP daemon <code>ntpd</code>
 operations and determine performance.  It uses the standard NTP mode 6 control
 
-  <p>This document applies to version 4.2.8p7 of <code>ntpsnmpd</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntpsnmpd</code>.
 
 <ul class="menu">
 <li><a accesskey="1" href="#ntpsnmpd-Description">ntpsnmpd Description</a>:             Description
Index: contrib/ntp/scripts/build/Makefile.am
===================================================================
--- contrib/ntp/scripts/build/Makefile.am	(版本 301052)
+++ contrib/ntp/scripts/build/Makefile.am	(版本 301301)
@@ -1,7 +1,7 @@
 run_ag=		cd $(srcdir) &&	env PATH="$(abs_builddir):$(PATH)" AUTOGEN_DNE_DATE=-D	\
 		autogen -L ../sntp/include -L ../sntp/ag-tpl
 
-noinst_SCRIPTS = mkver
+noinst_SCRIPTS = genAuthors mkver
 
 NULL=
 EXTRA_DIST =			\
Index: contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
===================================================================
--- contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt CALC_TICKADJ 1calc_tickadjmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (calc_tickadj-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:13 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:27 AM by AutoGen 5.18.5
 .\"  From the definitions    calc_tickadj-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/ntpdc/ntpdc.html
===================================================================
--- contrib/ntp/ntpdc/ntpdc.html	(版本 301052)
+++ contrib/ntp/ntpdc/ntpdc.html	(版本 301301)
@@ -36,7 +36,7 @@
 clock.  Run as root, it can correct the system clock to this offset as
 well.  It can be run as an interactive command or from a cron job.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntpdc</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntpdc</code>.
 
   <p>The program implements the SNTP protocol as defined by RFC 5905, the NTPv4
 IETF specification.
@@ -152,7 +152,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p7
+<pre class="example">ntpdc - vendor-specific NTPD control program - Ver. 4.2.8p8
 Usage:  ntpdc [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... [ host ...]
   Flg Arg Option-Name    Description
    -4 no  ipv4           Force IPv4 DNS name resolution
Index: contrib/ntp/ntpq/ntpq-opts.c
===================================================================
--- contrib/ntp/ntpq/ntpq-opts.c	(版本 301052)
+++ contrib/ntp/ntpq/ntpq-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpq-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:29:11 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:37:05 AM by AutoGen 5.18.5
  *  From the definitions    ntpq-opts.def
  *  and the template file   options
  *
@@ -69,7 +69,7 @@
  *  static const strings for ntpq options
  */
 static char const ntpq_opt_strs[1982] =
-/*     0 */ "ntpq 4.2.8p7\n"
+/*     0 */ "ntpq 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -132,13 +132,13 @@
 /*  1775 */ "no-load-opts\0"
 /*  1788 */ "no\0"
 /*  1791 */ "NTPQ\0"
-/*  1796 */ "ntpq - standard NTP query program - Ver. 4.2.8p7\n"
+/*  1796 */ "ntpq - standard NTP query program - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [ host ...]\n\0"
 /*  1915 */ "$HOME\0"
 /*  1921 */ ".\0"
 /*  1923 */ ".ntprc\0"
 /*  1930 */ "http://bugs.ntp.org, bugs@ntp.org\0"
-/*  1964 */ "ntpq 4.2.8p7\0"
+/*  1964 */ "ntpq 4.2.8p8\0"
 /*  1977 */ "hash";
 
 /**
@@ -841,7 +841,7 @@
      translate option names.
    */
   /* referenced via ntpqOptions.pzCopyright */
-  puts(_("ntpq 4.2.8p7\n\
+  puts(_("ntpq 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -910,11 +910,11 @@
   puts(_("load options from a config file"));
 
   /* referenced via ntpqOptions.pzUsageTitle */
-  puts(_("ntpq - standard NTP query program - Ver. 4.2.8p7\n\
+  puts(_("ntpq - standard NTP query program - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [ host ...]\n"));
 
   /* referenced via ntpqOptions.pzFullVersion */
-  puts(_("ntpq 4.2.8p7"));
+  puts(_("ntpq 4.2.8p8"));
 
   /* referenced via ntpqOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/ntpq/ntpq.c
===================================================================
--- contrib/ntp/ntpq/ntpq.c	(版本 301052)
+++ contrib/ntp/ntpq/ntpq.c	(版本 301301)
@@ -1063,7 +1063,7 @@
 
 		if (n < shouldbesize) {
 			printf("Response packet claims %u octets payload, above %ld received\n",
-			       count, (long)n - CTL_HEADER_LEN);
+			       count, (long)(n - CTL_HEADER_LEN));
 			return ERR_INCOMPLETE;
 		}
 
@@ -1196,7 +1196,10 @@
 		 * If we've seen the last fragment, look for holes in the sequence.
 		 * If there aren't any, we're done.
 		 */
-	  maybe_final:
+#if !defined(SYS_WINNT) && defined(EINTR)
+		maybe_final:
+#endif
+
 		if (seenlastfrag && offsets[0] == 0) {
 			for (f = 1; f < numfrags; f++)
 				if (offsets[f-1] + counts[f-1] !=
Index: contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
===================================================================
--- contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi	(版本 301052)
+++ contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntpsnmpd.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:29:54 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:39:15 AM by AutoGen 5.18.5
 # From the definitions    ntpsnmpd-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -47,7 +47,7 @@
 
 @exampleindent 0
 @example
-ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p7
+ntpsnmpd - NTP SNMP MIB agent - Ver. 4.2.8p8
 Usage:  ntpsnmpd [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]...
   Flg Arg Option-Name    Description
    -n no  nofork         Do not fork
Index: contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPSNMPD 1ntpsnmpdmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpsnmpd-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:57 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:39:18 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpsnmpd-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/packageinfo.sh
===================================================================
--- contrib/ntp/packageinfo.sh	(版本 301052)
+++ contrib/ntp/packageinfo.sh	(版本 301301)
@@ -83,7 +83,7 @@
 # - Numeric values increment
 # - empty 'increments' to 1
 # - NEW 'increments' to empty
-point=7
+point=8
 
 ### betapoint is normally modified by script.
 # ntp-stable Beta number (betapoint)
Index: contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
===================================================================
--- contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH calc_tickadj 1calc_tickadjman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH calc_tickadj 1calc_tickadjman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-b1aGJu/ag-n1aOIu)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-3laW2J/ag-ema41J)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:11 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:25 AM by AutoGen 5.18.5
 .\" From the definitions calc_tickadj-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
===================================================================
--- contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt CALC_TICKADJ 1calc_tickadjmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (calc_tickadj-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:13 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:27 AM by AutoGen 5.18.5
 .\"  From the definitions    calc_tickadj-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
===================================================================
--- contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntp-wait.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:23 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:39 AM by AutoGen 5.18.5
 # From the definitions    ntp-wait-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -61,7 +61,7 @@
 
 @exampleindent 0
 @example
-ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p7
+ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p8
 USAGE: ntp-wait [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... 
 
     -n, --tries=num              Number of times to check ntpd
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.html
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.html	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.html	(版本 301301)
@@ -39,7 +39,7 @@
 and only then start any applicaitons (like database servers) that require
 accurate and stable time.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntp-wait</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntp-wait</code>.
 
 <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -114,7 +114,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p7
+<pre class="example">ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p8
 USAGE: ntp-wait [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]...
 
     -n, --tries=num              Number of times to check ntpd
Index: contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
===================================================================
--- contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntpsweep.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:29 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:48 AM by AutoGen 5.18.5
 # From the definitions    ntpsweep-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -45,7 +45,7 @@
 
 @exampleindent 0
 @example
-ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p7
+ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p8
 USAGE: ntpsweep [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... [hostfile]
 
     -l, --host-list=str          Host to execute actions on
Index: contrib/ntp/scripts/ntpsweep/ntpsweep.html
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep.html	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep.html	(版本 301301)
@@ -30,7 +30,7 @@
 
   <p>This document describes the use of the NTP Project's <code>ntpsweep</code> program.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntpsweep</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntpsweep</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -90,7 +90,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p7
+<pre class="example">ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p8
 USAGE: ntpsweep [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... [hostfile]
 
     -l, --host-list=str          Host to execute actions on
Index: contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
===================================================================
--- contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH calc_tickadj 1calc_tickadjman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH calc_tickadj 1calc_tickadjman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-b1aGJu/ag-n1aOIu)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-3laW2J/ag-ema41J)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:11 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:25 AM by AutoGen 5.18.5
 .\" From the definitions calc_tickadj-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/invoke-summary.texi
===================================================================
--- contrib/ntp/scripts/invoke-summary.texi	(版本 301052)
+++ contrib/ntp/scripts/invoke-summary.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-summary.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:25:06 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:58 AM by AutoGen 5.18.5
 # From the definitions    summary-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -42,7 +42,7 @@
 
 @exampleindent 0
 @example
-summary - compute various stastics from NTP stat files - Ver. 4.2.8p7
+summary - compute various stastics from NTP stat files - Ver. 4.2.8p8
 USAGE: summary [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... 
 
         --directory=str          Directory containing stat files
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_WAIT 1ntp-waitmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp-wait-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:26 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:44 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp-wait-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_WAIT @NTP_WAIT_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp-wait-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:26 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:44 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp-wait-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPSWEEP 1ntpsweepmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpsweep-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:35 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:55 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpsweep-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
===================================================================
--- contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntptrace.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:42 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:03 AM by AutoGen 5.18.5
 # From the definitions    ntptrace-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -62,7 +62,7 @@
 
 @exampleindent 0
 @example
-ntptrace - Trace peers of an NTP server - Ver. 4.2.8p7
+ntptrace - Trace peers of an NTP server - Ver. 4.2.8p8
 USAGE: ntptrace [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... [host]
 
     -n, --numeric                Print IP addresses instead of hostnames
Index: contrib/ntp/scripts/ntptrace/ntptrace.html
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace.html	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace.html	(版本 301301)
@@ -31,7 +31,7 @@
 <h2 class="unnumbered">Simple Network Time Protocol User Manual</h2>
 
 <p>This document describes the use of the NTP Project's <code>ntptrace</code> program. 
-This document applies to version 4.2.8p7 of <code>ntptrace</code>.
+This document applies to version 4.2.8p8 of <code>ntptrace</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -107,7 +107,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntptrace - Trace peers of an NTP server - Ver. 4.2.8p7
+<pre class="example">ntptrace - Trace peers of an NTP server - Ver. 4.2.8p8
 USAGE: ntptrace [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... [host]
 
     -n, --numeric                Print IP addresses instead of hostnames
Index: contrib/ntp/scripts/plot_summary-opts.def
===================================================================
--- contrib/ntp/scripts/plot_summary-opts.def	(版本 301052)
+++ contrib/ntp/scripts/plot_summary-opts.def	(版本 301301)
@@ -62,7 +62,7 @@
         This is string is passed directly to the @code{gnuplot set terminal}
         command.  Default is @code{x11} if @code{DISPLAY} is set and
         @code{dumb} is it's not'. See output from @code(gnuplot -e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 	_EndOfDoc_;
 };
 
Index: contrib/ntp/scripts/plot_summary.man.in
===================================================================
--- contrib/ntp/scripts/plot_summary.man.in	(版本 301052)
+++ contrib/ntp/scripts/plot_summary.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH plot_summary 1plot_summaryman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH plot_summary 1plot_summaryman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-gsaiHB/ag-ssaqGB)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-4QaG0Q/ag-hRaOZQ)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:25:02 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:25:53 AM by AutoGen 5.18.5
 .\" From the definitions plot_summary-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
@@ -74,7 +74,7 @@
         This is string is passed directly to the \fBgnuplot set terminal\fP
         command.  Default is \fBx11\fP if \fBDISPLAY\fP is set and
         \fBdumb\fP is it's not'. See output from @code(gnuplot \-e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 .TP
 .NOP \f\*[B-Font]\-\-output\-file\f[]=\f\*[I-Font]str\f[]
 Output file.
Index: contrib/ntp/scripts/summary.1summarymdoc
===================================================================
--- contrib/ntp/scripts/summary.1summarymdoc	(版本 301052)
+++ contrib/ntp/scripts/summary.1summarymdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt SUMMARY 1summarymdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (summary-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:25:09 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:26:02 AM by AutoGen 5.18.5
 .\"  From the definitions    summary-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/update-leap/invoke-update-leap.texi
===================================================================
--- contrib/ntp/scripts/update-leap/invoke-update-leap.texi	(版本 301052)
+++ contrib/ntp/scripts/update-leap/invoke-update-leap.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-update-leap.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:50 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:12 AM by AutoGen 5.18.5
 # From the definitions    update-leap-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
Index: contrib/ntp/scripts/update-leap/update-leap.html
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap.html	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap.html	(版本 301301)
@@ -30,7 +30,7 @@
 
   <p>This document describes the use of the NTP Project's <code>update-leap</code> program.
 
-  <p>This document applies to version 4.2.8p7 of <code>update-leap</code>.
+  <p>This document applies to version 4.2.8p8 of <code>update-leap</code>.
 
 <div class="shortcontents">
 <h2>Short Contents</h2>
Index: contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntpsnmpd-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:29:43 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:37:55 AM by AutoGen 5.18.5
  *  From the definitions    ntpsnmpd-opts.def
  *  and the template file   options
  *
@@ -76,9 +76,9 @@
 /** count of all options for ntpsnmpd */
 #define OPTION_CT    8
 /** ntpsnmpd version */
-#define NTPSNMPD_VERSION       "4.2.8p7"
+#define NTPSNMPD_VERSION       "4.2.8p8"
 /** Full ntpsnmpd version text */
-#define NTPSNMPD_FULL_VERSION  "ntpsnmpd 4.2.8p7"
+#define NTPSNMPD_FULL_VERSION  "ntpsnmpd 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
===================================================================
--- contrib/ntp/ntpsnmpd/ntpsnmpd.man.in	(版本 301052)
+++ contrib/ntp/ntpsnmpd/ntpsnmpd.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpsnmpd @NTPSNMPD_MS@ "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH ntpsnmpd @NTPSNMPD_MS@ "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-sYaGMJ/ag-EYayLJ)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-IPay_Y/ag-WPaq.Y)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:29:51 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:39:11 AM by AutoGen 5.18.5
 .\" From the definitions ntpsnmpd-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/build/Makefile.in
===================================================================
--- contrib/ntp/scripts/build/Makefile.in	(版本 301052)
+++ contrib/ntp/scripts/build/Makefile.in	(版本 301301)
@@ -133,7 +133,7 @@
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES = mkver
+CONFIG_CLEAN_FILES = genAuthors mkver
 CONFIG_CLEAN_VPATH_FILES =
 SCRIPTS = $(noinst_SCRIPTS)
 AM_V_P = $(am__v_P_@AM_V@)
@@ -156,7 +156,8 @@
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/mkver.in
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/genAuthors.in \
+	$(srcdir)/mkver.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ALLOCA = @ALLOCA@
@@ -427,7 +428,7 @@
 run_ag = cd $(srcdir) &&	env PATH="$(abs_builddir):$(PATH)" AUTOGEN_DNE_DATE=-D	\
 		autogen -L ../sntp/include -L ../sntp/ag-tpl
 
-noinst_SCRIPTS = mkver
+noinst_SCRIPTS = genAuthors mkver
 NULL = 
 EXTRA_DIST = \
 	check--help		\
@@ -473,6 +474,8 @@
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
+genAuthors: $(top_builddir)/config.status $(srcdir)/genAuthors.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 mkver: $(top_builddir)/config.status $(srcdir)/mkver.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
Index: contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
===================================================================
--- contrib/ntp/scripts/calc_tickadj/calc_tickadj.html	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/calc_tickadj.html	(版本 301301)
@@ -31,7 +31,7 @@
 <h2 class="unnumbered">calc_tickadj User's Manual</h2>
 
 <p>This document describes the use of the NTP Project's <code>calc_tickadj</code> program. 
-This document applies to version 4.2.8p7 of <code>calc_tickadj</code>.
+This document applies to version 4.2.8p8 of <code>calc_tickadj</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
Index: contrib/ntp/scripts/invoke-plot_summary.texi
===================================================================
--- contrib/ntp/scripts/invoke-plot_summary.texi	(版本 301052)
+++ contrib/ntp/scripts/invoke-plot_summary.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-plot_summary.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:25:00 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:50 AM by AutoGen 5.18.5
 # From the definitions    plot_summary-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -41,7 +41,7 @@
 
 @exampleindent 0
 @example
-plot_summary - plot statistics generated by summary script - Ver. 4.2.8p7
+plot_summary - plot statistics generated by summary script - Ver. 4.2.8p8
 USAGE: plot_summary [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... 
 
         --directory=str          Where the summary files are
@@ -101,7 +101,7 @@
         This is string is passed directly to the @code{gnuplot set terminal}
         command.  Default is @code{x11} if @code{DISPLAY} is set and
         @code{dumb} is it's not'. See output from @code(gnuplot -e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 @node plot_summary output-file
 @subsection output-file option
 @cindex plot_summary-output-file
Index: contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
===================================================================
--- contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi	(版本 301052)
+++ contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-calc_tickadj.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:15 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:29 AM by AutoGen 5.18.5
 # From the definitions    calc_tickadj-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
Index: contrib/ntp/scripts/ntp-wait/ntp-wait-opts
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait-opts	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (ntp-wait-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:18 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:33 AM by AutoGen 5.18.5
 # From the definitions    ntp-wait-opts.def
 # and the template file   perlopt
 
@@ -40,7 +40,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p7
+ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p8
 USAGE: ntp-wait [ -<flag> [<val>] | --<name>[{=| }<val>] ]... 
 
     -n, --tries=num              Number of times to check ntpd
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.in
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.in	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.in	(版本 301301)
@@ -33,7 +33,7 @@
         }
 
         if (!exists $info->{status_line}{leap}) {
-            print "\bLeap status not avalaible\n";
+            print "\bLeap status not available\n";
             return 1;
         }
 
Index: contrib/ntp/scripts/ntpsweep/ntpsweep-opts
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep-opts	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (ntpsweep-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:28 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:46 AM by AutoGen 5.18.5
 # From the definitions    ntpsweep-opts.def
 # and the template file   perlopt
 
@@ -43,7 +43,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p7
+ntpsweep - Print various informations about given ntp servers - Ver. 4.2.8p8
 USAGE: ntpsweep [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [hostfile]
 
     -l, --host-list=str          Host to execute actions on
Index: contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep.man.in	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpsweep 1ntpsweepman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntpsweep 1ntpsweepman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-L6aGzx/ag-Y6aOyx)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-KKaWSM/ag-XKa4RM)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:32 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:51 AM by AutoGen 5.18.5
 .\" From the definitions ntpsweep-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntptrace 1ntptraceman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntptrace 1ntptraceman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-1QaORy/ag-bRaWQy)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-GMa4.N/ag-VMaa.N)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:39 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:59 AM by AutoGen 5.18.5
 .\" From the definitions ntptrace-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPTRACE @NTPTRACE_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntptrace-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:44 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:05 AM by AutoGen 5.18.5
 .\"  From the definitions    ntptrace-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/plot_summary.1plot_summarymdoc
===================================================================
--- contrib/ntp/scripts/plot_summary.1plot_summarymdoc	(版本 301052)
+++ contrib/ntp/scripts/plot_summary.1plot_summarymdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt PLOT_SUMMARY 1plot_summarymdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (plot_summary-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:25:04 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:55 AM by AutoGen 5.18.5
 .\"  From the definitions    plot_summary-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
@@ -55,7 +55,7 @@
         This is string is passed directly to the \fBgnuplot set terminal\fP
         command.  Default is \fBx11\fP if \fBDISPLAY\fP is set and
         \fBdumb\fP is it's not'. See output from @code(gnuplot \-e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 .It  Fl \-output\-file  Ns = Ns Ar str 
 Output file.
 .sp
Index: contrib/ntp/scripts/summary-opts
===================================================================
--- contrib/ntp/scripts/summary-opts	(版本 301052)
+++ contrib/ntp/scripts/summary-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (summary-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:58 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:48 AM by AutoGen 5.18.5
 # From the definitions    summary-opts.def
 # and the template file   perlopt
 
@@ -44,7 +44,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-summary - compute various stastics from NTP stat files - Ver. 4.2.8p7
+summary - compute various stastics from NTP stat files - Ver. 4.2.8p8
 USAGE: summary [ -<flag> [<val>] | --<name>[{=| }<val>] ]... 
 
         --directory=str          Directory containing stat files
Index: contrib/ntp/scripts/ntptrace/ntptrace-opts
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace-opts	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (ntptrace-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:37 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:24:57 AM by AutoGen 5.18.5
 # From the definitions    ntptrace-opts.def
 # and the template file   perlopt
 
@@ -40,7 +40,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-ntptrace - Trace peers of an NTP server - Ver. 4.2.8p7
+ntptrace - Trace peers of an NTP server - Ver. 4.2.8p8
 USAGE: ntptrace [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [host]
 
     -n, --numeric                Print IP addresses instead of hostnames
Index: contrib/ntp/scripts/ntptrace/ntptrace.man.in
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace.man.in	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntptrace @NTPTRACE_MS@ "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntptrace @NTPTRACE_MS@ "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-1QaORy/ag-bRaWQy)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-GMa4.N/ag-VMaa.N)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:39 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:59 AM by AutoGen 5.18.5
 .\" From the definitions ntptrace-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/plot_summary.1plot_summaryman
===================================================================
--- contrib/ntp/scripts/plot_summary.1plot_summaryman	(版本 301052)
+++ contrib/ntp/scripts/plot_summary.1plot_summaryman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH plot_summary 1plot_summaryman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH plot_summary 1plot_summaryman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-gsaiHB/ag-ssaqGB)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-4QaG0Q/ag-hRaOZQ)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:25:02 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:25:53 AM by AutoGen 5.18.5
 .\" From the definitions plot_summary-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
@@ -74,7 +74,7 @@
         This is string is passed directly to the \fBgnuplot set terminal\fP
         command.  Default is \fBx11\fP if \fBDISPLAY\fP is set and
         \fBdumb\fP is it's not'. See output from @code(gnuplot \-e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 .TP
 .NOP \f\*[B-Font]\-\-output\-file\f[]=\f\*[I-Font]str\f[]
 Output file.
Index: contrib/ntp/scripts/plot_summary.mdoc.in
===================================================================
--- contrib/ntp/scripts/plot_summary.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/plot_summary.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt PLOT_SUMMARY 1plot_summarymdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (plot_summary-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:25:04 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:55 AM by AutoGen 5.18.5
 .\"  From the definitions    plot_summary-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
@@ -55,7 +55,7 @@
         This is string is passed directly to the \fBgnuplot set terminal\fP
         command.  Default is \fBx11\fP if \fBDISPLAY\fP is set and
         \fBdumb\fP is it's not'. See output from @code(gnuplot \-e "set
-        terminal") for the list of avalaible options.
+        terminal") for the list of available options.
 .It  Fl \-output\-file  Ns = Ns Ar str 
 Output file.
 .sp
Index: contrib/ntp/scripts/summary.html
===================================================================
--- contrib/ntp/scripts/summary.html	(版本 301052)
+++ contrib/ntp/scripts/summary.html	(版本 301301)
@@ -31,7 +31,7 @@
 <h2 class="unnumbered">Summary User Manual</h2>
 
 <p>This document describes the use of the NTP Project's <code>summary</code> program. 
-This document applies to version 4.2.8p7 of <code>summary</code>.
+This document applies to version 4.2.8p8 of <code>summary</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -88,7 +88,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">summary - compute various stastics from NTP stat files - Ver. 4.2.8p7
+<pre class="example">summary - compute various stastics from NTP stat files - Ver. 4.2.8p8
 USAGE: summary [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]...
 
         --directory=str          Directory containing stat files
Index: contrib/ntp/scripts/update-leap/update-leap-opts
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap-opts	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (update-leap-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:56 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:39 AM by AutoGen 5.18.5
 # From the definitions    update-leap-opts.def
 # and the template file   perlopt
 
@@ -46,7 +46,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-update-leap - leap-seconds file manager/updater - Ver. 4.2.8p7
+update-leap - leap-seconds file manager/updater - Ver. 4.2.8p8
 USAGE: update-leap [ -<flag> [<val>] | --<name>[{=| }<val>] ]... 
 
     -s, --source-url=str         The URL of the master copy of the leapseconds file
Index: contrib/ntp/scripts/update-leap/update-leap.man.in
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap.man.in	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH update-leap 1update-leapman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH update-leap 1update-leapman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-FCaqHz/ag-RCayGz)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-qJaG0O/ag-DJaOZO)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:46 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:25:07 AM by AutoGen 5.18.5
 .\" From the definitions update-leap-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/sntp/aclocal.m4
===================================================================
--- contrib/ntp/sntp/aclocal.m4	(版本 301052)
+++ contrib/ntp/sntp/aclocal.m4	(版本 301301)
@@ -1361,3 +1361,4 @@
 m4_include([m4/openldap.m4])
 m4_include([m4/os_cflags.m4])
 m4_include([m4/snprintf.m4])
+m4_include([m4/sntp_problemtests.m4])
Index: contrib/ntp/sntp/include/version.def
===================================================================
--- contrib/ntp/sntp/include/version.def	(版本 301052)
+++ contrib/ntp/sntp/include/version.def	(版本 301301)
@@ -1 +1 @@
-version = '4.2.8p7';
+version = '4.2.8p8';
Index: contrib/ntp/sntp/m4/ntp_problemtests.m4
===================================================================
--- contrib/ntp/sntp/m4/ntp_problemtests.m4	(版本 301052)
+++ contrib/ntp/sntp/m4/ntp_problemtests.m4	(版本 301301)
@@ -55,5 +55,6 @@
 esac
 AC_MSG_RESULT([$ntp_test_ntp_signd])
 AM_CONDITIONAL([BUILD_TEST_NTP_SIGND], [test x$ntp_test_ntp_signd = xyes])
+
 ])
 dnl ======================================================================
Index: contrib/ntp/sntp/sntp-opts.c
===================================================================
--- contrib/ntp/sntp/sntp-opts.c	(版本 301052)
+++ contrib/ntp/sntp/sntp-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (sntp-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:20:39 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:18:42 AM by AutoGen 5.18.5
  *  From the definitions    sntp-opts.def
  *  and the template file   options
  *
@@ -70,7 +70,7 @@
  *  static const strings for sntp options
  */
 static char const sntp_opt_strs[2549] =
-/*     0 */ "sntp 4.2.8p7\n"
+/*     0 */ "sntp 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -155,7 +155,7 @@
 /*  2298 */ "LOAD_OPTS\0"
 /*  2308 */ "no-load-opts\0"
 /*  2321 */ "SNTP\0"
-/*  2326 */ "sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p7\n"
+/*  2326 */ "sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \\\n"
             "\t\t[ hostname-or-IP ...]\n\0"
 /*  2485 */ "$HOME\0"
@@ -163,7 +163,7 @@
 /*  2493 */ ".ntprc\0"
 /*  2500 */ "http://bugs.ntp.org, bugs@ntp.org\0"
 /*  2534 */ "\n\0"
-/*  2536 */ "sntp 4.2.8p7";
+/*  2536 */ "sntp 4.2.8p8";
 
 /**
  *  ipv4 option description with
@@ -1173,7 +1173,7 @@
      translate option names.
    */
   /* referenced via sntpOptions.pzCopyright */
-  puts(_("sntp 4.2.8p7\n\
+  puts(_("sntp 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -1263,7 +1263,7 @@
   puts(_("load options from a config file"));
 
   /* referenced via sntpOptions.pzUsageTitle */
-  puts(_("sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p7\n\
+  puts(_("sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \\\n\
 \t\t[ hostname-or-IP ...]\n"));
 
@@ -1271,7 +1271,7 @@
   puts(_("\n"));
 
   /* referenced via sntpOptions.pzFullVersion */
-  puts(_("sntp 4.2.8p7"));
+  puts(_("sntp 4.2.8p8"));
 
   /* referenced via sntpOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/sntp/sntp.html
===================================================================
--- contrib/ntp/sntp/sntp.html	(版本 301052)
+++ contrib/ntp/sntp/sntp.html	(版本 301301)
@@ -36,7 +36,7 @@
 clock.  Run as root, it can correct the system clock to this offset as
 well.  It can be run as an interactive command or from a cron job.
 
-  <p>This document applies to version 4.2.8p7 of <code>sntp</code>.
+  <p>This document applies to version 4.2.8p8 of <code>sntp</code>.
 
   <p>The program implements the SNTP protocol as defined by RFC 5905, the NTPv4
 IETF specification.
@@ -176,7 +176,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p7
+<pre class="example">sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p8
 Usage:  sntp [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]... \
                 [ hostname-or-IP ...]
   Flg Arg Option-Name    Description
Index: contrib/ntp/sntp/tests/Makefile.in
===================================================================
--- contrib/ntp/sntp/tests/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/tests/Makefile.in	(版本 301301)
@@ -90,11 +90,13 @@
 host_triplet = @host@
 EXTRA_PROGRAMS =
 check_PROGRAMS = test-crypto$(EXEEXT) test-keyFile$(EXEEXT) \
-	test-kodDatabase$(EXEEXT) test-kodFile$(EXEEXT) \
 	test-log$(EXEEXT) test-networking$(EXEEXT) \
 	test-packetHandling$(EXEEXT) test-packetProcessing$(EXEEXT) \
-	test-utilities$(EXEEXT) $(am__EXEEXT_1)
-@NTP_CROSSCOMPILE_FALSE@am__append_1 = $(check_PROGRAMS)
+	test-utilities$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
+	$(am__EXEEXT_3)
+@BUILD_TEST_KODDATABASE_TRUE@am__append_1 = test-kodDatabase
+@BUILD_TEST_KODFILE_TRUE@am__append_2 = test-kodFile
+@NTP_CROSSCOMPILE_FALSE@am__append_3 = $(check_PROGRAMS)
 subdir = tests
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/libopts/m4/libopts.m4 \
@@ -121,8 +123,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(dist_check_SCRIPTS) \
@@ -132,6 +135,8 @@
 CONFIG_CLEAN_FILES = fileHandlingTest.h
 CONFIG_CLEAN_VPATH_FILES =
 am__EXEEXT_1 =
+@BUILD_TEST_KODDATABASE_TRUE@am__EXEEXT_2 = test-kodDatabase$(EXEEXT)
+@BUILD_TEST_KODFILE_TRUE@am__EXEEXT_3 = test-kodFile$(EXEEXT)
 am__objects_1 =
 am_test_crypto_OBJECTS = test_crypto-crypto.$(OBJEXT) \
 	test_crypto-run-crypto.$(OBJEXT) test_crypto-version.$(OBJEXT) \
@@ -863,7 +868,7 @@
 
 #$(srcdir)/../version.c: $(srcdir)/../version.c
 #	gcc -o version.o ../version.c
-TESTS = $(am__append_1)
+TESTS = $(am__append_3)
 SNTP_INCS = -I$(top_srcdir)/../include \
 	-I$(top_srcdir)/../lib/isc/include \
 	-I$(top_srcdir)/../lib/isc/$(LIBISC_PTHREADS_NOTHREADS)/include \
@@ -1270,20 +1275,6 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
-test-kodDatabase.log: test-kodDatabase$(EXEEXT)
-	@p='test-kodDatabase$(EXEEXT)'; \
-	b='test-kodDatabase'; \
-	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
-	--log-file $$b.log --trs-file $$b.trs \
-	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
-	"$$tst" $(AM_TESTS_FD_REDIRECT)
-test-kodFile.log: test-kodFile$(EXEEXT)
-	@p='test-kodFile$(EXEEXT)'; \
-	b='test-kodFile'; \
-	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
-	--log-file $$b.log --trs-file $$b.trs \
-	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
-	"$$tst" $(AM_TESTS_FD_REDIRECT)
 test-log.log: test-log$(EXEEXT)
 	@p='test-log$(EXEEXT)'; \
 	b='test-log'; \
@@ -1319,6 +1310,20 @@
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-kodDatabase.log: test-kodDatabase$(EXEEXT)
+	@p='test-kodDatabase$(EXEEXT)'; \
+	b='test-kodDatabase'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-kodFile.log: test-kodFile$(EXEEXT)
+	@p='test-kodFile$(EXEEXT)'; \
+	b='test-kodFile'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 .test.log:
 	@p='$<'; \
 	$(am__set_b); \
Index: contrib/ntp/util/ntp-keygen-opts.c
===================================================================
--- contrib/ntp/util/ntp-keygen-opts.c	(版本 301052)
+++ contrib/ntp/util/ntp-keygen-opts.c	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntp-keygen-opts.c)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:30:03 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:39:24 AM by AutoGen 5.18.5
  *  From the definitions    ntp-keygen-opts.def
  *  and the template file   options
  *
@@ -72,7 +72,7 @@
  *  static const strings for ntp-keygen options
  */
 static char const ntp_keygen_opt_strs[2419] =
-/*     0 */ "ntp-keygen (ntp) 4.2.8p7\n"
+/*     0 */ "ntp-keygen (ntp) 4.2.8p8\n"
             "Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n"
             "This is free software. It is licensed for use, modification and\n"
             "redistribution under the terms of the NTP License, copies of which\n"
@@ -164,7 +164,7 @@
 /*  2202 */ "no-load-opts\0"
 /*  2215 */ "no\0"
 /*  2218 */ "NTP_KEYGEN\0"
-/*  2229 */ "ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p7\n"
+/*  2229 */ "ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p8\n"
             "Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n\0"
 /*  2343 */ "$HOME\0"
 /*  2349 */ ".\0"
@@ -171,7 +171,7 @@
 /*  2351 */ ".ntprc\0"
 /*  2358 */ "http://bugs.ntp.org, bugs@ntp.org\0"
 /*  2392 */ "\n\0"
-/*  2394 */ "ntp-keygen (ntp) 4.2.8p7";
+/*  2394 */ "ntp-keygen (ntp) 4.2.8p8";
 
 /**
  *  imbits option description:
@@ -1309,7 +1309,7 @@
      translate option names.
    */
   /* referenced via ntp_keygenOptions.pzCopyright */
-  puts(_("ntp-keygen (ntp) 4.2.8p7\n\
+  puts(_("ntp-keygen (ntp) 4.2.8p8\n\
 Copyright (C) 1992-2016 The University of Delaware and Network Time Foundation, all rights reserved.\n\
 This is free software. It is licensed for use, modification and\n\
 redistribution under the terms of the NTP License, copies of which\n\
@@ -1408,7 +1408,7 @@
   puts(_("load options from a config file"));
 
   /* referenced via ntp_keygenOptions.pzUsageTitle */
-  puts(_("ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p7\n\
+  puts(_("ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p8\n\
 Usage:  %s [ -<flag> [<val>] | --<name>[{=| }<val>] ]...\n"));
 
   /* referenced via ntp_keygenOptions.pzExplain */
@@ -1415,7 +1415,7 @@
   puts(_("\n"));
 
   /* referenced via ntp_keygenOptions.pzFullVersion */
-  puts(_("ntp-keygen (ntp) 4.2.8p7"));
+  puts(_("ntp-keygen (ntp) 4.2.8p8"));
 
   /* referenced via ntp_keygenOptions.pzFullUsage */
   puts(_("<<<NOT-FOUND>>>"));
Index: contrib/ntp/util/ntp-keygen.html
===================================================================
--- contrib/ntp/util/ntp-keygen.html	(版本 301052)
+++ contrib/ntp/util/ntp-keygen.html	(版本 301301)
@@ -70,7 +70,7 @@
 printable ASCII format so they can be embedded as MIME attachments in
 mail to other sites.
 
-  <p>This document applies to version 4.2.8p7 of <code>ntp-keygen</code>.
+  <p>This document applies to version 4.2.8p8 of <code>ntp-keygen</code>.
 
 <div class="node">
 <p><hr>
@@ -1085,7 +1085,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p6
+<pre class="example">ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p7
 Usage:  ntp-keygen [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]...
   Flg Arg Option-Name    Description
    -b Num imbits         identity modulus bits
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp-wait 1ntp-waitman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntp-wait 1ntp-waitman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-LcaO9v/ag-XcaW8v)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-IZaWqL/ag-WZa4pL)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:20 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:36 AM by AutoGen 5.18.5
 .\" From the definitions ntp-wait-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
===================================================================
--- contrib/ntp/scripts/ntp-wait/ntp-wait.man.in	(版本 301052)
+++ contrib/ntp/scripts/ntp-wait/ntp-wait.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp-wait @NTP_WAIT_MS@ "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntp-wait @NTP_WAIT_MS@ "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-LcaO9v/ag-XcaW8v)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-IZaWqL/ag-WZa4pL)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:20 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:36 AM by AutoGen 5.18.5
 .\" From the definitions ntp-wait-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntpsweep 1ntpsweepman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntpsweep 1ntpsweepman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-L6aGzx/ag-Y6aOyx)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-KKaWSM/ag-XKa4RM)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:32 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:24:51 AM by AutoGen 5.18.5
 .\" From the definitions ntpsweep-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
===================================================================
--- contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPSWEEP 1ntpsweepmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpsweep-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:35 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:24:55 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpsweep-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
===================================================================
--- contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc	(版本 301052)
+++ contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPTRACE 1ntptracemdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntptrace-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:44 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:05 AM by AutoGen 5.18.5
 .\"  From the definitions    ntptrace-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/plot_summary-opts
===================================================================
--- contrib/ntp/scripts/plot_summary-opts	(版本 301052)
+++ contrib/ntp/scripts/plot_summary-opts	(版本 301301)
@@ -1,6 +1,6 @@
 # EDIT THIS FILE WITH CAUTION  (plot_summary-opts)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:24:56 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:25:41 AM by AutoGen 5.18.5
 # From the definitions    plot_summary-opts.def
 # and the template file   perlopt
 
@@ -46,7 +46,7 @@
         'help|?', 'more-help'));
 
     $usage = <<'USAGE';
-plot_summary - plot statistics generated by summary script - Ver. 4.2.8p7
+plot_summary - plot statistics generated by summary script - Ver. 4.2.8p8
 USAGE: plot_summary [ -<flag> [<val>] | --<name>[{=| }<val>] ]... 
 
         --directory=str          Where the summary files are
Index: contrib/ntp/scripts/summary.man.in
===================================================================
--- contrib/ntp/scripts/summary.man.in	(版本 301052)
+++ contrib/ntp/scripts/summary.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH summary 1summaryman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH summary 1summaryman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-gNaWUB/ag-tNa4TB)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-OuaicR/ag-3uaqbR)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:25:07 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:26:00 AM by AutoGen 5.18.5
 .\" From the definitions summary-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/update-leap/update-leap.1update-leapman
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap.1update-leapman	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap.1update-leapman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH update-leap 1update-leapman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH update-leap 1update-leapman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-FCaqHz/ag-RCayGz)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-qJaG0O/ag-DJaOZO)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:24:46 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:25:07 AM by AutoGen 5.18.5
 .\" From the definitions update-leap-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/update-leap/update-leap.mdoc.in
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt UPDATE_LEAP 1update-leapmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (update-leap-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:54 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:37 AM by AutoGen 5.18.5
 .\"  From the definitions    update-leap-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/sntp/configure.ac
===================================================================
--- contrib/ntp/sntp/configure.ac	(版本 301052)
+++ contrib/ntp/sntp/configure.ac	(版本 301301)
@@ -143,6 +143,8 @@
 AC_PROG_CXX
 NTP_GOOGLETEST
 
+SNTP_PROBLEM_TESTS
+
 # All libraries should be in various LIB_* variables now. 
 #LIBS=
 # Sadly not.  There is a gettext() check somewhere, and on Solaris this pulls
Index: contrib/ntp/sntp/invoke-sntp.texi
===================================================================
--- contrib/ntp/sntp/invoke-sntp.texi	(版本 301052)
+++ contrib/ntp/sntp/invoke-sntp.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-sntp.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:21:12 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:19:58 AM by AutoGen 5.18.5
 # From the definitions    sntp-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -101,7 +101,7 @@
 
 @exampleindent 0
 @example
-sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p7
+sntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p8
 Usage:  sntp [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... \
                 [ hostname-or-IP ...]
   Flg Arg Option-Name    Description
Index: contrib/ntp/sntp/m4/version.m4
===================================================================
--- contrib/ntp/sntp/m4/version.m4	(版本 301052)
+++ contrib/ntp/sntp/m4/version.m4	(版本 301301)
@@ -1 +1 @@
-m4_define([VERSION_NUMBER],[4.2.8p7])
+m4_define([VERSION_NUMBER],[4.2.8p8])
Index: contrib/ntp/sntp/sntp.1sntpman
===================================================================
--- contrib/ntp/sntp/sntp.1sntpman	(版本 301052)
+++ contrib/ntp/sntp/sntp.1sntpman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH sntp 1sntpman "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH sntp 1sntpman "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-EjaOrb/ag-RjaGqb)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-5CayKq/ag-fDaqJq)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:21:08 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:19:39 AM by AutoGen 5.18.5
 .\" From the definitions sntp-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/sntp/sntp.mdoc.in
===================================================================
--- contrib/ntp/sntp/sntp.mdoc.in	(版本 301052)
+++ contrib/ntp/sntp/sntp.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt SNTP @SNTP_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (sntp-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:21:15 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:20:03 AM by AutoGen 5.18.5
 .\"  From the definitions    sntp-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/sntp/version.c
===================================================================
--- contrib/ntp/sntp/version.c	(版本 301052)
+++ contrib/ntp/sntp/version.c	(版本 301301)
@@ -2,4 +2,4 @@
  * version file for sntp
  */
 #include <config.h>
-const char * Version = "sntp 4.2.8p6@1.3265-o Wed Apr 27 00:21:06 UTC 2016 (28)";
+const char * Version = "sntp 4.2.8p7@1.3265-o Thu Jun  2 11:19:34 UTC 2016 (29)";
Index: contrib/ntp/util/ntp-keygen.1ntp-keygenman
===================================================================
--- contrib/ntp/util/ntp-keygen.1ntp-keygenman	(版本 301052)
+++ contrib/ntp/util/ntp-keygen.1ntp-keygenman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp-keygen 1ntp-keygenman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntp-keygen 1ntp-keygenman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-FRa4eL/ag-RRaWdL)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-.JaGB0/ag-lKayA0)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:30:15 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:39:36 AM by AutoGen 5.18.5
 .\" From the definitions ntp-keygen-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/sntp/configure
===================================================================
--- contrib/ntp/sntp/configure	(版本 301052)
+++ contrib/ntp/sntp/configure	(版本 301301)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sntp 4.2.8p7.
+# Generated by GNU Autoconf 2.69 for sntp 4.2.8p8.
 #
 # Report bugs to <http://bugs.ntp.org./>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='sntp'
 PACKAGE_TARNAME='sntp'
-PACKAGE_VERSION='4.2.8p7'
-PACKAGE_STRING='sntp 4.2.8p7'
+PACKAGE_VERSION='4.2.8p8'
+PACKAGE_STRING='sntp 4.2.8p8'
 PACKAGE_BUGREPORT='http://bugs.ntp.org./'
 PACKAGE_URL='http://www.ntp.org./'
 
@@ -636,6 +636,10 @@
 ac_subst_vars='am__EXEEXT_FALSE
 am__EXEEXT_TRUE
 LTLIBOBJS
+BUILD_TEST_KODFILE_FALSE
+BUILD_TEST_KODFILE_TRUE
+BUILD_TEST_KODDATABASE_FALSE
+BUILD_TEST_KODDATABASE_TRUE
 GTEST_AVAILABLE_FALSE
 GTEST_AVAILABLE_TRUE
 GTEST_CPPFLAGS
@@ -937,6 +941,7 @@
 with_kame
 enable_getifaddrs
 with_gtest
+enable_problem_tests
 '
       ac_precious_vars='build_alias
 host_alias
@@ -1491,7 +1496,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures sntp 4.2.8p7 to adapt to many kinds of systems.
+\`configure' configures sntp 4.2.8p8 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1561,7 +1566,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of sntp 4.2.8p7:";;
+     short | recursive ) echo "Configuration of sntp 4.2.8p8:";;
    esac
   cat <<\_ACEOF
 
@@ -1596,6 +1601,7 @@
   --enable-ipv6           s use IPv6?
 
   --enable-getifaddrs     + Enable the use of getifaddrs() [[yes|no]].
+  --enable-problem-tests  + enable tests with undiagnosed problems
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
@@ -1706,7 +1712,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-sntp configure 4.2.8p7
+sntp configure 4.2.8p8
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2536,7 +2542,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by sntp $as_me 4.2.8p7, which was
+It was created by sntp $as_me 4.2.8p8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3533,7 +3539,7 @@
 
 # Define the identity of the package.
  PACKAGE='sntp'
- VERSION='4.2.8p7'
+ VERSION='4.2.8p8'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -30508,6 +30514,63 @@
 
 
 
+
+case "$build" in
+ $host)	cross=0 ;;
+ *)	cross=1 ;;
+esac
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we want to enable tests with undiagnosed problems" >&5
+$as_echo_n "checking if we want to enable tests with undiagnosed problems... " >&6; }
+# Check whether --enable-problem-tests was given.
+if test "${enable_problem_tests+set}" = set; then :
+  enableval=$enable_problem_tests; sntp_ept=$enableval
+else
+  sntp_ept=yes
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sntp_ept" >&5
+$as_echo "$sntp_ept" >&6; }
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can run test-kodDatabase" >&5
+$as_echo_n "checking if we can run test-kodDatabase... " >&6; }
+sntp_test_kodDatabase="no"
+case "$sntp_ept:$cross:$host" in
+ no:0:*-apple-darwin12.6.0) ;;
+ *) sntp_test_kodDatabase="yes" ;;
+esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sntp_test_kodDatabase" >&5
+$as_echo "$sntp_test_kodDatabase" >&6; }
+ if test x$sntp_test_kodDatabase = xyes; then
+  BUILD_TEST_KODDATABASE_TRUE=
+  BUILD_TEST_KODDATABASE_FALSE='#'
+else
+  BUILD_TEST_KODDATABASE_TRUE='#'
+  BUILD_TEST_KODDATABASE_FALSE=
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can run test-kodFile" >&5
+$as_echo_n "checking if we can run test-kodFile... " >&6; }
+sntp_test_kodFile="no"
+case "$sntp_ept:$cross:$host" in
+ no:0:*-apple-darwin12.6.0) ;;
+ *) sntp_test_kodFile="yes" ;;
+esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sntp_test_kodFile" >&5
+$as_echo "$sntp_test_kodFile" >&6; }
+ if test x$sntp_test_kodFile = xyes; then
+  BUILD_TEST_KODFILE_TRUE=
+  BUILD_TEST_KODFILE_FALSE='#'
+else
+  BUILD_TEST_KODFILE_TRUE='#'
+  BUILD_TEST_KODFILE_FALSE=
+fi
+
+
+
+
 # All libraries should be in various LIB_* variables now.
 #LIBS=
 # Sadly not.  There is a gettext() check somewhere, and on Solaris this pulls
@@ -30716,6 +30779,14 @@
   as_fn_error $? "conditional \"GTEST_AVAILABLE\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${BUILD_TEST_KODDATABASE_TRUE}" && test -z "${BUILD_TEST_KODDATABASE_FALSE}"; then
+  as_fn_error $? "conditional \"BUILD_TEST_KODDATABASE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${BUILD_TEST_KODFILE_TRUE}" && test -z "${BUILD_TEST_KODFILE_FALSE}"; then
+  as_fn_error $? "conditional \"BUILD_TEST_KODFILE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 
 : "${CONFIG_STATUS=./config.status}"
 ac_write_fail=0
@@ -31113,7 +31184,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by sntp $as_me 4.2.8p7, which was
+This file was extended by sntp $as_me 4.2.8p8, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -31180,7 +31251,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-sntp config.status 4.2.8p7
+sntp config.status 4.2.8p8
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
Index: contrib/ntp/sntp/include/version.texi
===================================================================
--- contrib/ntp/sntp/include/version.texi	(版本 301052)
+++ contrib/ntp/sntp/include/version.texi	(版本 301301)
@@ -1,3 +1,3 @@
-@set UPDATED 26 April 2016
-@set EDITION 4.2.8p7
-@set VERSION 4.2.8p7
+@set UPDATED 02 June 2016
+@set EDITION 4.2.8p8
+@set VERSION 4.2.8p8
Index: contrib/ntp/sntp/m4/sntp_problemtests.m4
===================================================================
--- contrib/ntp/sntp/m4/sntp_problemtests.m4	(不存在的)
+++ contrib/ntp/sntp/m4/sntp_problemtests.m4	(版本 301301)
@@ -0,0 +1,47 @@
+dnl ######################################################################
+dnl SNTP_PROBLEM_TESTS
+dnl
+dnl Some platforms have problems building or running certain tests.
+dnl While we're in the initial phase of the deployment of the test
+dnl framework, sometimes we may need to disable these tests.
+dnl
+dnl This is where we do that.
+dnl
+AC_DEFUN([SNTP_PROBLEM_TESTS], [
+case "$build" in
+ $host)	cross=0 ;;
+ *)	cross=1 ;;
+esac
+
+AC_MSG_CHECKING([if we want to enable tests with undiagnosed problems])
+AC_ARG_ENABLE(
+    [problem-tests],
+    [AS_HELP_STRING(
+        [--enable-problem-tests],
+        [+ enable tests with undiagnosed problems]
+    )],
+    [sntp_ept=$enableval],
+    [sntp_ept=yes]
+)
+AC_MSG_RESULT([$sntp_ept])
+
+AC_MSG_CHECKING([if we can run test-kodDatabase])
+sntp_test_kodDatabase="no"
+case "$sntp_ept:$cross:$host" in
+ no:0:*-apple-darwin12.6.0) ;;
+ *) sntp_test_kodDatabase="yes" ;;
+esac
+AC_MSG_RESULT([$sntp_test_kodDatabase])
+AM_CONDITIONAL([BUILD_TEST_KODDATABASE], [test x$sntp_test_kodDatabase = xyes])
+
+AC_MSG_CHECKING([if we can run test-kodFile])
+sntp_test_kodFile="no"
+case "$sntp_ept:$cross:$host" in
+ no:0:*-apple-darwin12.6.0) ;;
+ *) sntp_test_kodFile="yes" ;;
+esac
+AC_MSG_RESULT([$sntp_test_kodFile])
+AM_CONDITIONAL([BUILD_TEST_KODFILE], [test x$sntp_test_kodFile = xyes])
+
+])
+dnl ======================================================================
Index: contrib/ntp/sntp/sntp-opts.h
===================================================================
--- contrib/ntp/sntp/sntp-opts.h	(版本 301052)
+++ contrib/ntp/sntp/sntp-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (sntp-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:20:38 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:18:40 AM by AutoGen 5.18.5
  *  From the definitions    sntp-opts.def
  *  and the template file   options
  *
@@ -91,9 +91,9 @@
 /** count of all options for sntp */
 #define OPTION_CT    23
 /** sntp version */
-#define SNTP_VERSION       "4.2.8p7"
+#define SNTP_VERSION       "4.2.8p8"
 /** Full sntp version text */
-#define SNTP_FULL_VERSION  "sntp 4.2.8p7"
+#define SNTP_FULL_VERSION  "sntp 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/sntp/sntp.man.in
===================================================================
--- contrib/ntp/sntp/sntp.man.in	(版本 301052)
+++ contrib/ntp/sntp/sntp.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH sntp @SNTP_MS@ "26 Apr 2016" "4.2.8p7" "User Commands"
+.TH sntp @SNTP_MS@ "02 Jun 2016" "4.2.8p8" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-EjaOrb/ag-RjaGqb)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-5CayKq/ag-fDaqJq)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:21:08 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:19:39 AM by AutoGen 5.18.5
 .\" From the definitions sntp-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/sntp/unity/Makefile.in
===================================================================
--- contrib/ntp/sntp/unity/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/unity/Makefile.in	(版本 301301)
@@ -114,8 +114,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
Index: contrib/ntp/util/ntp-keygen-opts.h
===================================================================
--- contrib/ntp/util/ntp-keygen-opts.h	(版本 301052)
+++ contrib/ntp/util/ntp-keygen-opts.h	(版本 301301)
@@ -1,7 +1,7 @@
 /*
  *  EDIT THIS FILE WITH CAUTION  (ntp-keygen-opts.h)
  *
- *  It has been AutoGen-ed  April 26, 2016 at 08:30:02 PM by AutoGen 5.18.5
+ *  It has been AutoGen-ed  June  2, 2016 at 07:39:23 AM by AutoGen 5.18.5
  *  From the definitions    ntp-keygen-opts.def
  *  and the template file   options
  *
@@ -94,9 +94,9 @@
 /** count of all options for ntp-keygen */
 #define OPTION_CT    26
 /** ntp-keygen version */
-#define NTP_KEYGEN_VERSION       "4.2.8p7"
+#define NTP_KEYGEN_VERSION       "4.2.8p8"
 /** Full ntp-keygen version text */
-#define NTP_KEYGEN_FULL_VERSION  "ntp-keygen (ntp) 4.2.8p7"
+#define NTP_KEYGEN_FULL_VERSION  "ntp-keygen (ntp) 4.2.8p8"
 
 /**
  *  Interface defines for all options.  Replace "n" with the UPPER_CASED
Index: contrib/ntp/util/ntp-keygen.man.in
===================================================================
--- contrib/ntp/util/ntp-keygen.man.in	(版本 301052)
+++ contrib/ntp/util/ntp-keygen.man.in	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH ntp-keygen @NTP_KEYGEN_MS@ "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH ntp-keygen @NTP_KEYGEN_MS@ "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-FRa4eL/ag-RRaWdL)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-.JaGB0/ag-lKayA0)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:30:15 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:39:36 AM by AutoGen 5.18.5
 .\" From the definitions ntp-keygen-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: usr.sbin/ntp/doc/ntp-keygen.8
===================================================================
--- usr.sbin/ntp/doc/ntp-keygen.8	(版本 301052)
+++ usr.sbin/ntp/doc/ntp-keygen.8	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYGEN 8 User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp-keygen-opts.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:30:23 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:39:43 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp-keygen-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: usr.sbin/ntp/doc/ntpdc.8
===================================================================
--- usr.sbin/ntp/doc/ntpdc.8	(版本 301052)
+++ usr.sbin/ntp/doc/ntpdc.8	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPDC 8 User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpdc-opts.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:08 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:58 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpdc-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: usr.sbin/ntp/config.h
===================================================================
--- usr.sbin/ntp/config.h	(版本 301052)
+++ usr.sbin/ntp/config.h	(版本 301301)
@@ -1449,7 +1449,7 @@
 #define PACKAGE_NAME "ntp"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "ntp 4.2.8p7"
+#define PACKAGE_STRING "ntp 4.2.8p8"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "ntp"
@@ -1458,7 +1458,7 @@
 #define PACKAGE_URL "http://www.ntp.org./"
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "4.2.8p7"
+#define PACKAGE_VERSION "4.2.8p8"
 
 /* data dir */
 #define PERLLIBDIR "/usr/local/share/ntp/lib"
@@ -1639,7 +1639,7 @@
 /* #undef USE_UDP_SIGPOLL */
 
 /* Version number of package */
-#define VERSION "4.2.8p7"
+#define VERSION "4.2.8p8"
 
 /* vsnprintf expands "%m" to strerror(errno) */
 /* #undef VSNPRINTF_PERCENT_M */
@@ -1816,5 +1816,5 @@
 /*
  * FreeBSD specific: Explicitly specify date/time for reproducible build.
  */
-#define	MKREPRO_DATE "Apr 27 2016"
-#define	MKREPRO_TIME "05:53:49"
+#define	MKREPRO_DATE "Jun 03 2016"
+#define	MKREPRO_TIME "06:34:37"
Index: usr.sbin/ntp/doc/ntpd.8
===================================================================
--- usr.sbin/ntp/doc/ntpd.8	(版本 301052)
+++ usr.sbin/ntp/doc/ntpd.8	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPD 8 User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpd-opts.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:22 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpd-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: usr.sbin/ntp/scripts/mkver
===================================================================
--- usr.sbin/ntp/scripts/mkver	(版本 301052)
+++ usr.sbin/ntp/scripts/mkver	(版本 301301)
@@ -6,7 +6,7 @@
 
 ConfStr="$PROG"
 
-ConfStr="$ConfStr 4.2.8p7"
+ConfStr="$ConfStr 4.2.8p8"
 
 case "$CSET" in
  '') ;;
Index: contrib/ntp/scripts/plot_summary.html
===================================================================
--- contrib/ntp/scripts/plot_summary.html	(版本 301052)
+++ contrib/ntp/scripts/plot_summary.html	(版本 301301)
@@ -31,7 +31,7 @@
 <h2 class="unnumbered">Plot_summary User Manual</h2>
 
 <p>This document describes the use of the NTP Project's <code>plot_summary</code> program. 
-This document applies to version 4.2.8p7 of <code>plot_summary</code>.
+This document applies to version 4.2.8p8 of <code>plot_summary</code>.
 
   <div class="shortcontents">
 <h2>Short Contents</h2>
@@ -89,7 +89,7 @@
 used to select the program, defaulting to <span class="file">more</span>.  Both will exit
 with a status code of 0.
 
-<pre class="example">plot_summary - plot statistics generated by summary script - Ver. 4.2.8p7
+<pre class="example">plot_summary - plot statistics generated by summary script - Ver. 4.2.8p8
 USAGE: plot_summary [ -&lt;flag&gt; [&lt;val&gt;] | --&lt;name&gt;[{=| }&lt;val&gt;] ]...
 
         --directory=str          Where the summary files are
@@ -173,7 +173,7 @@
         This is string is passed directly to the <code>gnuplot set terminal</code>
         command.  Default is <code>x11</code> if <code>DISPLAY</code> is set and
         <code>dumb</code> is it's not'. See output from  -e "set
-        terminal") for the list of avalaible options. 
+        terminal") for the list of available options. 
 <div class="node">
 <p><hr>
 <a name="plot_005fsummary-output_002dfile"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#plot_005fsummary-exit-status">plot_summary exit status</a>,
Index: contrib/ntp/scripts/summary.1summaryman
===================================================================
--- contrib/ntp/scripts/summary.1summaryman	(版本 301052)
+++ contrib/ntp/scripts/summary.1summaryman	(版本 301301)
@@ -10,11 +10,11 @@
 .ds B-Font B
 .ds I-Font I
 .ds R-Font R
-.TH summary 1summaryman "26 Apr 2016" "ntp (4.2.8p7)" "User Commands"
+.TH summary 1summaryman "02 Jun 2016" "ntp (4.2.8p8)" "User Commands"
 .\"
-.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-gNaWUB/ag-tNa4TB)
+.\" EDIT THIS FILE WITH CAUTION (/tmp/.ag-OuaicR/ag-3uaqbR)
 .\"
-.\" It has been AutoGen-ed April 26, 2016 at 08:25:07 PM by AutoGen 5.18.5
+.\" It has been AutoGen-ed June 2, 2016 at 07:26:00 AM by AutoGen 5.18.5
 .\" From the definitions summary-opts.def
 .\" and the template file agman-cmd.tpl
 .SH NAME
Index: contrib/ntp/scripts/summary.mdoc.in
===================================================================
--- contrib/ntp/scripts/summary.mdoc.in	(版本 301052)
+++ contrib/ntp/scripts/summary.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt SUMMARY 1summarymdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (summary-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:25:09 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:26:02 AM by AutoGen 5.18.5
 .\"  From the definitions    summary-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
===================================================================
--- contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc	(版本 301052)
+++ contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt UPDATE_LEAP 1update-leapmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (update-leap-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:24:54 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:25:37 AM by AutoGen 5.18.5
 .\"  From the definitions    update-leap-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/sntp/Makefile.in
===================================================================
--- contrib/ntp/sntp/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/Makefile.in	(版本 301301)
@@ -126,8 +126,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
Index: contrib/ntp/sntp/include/Makefile.in
===================================================================
--- contrib/ntp/sntp/include/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/include/Makefile.in	(版本 301301)
@@ -114,8 +114,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
Index: contrib/ntp/sntp/libopts/Makefile.in
===================================================================
--- contrib/ntp/sntp/libopts/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/libopts/Makefile.in	(版本 301301)
@@ -114,8 +114,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
Index: contrib/ntp/util/ntp-keygen.mdoc.in
===================================================================
--- contrib/ntp/util/ntp-keygen.mdoc.in	(版本 301052)
+++ contrib/ntp/util/ntp-keygen.mdoc.in	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYGEN @NTP_KEYGEN_MS@ User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp-keygen-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:30:23 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:39:43 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp-keygen-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: usr.sbin/ntp/doc/ntp.conf.5
===================================================================
--- usr.sbin/ntp/doc/ntp.conf.5	(版本 301052)
+++ usr.sbin/ntp/doc/ntp.conf.5	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_CONF 5 File Formats
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:36 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:16 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.conf.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
@@ -2442,6 +2442,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2451,6 +2452,7 @@
 .Cm calibrate | Cm kernel |
 .Cm mode7 | Cm monitor |
 .Cm ntp | Cm stats |
+.Cm peer_clear_digest_early |
 .Cm unpeer_crypto_early | Cm unpeer_crypto_nak_early | Cm unpeer_digest_early
 .Oc
 .Xc
@@ -2518,6 +2520,26 @@
 The default for
 this flag is
 .Ic enable .
+.It Cm peer_clear_digest_early
+By default, if
+.Xr ntpd 8
+is using autokey and it
+receives a crypto\-NAK packet that
+passes the duplicate packet and origin timestamp checks
+the peer variables are immediately cleared.
+While this is generally a feature
+as it allows for quick recovery if a server key has changed,
+a properly forged and appropriately delivered crypto\-NAK packet
+can be used in a DoS attack.
+If you have active noticable problems with this type of DoS attack
+then you should consider
+disabling this option.
+You can check your
+.Cm peerstats
+file for evidence of any of these attacks.
+The
+default for this flag is
+.Ic enable .
 .It Cm stats
 Enables the statistics facility.
 See the
Index: usr.sbin/ntp/doc/ntpq.8
===================================================================
--- usr.sbin/ntp/doc/ntpq.8	(版本 301052)
+++ usr.sbin/ntp/doc/ntpq.8	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTPQ 8 User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntpq-opts.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:29:41 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:37:48 AM by AutoGen 5.18.5
 .\"  From the definitions    ntpq-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/sntp/scripts/Makefile.in
===================================================================
--- contrib/ntp/sntp/scripts/Makefile.in	(版本 301052)
+++ contrib/ntp/sntp/scripts/Makefile.in	(版本 301301)
@@ -113,8 +113,9 @@
 	$(top_srcdir)/m4/ntp_ver_suffix.m4 \
 	$(top_srcdir)/m4/openldap-thread-check.m4 \
 	$(top_srcdir)/m4/openldap.m4 $(top_srcdir)/m4/os_cflags.m4 \
-	$(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/version.m4 \
-	$(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/snprintf.m4 \
+	$(top_srcdir)/m4/sntp_problemtests.m4 \
+	$(top_srcdir)/m4/version.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
Index: contrib/ntp/sntp/sntp.1sntpmdoc
===================================================================
--- contrib/ntp/sntp/sntp.1sntpmdoc	(版本 301052)
+++ contrib/ntp/sntp/sntp.1sntpmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt SNTP 1sntpmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (sntp-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:21:15 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:20:03 AM by AutoGen 5.18.5
 .\"  From the definitions    sntp-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: contrib/ntp/sntp/tests/Makefile.am
===================================================================
--- contrib/ntp/sntp/tests/Makefile.am	(版本 301052)
+++ contrib/ntp/sntp/tests/Makefile.am	(版本 301301)
@@ -34,8 +34,6 @@
 check_PROGRAMS =			\
 	test-crypto			\
 	test-keyFile			\
-	test-kodDatabase		\
-	test-kodFile			\
 	test-log			\
 	test-networking			\
 	test-packetHandling		\
@@ -43,6 +41,14 @@
 	test-utilities			\
 	$(NULL)
 
+if BUILD_TEST_KODDATABASE
+check_PROGRAMS += test-kodDatabase
+endif
+
+if BUILD_TEST_KODFILE
+check_PROGRAMS += test-kodFile
+endif
+
 noinst_HEADERS =		\
 	sntptest.h		\
 	$(NULL)
Index: contrib/ntp/util/invoke-ntp-keygen.texi
===================================================================
--- contrib/ntp/util/invoke-ntp-keygen.texi	(版本 301052)
+++ contrib/ntp/util/invoke-ntp-keygen.texi	(版本 301301)
@@ -6,7 +6,7 @@
 #
 # EDIT THIS FILE WITH CAUTION  (invoke-ntp-keygen.texi)
 #
-# It has been AutoGen-ed  April 26, 2016 at 08:30:20 PM by AutoGen 5.18.5
+# It has been AutoGen-ed  June  2, 2016 at 07:39:40 AM by AutoGen 5.18.5
 # From the definitions    ntp-keygen-opts.def
 # and the template file   agtexi-cmd.tpl
 @end ignore
@@ -886,7 +886,7 @@
 
 @exampleindent 0
 @example
-ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p7
+ntp-keygen (ntp) - Create a NTP host key - Ver. 4.2.8p8
 Usage:  ntp-keygen [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]...
   Flg Arg Option-Name    Description
    -b Num imbits         identity modulus bits
Index: contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
===================================================================
--- contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc	(版本 301052)
+++ contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc	(版本 301301)
@@ -1,9 +1,9 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYGEN 1ntp-keygenmdoc User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (ntp-keygen-opts.mdoc)
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:30:23 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:39:43 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp-keygen-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
Index: sys/conf/newvers.sh
===================================================================
--- sys/conf/newvers.sh	(版本 301052)
+++ sys/conf/newvers.sh	(版本 301301)
@@ -32,7 +32,7 @@
 
 TYPE="FreeBSD"
 REVISION="10.3"
-BRANCH="RELEASE-p4"
+BRANCH="RELEASE-p5"
 if [ "X${BRANCH_OVERRIDE}" != "X" ]; then
 	BRANCH=${BRANCH_OVERRIDE}
 fi
Index: usr.sbin/ntp/doc/ntp.keys.5
===================================================================
--- usr.sbin/ntp/doc/ntp.keys.5	(版本 301052)
+++ usr.sbin/ntp/doc/ntp.keys.5	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt NTP_KEYS 5 File Formats
 .Os SunOS 5.10
 .\"  EDIT THIS FILE WITH CAUTION  (ntp.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:28:39 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:36:20 AM by AutoGen 5.18.5
 .\"  From the definitions    ntp.keys.def
 .\"  and the template file   agmdoc-file.tpl
 .Sh NAME
Index: usr.sbin/ntp/doc/sntp.8
===================================================================
--- usr.sbin/ntp/doc/sntp.8	(版本 301052)
+++ usr.sbin/ntp/doc/sntp.8	(版本 301301)
@@ -1,4 +1,4 @@
-.Dd April 26 2016
+.Dd June 2 2016
 .Dt SNTP 8 User Commands
 .Os
 .\"  EDIT THIS FILE WITH CAUTION  (sntp-opts.mdoc)
@@ -5,7 +5,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.\"  It has been AutoGen-ed  April 26, 2016 at 08:21:15 PM by AutoGen 5.18.5
+.\"  It has been AutoGen-ed  June  2, 2016 at 07:20:03 AM by AutoGen 5.18.5
 .\"  From the definitions    sntp-opts.def
 .\"  and the template file   agmdoc-cmd.tpl
 .Sh NAME
