struct FILE_INFO *ip_file; /* Pointer to the configuration file stream */
void yyerror (char *msg);
+ extern int input_from_file; /* 0=input from ntpq>config command buffer */
/* SK: The following is a terrible hack to allow the NTP code to be built
* without OPENSSL. The following symbols need to be defined in the
#endif
#ifndef YYSTYPE
-#line 67 "ntp_parser.y"
+#line 68 "ntp_parser.y"
typedef union {
char *String;
double Double;
script_info *Sim_script;
} yystype;
/* Line 193 of /usr/local/share/bison/yacc.c. */
-#line 448 "ntp_parser.c"
+#line 449 "ntp_parser.c"
# define YYSTYPE yystype
# define YYSTYPE_IS_TRIVIAL 1
#endif
/* Line 213 of /usr/local/share/bison/yacc.c. */
-#line 469 "ntp_parser.c"
+#line 470 "ntp_parser.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
#endif
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 163
-#define YYLAST 524
+#define YYFINAL 164
+#define YYLAST 464
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 158
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 63
/* YYNRULES -- Number of rules. */
-#define YYNRULES 226
+#define YYNRULES 227
/* YYNRULES -- Number of states. */
#define YYNSTATES 361
357, 360, 363, 366, 369, 372, 375, 377, 379, 381,
383, 385, 387, 389, 391, 394, 397, 399, 402, 405,
408, 411, 414, 417, 420, 424, 426, 429, 432, 435,
- 439, 442, 445, 448, 451, 454, 457, 461, 464, 465,
- 467, 472, 476, 479, 481, 484, 487, 490, 492, 495,
- 497, 499, 501, 503, 506, 508, 511, 513, 516, 518,
- 520, 522, 524, 526, 528, 534, 536, 540, 543, 547,
- 551, 554, 556, 562, 567, 571, 573, 575, 578, 580,
- 587, 591, 594, 598, 602, 606, 610
+ 438, 441, 444, 447, 450, 453, 456, 460, 463, 465,
+ 468, 469, 474, 478, 481, 483, 486, 489, 492, 494,
+ 497, 499, 501, 503, 505, 508, 510, 513, 515, 518,
+ 520, 522, 524, 526, 528, 530, 536, 538, 542, 545,
+ 549, 553, 556, 558, 564, 569, 573, 575, 577, 580,
+ 582, 589, 593, 596, 600, 604, 608, 612
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
207, -1, 28, 207, -1, 42, 207, -1, 46, 207,
-1, 98, 207, -1, 122, 207, -1, 123, 207, -1,
53, 125, 161, -1, 33, -1, 13, 207, -1, 16,
- 54, -1, 127, 207, -1, 30, 125, 196, -1, 103,
- 125, -1, 65, 125, -1, 7, 54, -1, 64, 200,
- -1, 101, 204, -1, 117, 197, -1, 132, 165, 198,
- -1, 135, 203, -1, -1, 54, -1, 125, 153, 125,
- 25, -1, 125, 153, 125, -1, 198, 199, -1, 199,
- -1, 105, 54, -1, 55, 165, -1, 200, 201, -1,
- 201, -1, 202, 125, -1, 125, -1, 154, -1, 155,
- -1, 153, -1, 203, 54, -1, 54, -1, 204, 125,
- -1, 125, -1, 205, 164, -1, 164, -1, 54, -1,
- 133, -1, 34, -1, 54, -1, 29, -1, 209, 156,
- 210, 212, 157, -1, 143, -1, 210, 211, 142, -1,
- 211, 142, -1, 144, 153, 207, -1, 145, 153, 207,
- -1, 212, 213, -1, 213, -1, 215, 156, 214, 217,
- 157, -1, 146, 153, 207, 142, -1, 116, 153, 216,
- -1, 165, -1, 125, -1, 217, 218, -1, 218, -1,
- 147, 153, 207, 156, 219, 157, -1, 219, 220, 142,
- -1, 220, 142, -1, 148, 153, 207, -1, 149, 153,
- 207, -1, 150, 153, 207, -1, 151, 153, 207, -1,
- 152, 153, 207, -1
+ 54, -1, 127, 207, -1, 30, 196, -1, 103, 125,
+ -1, 65, 125, -1, 7, 54, -1, 64, 200, -1,
+ 101, 204, -1, 117, 197, -1, 132, 165, 198, -1,
+ 135, 203, -1, 125, -1, 125, 54, -1, -1, 125,
+ 153, 125, 25, -1, 125, 153, 125, -1, 198, 199,
+ -1, 199, -1, 105, 54, -1, 55, 165, -1, 200,
+ 201, -1, 201, -1, 202, 125, -1, 125, -1, 154,
+ -1, 155, -1, 153, -1, 203, 54, -1, 54, -1,
+ 204, 125, -1, 125, -1, 205, 164, -1, 164, -1,
+ 54, -1, 133, -1, 34, -1, 54, -1, 29, -1,
+ 209, 156, 210, 212, 157, -1, 143, -1, 210, 211,
+ 142, -1, 211, 142, -1, 144, 153, 207, -1, 145,
+ 153, 207, -1, 212, 213, -1, 213, -1, 215, 156,
+ 214, 217, 157, -1, 146, 153, 207, 142, -1, 116,
+ 153, 216, -1, 165, -1, 125, -1, 217, 218, -1,
+ 218, -1, 147, 153, 207, 156, 219, 157, -1, 219,
+ 220, 142, -1, 220, 142, -1, 148, 153, 207, -1,
+ 149, 153, 207, -1, 150, 153, 207, -1, 151, 153,
+ 207, -1, 152, 153, 207, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short yyrline[] =
{
- 0, 298, 298, 302, 303, 308, 316, 317, 318, 319,
- 320, 321, 322, 323, 324, 325, 326, 327, 335, 341,
- 350, 351, 352, 353, 354, 358, 359, 360, 376, 377,
- 381, 382, 387, 388, 389, 390, 391, 392, 393, 394,
- 395, 396, 397, 398, 399, 409, 411, 413, 415, 426,
- 428, 430, 436, 438, 440, 442, 444, 449, 450, 454,
- 456, 458, 460, 462, 464, 466, 468, 470, 472, 482,
- 487, 488, 492, 494, 496, 498, 500, 502, 504, 506,
- 508, 510, 512, 522, 524, 526, 534, 535, 539, 541,
- 543, 545, 547, 549, 554, 555, 559, 560, 561, 562,
- 563, 564, 568, 569, 570, 571, 572, 573, 574, 583,
- 585, 590, 595, 603, 604, 608, 609, 610, 611, 612,
- 613, 614, 615, 616, 617, 618, 619, 623, 624, 628,
- 629, 630, 638, 643, 644, 648, 650, 652, 654, 656,
- 658, 660, 662, 671, 673, 678, 679, 683, 684, 685,
- 686, 687, 688, 690, 698, 702, 703, 707, 708, 709,
- 710, 711, 712, 713, 721, 737, 743, 745, 747, 749,
- 752, 754, 756, 759, 761, 763, 765, 767, 771, 772,
- 777, 779, 785, 786, 790, 791, 796, 797, 801, 802,
- 819, 820, 821, 830, 831, 835, 836, 840, 841, 845,
- 854, 855, 859, 860, 868, 883, 887, 888, 892, 893,
- 897, 898, 902, 907, 911, 915, 916, 920, 921, 925,
- 930, 931, 935, 937, 939, 941, 943
+ 0, 299, 299, 303, 304, 309, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 338, 344,
+ 353, 354, 355, 356, 357, 361, 362, 363, 379, 380,
+ 384, 385, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 412, 414, 416, 418, 429,
+ 431, 433, 439, 441, 443, 445, 447, 452, 453, 457,
+ 459, 461, 463, 465, 467, 469, 471, 473, 475, 485,
+ 490, 491, 495, 497, 499, 501, 503, 505, 507, 509,
+ 511, 513, 515, 525, 527, 529, 537, 538, 542, 544,
+ 546, 548, 550, 552, 557, 558, 562, 563, 564, 565,
+ 566, 567, 571, 572, 573, 574, 575, 576, 577, 586,
+ 588, 593, 598, 606, 607, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 626, 627, 631,
+ 632, 633, 641, 646, 647, 651, 653, 655, 657, 659,
+ 661, 663, 665, 674, 676, 681, 682, 686, 687, 688,
+ 689, 690, 691, 693, 701, 705, 706, 710, 711, 712,
+ 713, 714, 715, 716, 724, 740, 746, 748, 750, 752,
+ 755, 757, 759, 762, 764, 766, 768, 770, 774, 776,
+ 779, 784, 786, 792, 793, 797, 798, 803, 804, 808,
+ 809, 826, 827, 828, 837, 838, 842, 843, 847, 848,
+ 852, 861, 862, 866, 867, 875, 890, 894, 895, 899,
+ 900, 904, 905, 909, 914, 918, 922, 923, 927, 928,
+ 932, 937, 938, 942, 944, 946, 948, 950
};
#endif
191, 191, 191, 191, 192, 193, 193, 194, 194, 194,
194, 194, 194, 194, 195, 195, 195, 195, 195, 195,
195, 195, 195, 195, 195, 195, 195, 195, 196, 196,
- 197, 197, 198, 198, 199, 199, 200, 200, 201, 201,
- 202, 202, 202, 203, 203, 204, 204, 205, 205, 206,
- 206, 206, 207, 207, 208, 209, 210, 210, 211, 211,
- 212, 212, 213, 214, 215, 216, 216, 217, 217, 218,
- 219, 219, 220, 220, 220, 220, 220
+ 196, 197, 197, 198, 198, 199, 199, 200, 200, 201,
+ 201, 202, 202, 202, 203, 203, 204, 204, 205, 205,
+ 206, 206, 206, 207, 207, 208, 209, 210, 210, 211,
+ 211, 212, 212, 213, 214, 215, 216, 216, 217, 217,
+ 218, 219, 219, 220, 220, 220, 220, 220
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
2, 2, 3, 2, 1, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
1, 1, 1, 1, 2, 2, 1, 2, 2, 2,
- 2, 2, 2, 2, 3, 1, 2, 2, 2, 3,
- 2, 2, 2, 2, 2, 2, 3, 2, 0, 1,
- 4, 3, 2, 1, 2, 2, 2, 1, 2, 1,
- 1, 1, 1, 2, 1, 2, 1, 2, 1, 1,
- 1, 1, 1, 1, 5, 1, 3, 2, 3, 3,
- 2, 1, 5, 4, 3, 1, 1, 2, 1, 6,
- 3, 2, 3, 3, 3, 3, 3
+ 2, 2, 2, 2, 3, 1, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 3, 2, 1, 2,
+ 0, 4, 3, 2, 1, 2, 2, 2, 1, 2,
+ 1, 1, 1, 1, 2, 1, 2, 1, 2, 1,
+ 1, 1, 1, 1, 1, 5, 1, 3, 2, 3,
+ 3, 2, 1, 5, 4, 3, 1, 1, 2, 1,
+ 6, 3, 2, 3, 3, 3, 3, 3
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
static const unsigned char yydefact[] =
{
0, 0, 0, 0, 23, 45, 0, 0, 0, 0,
- 0, 0, 0, 0, 165, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 165, 0, 0, 0, 0, 0,
0, 0, 24, 0, 0, 22, 0, 0, 21, 0,
0, 0, 20, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 205, 0, 2, 0, 7, 0, 8, 9,
+ 0, 0, 206, 0, 2, 0, 7, 0, 8, 9,
12, 10, 11, 13, 14, 15, 16, 17, 0, 5,
- 49, 172, 46, 203, 202, 166, 167, 50, 0, 0,
+ 49, 172, 46, 204, 203, 166, 167, 50, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 51, 58,
147, 148, 149, 150, 151, 152, 153, 144, 146, 0,
- 0, 0, 109, 128, 178, 143, 88, 89, 90, 91,
- 92, 93, 0, 28, 29, 0, 26, 0, 25, 6,
- 52, 53, 189, 192, 190, 191, 173, 187, 0, 171,
- 198, 47, 48, 196, 174, 170, 54, 113, 113, 25,
- 55, 0, 175, 83, 87, 84, 168, 0, 0, 0,
- 0, 0, 0, 0, 154, 156, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 69, 71, 0,
- 194, 56, 177, 1, 0, 4, 19, 0, 59, 66,
- 62, 64, 65, 60, 67, 68, 61, 63, 57, 145,
- 129, 130, 131, 127, 179, 169, 101, 100, 0, 98,
+ 0, 0, 109, 128, 178, 169, 143, 88, 89, 90,
+ 91, 92, 93, 0, 28, 29, 0, 26, 0, 25,
+ 6, 52, 53, 190, 193, 191, 192, 173, 188, 0,
+ 171, 199, 47, 48, 197, 174, 170, 54, 113, 113,
+ 25, 55, 0, 175, 83, 87, 84, 168, 0, 0,
+ 0, 0, 0, 0, 0, 154, 156, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 69, 71,
+ 0, 195, 56, 177, 1, 0, 4, 19, 0, 59,
+ 66, 62, 64, 65, 60, 67, 68, 61, 63, 57,
+ 145, 129, 130, 131, 127, 179, 101, 100, 0, 98,
99, 0, 85, 95, 27, 0, 0, 0, 0, 0,
- 0, 0, 0, 132, 134, 164, 186, 188, 197, 195,
+ 0, 0, 0, 132, 134, 164, 187, 189, 198, 196,
111, 110, 0, 0, 86, 157, 158, 159, 160, 161,
- 162, 163, 155, 81, 72, 201, 199, 200, 74, 73,
+ 162, 163, 155, 81, 72, 202, 200, 201, 74, 73,
79, 77, 82, 78, 76, 80, 75, 70, 0, 0,
- 176, 183, 193, 3, 32, 33, 34, 0, 0, 0,
+ 176, 184, 194, 3, 32, 33, 34, 0, 0, 0,
0, 38, 39, 40, 41, 0, 0, 18, 31, 0,
0, 0, 0, 96, 108, 104, 106, 102, 103, 105,
107, 97, 94, 139, 140, 141, 142, 138, 137, 135,
136, 133, 115, 116, 117, 118, 119, 120, 121, 122,
- 123, 124, 125, 126, 114, 113, 181, 185, 184, 182,
+ 123, 124, 125, 126, 114, 113, 182, 186, 185, 183,
35, 37, 36, 43, 42, 44, 30, 0, 0, 0,
- 0, 0, 211, 0, 207, 112, 180, 208, 209, 0,
- 206, 204, 210, 0, 216, 215, 214, 0, 0, 0,
- 0, 0, 218, 0, 0, 212, 217, 213, 0, 0,
+ 0, 0, 212, 0, 208, 112, 181, 209, 210, 0,
+ 207, 205, 211, 0, 217, 216, 215, 0, 0, 0,
+ 0, 0, 219, 0, 0, 213, 218, 214, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 219, 0, 221, 222, 223, 224, 225, 226,
- 220
+ 0, 0, 220, 0, 222, 223, 224, 225, 226, 227,
+ 221
};
/* YYDEFGOTO[NTERM-NUM]. */
static const short yydefgoto[] =
{
- -1, 43, 44, 45, 46, 47, 120, 108, 257, 258,
- 48, 49, 78, 79, 50, 157, 158, 51, 133, 102,
+ -1, 43, 44, 45, 46, 47, 121, 109, 257, 258,
+ 48, 49, 78, 79, 50, 158, 159, 51, 134, 103,
192, 193, 271, 52, 210, 294, 92, 93, 53, 203,
- 204, 54, 87, 88, 55, 144, 145, 56, 185, 132,
- 240, 241, 116, 117, 118, 161, 124, 121, 228, 65,
+ 204, 54, 87, 88, 55, 145, 146, 56, 95, 133,
+ 240, 241, 117, 118, 119, 162, 125, 122, 228, 65,
57, 58, 261, 262, 311, 312, 328, 313, 326, 331,
332, 345, 346
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -133
+#define YYPACT_NINF -135
static const short yypact[] =
{
- 25, -120, -30, -14, -133, -55, -24, -10, -9, 192,
- 54, -2, -76, 54, -133, 53, -40, -75, -72, -63,
- 86, -61, -133, -40, -40, -133, -60, -58, -133, 17,
- 178, 19, -133, -48, 53, -45, -24, 14, 141, -19,
- 28, 28, -133, 87, 165, -56, -133, -40, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -64, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -37, -28,
- -27, -25, -16, 0, 2, 6, 7, 8, 192, -133,
- -133, -133, -133, -133, -133, -133, -133, 54, -133, 41,
- 62, 69, -2, -133, 89, 54, -133, -133, -133, -133,
- -133, -133, -15, -133, -133, 20, -133, 223, -133, 310,
- -133, -133, -133, -133, -133, -133, 86, -133, 29, -133,
- -133, -40, -40, -133, 45, -133, -133, -133, -133, 80,
- -133, 22, -133, 53, -133, -133, -133, -24, -24, -24,
- -24, -24, -24, -24, 14, -133, 119, 126, -11, 130,
- -24, -24, 131, -24, -24, 134, 135, 141, -133, -39,
- -133, 136, 136, -133, 51, -133, 327, -110, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, 71, -133,
- -133, 9, -15, -133, -133, -11, -11, -11, -11, 74,
- 140, -24, -24, 223, -133, -133, -133, -133, -133, -133,
- 387, 387, -19, 75, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -19, 148,
- -39, -133, -133, -133, -133, -133, -133, 152, 153, 161,
- 167, -133, -133, -133, -133, 168, 173, 327, -133, 66,
- 78, 18, 93, -133, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, 203, -133, -133, -133,
- -133, -133, -133, -133, -133, -133, -133, -24, -24, 96,
- 108, -103, -133, 95, -133, 387, -133, -133, -133, -44,
- -133, -133, -133, 113, -133, -133, -133, 99, 118, -24,
- 114, -132, -133, 128, -24, -133, -133, -133, 117, 106,
- 121, 122, 124, 132, 138, 207, 145, -24, -24, -24,
- -24, -24, -133, 146, -133, -133, -133, -133, -133, -133,
- -133
+ 10, -134, -41, -34, -135, -66, -15, -19, -7, 129,
+ 0, -4, -75, 0, -135, 32, 42, -73, -71, -65,
+ 50, -49, -135, 42, 42, -135, -43, -33, -135, 26,
+ 37, 47, -135, 5, 32, 13, -15, -1, 179, 39,
+ 56, 56, -135, 135, 165, 4, -135, 42, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -6, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, 24, 29,
+ 34, 35, 36, 44, 45, 63, 68, 69, 129, -135,
+ -135, -135, -135, -135, -135, -135, -135, 0, -135, 103,
+ 146, 148, -4, -135, 152, -135, 0, -135, -135, -135,
+ -135, -135, -135, -2, -135, -135, 82, -135, 27, -135,
+ 310, -135, -135, -135, -135, -135, -135, 50, -135, 87,
+ -135, -135, 42, 42, -135, 94, -135, -135, -135, -135,
+ 151, -135, 72, -135, 32, -135, -135, -135, -15, -15,
+ -15, -15, -15, -15, -15, -1, -135, 168, 172, -16,
+ 173, -15, -15, 174, -15, -15, 177, 178, 179, -135,
+ -11, -135, 181, 181, -135, 95, -135, 327, -45, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, 120, -135,
+ -135, 46, -2, -135, -135, -16, -16, -16, -16, 121,
+ 182, -15, -15, 27, -135, -135, -135, -135, -135, -135,
+ 299, 299, 39, 128, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, 39, 202,
+ -11, -135, -135, -135, -135, -135, -135, 203, 211, 213,
+ 216, -135, -135, -135, -135, 219, 220, 327, -135, 122,
+ 124, 66, 141, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, 260, -135, -135, -135,
+ -135, -135, -135, -135, -135, -135, -135, -15, -15, 134,
+ 147, -109, -135, 132, -135, 299, -135, -135, -135, 11,
+ -135, -135, -135, 145, -135, -135, -135, 149, 154, -15,
+ 150, -128, -135, 162, -15, -135, -135, -135, 138, 111,
+ 153, 156, 157, 166, 167, 92, 163, -15, -15, -15,
+ -15, -15, -135, 176, -135, -135, -135, -135, -135, -135,
+ -135
};
/* YYPGOTO[NTERM-NUM]. */
static const short yypgoto[] =
{
- -133, -133, -133, -35, -133, -133, 83, -29, -133, 26,
- -133, -133, -133, 211, -133, -133, 137, -133, -133, -13,
- -133, 112, -133, -133, -126, -133, -133, 213, -133, -133,
- 103, -133, 296, -68, -133, -133, 174, -133, -133, -133,
- -133, 79, -133, 204, -133, 283, -133, 301, 49, -36,
- -133, -133, -133, 67, -133, 16, -133, -133, -133, -133,
- -1, -133, -7
+ -135, -135, -135, -38, -135, -135, 41, -29, -135, 67,
+ -135, -135, -135, 247, -135, -135, 169, -135, -135, -22,
+ -135, 136, -135, -135, -127, -135, -135, 237, -135, -135,
+ 127, -135, 321, -62, -135, -135, 190, -135, -135, -135,
+ -135, 98, -135, 222, -135, 303, -135, 323, 19, -36,
+ -135, -135, -135, 84, -135, 38, -135, -135, -135, -135,
+ 17, -135, 7
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
#define YYTABLE_NINF -7
static const short yytable[] =
{
- 136, 129, 211, 103, 104, 63, 89, 103, 104, 164,
- 159, 186, 264, 309, 105, 330, 238, 187, 137, 179,
- 188, 134, 59, 225, 60, 335, 1, 179, 103, 104,
- 64, 2, 3, 265, 259, 260, 4, 5, 6, 62,
- 61, 7, 138, 226, 66, 67, 8, 9, 189, 94,
- 109, 10, 11, 110, 321, 12, 139, 13, 14, 80,
- 140, 15, 111, 81, 119, 123, 239, 125, 16, 82,
- 190, 126, 96, 130, 205, 90, 97, 131, 17, 91,
- 135, 324, 160, 18, 19, 106, 165, 163, 168, 20,
- 21, 266, 167, 22, 23, 180, 267, 169, 170, 107,
- 171, 215, 216, 217, 218, 219, 220, 221, 24, 172,
- 83, 268, 141, 128, 230, 231, 181, 233, 234, 98,
- 214, 191, 227, 182, 25, 173, 26, 174, 27, 28,
- 166, 175, 176, 177, 309, 84, 142, 143, 29, 30,
- 31, 32, 33, 184, 34, 194, 35, 269, 270, 85,
- 212, 146, 36, 99, 207, 37, 38, 39, 147, 40,
- 41, 148, 259, 260, 100, 279, 280, -6, 42, 315,
- 209, 2, 3, 223, 86, 213, 4, 5, 6, 101,
- 224, 7, 149, 295, 229, 232, 8, 9, 235, 236,
- 242, 10, 11, 243, 278, 12, 263, 13, 14, 277,
- 296, 15, 298, 127, 208, 208, 300, 301, 16, 297,
- 68, 112, 150, 151, 152, 302, 153, 154, 17, 307,
- 155, 303, 304, 18, 19, 103, 104, 305, 316, 20,
- 21, 308, 105, 22, 23, 314, 69, 70, 156, 113,
- 114, 115, 71, 72, 273, 274, 275, 276, 24, 319,
- 320, 323, 329, 73, 340, 341, 342, 343, 344, 327,
- 195, 196, 197, 198, 25, 330, 26, 334, 27, 28,
- 337, 317, 318, 339, 347, 348, 74, 349, 29, 30,
- 31, 32, 33, 306, 34, 350, 35, 354, 360, 178,
- 325, 351, 36, 333, 237, 37, 38, 39, 338, 40,
- 41, 75, 76, 106, 272, 183, 281, -6, 42, 95,
- 77, 355, 356, 357, 358, 359, 2, 3, 222, 299,
- 206, 4, 5, 6, 162, 122, 7, 322, 310, 0,
- 336, 8, 9, 244, 0, 199, 10, 11, 353, 0,
- 12, 245, 13, 14, 0, 0, 15, 200, 0, 0,
- 0, 201, 202, 16, 0, 340, 341, 342, 343, 344,
- 0, 0, 0, 17, 352, 0, 0, 0, 18, 19,
+ 137, 130, 211, 138, 89, 80, 165, 309, 59, 81,
+ 160, 1, 135, 60, 63, 82, 2, 3, 225, 330,
+ 61, 4, 5, 6, 186, 180, 7, 139, 62, 335,
+ 187, 8, 9, 188, 180, 66, 10, 11, 226, 64,
+ 12, 140, 13, 14, 238, 141, 15, 67, 321, 264,
+ 94, 97, 110, 16, 111, 98, 83, 108, 104, 105,
+ 112, 189, 128, 17, 195, 196, 197, 198, 18, 19,
+ 265, 129, 205, 90, 20, 21, 120, 91, 22, 23,
+ 127, 84, 124, 190, 104, 105, 104, 105, 167, 104,
+ 105, 106, 126, 24, 239, 85, 106, 142, 99, 259,
+ 260, 131, 215, 216, 217, 218, 219, 220, 221, 25,
+ 161, 26, 214, 27, 28, 230, 231, 227, 233, 234,
+ 86, 143, 144, 29, 30, 31, 32, 33, 266, 34,
+ 132, 35, 100, 267, 191, 164, 324, 36, 136, 199,
+ 37, 38, 39, 101, 40, 41, 166, 68, 268, 169,
+ 168, 200, -6, 42, 170, 201, 202, 181, 102, 171,
+ 172, 173, 107, 208, 208, 279, 280, 107, 315, 174,
+ 175, 2, 3, 69, 70, 113, 4, 5, 6, 71,
+ 72, 7, 309, 295, 269, 270, 8, 9, 176, 147,
+ 73, 10, 11, 177, 178, 12, 148, 13, 14, 149,
+ 182, 15, 183, 114, 115, 116, 185, 194, 16, 297,
+ 259, 260, 207, 74, 273, 274, 275, 276, 17, 209,
+ 150, 212, 223, 18, 19, 213, 224, 229, 232, 20,
+ 21, 235, 236, 22, 23, 242, 278, 243, 75, 76,
+ 340, 341, 342, 343, 344, 263, 277, 77, 24, 352,
+ 151, 152, 153, 296, 154, 155, 298, 300, 156, 340,
+ 341, 342, 343, 344, 25, 301, 26, 302, 27, 28,
+ 303, 317, 318, 304, 305, 307, 157, 308, 29, 30,
+ 31, 32, 33, 314, 34, 316, 35, 319, 323, 320,
+ 325, 327, 36, 333, 339, 37, 38, 39, 338, 40,
+ 41, 330, 329, 334, 337, 354, 347, -6, 42, 348,
+ 349, 355, 356, 357, 358, 359, 2, 3, 360, 350,
+ 351, 4, 5, 6, 306, 179, 7, 237, 272, 184,
+ 281, 8, 9, 244, 96, 222, 10, 11, 299, 206,
+ 12, 245, 13, 14, 163, 310, 15, 123, 336, 322,
+ 0, 282, 353, 16, 0, 0, 0, 0, 0, 283,
+ 0, 284, 0, 17, 0, 0, 285, 0, 18, 19,
0, 0, 0, 0, 20, 21, 246, 0, 22, 23,
- 0, 0, 0, 0, 247, 0, 0, 0, 0, 0,
- 0, 0, 0, 24, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 247, 286, 0, 287, 288, 0,
+ 289, 290, 291, 24, 0, 292, 0, 0, 0, 0,
0, 248, 0, 0, 0, 249, 0, 250, 0, 25,
0, 26, 0, 27, 28, 0, 0, 251, 0, 0,
0, 0, 0, 29, 30, 31, 32, 33, 0, 34,
- 0, 35, 0, 0, 252, 253, 0, 36, 0, 282,
- 37, 38, 39, 0, 40, 41, 0, 283, 0, 284,
- 0, 0, 0, 42, 285, 0, 0, 0, 0, 0,
- 254, 0, 255, 0, 256, 0, 0, 0, 0, 0,
- 0, 0, 0, 286, 0, 287, 288, 0, 289, 290,
- 291, 0, 0, 292, 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, 0,
- 0, 0, 0, 0, 293
+ 0, 35, 0, 0, 252, 253, 293, 36, 0, 0,
+ 37, 38, 39, 0, 40, 41, 0, 0, 0, 0,
+ 0, 0, 0, 42, 0, 0, 0, 0, 0, 0,
+ 254, 0, 255, 0, 256
};
static const short yycheck[] =
{
- 36, 30, 128, 47, 48, 29, 8, 47, 48, 44,
- 39, 26, 3, 116, 54, 147, 55, 32, 4, 87,
- 35, 34, 142, 34, 54, 157, 1, 95, 47, 48,
- 54, 6, 7, 24, 144, 145, 11, 12, 13, 94,
- 54, 16, 28, 54, 54, 54, 21, 22, 63, 125,
- 125, 26, 27, 125, 157, 30, 42, 32, 33, 5,
- 46, 36, 125, 9, 125, 125, 105, 125, 43, 15,
- 85, 54, 19, 54, 109, 77, 23, 125, 53, 81,
- 125, 125, 54, 58, 59, 125, 142, 0, 125, 64,
- 65, 82, 156, 68, 69, 54, 87, 125, 125, 16,
- 125, 137, 138, 139, 140, 141, 142, 143, 83, 125,
- 56, 102, 98, 30, 150, 151, 54, 153, 154, 66,
- 133, 136, 133, 54, 99, 125, 101, 125, 103, 104,
- 47, 125, 125, 125, 116, 81, 122, 123, 113, 114,
- 115, 116, 117, 54, 119, 125, 121, 138, 139, 95,
- 70, 10, 127, 100, 125, 130, 131, 132, 17, 134,
- 135, 20, 144, 145, 111, 201, 202, 142, 143, 295,
- 125, 6, 7, 54, 120, 153, 11, 12, 13, 126,
- 54, 16, 41, 212, 54, 54, 21, 22, 54, 54,
- 54, 26, 27, 142, 54, 30, 125, 32, 33, 125,
- 125, 36, 54, 25, 121, 122, 54, 54, 43, 238,
- 18, 125, 71, 72, 73, 54, 75, 76, 53, 153,
- 79, 54, 54, 58, 59, 47, 48, 54, 25, 64,
- 65, 153, 54, 68, 69, 142, 44, 45, 97, 153,
- 154, 155, 50, 51, 195, 196, 197, 198, 83, 153,
- 142, 156, 153, 61, 148, 149, 150, 151, 152, 146,
- 37, 38, 39, 40, 99, 147, 101, 153, 103, 104,
- 142, 307, 308, 156, 153, 153, 84, 153, 113, 114,
- 115, 116, 117, 257, 119, 153, 121, 142, 142, 78,
- 319, 153, 127, 329, 157, 130, 131, 132, 334, 134,
- 135, 109, 110, 125, 192, 92, 203, 142, 143, 13,
- 118, 347, 348, 349, 350, 351, 6, 7, 144, 240,
- 116, 11, 12, 13, 41, 24, 16, 311, 261, -1,
- 331, 21, 22, 6, -1, 112, 26, 27, 345, -1,
- 30, 14, 32, 33, -1, -1, 36, 124, -1, -1,
- -1, 128, 129, 43, -1, 148, 149, 150, 151, 152,
- -1, -1, -1, 53, 157, -1, -1, -1, 58, 59,
+ 36, 30, 129, 4, 8, 5, 44, 116, 142, 9,
+ 39, 1, 34, 54, 29, 15, 6, 7, 34, 147,
+ 54, 11, 12, 13, 26, 87, 16, 28, 94, 157,
+ 32, 21, 22, 35, 96, 54, 26, 27, 54, 54,
+ 30, 42, 32, 33, 55, 46, 36, 54, 157, 3,
+ 125, 19, 125, 43, 125, 23, 56, 16, 47, 48,
+ 125, 63, 25, 53, 37, 38, 39, 40, 58, 59,
+ 24, 30, 110, 77, 64, 65, 125, 81, 68, 69,
+ 54, 81, 125, 85, 47, 48, 47, 48, 47, 47,
+ 48, 54, 125, 83, 105, 95, 54, 98, 66, 144,
+ 145, 54, 138, 139, 140, 141, 142, 143, 144, 99,
+ 54, 101, 134, 103, 104, 151, 152, 133, 154, 155,
+ 120, 122, 123, 113, 114, 115, 116, 117, 82, 119,
+ 125, 121, 100, 87, 136, 0, 125, 127, 125, 112,
+ 130, 131, 132, 111, 134, 135, 142, 18, 102, 125,
+ 156, 124, 142, 143, 125, 128, 129, 54, 126, 125,
+ 125, 125, 125, 122, 123, 201, 202, 125, 295, 125,
+ 125, 6, 7, 44, 45, 125, 11, 12, 13, 50,
+ 51, 16, 116, 212, 138, 139, 21, 22, 125, 10,
+ 61, 26, 27, 125, 125, 30, 17, 32, 33, 20,
+ 54, 36, 54, 153, 154, 155, 54, 125, 43, 238,
+ 144, 145, 125, 84, 195, 196, 197, 198, 53, 125,
+ 41, 70, 54, 58, 59, 153, 54, 54, 54, 64,
+ 65, 54, 54, 68, 69, 54, 54, 142, 109, 110,
+ 148, 149, 150, 151, 152, 125, 125, 118, 83, 157,
+ 71, 72, 73, 125, 75, 76, 54, 54, 79, 148,
+ 149, 150, 151, 152, 99, 54, 101, 54, 103, 104,
+ 54, 307, 308, 54, 54, 153, 97, 153, 113, 114,
+ 115, 116, 117, 142, 119, 25, 121, 153, 156, 142,
+ 319, 146, 127, 329, 156, 130, 131, 132, 334, 134,
+ 135, 147, 153, 153, 142, 142, 153, 142, 143, 153,
+ 153, 347, 348, 349, 350, 351, 6, 7, 142, 153,
+ 153, 11, 12, 13, 257, 78, 16, 158, 192, 92,
+ 203, 21, 22, 6, 13, 145, 26, 27, 240, 117,
+ 30, 14, 32, 33, 41, 261, 36, 24, 331, 311,
+ -1, 52, 345, 43, -1, -1, -1, -1, -1, 60,
+ -1, 62, -1, 53, -1, -1, 67, -1, 58, 59,
-1, -1, -1, -1, 64, 65, 49, -1, 68, 69,
- -1, -1, -1, -1, 57, -1, -1, -1, -1, -1,
- -1, -1, -1, 83, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 57, 86, -1, 88, 89, -1,
+ 91, 92, 93, 83, -1, 96, -1, -1, -1, -1,
-1, 74, -1, -1, -1, 78, -1, 80, -1, 99,
-1, 101, -1, 103, 104, -1, -1, 90, -1, -1,
-1, -1, -1, 113, 114, 115, 116, 117, -1, 119,
- -1, 121, -1, -1, 107, 108, -1, 127, -1, 52,
- 130, 131, 132, -1, 134, 135, -1, 60, -1, 62,
- -1, -1, -1, 143, 67, -1, -1, -1, -1, -1,
- 133, -1, 135, -1, 137, -1, -1, -1, -1, -1,
- -1, -1, -1, 86, -1, 88, 89, -1, 91, 92,
- 93, -1, -1, 96, -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, 137
+ -1, 121, -1, -1, 107, 108, 137, 127, -1, -1,
+ 130, 131, 132, -1, 134, 135, -1, -1, -1, -1,
+ -1, -1, -1, 143, -1, -1, -1, -1, -1, -1,
+ 133, -1, 135, -1, 137
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
54, 54, 94, 29, 54, 207, 54, 54, 18, 44,
45, 50, 51, 61, 84, 109, 110, 118, 170, 171,
5, 9, 15, 56, 81, 95, 120, 190, 191, 8,
- 77, 81, 184, 185, 125, 190, 19, 23, 66, 100,
- 111, 126, 177, 47, 48, 54, 125, 164, 165, 125,
- 125, 125, 125, 153, 154, 155, 200, 201, 202, 125,
- 164, 205, 205, 125, 204, 125, 54, 25, 164, 165,
- 54, 125, 197, 176, 177, 125, 207, 4, 28, 42,
- 46, 98, 122, 123, 193, 194, 10, 17, 20, 41,
- 71, 72, 73, 75, 76, 79, 97, 173, 174, 165,
- 54, 203, 203, 0, 161, 142, 164, 156, 125, 125,
- 125, 125, 125, 125, 125, 125, 125, 125, 171, 191,
- 54, 54, 54, 185, 54, 196, 26, 32, 35, 63,
+ 77, 81, 184, 185, 125, 196, 190, 19, 23, 66,
+ 100, 111, 126, 177, 47, 48, 54, 125, 164, 165,
+ 125, 125, 125, 125, 153, 154, 155, 200, 201, 202,
+ 125, 164, 205, 205, 125, 204, 125, 54, 25, 164,
+ 165, 54, 125, 197, 176, 177, 125, 207, 4, 28,
+ 42, 46, 98, 122, 123, 193, 194, 10, 17, 20,
+ 41, 71, 72, 73, 75, 76, 79, 97, 173, 174,
+ 165, 54, 203, 203, 0, 161, 142, 164, 156, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 171,
+ 191, 54, 54, 54, 185, 54, 26, 32, 35, 63,
85, 136, 178, 179, 125, 37, 38, 39, 40, 112,
124, 128, 129, 187, 188, 161, 201, 125, 164, 125,
182, 182, 70, 153, 177, 207, 207, 207, 207, 207,
switch (yyn)
{
case 5:
-#line 309 "ntp_parser.y"
+#line 310 "ntp_parser.y"
{
- fprintf(stderr, "PARSE ERROR!! At Line: %d\n",
- ip_file->line_no);
- fprintf(stderr, "Line Ignored!!\n");
+ if (input_from_file == 1) {
+ msyslog(LOG_INFO, "parse error %s line %d ignored\n",
+ ip_file->fname, ip_file->line_no);
+ } else if (input_from_file != 0)
+ msyslog(LOG_INFO, "parse: bad boolean input flag\n");
}
break;
case 18:
-#line 336 "ntp_parser.y"
+#line 339 "ntp_parser.y"
{
struct peer_node *my_node = create_peer_node(yyvsp[-2].Integer, yyvsp[-1].Address_node, yyvsp[0].Queue);
if (my_node)
break;
case 19:
-#line 342 "ntp_parser.y"
+#line 345 "ntp_parser.y"
{
struct peer_node *my_node = create_peer_node(yyvsp[-1].Integer, yyvsp[0].Address_node, NULL);
if (my_node)
break;
case 20:
-#line 350 "ntp_parser.y"
+#line 353 "ntp_parser.y"
{ yyval.Integer = T_Server; }
break;
case 21:
-#line 351 "ntp_parser.y"
+#line 354 "ntp_parser.y"
{ yyval.Integer = T_Pool; }
break;
case 22:
-#line 352 "ntp_parser.y"
+#line 355 "ntp_parser.y"
{ yyval.Integer = T_Peer; }
break;
case 23:
-#line 353 "ntp_parser.y"
+#line 356 "ntp_parser.y"
{ yyval.Integer = T_Broadcast; }
break;
case 24:
-#line 354 "ntp_parser.y"
+#line 357 "ntp_parser.y"
{ yyval.Integer = T_Manycastclient; }
break;
case 25:
-#line 358 "ntp_parser.y"
+#line 361 "ntp_parser.y"
{ yyval.Address_node = yyvsp[0].Address_node; }
break;
case 26:
-#line 359 "ntp_parser.y"
+#line 362 "ntp_parser.y"
{ yyval.Address_node = create_address_node(yyvsp[0].String, default_ai_family); }
break;
case 27:
-#line 361 "ntp_parser.y"
+#line 364 "ntp_parser.y"
{
if (yyvsp[-1].Integer == -4)
yyval.Address_node = create_address_node(yyvsp[0].String, AF_INET);
break;
case 28:
-#line 376 "ntp_parser.y"
+#line 379 "ntp_parser.y"
{ yyval.Address_node = create_address_node(yyvsp[0].String, AF_INET); }
break;
case 29:
-#line 377 "ntp_parser.y"
+#line 380 "ntp_parser.y"
{ yyval.Address_node = create_address_node(yyvsp[0].String, AF_INET6); }
break;
case 30:
-#line 381 "ntp_parser.y"
+#line 384 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 31:
-#line 382 "ntp_parser.y"
+#line 385 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 32:
-#line 387 "ntp_parser.y"
+#line 390 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_SKEY | FLAG_AUTHENABLE); }
break;
case 33:
-#line 388 "ntp_parser.y"
+#line 391 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_BURST); }
break;
case 34:
-#line 389 "ntp_parser.y"
+#line 392 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_IBURST); }
break;
case 35:
-#line 390 "ntp_parser.y"
+#line 393 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Key, yyvsp[0].Integer); }
break;
case 36:
-#line 391 "ntp_parser.y"
+#line 394 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Minpoll, yyvsp[0].Integer); }
break;
case 37:
-#line 392 "ntp_parser.y"
+#line 395 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Maxpoll, yyvsp[0].Integer); }
break;
case 38:
-#line 393 "ntp_parser.y"
+#line 396 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_NOSELECT);}
break;
case 39:
-#line 394 "ntp_parser.y"
+#line 397 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_PREEMPT); }
break;
case 40:
-#line 395 "ntp_parser.y"
+#line 398 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_PREFER); }
break;
case 41:
-#line 396 "ntp_parser.y"
+#line 399 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, FLAG_TRUE); }
break;
case 42:
-#line 397 "ntp_parser.y"
+#line 400 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Ttl, yyvsp[0].Integer); }
break;
case 43:
-#line 398 "ntp_parser.y"
+#line 401 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Mode, yyvsp[0].Integer); }
break;
case 44:
-#line 399 "ntp_parser.y"
+#line 402 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Version, yyvsp[0].Integer); }
break;
case 45:
-#line 410 "ntp_parser.y"
+#line 413 "ntp_parser.y"
{ my_config.broadcastclient = SIMPLE; }
break;
case 46:
-#line 412 "ntp_parser.y"
+#line 415 "ntp_parser.y"
{ my_config.broadcastclient = NOVOLLEY; }
break;
case 47:
-#line 414 "ntp_parser.y"
+#line 417 "ntp_parser.y"
{ append_queue(my_config.manycastserver, yyvsp[0].Queue); }
break;
case 48:
-#line 416 "ntp_parser.y"
+#line 419 "ntp_parser.y"
{ append_queue(my_config.multicastclient, yyvsp[0].Queue); }
break;
case 49:
-#line 427 "ntp_parser.y"
+#line 430 "ntp_parser.y"
{ my_config.auth.autokey = yyvsp[0].Integer; }
break;
case 50:
-#line 429 "ntp_parser.y"
+#line 432 "ntp_parser.y"
{ my_config.auth.control_key = yyvsp[0].Integer; }
break;
case 51:
-#line 431 "ntp_parser.y"
+#line 434 "ntp_parser.y"
{ if (my_config.auth.crypto_cmd_list != NULL)
append_queue(my_config.auth.crypto_cmd_list, yyvsp[0].Queue);
else
break;
case 52:
-#line 437 "ntp_parser.y"
+#line 440 "ntp_parser.y"
{ my_config.auth.keys = yyvsp[0].String; }
break;
case 53:
-#line 439 "ntp_parser.y"
+#line 442 "ntp_parser.y"
{ my_config.auth.keysdir = yyvsp[0].String; }
break;
case 54:
-#line 441 "ntp_parser.y"
+#line 444 "ntp_parser.y"
{ my_config.auth.requested_key = yyvsp[0].Integer; }
break;
case 55:
-#line 443 "ntp_parser.y"
+#line 446 "ntp_parser.y"
{ my_config.auth.revoke = yyvsp[0].Integer; }
break;
case 56:
-#line 445 "ntp_parser.y"
+#line 448 "ntp_parser.y"
{ my_config.auth.trusted_key_list = yyvsp[0].Queue; }
break;
case 57:
-#line 449 "ntp_parser.y"
+#line 452 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 58:
-#line 450 "ntp_parser.y"
+#line 453 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 59:
-#line 455 "ntp_parser.y"
+#line 458 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_CERT, yyvsp[0].String); }
break;
case 60:
-#line 457 "ntp_parser.y"
+#line 460 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_LEAP, yyvsp[0].String); }
break;
case 61:
-#line 459 "ntp_parser.y"
+#line 462 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_RAND, yyvsp[0].String); }
break;
case 62:
-#line 461 "ntp_parser.y"
+#line 464 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_PRIV, yyvsp[0].String); }
break;
case 63:
-#line 463 "ntp_parser.y"
+#line 466 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_SIGN, yyvsp[0].String); }
break;
case 64:
-#line 465 "ntp_parser.y"
+#line 468 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_IDENT, yyvsp[0].String); }
break;
case 65:
-#line 467 "ntp_parser.y"
+#line 470 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_IFFPAR, yyvsp[0].String); }
break;
case 66:
-#line 469 "ntp_parser.y"
+#line 472 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_GQPAR, yyvsp[0].String); }
break;
case 67:
-#line 471 "ntp_parser.y"
+#line 474 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_MVPAR, yyvsp[0].String); }
break;
case 68:
-#line 473 "ntp_parser.y"
+#line 476 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CRYPTO_CONF_PW, yyvsp[0].String); }
break;
case 69:
-#line 483 "ntp_parser.y"
+#line 486 "ntp_parser.y"
{ append_queue(my_config.orphan_cmds,yyvsp[0].Queue); }
break;
case 70:
-#line 487 "ntp_parser.y"
+#line 490 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 71:
-#line 488 "ntp_parser.y"
+#line 491 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 72:
-#line 493 "ntp_parser.y"
+#line 496 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_CEILING, (double)yyvsp[0].Integer); }
break;
case 73:
-#line 495 "ntp_parser.y"
+#line 498 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_FLOOR, (double)yyvsp[0].Integer); }
break;
case 74:
-#line 497 "ntp_parser.y"
+#line 500 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_COHORT, (double)yyvsp[0].Integer); }
break;
case 75:
-#line 499 "ntp_parser.y"
+#line 502 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_ORPHAN, (double)yyvsp[0].Integer); }
break;
case 76:
-#line 501 "ntp_parser.y"
+#line 504 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MINDISP, yyvsp[0].Double); }
break;
case 77:
-#line 503 "ntp_parser.y"
+#line 506 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MAXDIST, yyvsp[0].Double); }
break;
case 78:
-#line 505 "ntp_parser.y"
+#line 508 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MINCLOCK, yyvsp[0].Double); }
break;
case 79:
-#line 507 "ntp_parser.y"
+#line 510 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MAXCLOCK, yyvsp[0].Double); }
break;
case 80:
-#line 509 "ntp_parser.y"
+#line 512 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MINSANE, (double)yyvsp[0].Integer); }
break;
case 81:
-#line 511 "ntp_parser.y"
+#line 514 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_BEACON, (double)yyvsp[0].Integer); }
break;
case 82:
-#line 513 "ntp_parser.y"
+#line 516 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(PROTO_MAXHOP, (double)yyvsp[0].Integer); }
break;
case 83:
-#line 523 "ntp_parser.y"
+#line 526 "ntp_parser.y"
{ append_queue(my_config.stats_list, yyvsp[0].Queue); }
break;
case 84:
-#line 525 "ntp_parser.y"
+#line 528 "ntp_parser.y"
{ my_config.stats_dir = yyvsp[0].String; }
break;
case 85:
-#line 527 "ntp_parser.y"
+#line 530 "ntp_parser.y"
{
enqueue(my_config.filegen_opts,
create_filegen_node(yyvsp[-1].VoidPtr, yyvsp[0].Queue));
break;
case 86:
-#line 534 "ntp_parser.y"
+#line 537 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].VoidPtr); }
break;
case 87:
-#line 535 "ntp_parser.y"
+#line 538 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].VoidPtr); }
break;
case 88:
-#line 540 "ntp_parser.y"
+#line 543 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("clockstats"); }
break;
case 89:
-#line 542 "ntp_parser.y"
+#line 545 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("cryptostats"); }
break;
case 90:
-#line 544 "ntp_parser.y"
+#line 547 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("loopstats"); }
break;
case 91:
-#line 546 "ntp_parser.y"
+#line 549 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("peerstats"); }
break;
case 92:
-#line 548 "ntp_parser.y"
+#line 551 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("rawstats"); }
break;
case 93:
-#line 550 "ntp_parser.y"
+#line 553 "ntp_parser.y"
{ yyval.VoidPtr = create_pval("sysstats"); }
break;
case 94:
-#line 554 "ntp_parser.y"
+#line 557 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 95:
-#line 555 "ntp_parser.y"
+#line 558 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 96:
-#line 559 "ntp_parser.y"
+#line 562 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(T_File, yyvsp[0].String); }
break;
case 97:
-#line 560 "ntp_parser.y"
+#line 563 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Type, yyvsp[0].Integer); }
break;
case 98:
-#line 561 "ntp_parser.y"
+#line 564 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, T_Link); }
break;
case 99:
-#line 562 "ntp_parser.y"
+#line 565 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, T_Nolink); }
break;
case 100:
-#line 563 "ntp_parser.y"
+#line 566 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, T_Enable); }
break;
case 101:
-#line 564 "ntp_parser.y"
+#line 567 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, T_Disable); }
break;
case 102:
-#line 568 "ntp_parser.y"
+#line 571 "ntp_parser.y"
{ yyval.Integer = FILEGEN_NONE; }
break;
case 103:
-#line 569 "ntp_parser.y"
+#line 572 "ntp_parser.y"
{ yyval.Integer = FILEGEN_PID; }
break;
case 104:
-#line 570 "ntp_parser.y"
+#line 573 "ntp_parser.y"
{ yyval.Integer = FILEGEN_DAY; }
break;
case 105:
-#line 571 "ntp_parser.y"
+#line 574 "ntp_parser.y"
{ yyval.Integer = FILEGEN_WEEK; }
break;
case 106:
-#line 572 "ntp_parser.y"
+#line 575 "ntp_parser.y"
{ yyval.Integer = FILEGEN_MONTH; }
break;
case 107:
-#line 573 "ntp_parser.y"
+#line 576 "ntp_parser.y"
{ yyval.Integer = FILEGEN_YEAR; }
break;
case 108:
-#line 574 "ntp_parser.y"
+#line 577 "ntp_parser.y"
{ yyval.Integer = FILEGEN_AGE; }
break;
case 109:
-#line 584 "ntp_parser.y"
+#line 587 "ntp_parser.y"
{ append_queue(my_config.discard_opts, yyvsp[0].Queue); }
break;
case 110:
-#line 586 "ntp_parser.y"
+#line 589 "ntp_parser.y"
{
enqueue(my_config.restrict_opts,
create_restrict_node(yyvsp[-1].Address_node, NULL, yyvsp[0].Queue, ip_file->line_no));
break;
case 111:
-#line 591 "ntp_parser.y"
+#line 594 "ntp_parser.y"
{
enqueue(my_config.restrict_opts,
create_restrict_node(NULL, NULL, yyvsp[0].Queue, ip_file->line_no));
break;
case 112:
-#line 596 "ntp_parser.y"
+#line 599 "ntp_parser.y"
{
enqueue(my_config.restrict_opts,
create_restrict_node(yyvsp[-3].Address_node, yyvsp[-1].Address_node, yyvsp[0].Queue, ip_file->line_no));
break;
case 113:
-#line 603 "ntp_parser.y"
+#line 606 "ntp_parser.y"
{ yyval.Queue = create_queue(); }
break;
case 114:
-#line 604 "ntp_parser.y"
+#line 607 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].VoidPtr); }
break;
case 115:
-#line 608 "ntp_parser.y"
+#line 611 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_IGNORE); }
break;
case 116:
-#line 609 "ntp_parser.y"
+#line 612 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_DEMOBILIZE); }
break;
case 117:
-#line 610 "ntp_parser.y"
+#line 613 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_LIMITED); }
break;
case 118:
-#line 611 "ntp_parser.y"
+#line 614 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_LPTRAP); }
break;
case 119:
-#line 612 "ntp_parser.y"
+#line 615 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_NOMODIFY); }
break;
case 120:
-#line 613 "ntp_parser.y"
+#line 616 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_NOPEER); }
break;
case 121:
-#line 614 "ntp_parser.y"
+#line 617 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_NOQUERY); }
break;
case 122:
-#line 615 "ntp_parser.y"
+#line 618 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_DONTSERVE); }
break;
case 123:
-#line 616 "ntp_parser.y"
+#line 619 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_NOTRAP); }
break;
case 124:
-#line 617 "ntp_parser.y"
+#line 620 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_DONTTRUST); }
break;
case 125:
-#line 618 "ntp_parser.y"
+#line 621 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RESM_NTPONLY); }
break;
case 126:
-#line 619 "ntp_parser.y"
+#line 622 "ntp_parser.y"
{ yyval.VoidPtr = create_ival(RES_VERSION); }
break;
case 127:
-#line 623 "ntp_parser.y"
+#line 626 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 128:
-#line 624 "ntp_parser.y"
+#line 627 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 129:
-#line 628 "ntp_parser.y"
+#line 631 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Average, yyvsp[0].Integer); }
break;
case 130:
-#line 629 "ntp_parser.y"
+#line 632 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Minimum, yyvsp[0].Integer); }
break;
case 131:
-#line 630 "ntp_parser.y"
+#line 633 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Monitor, yyvsp[0].Integer); }
break;
case 132:
-#line 639 "ntp_parser.y"
+#line 642 "ntp_parser.y"
{ enqueue(my_config.fudge, create_addr_opts_node(yyvsp[-1].Address_node, yyvsp[0].Queue)); }
break;
case 133:
-#line 643 "ntp_parser.y"
+#line 646 "ntp_parser.y"
{ enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 134:
-#line 644 "ntp_parser.y"
+#line 647 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 135:
-#line 649 "ntp_parser.y"
+#line 652 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(CLK_HAVETIME1, yyvsp[0].Double); }
break;
case 136:
-#line 651 "ntp_parser.y"
+#line 654 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(CLK_HAVETIME2, yyvsp[0].Double); }
break;
case 137:
-#line 653 "ntp_parser.y"
+#line 656 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(CLK_HAVEVAL1, yyvsp[0].Integer); }
break;
case 138:
-#line 655 "ntp_parser.y"
+#line 658 "ntp_parser.y"
{ yyval.Attr_val = create_attr_sval(CLK_HAVEVAL2, yyvsp[0].String); }
break;
case 139:
-#line 657 "ntp_parser.y"
+#line 660 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(CLK_HAVEFLAG1, yyvsp[0].Integer); }
break;
case 140:
-#line 659 "ntp_parser.y"
+#line 662 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(CLK_HAVEFLAG2, yyvsp[0].Integer); }
break;
case 141:
-#line 661 "ntp_parser.y"
+#line 664 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(CLK_HAVEFLAG3, yyvsp[0].Integer); }
break;
case 142:
-#line 663 "ntp_parser.y"
+#line 666 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(CLK_HAVEFLAG4, yyvsp[0].Integer); }
break;
case 143:
-#line 672 "ntp_parser.y"
+#line 675 "ntp_parser.y"
{ append_queue(my_config.enable_opts,yyvsp[0].Queue); }
break;
case 144:
-#line 674 "ntp_parser.y"
+#line 677 "ntp_parser.y"
{ append_queue(my_config.disable_opts,yyvsp[0].Queue); }
break;
case 145:
-#line 678 "ntp_parser.y"
+#line 681 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 146:
-#line 679 "ntp_parser.y"
+#line 682 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 147:
-#line 683 "ntp_parser.y"
+#line 686 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_AUTHENTICATE); }
break;
case 148:
-#line 684 "ntp_parser.y"
+#line 687 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_BROADCLIENT); }
break;
case 149:
-#line 685 "ntp_parser.y"
+#line 688 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_CAL); }
break;
case 150:
-#line 686 "ntp_parser.y"
+#line 689 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_KERNEL); }
break;
case 151:
-#line 687 "ntp_parser.y"
+#line 690 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_MONITOR); }
break;
case 152:
-#line 688 "ntp_parser.y"
+#line 691 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_NTP); }
break;
case 153:
-#line 690 "ntp_parser.y"
+#line 693 "ntp_parser.y"
{ yyval.Attr_val = create_attr_ival(T_Flag, PROTO_FILEGEN); }
break;
case 154:
-#line 698 "ntp_parser.y"
+#line 701 "ntp_parser.y"
{ append_queue(my_config.tinker, yyvsp[0].Queue); }
break;
case 155:
-#line 702 "ntp_parser.y"
+#line 705 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 156:
-#line 703 "ntp_parser.y"
+#line 706 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 157:
-#line 707 "ntp_parser.y"
+#line 710 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_ALLAN, yyvsp[0].Double); }
break;
case 158:
-#line 708 "ntp_parser.y"
+#line 711 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_PHI, yyvsp[0].Double); }
break;
case 159:
-#line 709 "ntp_parser.y"
+#line 712 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_FREQ, yyvsp[0].Double); }
break;
case 160:
-#line 710 "ntp_parser.y"
+#line 713 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_HUFFPUFF, yyvsp[0].Double); }
break;
case 161:
-#line 711 "ntp_parser.y"
+#line 714 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_PANIC, yyvsp[0].Double); }
break;
case 162:
-#line 712 "ntp_parser.y"
+#line 715 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_MAX, yyvsp[0].Double); }
break;
case 163:
-#line 713 "ntp_parser.y"
+#line 716 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(LOOP_MINSTEP, yyvsp[0].Double); }
break;
case 164:
-#line 722 "ntp_parser.y"
+#line 725 "ntp_parser.y"
{
if (curr_include_level >= MAXINCLUDELEVEL) {
fprintf(stderr, "getconfig: Maximum include file level exceeded.\n");
break;
case 165:
-#line 738 "ntp_parser.y"
+#line 741 "ntp_parser.y"
{
while (curr_include_level != -1)
FCLOSE(fp[curr_include_level--]);
break;
case 166:
-#line 744 "ntp_parser.y"
+#line 747 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_dval(T_Broadcastdelay, yyvsp[0].Double)); }
break;
case 167:
-#line 746 "ntp_parser.y"
+#line 749 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_ival(T_Calldelay, yyvsp[0].Integer)); }
break;
case 168:
-#line 748 "ntp_parser.y"
+#line 751 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_dval(T_Tick, yyvsp[0].Double)); }
break;
case 169:
-#line 750 "ntp_parser.y"
- { enqueue(my_config.vars, create_attr_sval(T_Driftfile, yyvsp[-1].String)); }
+#line 753 "ntp_parser.y"
+ { /* Null action, possibly all null parms */ }
break;
case 170:
-#line 753 "ntp_parser.y"
+#line 756 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_sval(T_Pidfile, yyvsp[0].String)); }
break;
case 171:
-#line 755 "ntp_parser.y"
+#line 758 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_sval(T_Logfile, yyvsp[0].String)); }
break;
case 172:
-#line 757 "ntp_parser.y"
+#line 760 "ntp_parser.y"
{ enqueue(my_config.vars, create_attr_ival(T_Automax, yyvsp[0].Integer)); }
break;
case 173:
-#line 760 "ntp_parser.y"
+#line 763 "ntp_parser.y"
{ append_queue(my_config.logconfig, yyvsp[0].Queue); }
break;
case 174:
-#line 762 "ntp_parser.y"
+#line 765 "ntp_parser.y"
{ append_queue(my_config.phone, yyvsp[0].Queue); }
break;
case 175:
-#line 764 "ntp_parser.y"
+#line 767 "ntp_parser.y"
{ enqueue(my_config.setvar, yyvsp[0].Set_var); }
break;
case 176:
-#line 766 "ntp_parser.y"
+#line 769 "ntp_parser.y"
{ enqueue(my_config.trap, create_addr_opts_node(yyvsp[-1].Address_node, yyvsp[0].Queue)); }
break;
case 177:
-#line 768 "ntp_parser.y"
+#line 771 "ntp_parser.y"
{ append_queue(my_config.ttl, yyvsp[0].Queue); }
break;
case 178:
-#line 771 "ntp_parser.y"
- { /* Null command */ }
+#line 775 "ntp_parser.y"
+ { enqueue(my_config.vars, create_attr_sval(T_Driftfile, yyvsp[0].String)); }
break;
case 179:
-#line 773 "ntp_parser.y"
- { enqueue(my_config.vars, create_attr_ival(T_DriftMinutes, yyvsp[0].Integer)); }
+#line 777 "ntp_parser.y"
+ { enqueue(my_config.vars, create_attr_ival(T_DriftMinutes, yyvsp[0].Integer));
+ enqueue(my_config.vars, create_attr_sval(T_Driftfile, yyvsp[-1].String)); }
break;
case 180:
-#line 778 "ntp_parser.y"
- { yyval.Set_var = create_setvar_node(yyvsp[-3].String, yyvsp[-1].String, DEF); }
+#line 779 "ntp_parser.y"
+ { /* Null driftfile, indicated by null string "\0" */
+ enqueue(my_config.vars, create_attr_sval(T_Driftfile, "\0")); }
break;
case 181:
-#line 780 "ntp_parser.y"
- { yyval.Set_var = create_setvar_node(yyvsp[-2].String, yyvsp[0].String, 0); }
+#line 785 "ntp_parser.y"
+ { yyval.Set_var = create_setvar_node(yyvsp[-3].String, yyvsp[-1].String, DEF); }
break;
case 182:
-#line 785 "ntp_parser.y"
- { yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
+#line 787 "ntp_parser.y"
+ { yyval.Set_var = create_setvar_node(yyvsp[-2].String, yyvsp[0].String, 0); }
break;
case 183:
-#line 786 "ntp_parser.y"
- { yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
+#line 792 "ntp_parser.y"
+ { yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 184:
-#line 790 "ntp_parser.y"
- { yyval.Attr_val = create_attr_ival(T_Port, yyvsp[0].Integer); }
+#line 793 "ntp_parser.y"
+ { yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 185:
-#line 791 "ntp_parser.y"
- { yyval.Attr_val = create_attr_pval(T_Interface, yyvsp[0].Address_node); }
+#line 797 "ntp_parser.y"
+ { yyval.Attr_val = create_attr_ival(T_Port, yyvsp[0].Integer); }
break;
case 186:
-#line 796 "ntp_parser.y"
- { yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
+#line 798 "ntp_parser.y"
+ { yyval.Attr_val = create_attr_pval(T_Interface, yyvsp[0].Address_node); }
break;
case 187:
-#line 797 "ntp_parser.y"
- { yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
+#line 803 "ntp_parser.y"
+ { yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Attr_val); }
break;
case 188:
-#line 801 "ntp_parser.y"
- { yyval.Attr_val = create_attr_sval(yyvsp[-1].Integer, yyvsp[0].String); }
+#line 804 "ntp_parser.y"
+ { yyval.Queue = enqueue_in_new_queue(yyvsp[0].Attr_val); }
break;
case 189:
-#line 803 "ntp_parser.y"
+#line 808 "ntp_parser.y"
+ { yyval.Attr_val = create_attr_sval(yyvsp[-1].Integer, yyvsp[0].String); }
+ break;
+
+ case 190:
+#line 810 "ntp_parser.y"
{
/* YUCK!! This is needed because '+' and '-' are not special characters
* while '=' is.
}
break;
- case 190:
-#line 819 "ntp_parser.y"
+ case 191:
+#line 826 "ntp_parser.y"
{ yyval.Integer = '+'; }
break;
- case 191:
-#line 820 "ntp_parser.y"
+ case 192:
+#line 827 "ntp_parser.y"
{ yyval.Integer = '-'; }
break;
- case 192:
-#line 821 "ntp_parser.y"
+ case 193:
+#line 828 "ntp_parser.y"
{ yyval.Integer = '='; }
break;
- case 193:
-#line 830 "ntp_parser.y"
+ case 194:
+#line 837 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, create_ival(yyvsp[0].Integer)); }
break;
- case 194:
-#line 831 "ntp_parser.y"
+ case 195:
+#line 838 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(create_ival(yyvsp[0].Integer)); }
break;
- case 195:
-#line 835 "ntp_parser.y"
+ case 196:
+#line 842 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, create_pval(yyvsp[0].String)); }
break;
- case 196:
-#line 836 "ntp_parser.y"
+ case 197:
+#line 843 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(create_pval(yyvsp[0].String)); }
break;
- case 197:
-#line 840 "ntp_parser.y"
+ case 198:
+#line 847 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Address_node); }
break;
- case 198:
-#line 841 "ntp_parser.y"
+ case 199:
+#line 848 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Address_node); }
break;
- case 199:
-#line 846 "ntp_parser.y"
+ case 200:
+#line 853 "ntp_parser.y"
{
if (yyvsp[0].Integer != 0 && yyvsp[0].Integer != 1) {
yyerror("Integer value is not boolean (0 or 1). Assuming 1");
}
break;
- case 200:
-#line 854 "ntp_parser.y"
+ case 201:
+#line 861 "ntp_parser.y"
{ yyval.Integer = 1; }
break;
- case 201:
-#line 855 "ntp_parser.y"
+ case 202:
+#line 862 "ntp_parser.y"
{ yyval.Integer = 0; }
break;
- case 202:
-#line 859 "ntp_parser.y"
+ case 203:
+#line 866 "ntp_parser.y"
{ yyval.Double = (double)yyvsp[0].Integer; }
break;
- case 203:
-#line 860 "ntp_parser.y"
+ case 204:
+#line 867 "ntp_parser.y"
{ yyval.Double = yyvsp[0].Double; }
break;
- case 204:
-#line 869 "ntp_parser.y"
+ case 205:
+#line 876 "ntp_parser.y"
{
my_config.sim_details = create_sim_node(yyvsp[-2].Queue, yyvsp[-1].Queue);
}
break;
- case 205:
-#line 883 "ntp_parser.y"
+ case 206:
+#line 890 "ntp_parser.y"
{ old_config_style = 0; }
break;
- case 206:
-#line 887 "ntp_parser.y"
+ case 207:
+#line 894 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-2].Queue, yyvsp[-1].Attr_val); }
break;
- case 207:
-#line 888 "ntp_parser.y"
+ case 208:
+#line 895 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[-1].Attr_val); }
break;
- case 208:
-#line 892 "ntp_parser.y"
+ case 209:
+#line 899 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Beep_Delay, yyvsp[0].Double); }
break;
- case 209:
-#line 893 "ntp_parser.y"
+ case 210:
+#line 900 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Sim_Duration, yyvsp[0].Double); }
break;
- case 210:
-#line 897 "ntp_parser.y"
+ case 211:
+#line 904 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Sim_server); }
break;
- case 211:
-#line 898 "ntp_parser.y"
+ case 212:
+#line 905 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Sim_server); }
break;
- case 212:
-#line 903 "ntp_parser.y"
+ case 213:
+#line 910 "ntp_parser.y"
{ yyval.Sim_server = create_sim_server(yyvsp[-4].Address_node, yyvsp[-2].Double, yyvsp[-1].Queue); }
break;
- case 213:
-#line 907 "ntp_parser.y"
+ case 214:
+#line 914 "ntp_parser.y"
{ yyval.Double = yyvsp[-1].Double; }
break;
- case 214:
-#line 911 "ntp_parser.y"
+ case 215:
+#line 918 "ntp_parser.y"
{ yyval.Address_node = yyvsp[0].Address_node; }
break;
- case 215:
-#line 915 "ntp_parser.y"
+ case 216:
+#line 922 "ntp_parser.y"
{ yyval.Address_node = yyvsp[0].Address_node; }
break;
- case 216:
-#line 916 "ntp_parser.y"
+ case 217:
+#line 923 "ntp_parser.y"
{ yyval.Address_node = create_address_node(yyvsp[0].String, T_String); }
break;
- case 217:
-#line 920 "ntp_parser.y"
+ case 218:
+#line 927 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-1].Queue, yyvsp[0].Sim_script); }
break;
- case 218:
-#line 921 "ntp_parser.y"
+ case 219:
+#line 928 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[0].Sim_script); }
break;
- case 219:
-#line 926 "ntp_parser.y"
+ case 220:
+#line 933 "ntp_parser.y"
{ yyval.Sim_script = create_sim_script_info(yyvsp[-3].Double, yyvsp[-1].Queue); }
break;
- case 220:
-#line 930 "ntp_parser.y"
+ case 221:
+#line 937 "ntp_parser.y"
{ yyval.Queue = enqueue(yyvsp[-2].Queue, yyvsp[-1].Attr_val); }
break;
- case 221:
-#line 931 "ntp_parser.y"
+ case 222:
+#line 938 "ntp_parser.y"
{ yyval.Queue = enqueue_in_new_queue(yyvsp[-1].Attr_val); }
break;
- case 222:
-#line 936 "ntp_parser.y"
+ case 223:
+#line 943 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Freq_Offset, yyvsp[0].Double); }
break;
- case 223:
-#line 938 "ntp_parser.y"
+ case 224:
+#line 945 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Wander, yyvsp[0].Double); }
break;
- case 224:
-#line 940 "ntp_parser.y"
+ case 225:
+#line 947 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Jitter, yyvsp[0].Double); }
break;
- case 225:
-#line 942 "ntp_parser.y"
+ case 226:
+#line 949 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Prop_Delay, yyvsp[0].Double); }
break;
- case 226:
-#line 944 "ntp_parser.y"
+ case 227:
+#line 951 "ntp_parser.y"
{ yyval.Attr_val = create_attr_dval(T_Proc_Delay, yyvsp[0].Double); }
break;
}
/* Line 1016 of /usr/local/share/bison/yacc.c. */
-#line 2846 "ntp_parser.c"
+#line 2844 "ntp_parser.c"
\f
yyvsp -= yylen;
yyssp -= yylen;
}
-#line 948 "ntp_parser.y"
+#line 955 "ntp_parser.y"
/* KEYWORDS