ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_parser.c
(Generate patch)

Comparing ircd-hybrid/trunk/src/conf_parser.c (file contents):
Revision 8437 by michael, Thu Mar 29 09:05:34 2018 UTC vs.
Revision 8459 by michael, Sat Mar 31 15:35:52 2018 UTC

# Line 69 | Line 69
69   #include "stdinc.h"
70   #include "ircd.h"
71   #include "list.h"
72 + #include "parse.h"
73   #include "conf.h"
74   #include "conf_class.h"
75   #include "conf_cluster.h"
# Line 175 | Line 176 | reset_block_state(void)
176   }
177  
178  
179 < #line 179 "conf_parser.c" /* yacc.c:339  */
179 > #line 180 "conf_parser.c" /* yacc.c:339  */
180  
181   # ifndef YY_NULLPTR
182   #  if defined __cplusplus && 201103L <= __cplusplus
# Line 675 | Line 676 | extern int yydebug;
676  
677   union YYSTYPE
678   {
679 < #line 141 "conf_parser.y" /* yacc.c:355  */
679 > #line 142 "conf_parser.y" /* yacc.c:355  */
680  
681    int number;
682    char *string;
683  
684 < #line 684 "conf_parser.c" /* yacc.c:355  */
684 > #line 685 "conf_parser.c" /* yacc.c:355  */
685   };
686  
687   typedef union YYSTYPE YYSTYPE;
# Line 697 | Line 698 | int yyparse (void);
698  
699   /* Copy the second part of user declarations.  */
700  
701 < #line 701 "conf_parser.c" /* yacc.c:358  */
701 > #line 702 "conf_parser.c" /* yacc.c:358  */
702  
703   #ifdef short
704   # undef short
# Line 1017 | Line 1018 | static const yytype_uint8 yytranslate[]
1018    /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
1019   static const yytype_uint16 yyrline[] =
1020   {
1021 <       0,   375,   375,   376,   379,   380,   381,   382,   383,   384,
1022 <     385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
1023 <     395,   396,   397,   398,   399,   400,   401,   402,   406,   406,
1024 <     407,   408,   409,   410,   411,   412,   413,   414,   417,   417,
1025 <     418,   419,   420,   421,   428,   430,   430,   431,   431,   431,
1026 <     433,   439,   449,   451,   451,   452,   453,   454,   455,   456,
1027 <     457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
1028 <     467,   468,   469,   472,   481,   490,   499,   508,   517,   526,
1029 <     541,   556,   566,   580,   589,   617,   645,   670,   692,   714,
1030 <     724,   726,   726,   727,   728,   729,   730,   732,   741,   750,
1031 <     764,   763,   781,   781,   782,   782,   782,   784,   790,   801,
1032 <     800,   819,   819,   820,   820,   820,   820,   820,   822,   828,
1033 <     834,   840,   862,   863,   863,   865,   865,   866,   868,   875,
1034 <     875,   888,   889,   891,   891,   892,   892,   894,   902,   905,
1035 <     911,   910,   916,   916,   917,   921,   925,   929,   933,   937,
1036 <     941,   945,   956,   955,  1016,  1016,  1017,  1018,  1019,  1020,
1037 <    1021,  1022,  1023,  1024,  1025,  1026,  1027,  1029,  1035,  1041,
1038 <    1047,  1053,  1064,  1070,  1081,  1088,  1087,  1093,  1093,  1094,
1039 <    1098,  1102,  1106,  1110,  1114,  1118,  1122,  1126,  1130,  1134,
1040 <    1138,  1142,  1146,  1150,  1154,  1158,  1162,  1166,  1170,  1174,
1041 <    1178,  1185,  1184,  1190,  1190,  1191,  1195,  1199,  1203,  1207,
1042 <    1211,  1215,  1219,  1223,  1227,  1231,  1235,  1239,  1243,  1247,
1043 <    1251,  1255,  1259,  1263,  1267,  1271,  1275,  1279,  1283,  1287,
1044 <    1291,  1295,  1299,  1303,  1314,  1313,  1369,  1369,  1370,  1371,
1045 <    1372,  1373,  1374,  1375,  1376,  1377,  1378,  1379,  1380,  1381,
1046 <    1382,  1383,  1384,  1385,  1386,  1388,  1394,  1400,  1406,  1412,
1047 <    1418,  1424,  1430,  1436,  1442,  1449,  1455,  1461,  1467,  1476,
1048 <    1486,  1485,  1491,  1491,  1492,  1496,  1507,  1506,  1513,  1512,
1049 <    1517,  1517,  1518,  1522,  1526,  1532,  1532,  1533,  1533,  1533,
1050 <    1533,  1533,  1535,  1535,  1537,  1537,  1539,  1552,  1569,  1575,
1051 <    1586,  1585,  1631,  1631,  1632,  1633,  1634,  1635,  1636,  1637,
1052 <    1638,  1639,  1640,  1642,  1648,  1654,  1660,  1672,  1671,  1677,
1053 <    1677,  1678,  1682,  1686,  1690,  1694,  1698,  1702,  1706,  1710,
1054 <    1714,  1720,  1734,  1743,  1757,  1756,  1771,  1771,  1772,  1772,
1055 <    1772,  1772,  1774,  1780,  1786,  1796,  1798,  1798,  1799,  1799,
1056 <    1801,  1818,  1817,  1840,  1840,  1841,  1841,  1841,  1841,  1843,
1057 <    1849,  1869,  1868,  1874,  1874,  1875,  1879,  1883,  1887,  1891,
1058 <    1895,  1899,  1903,  1907,  1911,  1922,  1921,  1940,  1940,  1941,
1059 <    1941,  1941,  1943,  1950,  1949,  1955,  1955,  1956,  1960,  1964,
1060 <    1968,  1972,  1976,  1980,  1984,  1988,  1992,  2003,  2002,  2074,
1061 <    2074,  2075,  2076,  2077,  2078,  2079,  2080,  2081,  2082,  2083,
1062 <    2084,  2085,  2086,  2087,  2088,  2089,  2091,  2097,  2103,  2109,
1063 <    2122,  2135,  2141,  2147,  2151,  2158,  2157,  2162,  2162,  2163,
1064 <    2167,  2173,  2184,  2190,  2196,  2202,  2218,  2217,  2243,  2243,
1065 <    2244,  2244,  2244,  2246,  2266,  2277,  2276,  2303,  2303,  2304,
1066 <    2304,  2304,  2306,  2312,  2322,  2324,  2324,  2325,  2325,  2327,
1067 <    2345,  2344,  2365,  2365,  2366,  2366,  2366,  2368,  2374,  2384,
1068 <    2386,  2386,  2387,  2388,  2389,  2390,  2391,  2392,  2393,  2394,
1069 <    2395,  2396,  2397,  2398,  2399,  2400,  2401,  2402,  2403,  2404,
1070 <    2405,  2406,  2407,  2408,  2409,  2410,  2411,  2412,  2413,  2414,
1071 <    2415,  2416,  2417,  2418,  2419,  2420,  2421,  2422,  2423,  2424,
1072 <    2425,  2426,  2427,  2428,  2429,  2430,  2431,  2432,  2433,  2434,
1073 <    2437,  2442,  2447,  2452,  2457,  2463,  2468,  2473,  2478,  2483,
1074 <    2488,  2493,  2498,  2503,  2508,  2513,  2518,  2523,  2528,  2533,
1075 <    2539,  2544,  2549,  2554,  2559,  2564,  2569,  2574,  2577,  2582,
1076 <    2585,  2590,  2595,  2600,  2605,  2610,  2615,  2620,  2625,  2630,
1077 <    2635,  2640,  2645,  2651,  2650,  2655,  2655,  2656,  2659,  2662,
1078 <    2665,  2668,  2671,  2674,  2677,  2680,  2683,  2686,  2689,  2692,
1079 <    2695,  2698,  2701,  2704,  2707,  2710,  2713,  2716,  2719,  2725,
1080 <    2724,  2729,  2729,  2730,  2733,  2736,  2739,  2742,  2745,  2748,
1081 <    2751,  2754,  2757,  2760,  2763,  2766,  2769,  2772,  2775,  2778,
1082 <    2781,  2784,  2787,  2792,  2797,  2802,  2807,  2816,  2818,  2818,
1083 <    2819,  2820,  2821,  2822,  2823,  2824,  2825,  2826,  2827,  2828,
1084 <    2829,  2830,  2831,  2832,  2833,  2835,  2840,  2845,  2850,  2855,
1085 <    2860,  2865,  2870,  2875,  2880,  2885,  2890,  2895,  2900,  2909,
1086 <    2911,  2911,  2912,  2913,  2914,  2915,  2916,  2917,  2918,  2919,
1087 <    2920,  2921,  2923,  2929,  2945,  2954,  2960,  2966,  2972,  2981,
1088 <    2987
1021 >       0,   376,   376,   377,   380,   381,   382,   383,   384,   385,
1022 >     386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
1023 >     396,   397,   398,   399,   400,   401,   402,   403,   407,   407,
1024 >     408,   409,   410,   411,   412,   413,   414,   415,   418,   418,
1025 >     419,   420,   421,   422,   429,   431,   431,   432,   432,   432,
1026 >     434,   440,   450,   452,   452,   453,   454,   455,   456,   457,
1027 >     458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
1028 >     468,   469,   470,   473,   482,   491,   500,   509,   518,   527,
1029 >     542,   557,   567,   581,   590,   618,   646,   671,   693,   715,
1030 >     725,   727,   727,   728,   729,   730,   731,   733,   742,   751,
1031 >     765,   764,   782,   782,   783,   783,   783,   785,   791,   802,
1032 >     801,   820,   820,   821,   821,   821,   821,   821,   823,   829,
1033 >     835,   841,   863,   864,   864,   866,   866,   867,   869,   876,
1034 >     876,   889,   890,   892,   892,   893,   893,   895,   903,   906,
1035 >     912,   911,   917,   917,   918,   922,   926,   930,   934,   938,
1036 >     942,   946,   957,   956,  1017,  1017,  1018,  1019,  1020,  1021,
1037 >    1022,  1023,  1024,  1025,  1026,  1027,  1028,  1030,  1036,  1042,
1038 >    1048,  1054,  1065,  1071,  1082,  1089,  1088,  1094,  1094,  1095,
1039 >    1099,  1103,  1107,  1111,  1115,  1119,  1123,  1127,  1131,  1135,
1040 >    1139,  1143,  1147,  1151,  1155,  1159,  1163,  1167,  1171,  1175,
1041 >    1179,  1186,  1185,  1191,  1191,  1192,  1196,  1200,  1204,  1208,
1042 >    1212,  1216,  1220,  1224,  1228,  1232,  1236,  1240,  1244,  1248,
1043 >    1252,  1256,  1260,  1264,  1268,  1272,  1276,  1280,  1284,  1288,
1044 >    1292,  1296,  1300,  1304,  1315,  1314,  1370,  1370,  1371,  1372,
1045 >    1373,  1374,  1375,  1376,  1377,  1378,  1379,  1380,  1381,  1382,
1046 >    1383,  1384,  1385,  1386,  1387,  1389,  1395,  1401,  1407,  1413,
1047 >    1419,  1425,  1431,  1437,  1443,  1450,  1456,  1462,  1468,  1477,
1048 >    1487,  1486,  1492,  1492,  1493,  1497,  1508,  1507,  1514,  1513,
1049 >    1518,  1518,  1519,  1523,  1527,  1533,  1533,  1534,  1534,  1534,
1050 >    1534,  1534,  1536,  1536,  1538,  1538,  1540,  1553,  1570,  1576,
1051 >    1587,  1586,  1632,  1632,  1633,  1634,  1635,  1636,  1637,  1638,
1052 >    1639,  1640,  1641,  1643,  1649,  1655,  1661,  1673,  1672,  1678,
1053 >    1678,  1679,  1683,  1687,  1691,  1695,  1699,  1703,  1707,  1711,
1054 >    1715,  1721,  1735,  1744,  1758,  1757,  1772,  1772,  1773,  1773,
1055 >    1773,  1773,  1775,  1781,  1787,  1797,  1799,  1799,  1800,  1800,
1056 >    1802,  1819,  1818,  1841,  1841,  1842,  1842,  1842,  1842,  1844,
1057 >    1850,  1870,  1869,  1875,  1875,  1876,  1880,  1884,  1888,  1892,
1058 >    1896,  1900,  1904,  1908,  1912,  1923,  1922,  1941,  1941,  1942,
1059 >    1942,  1942,  1944,  1951,  1950,  1956,  1956,  1957,  1961,  1965,
1060 >    1969,  1973,  1977,  1981,  1985,  1989,  1993,  2004,  2003,  2075,
1061 >    2075,  2076,  2077,  2078,  2079,  2080,  2081,  2082,  2083,  2084,
1062 >    2085,  2086,  2087,  2088,  2089,  2090,  2092,  2098,  2104,  2110,
1063 >    2123,  2136,  2142,  2148,  2152,  2159,  2158,  2163,  2163,  2164,
1064 >    2168,  2174,  2185,  2191,  2197,  2203,  2219,  2218,  2244,  2244,
1065 >    2245,  2245,  2245,  2247,  2267,  2278,  2277,  2304,  2304,  2305,
1066 >    2305,  2305,  2307,  2313,  2323,  2325,  2325,  2326,  2326,  2328,
1067 >    2346,  2345,  2366,  2366,  2367,  2367,  2367,  2369,  2375,  2385,
1068 >    2387,  2387,  2388,  2389,  2390,  2391,  2392,  2393,  2394,  2395,
1069 >    2396,  2397,  2398,  2399,  2400,  2401,  2402,  2403,  2404,  2405,
1070 >    2406,  2407,  2408,  2409,  2410,  2411,  2412,  2413,  2414,  2415,
1071 >    2416,  2417,  2418,  2419,  2420,  2421,  2422,  2423,  2424,  2425,
1072 >    2426,  2427,  2428,  2429,  2430,  2431,  2432,  2433,  2434,  2435,
1073 >    2438,  2443,  2448,  2453,  2458,  2464,  2469,  2474,  2479,  2484,
1074 >    2489,  2494,  2499,  2504,  2509,  2514,  2519,  2524,  2529,  2534,
1075 >    2540,  2545,  2550,  2555,  2560,  2565,  2570,  2575,  2578,  2583,
1076 >    2586,  2591,  2596,  2601,  2606,  2611,  2616,  2621,  2626,  2631,
1077 >    2636,  2641,  2646,  2652,  2651,  2656,  2656,  2657,  2660,  2663,
1078 >    2666,  2669,  2672,  2675,  2678,  2681,  2684,  2687,  2690,  2693,
1079 >    2696,  2699,  2702,  2705,  2708,  2711,  2714,  2717,  2720,  2726,
1080 >    2725,  2730,  2730,  2731,  2734,  2737,  2740,  2743,  2746,  2749,
1081 >    2752,  2755,  2758,  2761,  2764,  2767,  2770,  2773,  2776,  2779,
1082 >    2782,  2785,  2788,  2793,  2798,  2803,  2808,  2817,  2819,  2819,
1083 >    2820,  2821,  2822,  2823,  2824,  2825,  2826,  2827,  2828,  2829,
1084 >    2830,  2831,  2832,  2833,  2834,  2836,  2841,  2846,  2851,  2856,
1085 >    2861,  2866,  2871,  2876,  2881,  2886,  2891,  2896,  2901,  2910,
1086 >    2912,  2912,  2913,  2914,  2915,  2916,  2917,  2918,  2919,  2920,
1087 >    2921,  2922,  2924,  2930,  2946,  2955,  2961,  2967,  2973,  2982,
1088 >    2988
1089   };
1090   #endif
1091  
# Line 2875 | Line 2876 | yyreduce:
2876    switch (yyn)
2877      {
2878          case 28:
2879 < #line 406 "conf_parser.y" /* yacc.c:1646  */
2879 > #line 407 "conf_parser.y" /* yacc.c:1646  */
2880      { (yyval.number) = 0; }
2881 < #line 2881 "conf_parser.c" /* yacc.c:1646  */
2881 > #line 2882 "conf_parser.c" /* yacc.c:1646  */
2882      break;
2883  
2884    case 30:
2885 < #line 407 "conf_parser.y" /* yacc.c:1646  */
2885 > #line 408 "conf_parser.y" /* yacc.c:1646  */
2886      { (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
2887 < #line 2887 "conf_parser.c" /* yacc.c:1646  */
2887 > #line 2888 "conf_parser.c" /* yacc.c:1646  */
2888      break;
2889  
2890    case 31:
2891 < #line 408 "conf_parser.y" /* yacc.c:1646  */
2891 > #line 409 "conf_parser.y" /* yacc.c:1646  */
2892      { (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
2893 < #line 2893 "conf_parser.c" /* yacc.c:1646  */
2893 > #line 2894 "conf_parser.c" /* yacc.c:1646  */
2894      break;
2895  
2896    case 32:
2897 < #line 409 "conf_parser.y" /* yacc.c:1646  */
2897 > #line 410 "conf_parser.y" /* yacc.c:1646  */
2898      { (yyval.number) = (yyvsp[-2].number) * 60 + (yyvsp[0].number); }
2899 < #line 2899 "conf_parser.c" /* yacc.c:1646  */
2899 > #line 2900 "conf_parser.c" /* yacc.c:1646  */
2900      break;
2901  
2902    case 33:
2903 < #line 410 "conf_parser.y" /* yacc.c:1646  */
2903 > #line 411 "conf_parser.y" /* yacc.c:1646  */
2904      { (yyval.number) = (yyvsp[-2].number) * 60 * 60 + (yyvsp[0].number); }
2905 < #line 2905 "conf_parser.c" /* yacc.c:1646  */
2905 > #line 2906 "conf_parser.c" /* yacc.c:1646  */
2906      break;
2907  
2908    case 34:
2909 < #line 411 "conf_parser.y" /* yacc.c:1646  */
2909 > #line 412 "conf_parser.y" /* yacc.c:1646  */
2910      { (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 + (yyvsp[0].number); }
2911 < #line 2911 "conf_parser.c" /* yacc.c:1646  */
2911 > #line 2912 "conf_parser.c" /* yacc.c:1646  */
2912      break;
2913  
2914    case 35:
2915 < #line 412 "conf_parser.y" /* yacc.c:1646  */
2915 > #line 413 "conf_parser.y" /* yacc.c:1646  */
2916      { (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 + (yyvsp[0].number); }
2917 < #line 2917 "conf_parser.c" /* yacc.c:1646  */
2917 > #line 2918 "conf_parser.c" /* yacc.c:1646  */
2918      break;
2919  
2920    case 36:
2921 < #line 413 "conf_parser.y" /* yacc.c:1646  */
2921 > #line 414 "conf_parser.y" /* yacc.c:1646  */
2922      { (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 * 4 + (yyvsp[0].number); }
2923 < #line 2923 "conf_parser.c" /* yacc.c:1646  */
2923 > #line 2924 "conf_parser.c" /* yacc.c:1646  */
2924      break;
2925  
2926    case 37:
2927 < #line 414 "conf_parser.y" /* yacc.c:1646  */
2927 > #line 415 "conf_parser.y" /* yacc.c:1646  */
2928      { (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 365 + (yyvsp[0].number); }
2929 < #line 2929 "conf_parser.c" /* yacc.c:1646  */
2929 > #line 2930 "conf_parser.c" /* yacc.c:1646  */
2930      break;
2931  
2932    case 38:
2933 < #line 417 "conf_parser.y" /* yacc.c:1646  */
2933 > #line 418 "conf_parser.y" /* yacc.c:1646  */
2934      { (yyval.number) = 0; }
2935 < #line 2935 "conf_parser.c" /* yacc.c:1646  */
2935 > #line 2936 "conf_parser.c" /* yacc.c:1646  */
2936      break;
2937  
2938    case 40:
2939 < #line 418 "conf_parser.y" /* yacc.c:1646  */
2939 > #line 419 "conf_parser.y" /* yacc.c:1646  */
2940      { (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
2941 < #line 2941 "conf_parser.c" /* yacc.c:1646  */
2941 > #line 2942 "conf_parser.c" /* yacc.c:1646  */
2942      break;
2943  
2944    case 41:
2945 < #line 419 "conf_parser.y" /* yacc.c:1646  */
2945 > #line 420 "conf_parser.y" /* yacc.c:1646  */
2946      { (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
2947 < #line 2947 "conf_parser.c" /* yacc.c:1646  */
2947 > #line 2948 "conf_parser.c" /* yacc.c:1646  */
2948      break;
2949  
2950    case 42:
2951 < #line 420 "conf_parser.y" /* yacc.c:1646  */
2951 > #line 421 "conf_parser.y" /* yacc.c:1646  */
2952      { (yyval.number) = (yyvsp[-2].number) * 1024 + (yyvsp[0].number); }
2953 < #line 2953 "conf_parser.c" /* yacc.c:1646  */
2953 > #line 2954 "conf_parser.c" /* yacc.c:1646  */
2954      break;
2955  
2956    case 43:
2957 < #line 421 "conf_parser.y" /* yacc.c:1646  */
2957 > #line 422 "conf_parser.y" /* yacc.c:1646  */
2958      { (yyval.number) = (yyvsp[-2].number) * 1024 * 1024 + (yyvsp[0].number); }
2959 < #line 2959 "conf_parser.c" /* yacc.c:1646  */
2959 > #line 2960 "conf_parser.c" /* yacc.c:1646  */
2960      break;
2961  
2962    case 50:
2963 < #line 434 "conf_parser.y" /* yacc.c:1646  */
2963 > #line 435 "conf_parser.y" /* yacc.c:1646  */
2964      {
2965    if (conf_parser_ctx.pass == 2)
2966      add_conf_module(libio_basename(yylval.string));
2967   }
2968 < #line 2968 "conf_parser.c" /* yacc.c:1646  */
2968 > #line 2969 "conf_parser.c" /* yacc.c:1646  */
2969      break;
2970  
2971    case 51:
2972 < #line 440 "conf_parser.y" /* yacc.c:1646  */
2972 > #line 441 "conf_parser.y" /* yacc.c:1646  */
2973      {
2974    if (conf_parser_ctx.pass == 2)
2975      mod_add_path(yylval.string);
2976   }
2977 < #line 2977 "conf_parser.c" /* yacc.c:1646  */
2977 > #line 2978 "conf_parser.c" /* yacc.c:1646  */
2978      break;
2979  
2980    case 73:
2981 < #line 473 "conf_parser.y" /* yacc.c:1646  */
2981 > #line 474 "conf_parser.y" /* yacc.c:1646  */
2982      {
2983    if (conf_parser_ctx.pass == 2)
2984    {
# Line 2985 | Line 2986 | yyreduce:
2986      ConfigServerInfo.ssl_certificate_file = xstrdup(yylval.string);
2987    }
2988   }
2989 < #line 2989 "conf_parser.c" /* yacc.c:1646  */
2989 > #line 2990 "conf_parser.c" /* yacc.c:1646  */
2990      break;
2991  
2992    case 74:
2993 < #line 482 "conf_parser.y" /* yacc.c:1646  */
2993 > #line 483 "conf_parser.y" /* yacc.c:1646  */
2994      {
2995    if (conf_parser_ctx.pass == 2)
2996    {
# Line 2997 | Line 2998 | yyreduce:
2998      ConfigServerInfo.rsa_private_key_file = xstrdup(yylval.string);
2999    }
3000   }
3001 < #line 3001 "conf_parser.c" /* yacc.c:1646  */
3001 > #line 3002 "conf_parser.c" /* yacc.c:1646  */
3002      break;
3003  
3004    case 75:
3005 < #line 491 "conf_parser.y" /* yacc.c:1646  */
3005 > #line 492 "conf_parser.y" /* yacc.c:1646  */
3006      {
3007    if (conf_parser_ctx.pass == 2)
3008    {
# Line 3009 | Line 3010 | yyreduce:
3010      ConfigServerInfo.ssl_dh_param_file = xstrdup(yylval.string);
3011    }
3012   }
3013 < #line 3013 "conf_parser.c" /* yacc.c:1646  */
3013 > #line 3014 "conf_parser.c" /* yacc.c:1646  */
3014      break;
3015  
3016    case 76:
3017 < #line 500 "conf_parser.y" /* yacc.c:1646  */
3017 > #line 501 "conf_parser.y" /* yacc.c:1646  */
3018      {
3019    if (conf_parser_ctx.pass == 2)
3020    {
# Line 3021 | Line 3022 | yyreduce:
3022      ConfigServerInfo.ssl_cipher_list = xstrdup(yylval.string);
3023    }
3024   }
3025 < #line 3025 "conf_parser.c" /* yacc.c:1646  */
3025 > #line 3026 "conf_parser.c" /* yacc.c:1646  */
3026      break;
3027  
3028    case 77:
3029 < #line 509 "conf_parser.y" /* yacc.c:1646  */
3029 > #line 510 "conf_parser.y" /* yacc.c:1646  */
3030      {
3031    if (conf_parser_ctx.pass == 2)
3032    {
# Line 3033 | Line 3034 | yyreduce:
3034      ConfigServerInfo.ssl_message_digest_algorithm = xstrdup(yylval.string);
3035    }
3036   }
3037 < #line 3037 "conf_parser.c" /* yacc.c:1646  */
3037 > #line 3038 "conf_parser.c" /* yacc.c:1646  */
3038      break;
3039  
3040    case 78:
3041 < #line 518 "conf_parser.y" /* yacc.c:1646  */
3041 > #line 519 "conf_parser.y" /* yacc.c:1646  */
3042      {
3043    if (conf_parser_ctx.pass == 2)
3044    {
# Line 3045 | Line 3046 | yyreduce:
3046      ConfigServerInfo.ssl_dh_elliptic_curve = xstrdup(yylval.string);
3047    }
3048   }
3049 < #line 3049 "conf_parser.c" /* yacc.c:1646  */
3049 > #line 3050 "conf_parser.c" /* yacc.c:1646  */
3050      break;
3051  
3052    case 79:
3053 < #line 527 "conf_parser.y" /* yacc.c:1646  */
3053 > #line 528 "conf_parser.y" /* yacc.c:1646  */
3054      {
3055    /* This isn't rehashable */
3056    if (conf_parser_ctx.pass == 2 && !ConfigServerInfo.name)
# Line 3063 | Line 3064 | yyreduce:
3064      }
3065    }
3066   }
3067 < #line 3067 "conf_parser.c" /* yacc.c:1646  */
3067 > #line 3068 "conf_parser.c" /* yacc.c:1646  */
3068      break;
3069  
3070    case 80:
3071 < #line 542 "conf_parser.y" /* yacc.c:1646  */
3071 > #line 543 "conf_parser.y" /* yacc.c:1646  */
3072      {
3073    /* This isn't rehashable */
3074    if (conf_parser_ctx.pass == 2 && !ConfigServerInfo.sid)
# Line 3081 | Line 3082 | yyreduce:
3082      }
3083    }
3084   }
3085 < #line 3085 "conf_parser.c" /* yacc.c:1646  */
3085 > #line 3086 "conf_parser.c" /* yacc.c:1646  */
3086      break;
3087  
3088    case 81:
3089 < #line 557 "conf_parser.y" /* yacc.c:1646  */
3089 > #line 558 "conf_parser.y" /* yacc.c:1646  */
3090      {
3091    if (conf_parser_ctx.pass == 2)
3092    {
# Line 3094 | Line 3095 | yyreduce:
3095      strlcpy(me.info, ConfigServerInfo.description, sizeof(me.info));
3096    }
3097   }
3098 < #line 3098 "conf_parser.c" /* yacc.c:1646  */
3098 > #line 3099 "conf_parser.c" /* yacc.c:1646  */
3099      break;
3100  
3101    case 82:
3102 < #line 567 "conf_parser.y" /* yacc.c:1646  */
3102 > #line 568 "conf_parser.y" /* yacc.c:1646  */
3103      {
3104    if (conf_parser_ctx.pass == 2)
3105    {
# Line 3111 | Line 3112 | yyreduce:
3112      ConfigServerInfo.network_name = xstrdup(yylval.string);
3113    }
3114   }
3115 < #line 3115 "conf_parser.c" /* yacc.c:1646  */
3115 > #line 3116 "conf_parser.c" /* yacc.c:1646  */
3116      break;
3117  
3118    case 83:
3119 < #line 581 "conf_parser.y" /* yacc.c:1646  */
3119 > #line 582 "conf_parser.y" /* yacc.c:1646  */
3120      {
3121    if (conf_parser_ctx.pass != 2)
3122      break;
# Line 3123 | Line 3124 | yyreduce:
3124    xfree(ConfigServerInfo.network_desc);
3125    ConfigServerInfo.network_desc = xstrdup(yylval.string);
3126   }
3127 < #line 3127 "conf_parser.c" /* yacc.c:1646  */
3127 > #line 3128 "conf_parser.c" /* yacc.c:1646  */
3128      break;
3129  
3130    case 84:
3131 < #line 590 "conf_parser.y" /* yacc.c:1646  */
3131 > #line 591 "conf_parser.y" /* yacc.c:1646  */
3132      {
3133    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3134    {
# Line 3154 | Line 3155 | yyreduce:
3155      }
3156    }
3157   }
3158 < #line 3158 "conf_parser.c" /* yacc.c:1646  */
3158 > #line 3159 "conf_parser.c" /* yacc.c:1646  */
3159      break;
3160  
3161    case 85:
3162 < #line 618 "conf_parser.y" /* yacc.c:1646  */
3162 > #line 619 "conf_parser.y" /* yacc.c:1646  */
3163      {
3164    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3165    {
# Line 3185 | Line 3186 | yyreduce:
3186      }
3187    }
3188   }
3189 < #line 3189 "conf_parser.c" /* yacc.c:1646  */
3189 > #line 3190 "conf_parser.c" /* yacc.c:1646  */
3190      break;
3191  
3192    case 86:
3193 < #line 646 "conf_parser.y" /* yacc.c:1646  */
3193 > #line 647 "conf_parser.y" /* yacc.c:1646  */
3194      {
3195    if (conf_parser_ctx.pass != 2)
3196      break;
# Line 3213 | Line 3214 | yyreduce:
3214    else
3215      ConfigServerInfo.default_max_clients = (yyvsp[-1].number);
3216   }
3217 < #line 3217 "conf_parser.c" /* yacc.c:1646  */
3217 > #line 3218 "conf_parser.c" /* yacc.c:1646  */
3218      break;
3219  
3220    case 87:
3221 < #line 671 "conf_parser.y" /* yacc.c:1646  */
3221 > #line 672 "conf_parser.y" /* yacc.c:1646  */
3222      {
3223    if (conf_parser_ctx.pass != 2)
3224      break;
# Line 3238 | Line 3239 | yyreduce:
3239    else
3240      ConfigServerInfo.max_nick_length = (yyvsp[-1].number);
3241   }
3242 < #line 3242 "conf_parser.c" /* yacc.c:1646  */
3242 > #line 3243 "conf_parser.c" /* yacc.c:1646  */
3243      break;
3244  
3245    case 88:
3246 < #line 693 "conf_parser.y" /* yacc.c:1646  */
3246 > #line 694 "conf_parser.y" /* yacc.c:1646  */
3247      {
3248    if (conf_parser_ctx.pass != 2)
3249      break;
# Line 3263 | Line 3264 | yyreduce:
3264    else
3265      ConfigServerInfo.max_topic_length = (yyvsp[-1].number);
3266   }
3267 < #line 3267 "conf_parser.c" /* yacc.c:1646  */
3267 > #line 3268 "conf_parser.c" /* yacc.c:1646  */
3268      break;
3269  
3270    case 89:
3271 < #line 715 "conf_parser.y" /* yacc.c:1646  */
3271 > #line 716 "conf_parser.y" /* yacc.c:1646  */
3272      {
3273    if (conf_parser_ctx.pass == 2)
3274      ConfigServerInfo.hub = yylval.number;
3275   }
3276 < #line 3276 "conf_parser.c" /* yacc.c:1646  */
3276 > #line 3277 "conf_parser.c" /* yacc.c:1646  */
3277      break;
3278  
3279    case 97:
3280 < #line 733 "conf_parser.y" /* yacc.c:1646  */
3280 > #line 734 "conf_parser.y" /* yacc.c:1646  */
3281      {
3282    if (conf_parser_ctx.pass != 2)
3283      break;
# Line 3284 | Line 3285 | yyreduce:
3285    xfree(ConfigAdminInfo.name);
3286    ConfigAdminInfo.name = xstrdup(yylval.string);
3287   }
3288 < #line 3288 "conf_parser.c" /* yacc.c:1646  */
3288 > #line 3289 "conf_parser.c" /* yacc.c:1646  */
3289      break;
3290  
3291    case 98:
3292 < #line 742 "conf_parser.y" /* yacc.c:1646  */
3292 > #line 743 "conf_parser.y" /* yacc.c:1646  */
3293      {
3294    if (conf_parser_ctx.pass != 2)
3295      break;
# Line 3296 | Line 3297 | yyreduce:
3297    xfree(ConfigAdminInfo.email);
3298    ConfigAdminInfo.email = xstrdup(yylval.string);
3299   }
3300 < #line 3300 "conf_parser.c" /* yacc.c:1646  */
3300 > #line 3301 "conf_parser.c" /* yacc.c:1646  */
3301      break;
3302  
3303    case 99:
3304 < #line 751 "conf_parser.y" /* yacc.c:1646  */
3304 > #line 752 "conf_parser.y" /* yacc.c:1646  */
3305      {
3306    if (conf_parser_ctx.pass != 2)
3307      break;
# Line 3308 | Line 3309 | yyreduce:
3309    xfree(ConfigAdminInfo.description);
3310    ConfigAdminInfo.description = xstrdup(yylval.string);
3311   }
3312 < #line 3312 "conf_parser.c" /* yacc.c:1646  */
3312 > #line 3313 "conf_parser.c" /* yacc.c:1646  */
3313      break;
3314  
3315    case 100:
3316 < #line 764 "conf_parser.y" /* yacc.c:1646  */
3316 > #line 765 "conf_parser.y" /* yacc.c:1646  */
3317      {
3318    if (conf_parser_ctx.pass == 2)
3319      reset_block_state();
3320   }
3321 < #line 3321 "conf_parser.c" /* yacc.c:1646  */
3321 > #line 3322 "conf_parser.c" /* yacc.c:1646  */
3322      break;
3323  
3324    case 101:
3325 < #line 768 "conf_parser.y" /* yacc.c:1646  */
3325 > #line 769 "conf_parser.y" /* yacc.c:1646  */
3326      {
3327    dlink_node *node = NULL;
3328  
# Line 3334 | Line 3335 | yyreduce:
3335    DLINK_FOREACH(node, block_state.mask.list.head)
3336      motd_add(node->data, block_state.file.buf);
3337   }
3338 < #line 3338 "conf_parser.c" /* yacc.c:1646  */
3338 > #line 3339 "conf_parser.c" /* yacc.c:1646  */
3339      break;
3340  
3341    case 107:
3342 < #line 785 "conf_parser.y" /* yacc.c:1646  */
3342 > #line 786 "conf_parser.y" /* yacc.c:1646  */
3343      {
3344    if (conf_parser_ctx.pass == 2)
3345      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
3346   }
3347 < #line 3347 "conf_parser.c" /* yacc.c:1646  */
3347 > #line 3348 "conf_parser.c" /* yacc.c:1646  */
3348      break;
3349  
3350    case 108:
3351 < #line 791 "conf_parser.y" /* yacc.c:1646  */
3351 > #line 792 "conf_parser.y" /* yacc.c:1646  */
3352      {
3353    if (conf_parser_ctx.pass == 2)
3354      strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf));
3355   }
3356 < #line 3356 "conf_parser.c" /* yacc.c:1646  */
3356 > #line 3357 "conf_parser.c" /* yacc.c:1646  */
3357      break;
3358  
3359    case 109:
3360 < #line 801 "conf_parser.y" /* yacc.c:1646  */
3360 > #line 802 "conf_parser.y" /* yacc.c:1646  */
3361      {
3362    if (conf_parser_ctx.pass == 2)
3363      reset_block_state();
3364   }
3365 < #line 3365 "conf_parser.c" /* yacc.c:1646  */
3365 > #line 3366 "conf_parser.c" /* yacc.c:1646  */
3366      break;
3367  
3368    case 110:
3369 < #line 805 "conf_parser.y" /* yacc.c:1646  */
3369 > #line 806 "conf_parser.y" /* yacc.c:1646  */
3370      {
3371    if (conf_parser_ctx.pass != 2)
3372      break;
# Line 3379 | Line 3380 | yyreduce:
3380    pseudo_register(block_state.name.buf, block_state.nick.buf, block_state.host.buf,
3381                    block_state.prepend.buf, block_state.command.buf);
3382   }
3383 < #line 3383 "conf_parser.c" /* yacc.c:1646  */
3383 > #line 3384 "conf_parser.c" /* yacc.c:1646  */
3384      break;
3385  
3386    case 118:
3387 < #line 823 "conf_parser.y" /* yacc.c:1646  */
3387 > #line 824 "conf_parser.y" /* yacc.c:1646  */
3388      {
3389    if (conf_parser_ctx.pass == 2)
3390      strlcpy(block_state.command.buf, yylval.string, sizeof(block_state.command.buf));
3391   }
3392 < #line 3392 "conf_parser.c" /* yacc.c:1646  */
3392 > #line 3393 "conf_parser.c" /* yacc.c:1646  */
3393      break;
3394  
3395    case 119:
3396 < #line 829 "conf_parser.y" /* yacc.c:1646  */
3396 > #line 830 "conf_parser.y" /* yacc.c:1646  */
3397      {
3398    if (conf_parser_ctx.pass == 2)
3399      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
3400   }
3401 < #line 3401 "conf_parser.c" /* yacc.c:1646  */
3401 > #line 3402 "conf_parser.c" /* yacc.c:1646  */
3402      break;
3403  
3404    case 120:
3405 < #line 835 "conf_parser.y" /* yacc.c:1646  */
3405 > #line 836 "conf_parser.y" /* yacc.c:1646  */
3406      {
3407    if (conf_parser_ctx.pass == 2)
3408      strlcpy(block_state.prepend.buf, yylval.string, sizeof(block_state.prepend.buf));
3409   }
3410 < #line 3410 "conf_parser.c" /* yacc.c:1646  */
3410 > #line 3411 "conf_parser.c" /* yacc.c:1646  */
3411      break;
3412  
3413    case 121:
3414 < #line 841 "conf_parser.y" /* yacc.c:1646  */
3414 > #line 842 "conf_parser.y" /* yacc.c:1646  */
3415      {
3416    if (conf_parser_ctx.pass == 2)
3417    {
# Line 3427 | Line 3428 | yyreduce:
3428      split_nuh(&nuh);
3429    }
3430   }
3431 < #line 3431 "conf_parser.c" /* yacc.c:1646  */
3431 > #line 3432 "conf_parser.c" /* yacc.c:1646  */
3432      break;
3433  
3434    case 128:
3435 < #line 869 "conf_parser.y" /* yacc.c:1646  */
3435 > #line 870 "conf_parser.y" /* yacc.c:1646  */
3436      {
3437    if (conf_parser_ctx.pass == 2)
3438      ConfigLog.use_logging = yylval.number;
3439   }
3440 < #line 3440 "conf_parser.c" /* yacc.c:1646  */
3440 > #line 3441 "conf_parser.c" /* yacc.c:1646  */
3441      break;
3442  
3443    case 129:
3444 < #line 875 "conf_parser.y" /* yacc.c:1646  */
3444 > #line 876 "conf_parser.y" /* yacc.c:1646  */
3445      {
3446    if (conf_parser_ctx.pass == 2)
3447      reset_block_state();
3448   }
3449 < #line 3449 "conf_parser.c" /* yacc.c:1646  */
3449 > #line 3450 "conf_parser.c" /* yacc.c:1646  */
3450      break;
3451  
3452    case 130:
3453 < #line 879 "conf_parser.y" /* yacc.c:1646  */
3453 > #line 880 "conf_parser.y" /* yacc.c:1646  */
3454      {
3455    if (conf_parser_ctx.pass != 2)
3456      break;
# Line 3458 | Line 3459 | yyreduce:
3459      log_set_file(block_state.type.value, block_state.size.value,
3460                   block_state.file.buf);
3461   }
3462 < #line 3462 "conf_parser.c" /* yacc.c:1646  */
3462 > #line 3463 "conf_parser.c" /* yacc.c:1646  */
3463      break;
3464  
3465    case 137:
3466 < #line 895 "conf_parser.y" /* yacc.c:1646  */
3466 > #line 896 "conf_parser.y" /* yacc.c:1646  */
3467      {
3468    if (conf_parser_ctx.pass != 2)
3469      break;
3470  
3471    strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf));
3472   }
3473 < #line 3473 "conf_parser.c" /* yacc.c:1646  */
3473 > #line 3474 "conf_parser.c" /* yacc.c:1646  */
3474      break;
3475  
3476    case 138:
3477 < #line 903 "conf_parser.y" /* yacc.c:1646  */
3477 > #line 904 "conf_parser.y" /* yacc.c:1646  */
3478      {
3479    block_state.size.value = (yyvsp[-1].number);
3480   }
3481 < #line 3481 "conf_parser.c" /* yacc.c:1646  */
3481 > #line 3482 "conf_parser.c" /* yacc.c:1646  */
3482      break;
3483  
3484    case 139:
3485 < #line 906 "conf_parser.y" /* yacc.c:1646  */
3485 > #line 907 "conf_parser.y" /* yacc.c:1646  */
3486      {
3487    block_state.size.value = 0;
3488   }
3489 < #line 3489 "conf_parser.c" /* yacc.c:1646  */
3489 > #line 3490 "conf_parser.c" /* yacc.c:1646  */
3490      break;
3491  
3492    case 140:
3493 < #line 911 "conf_parser.y" /* yacc.c:1646  */
3493 > #line 912 "conf_parser.y" /* yacc.c:1646  */
3494      {
3495    if (conf_parser_ctx.pass == 2)
3496      block_state.type.value = 0;
3497   }
3498 < #line 3498 "conf_parser.c" /* yacc.c:1646  */
3498 > #line 3499 "conf_parser.c" /* yacc.c:1646  */
3499      break;
3500  
3501    case 144:
3502 < #line 918 "conf_parser.y" /* yacc.c:1646  */
3502 > #line 919 "conf_parser.y" /* yacc.c:1646  */
3503      {
3504    if (conf_parser_ctx.pass == 2)
3505      block_state.type.value = LOG_TYPE_USER;
3506   }
3507 < #line 3507 "conf_parser.c" /* yacc.c:1646  */
3507 > #line 3508 "conf_parser.c" /* yacc.c:1646  */
3508      break;
3509  
3510    case 145:
3511 < #line 922 "conf_parser.y" /* yacc.c:1646  */
3511 > #line 923 "conf_parser.y" /* yacc.c:1646  */
3512      {
3513    if (conf_parser_ctx.pass == 2)
3514      block_state.type.value = LOG_TYPE_OPER;
3515   }
3516 < #line 3516 "conf_parser.c" /* yacc.c:1646  */
3516 > #line 3517 "conf_parser.c" /* yacc.c:1646  */
3517      break;
3518  
3519    case 146:
3520 < #line 926 "conf_parser.y" /* yacc.c:1646  */
3520 > #line 927 "conf_parser.y" /* yacc.c:1646  */
3521      {
3522    if (conf_parser_ctx.pass == 2)
3523      block_state.type.value = LOG_TYPE_XLINE;
3524   }
3525 < #line 3525 "conf_parser.c" /* yacc.c:1646  */
3525 > #line 3526 "conf_parser.c" /* yacc.c:1646  */
3526      break;
3527  
3528    case 147:
3529 < #line 930 "conf_parser.y" /* yacc.c:1646  */
3529 > #line 931 "conf_parser.y" /* yacc.c:1646  */
3530      {
3531    if (conf_parser_ctx.pass == 2)
3532      block_state.type.value = LOG_TYPE_RESV;
3533   }
3534 < #line 3534 "conf_parser.c" /* yacc.c:1646  */
3534 > #line 3535 "conf_parser.c" /* yacc.c:1646  */
3535      break;
3536  
3537    case 148:
3538 < #line 934 "conf_parser.y" /* yacc.c:1646  */
3538 > #line 935 "conf_parser.y" /* yacc.c:1646  */
3539      {
3540    if (conf_parser_ctx.pass == 2)
3541      block_state.type.value = LOG_TYPE_DLINE;
3542   }
3543 < #line 3543 "conf_parser.c" /* yacc.c:1646  */
3543 > #line 3544 "conf_parser.c" /* yacc.c:1646  */
3544      break;
3545  
3546    case 149:
3547 < #line 938 "conf_parser.y" /* yacc.c:1646  */
3547 > #line 939 "conf_parser.y" /* yacc.c:1646  */
3548      {
3549    if (conf_parser_ctx.pass == 2)
3550      block_state.type.value = LOG_TYPE_KLINE;
3551   }
3552 < #line 3552 "conf_parser.c" /* yacc.c:1646  */
3552 > #line 3553 "conf_parser.c" /* yacc.c:1646  */
3553      break;
3554  
3555    case 150:
3556 < #line 942 "conf_parser.y" /* yacc.c:1646  */
3556 > #line 943 "conf_parser.y" /* yacc.c:1646  */
3557      {
3558    if (conf_parser_ctx.pass == 2)
3559      block_state.type.value = LOG_TYPE_KILL;
3560   }
3561 < #line 3561 "conf_parser.c" /* yacc.c:1646  */
3561 > #line 3562 "conf_parser.c" /* yacc.c:1646  */
3562      break;
3563  
3564    case 151:
3565 < #line 946 "conf_parser.y" /* yacc.c:1646  */
3565 > #line 947 "conf_parser.y" /* yacc.c:1646  */
3566      {
3567    if (conf_parser_ctx.pass == 2)
3568      block_state.type.value = LOG_TYPE_DEBUG;
3569   }
3570 < #line 3570 "conf_parser.c" /* yacc.c:1646  */
3570 > #line 3571 "conf_parser.c" /* yacc.c:1646  */
3571      break;
3572  
3573    case 152:
3574 < #line 956 "conf_parser.y" /* yacc.c:1646  */
3574 > #line 957 "conf_parser.y" /* yacc.c:1646  */
3575      {
3576    if (conf_parser_ctx.pass != 2)
3577      break;
# Line 3578 | Line 3579 | yyreduce:
3579    reset_block_state();
3580    block_state.flags.value |= CONF_FLAGS_ENCRYPTED;
3581   }
3582 < #line 3582 "conf_parser.c" /* yacc.c:1646  */
3582 > #line 3583 "conf_parser.c" /* yacc.c:1646  */
3583      break;
3584  
3585    case 153:
3586 < #line 963 "conf_parser.y" /* yacc.c:1646  */
3586 > #line 964 "conf_parser.y" /* yacc.c:1646  */
3587      {
3588    dlink_node *node = NULL;
3589  
# Line 3635 | Line 3636 | yyreduce:
3636      conf_add_class_to_conf(conf, block_state.class.buf);
3637    }
3638   }
3639 < #line 3639 "conf_parser.c" /* yacc.c:1646  */
3639 > #line 3640 "conf_parser.c" /* yacc.c:1646  */
3640      break;
3641  
3642    case 167:
3643 < #line 1030 "conf_parser.y" /* yacc.c:1646  */
3643 > #line 1031 "conf_parser.y" /* yacc.c:1646  */
3644      {
3645    if (conf_parser_ctx.pass == 2)
3646      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
3647   }
3648 < #line 3648 "conf_parser.c" /* yacc.c:1646  */
3648 > #line 3649 "conf_parser.c" /* yacc.c:1646  */
3649      break;
3650  
3651    case 168:
3652 < #line 1036 "conf_parser.y" /* yacc.c:1646  */
3652 > #line 1037 "conf_parser.y" /* yacc.c:1646  */
3653      {
3654    if (conf_parser_ctx.pass == 2)
3655      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
3656   }
3657 < #line 3657 "conf_parser.c" /* yacc.c:1646  */
3657 > #line 3658 "conf_parser.c" /* yacc.c:1646  */
3658      break;
3659  
3660    case 169:
3661 < #line 1042 "conf_parser.y" /* yacc.c:1646  */
3661 > #line 1043 "conf_parser.y" /* yacc.c:1646  */
3662      {
3663    if (conf_parser_ctx.pass == 2)
3664      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
3665   }
3666 < #line 3666 "conf_parser.c" /* yacc.c:1646  */
3666 > #line 3667 "conf_parser.c" /* yacc.c:1646  */
3667      break;
3668  
3669    case 170:
3670 < #line 1048 "conf_parser.y" /* yacc.c:1646  */
3670 > #line 1049 "conf_parser.y" /* yacc.c:1646  */
3671      {
3672    if (conf_parser_ctx.pass == 2)
3673      strlcpy(block_state.whois.buf, yylval.string, sizeof(block_state.whois.buf));
3674   }
3675 < #line 3675 "conf_parser.c" /* yacc.c:1646  */
3675 > #line 3676 "conf_parser.c" /* yacc.c:1646  */
3676      break;
3677  
3678    case 171:
3679 < #line 1054 "conf_parser.y" /* yacc.c:1646  */
3679 > #line 1055 "conf_parser.y" /* yacc.c:1646  */
3680      {
3681    if (conf_parser_ctx.pass != 2)
3682      break;
# Line 3685 | Line 3686 | yyreduce:
3686    else
3687      block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED;
3688   }
3689 < #line 3689 "conf_parser.c" /* yacc.c:1646  */
3689 > #line 3690 "conf_parser.c" /* yacc.c:1646  */
3690      break;
3691  
3692    case 172:
3693 < #line 1065 "conf_parser.y" /* yacc.c:1646  */
3693 > #line 1066 "conf_parser.y" /* yacc.c:1646  */
3694      {
3695    if (conf_parser_ctx.pass == 2)
3696      strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf));
3697   }
3698 < #line 3698 "conf_parser.c" /* yacc.c:1646  */
3698 > #line 3699 "conf_parser.c" /* yacc.c:1646  */
3699      break;
3700  
3701    case 173:
3702 < #line 1071 "conf_parser.y" /* yacc.c:1646  */
3702 > #line 1072 "conf_parser.y" /* yacc.c:1646  */
3703      {
3704    if (conf_parser_ctx.pass != 2)
3705      break;
# Line 3708 | Line 3709 | yyreduce:
3709    else
3710      block_state.flags.value &= ~CONF_FLAGS_SSL;
3711   }
3712 < #line 3712 "conf_parser.c" /* yacc.c:1646  */
3712 > #line 3713 "conf_parser.c" /* yacc.c:1646  */
3713      break;
3714  
3715    case 174:
3716 < #line 1082 "conf_parser.y" /* yacc.c:1646  */
3716 > #line 1083 "conf_parser.y" /* yacc.c:1646  */
3717      {
3718    if (conf_parser_ctx.pass == 2)
3719      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
3720   }
3721 < #line 3721 "conf_parser.c" /* yacc.c:1646  */
3721 > #line 3722 "conf_parser.c" /* yacc.c:1646  */
3722      break;
3723  
3724    case 175:
3725 < #line 1088 "conf_parser.y" /* yacc.c:1646  */
3725 > #line 1089 "conf_parser.y" /* yacc.c:1646  */
3726      {
3727    if (conf_parser_ctx.pass == 2)
3728      block_state.modes.value = 0;
3729   }
3730 < #line 3730 "conf_parser.c" /* yacc.c:1646  */
3730 > #line 3731 "conf_parser.c" /* yacc.c:1646  */
3731      break;
3732  
3733    case 179:
3734 < #line 1095 "conf_parser.y" /* yacc.c:1646  */
3734 > #line 1096 "conf_parser.y" /* yacc.c:1646  */
3735      {
3736    if (conf_parser_ctx.pass == 2)
3737      block_state.modes.value |= UMODE_BOTS;
3738   }
3739 < #line 3739 "conf_parser.c" /* yacc.c:1646  */
3739 > #line 3740 "conf_parser.c" /* yacc.c:1646  */
3740      break;
3741  
3742    case 180:
3743 < #line 1099 "conf_parser.y" /* yacc.c:1646  */
3743 > #line 1100 "conf_parser.y" /* yacc.c:1646  */
3744      {
3745    if (conf_parser_ctx.pass == 2)
3746      block_state.modes.value |= UMODE_CCONN;
3747   }
3748 < #line 3748 "conf_parser.c" /* yacc.c:1646  */
3748 > #line 3749 "conf_parser.c" /* yacc.c:1646  */
3749      break;
3750  
3751    case 181:
3752 < #line 1103 "conf_parser.y" /* yacc.c:1646  */
3752 > #line 1104 "conf_parser.y" /* yacc.c:1646  */
3753      {
3754    if (conf_parser_ctx.pass == 2)
3755      block_state.modes.value |= UMODE_DEAF;
3756   }
3757 < #line 3757 "conf_parser.c" /* yacc.c:1646  */
3757 > #line 3758 "conf_parser.c" /* yacc.c:1646  */
3758      break;
3759  
3760    case 182:
3761 < #line 1107 "conf_parser.y" /* yacc.c:1646  */
3761 > #line 1108 "conf_parser.y" /* yacc.c:1646  */
3762      {
3763    if (conf_parser_ctx.pass == 2)
3764      block_state.modes.value |= UMODE_DEBUG;
3765   }
3766 < #line 3766 "conf_parser.c" /* yacc.c:1646  */
3766 > #line 3767 "conf_parser.c" /* yacc.c:1646  */
3767      break;
3768  
3769    case 183:
3770 < #line 1111 "conf_parser.y" /* yacc.c:1646  */
3770 > #line 1112 "conf_parser.y" /* yacc.c:1646  */
3771      {
3772    if (conf_parser_ctx.pass == 2)
3773      block_state.modes.value |= UMODE_FULL;
3774   }
3775 < #line 3775 "conf_parser.c" /* yacc.c:1646  */
3775 > #line 3776 "conf_parser.c" /* yacc.c:1646  */
3776      break;
3777  
3778    case 184:
3779 < #line 1115 "conf_parser.y" /* yacc.c:1646  */
3779 > #line 1116 "conf_parser.y" /* yacc.c:1646  */
3780      {
3781    if (conf_parser_ctx.pass == 2)
3782      block_state.modes.value |= UMODE_HIDDEN;
3783   }
3784 < #line 3784 "conf_parser.c" /* yacc.c:1646  */
3784 > #line 3785 "conf_parser.c" /* yacc.c:1646  */
3785      break;
3786  
3787    case 185:
3788 < #line 1119 "conf_parser.y" /* yacc.c:1646  */
3788 > #line 1120 "conf_parser.y" /* yacc.c:1646  */
3789      {
3790    if (conf_parser_ctx.pass == 2)
3791      block_state.modes.value |= UMODE_HIDECHANS;
3792   }
3793 < #line 3793 "conf_parser.c" /* yacc.c:1646  */
3793 > #line 3794 "conf_parser.c" /* yacc.c:1646  */
3794      break;
3795  
3796    case 186:
3797 < #line 1123 "conf_parser.y" /* yacc.c:1646  */
3797 > #line 1124 "conf_parser.y" /* yacc.c:1646  */
3798      {
3799    if (conf_parser_ctx.pass == 2)
3800      block_state.modes.value |= UMODE_HIDEIDLE;
3801   }
3802 < #line 3802 "conf_parser.c" /* yacc.c:1646  */
3802 > #line 3803 "conf_parser.c" /* yacc.c:1646  */
3803      break;
3804  
3805    case 187:
3806 < #line 1127 "conf_parser.y" /* yacc.c:1646  */
3806 > #line 1128 "conf_parser.y" /* yacc.c:1646  */
3807      {
3808    if (conf_parser_ctx.pass == 2)
3809      block_state.modes.value |= UMODE_SKILL;
3810   }
3811 < #line 3811 "conf_parser.c" /* yacc.c:1646  */
3811 > #line 3812 "conf_parser.c" /* yacc.c:1646  */
3812      break;
3813  
3814    case 188:
3815 < #line 1131 "conf_parser.y" /* yacc.c:1646  */
3815 > #line 1132 "conf_parser.y" /* yacc.c:1646  */
3816      {
3817    if (conf_parser_ctx.pass == 2)
3818      block_state.modes.value |= UMODE_NCHANGE;
3819   }
3820 < #line 3820 "conf_parser.c" /* yacc.c:1646  */
3820 > #line 3821 "conf_parser.c" /* yacc.c:1646  */
3821      break;
3822  
3823    case 189:
3824 < #line 1135 "conf_parser.y" /* yacc.c:1646  */
3824 > #line 1136 "conf_parser.y" /* yacc.c:1646  */
3825      {
3826    if (conf_parser_ctx.pass == 2)
3827      block_state.modes.value |= UMODE_REJ;
3828   }
3829 < #line 3829 "conf_parser.c" /* yacc.c:1646  */
3829 > #line 3830 "conf_parser.c" /* yacc.c:1646  */
3830      break;
3831  
3832    case 190:
3833 < #line 1139 "conf_parser.y" /* yacc.c:1646  */
3833 > #line 1140 "conf_parser.y" /* yacc.c:1646  */
3834      {
3835    if (conf_parser_ctx.pass == 2)
3836      block_state.modes.value |= UMODE_UNAUTH;
3837   }
3838 < #line 3838 "conf_parser.c" /* yacc.c:1646  */
3838 > #line 3839 "conf_parser.c" /* yacc.c:1646  */
3839      break;
3840  
3841    case 191:
3842 < #line 1143 "conf_parser.y" /* yacc.c:1646  */
3842 > #line 1144 "conf_parser.y" /* yacc.c:1646  */
3843      {
3844    if (conf_parser_ctx.pass == 2)
3845      block_state.modes.value |= UMODE_SPY;
3846   }
3847 < #line 3847 "conf_parser.c" /* yacc.c:1646  */
3847 > #line 3848 "conf_parser.c" /* yacc.c:1646  */
3848      break;
3849  
3850    case 192:
3851 < #line 1147 "conf_parser.y" /* yacc.c:1646  */
3851 > #line 1148 "conf_parser.y" /* yacc.c:1646  */
3852      {
3853    if (conf_parser_ctx.pass == 2)
3854      block_state.modes.value |= UMODE_EXTERNAL;
3855   }
3856 < #line 3856 "conf_parser.c" /* yacc.c:1646  */
3856 > #line 3857 "conf_parser.c" /* yacc.c:1646  */
3857      break;
3858  
3859    case 193:
3860 < #line 1151 "conf_parser.y" /* yacc.c:1646  */
3860 > #line 1152 "conf_parser.y" /* yacc.c:1646  */
3861      {
3862    if (conf_parser_ctx.pass == 2)
3863      block_state.modes.value |= UMODE_SERVNOTICE;
3864   }
3865 < #line 3865 "conf_parser.c" /* yacc.c:1646  */
3865 > #line 3866 "conf_parser.c" /* yacc.c:1646  */
3866      break;
3867  
3868    case 194:
3869 < #line 1155 "conf_parser.y" /* yacc.c:1646  */
3869 > #line 1156 "conf_parser.y" /* yacc.c:1646  */
3870      {
3871    if (conf_parser_ctx.pass == 2)
3872      block_state.modes.value |= UMODE_INVISIBLE;
3873   }
3874 < #line 3874 "conf_parser.c" /* yacc.c:1646  */
3874 > #line 3875 "conf_parser.c" /* yacc.c:1646  */
3875      break;
3876  
3877    case 195:
3878 < #line 1159 "conf_parser.y" /* yacc.c:1646  */
3878 > #line 1160 "conf_parser.y" /* yacc.c:1646  */
3879      {
3880    if (conf_parser_ctx.pass == 2)
3881      block_state.modes.value |= UMODE_WALLOP;
3882   }
3883 < #line 3883 "conf_parser.c" /* yacc.c:1646  */
3883 > #line 3884 "conf_parser.c" /* yacc.c:1646  */
3884      break;
3885  
3886    case 196:
3887 < #line 1163 "conf_parser.y" /* yacc.c:1646  */
3887 > #line 1164 "conf_parser.y" /* yacc.c:1646  */
3888      {
3889    if (conf_parser_ctx.pass == 2)
3890      block_state.modes.value |= UMODE_SOFTCALLERID;
3891   }
3892 < #line 3892 "conf_parser.c" /* yacc.c:1646  */
3892 > #line 3893 "conf_parser.c" /* yacc.c:1646  */
3893      break;
3894  
3895    case 197:
3896 < #line 1167 "conf_parser.y" /* yacc.c:1646  */
3896 > #line 1168 "conf_parser.y" /* yacc.c:1646  */
3897      {
3898    if (conf_parser_ctx.pass == 2)
3899      block_state.modes.value |= UMODE_CALLERID;
3900   }
3901 < #line 3901 "conf_parser.c" /* yacc.c:1646  */
3901 > #line 3902 "conf_parser.c" /* yacc.c:1646  */
3902      break;
3903  
3904    case 198:
3905 < #line 1171 "conf_parser.y" /* yacc.c:1646  */
3905 > #line 1172 "conf_parser.y" /* yacc.c:1646  */
3906      {
3907    if (conf_parser_ctx.pass == 2)
3908      block_state.modes.value |= UMODE_LOCOPS;
3909   }
3910 < #line 3910 "conf_parser.c" /* yacc.c:1646  */
3910 > #line 3911 "conf_parser.c" /* yacc.c:1646  */
3911      break;
3912  
3913    case 199:
3914 < #line 1175 "conf_parser.y" /* yacc.c:1646  */
3914 > #line 1176 "conf_parser.y" /* yacc.c:1646  */
3915      {
3916    if (conf_parser_ctx.pass == 2)
3917      block_state.modes.value |= UMODE_REGONLY;
3918   }
3919 < #line 3919 "conf_parser.c" /* yacc.c:1646  */
3919 > #line 3920 "conf_parser.c" /* yacc.c:1646  */
3920      break;
3921  
3922    case 200:
3923 < #line 1179 "conf_parser.y" /* yacc.c:1646  */
3923 > #line 1180 "conf_parser.y" /* yacc.c:1646  */
3924      {
3925    if (conf_parser_ctx.pass == 2)
3926      block_state.modes.value |= UMODE_FARCONNECT;
3927   }
3928 < #line 3928 "conf_parser.c" /* yacc.c:1646  */
3928 > #line 3929 "conf_parser.c" /* yacc.c:1646  */
3929      break;
3930  
3931    case 201:
3932 < #line 1185 "conf_parser.y" /* yacc.c:1646  */
3932 > #line 1186 "conf_parser.y" /* yacc.c:1646  */
3933      {
3934    if (conf_parser_ctx.pass == 2)
3935      block_state.port.value = 0;
3936   }
3937 < #line 3937 "conf_parser.c" /* yacc.c:1646  */
3937 > #line 3938 "conf_parser.c" /* yacc.c:1646  */
3938      break;
3939  
3940    case 205:
3941 < #line 1192 "conf_parser.y" /* yacc.c:1646  */
3941 > #line 1193 "conf_parser.y" /* yacc.c:1646  */
3942      {
3943    if (conf_parser_ctx.pass == 2)
3944      block_state.port.value |= OPER_FLAG_KILL_REMOTE;
3945   }
3946 < #line 3946 "conf_parser.c" /* yacc.c:1646  */
3946 > #line 3947 "conf_parser.c" /* yacc.c:1646  */
3947      break;
3948  
3949    case 206:
3950 < #line 1196 "conf_parser.y" /* yacc.c:1646  */
3950 > #line 1197 "conf_parser.y" /* yacc.c:1646  */
3951      {
3952    if (conf_parser_ctx.pass == 2)
3953      block_state.port.value |= OPER_FLAG_KILL;
3954   }
3955 < #line 3955 "conf_parser.c" /* yacc.c:1646  */
3955 > #line 3956 "conf_parser.c" /* yacc.c:1646  */
3956      break;
3957  
3958    case 207:
3959 < #line 1200 "conf_parser.y" /* yacc.c:1646  */
3959 > #line 1201 "conf_parser.y" /* yacc.c:1646  */
3960      {
3961    if (conf_parser_ctx.pass == 2)
3962      block_state.port.value |= OPER_FLAG_CONNECT_REMOTE;
3963   }
3964 < #line 3964 "conf_parser.c" /* yacc.c:1646  */
3964 > #line 3965 "conf_parser.c" /* yacc.c:1646  */
3965      break;
3966  
3967    case 208:
3968 < #line 1204 "conf_parser.y" /* yacc.c:1646  */
3968 > #line 1205 "conf_parser.y" /* yacc.c:1646  */
3969      {
3970    if (conf_parser_ctx.pass == 2)
3971      block_state.port.value |= OPER_FLAG_CONNECT;
3972   }
3973 < #line 3973 "conf_parser.c" /* yacc.c:1646  */
3973 > #line 3974 "conf_parser.c" /* yacc.c:1646  */
3974      break;
3975  
3976    case 209:
3977 < #line 1208 "conf_parser.y" /* yacc.c:1646  */
3977 > #line 1209 "conf_parser.y" /* yacc.c:1646  */
3978      {
3979    if (conf_parser_ctx.pass == 2)
3980      block_state.port.value |= OPER_FLAG_SQUIT_REMOTE;
3981   }
3982 < #line 3982 "conf_parser.c" /* yacc.c:1646  */
3982 > #line 3983 "conf_parser.c" /* yacc.c:1646  */
3983      break;
3984  
3985    case 210:
3986 < #line 1212 "conf_parser.y" /* yacc.c:1646  */
3986 > #line 1213 "conf_parser.y" /* yacc.c:1646  */
3987      {
3988    if (conf_parser_ctx.pass == 2)
3989      block_state.port.value |= OPER_FLAG_SQUIT;
3990   }
3991 < #line 3991 "conf_parser.c" /* yacc.c:1646  */
3991 > #line 3992 "conf_parser.c" /* yacc.c:1646  */
3992      break;
3993  
3994    case 211:
3995 < #line 1216 "conf_parser.y" /* yacc.c:1646  */
3995 > #line 1217 "conf_parser.y" /* yacc.c:1646  */
3996      {
3997    if (conf_parser_ctx.pass == 2)
3998      block_state.port.value |= OPER_FLAG_KLINE;
3999   }
4000 < #line 4000 "conf_parser.c" /* yacc.c:1646  */
4000 > #line 4001 "conf_parser.c" /* yacc.c:1646  */
4001      break;
4002  
4003    case 212:
4004 < #line 1220 "conf_parser.y" /* yacc.c:1646  */
4004 > #line 1221 "conf_parser.y" /* yacc.c:1646  */
4005      {
4006    if (conf_parser_ctx.pass == 2)
4007      block_state.port.value |= OPER_FLAG_UNKLINE;
4008   }
4009 < #line 4009 "conf_parser.c" /* yacc.c:1646  */
4009 > #line 4010 "conf_parser.c" /* yacc.c:1646  */
4010      break;
4011  
4012    case 213:
4013 < #line 1224 "conf_parser.y" /* yacc.c:1646  */
4013 > #line 1225 "conf_parser.y" /* yacc.c:1646  */
4014      {
4015    if (conf_parser_ctx.pass == 2)
4016      block_state.port.value |= OPER_FLAG_DLINE;
4017   }
4018 < #line 4018 "conf_parser.c" /* yacc.c:1646  */
4018 > #line 4019 "conf_parser.c" /* yacc.c:1646  */
4019      break;
4020  
4021    case 214:
4022 < #line 1228 "conf_parser.y" /* yacc.c:1646  */
4022 > #line 1229 "conf_parser.y" /* yacc.c:1646  */
4023      {
4024    if (conf_parser_ctx.pass == 2)
4025      block_state.port.value |= OPER_FLAG_UNDLINE;
4026   }
4027 < #line 4027 "conf_parser.c" /* yacc.c:1646  */
4027 > #line 4028 "conf_parser.c" /* yacc.c:1646  */
4028      break;
4029  
4030    case 215:
4031 < #line 1232 "conf_parser.y" /* yacc.c:1646  */
4031 > #line 1233 "conf_parser.y" /* yacc.c:1646  */
4032      {
4033    if (conf_parser_ctx.pass == 2)
4034      block_state.port.value |= OPER_FLAG_XLINE;
4035   }
4036 < #line 4036 "conf_parser.c" /* yacc.c:1646  */
4036 > #line 4037 "conf_parser.c" /* yacc.c:1646  */
4037      break;
4038  
4039    case 216:
4040 < #line 1236 "conf_parser.y" /* yacc.c:1646  */
4040 > #line 1237 "conf_parser.y" /* yacc.c:1646  */
4041      {
4042    if (conf_parser_ctx.pass == 2)
4043      block_state.port.value |= OPER_FLAG_UNXLINE;
4044   }
4045 < #line 4045 "conf_parser.c" /* yacc.c:1646  */
4045 > #line 4046 "conf_parser.c" /* yacc.c:1646  */
4046      break;
4047  
4048    case 217:
4049 < #line 1240 "conf_parser.y" /* yacc.c:1646  */
4049 > #line 1241 "conf_parser.y" /* yacc.c:1646  */
4050      {
4051    if (conf_parser_ctx.pass == 2)
4052      block_state.port.value |= OPER_FLAG_DIE;
4053   }
4054 < #line 4054 "conf_parser.c" /* yacc.c:1646  */
4054 > #line 4055 "conf_parser.c" /* yacc.c:1646  */
4055      break;
4056  
4057    case 218:
4058 < #line 1244 "conf_parser.y" /* yacc.c:1646  */
4058 > #line 1245 "conf_parser.y" /* yacc.c:1646  */
4059      {
4060    if (conf_parser_ctx.pass == 2)
4061      block_state.port.value |= OPER_FLAG_RESTART;
4062   }
4063 < #line 4063 "conf_parser.c" /* yacc.c:1646  */
4063 > #line 4064 "conf_parser.c" /* yacc.c:1646  */
4064      break;
4065  
4066    case 219:
4067 < #line 1248 "conf_parser.y" /* yacc.c:1646  */
4067 > #line 1249 "conf_parser.y" /* yacc.c:1646  */
4068      {
4069    if (conf_parser_ctx.pass == 2)
4070      block_state.port.value |= OPER_FLAG_REHASH_REMOTE;
4071   }
4072 < #line 4072 "conf_parser.c" /* yacc.c:1646  */
4072 > #line 4073 "conf_parser.c" /* yacc.c:1646  */
4073      break;
4074  
4075    case 220:
4076 < #line 1252 "conf_parser.y" /* yacc.c:1646  */
4076 > #line 1253 "conf_parser.y" /* yacc.c:1646  */
4077      {
4078    if (conf_parser_ctx.pass == 2)
4079      block_state.port.value |= OPER_FLAG_REHASH;
4080   }
4081 < #line 4081 "conf_parser.c" /* yacc.c:1646  */
4081 > #line 4082 "conf_parser.c" /* yacc.c:1646  */
4082      break;
4083  
4084    case 221:
4085 < #line 1256 "conf_parser.y" /* yacc.c:1646  */
4085 > #line 1257 "conf_parser.y" /* yacc.c:1646  */
4086      {
4087    if (conf_parser_ctx.pass == 2)
4088      block_state.port.value |= OPER_FLAG_ADMIN;
4089   }
4090 < #line 4090 "conf_parser.c" /* yacc.c:1646  */
4090 > #line 4091 "conf_parser.c" /* yacc.c:1646  */
4091      break;
4092  
4093    case 222:
4094 < #line 1260 "conf_parser.y" /* yacc.c:1646  */
4094 > #line 1261 "conf_parser.y" /* yacc.c:1646  */
4095      {
4096    if (conf_parser_ctx.pass == 2)
4097      block_state.port.value |= OPER_FLAG_GLOBOPS;
4098   }
4099 < #line 4099 "conf_parser.c" /* yacc.c:1646  */
4099 > #line 4100 "conf_parser.c" /* yacc.c:1646  */
4100      break;
4101  
4102    case 223:
4103 < #line 1264 "conf_parser.y" /* yacc.c:1646  */
4103 > #line 1265 "conf_parser.y" /* yacc.c:1646  */
4104      {
4105    if (conf_parser_ctx.pass == 2)
4106      block_state.port.value |= OPER_FLAG_WALLOPS;
4107   }
4108 < #line 4108 "conf_parser.c" /* yacc.c:1646  */
4108 > #line 4109 "conf_parser.c" /* yacc.c:1646  */
4109      break;
4110  
4111    case 224:
4112 < #line 1268 "conf_parser.y" /* yacc.c:1646  */
4112 > #line 1269 "conf_parser.y" /* yacc.c:1646  */
4113      {
4114    if (conf_parser_ctx.pass == 2)
4115      block_state.port.value |= OPER_FLAG_LOCOPS;
4116   }
4117 < #line 4117 "conf_parser.c" /* yacc.c:1646  */
4117 > #line 4118 "conf_parser.c" /* yacc.c:1646  */
4118      break;
4119  
4120    case 225:
4121 < #line 1272 "conf_parser.y" /* yacc.c:1646  */
4121 > #line 1273 "conf_parser.y" /* yacc.c:1646  */
4122      {
4123    if (conf_parser_ctx.pass == 2)
4124      block_state.port.value |= OPER_FLAG_REMOTEBAN;
4125   }
4126 < #line 4126 "conf_parser.c" /* yacc.c:1646  */
4126 > #line 4127 "conf_parser.c" /* yacc.c:1646  */
4127      break;
4128  
4129    case 226:
4130 < #line 1276 "conf_parser.y" /* yacc.c:1646  */
4130 > #line 1277 "conf_parser.y" /* yacc.c:1646  */
4131      {
4132    if (conf_parser_ctx.pass == 2)
4133      block_state.port.value |= OPER_FLAG_SET;
4134   }
4135 < #line 4135 "conf_parser.c" /* yacc.c:1646  */
4135 > #line 4136 "conf_parser.c" /* yacc.c:1646  */
4136      break;
4137  
4138    case 227:
4139 < #line 1280 "conf_parser.y" /* yacc.c:1646  */
4139 > #line 1281 "conf_parser.y" /* yacc.c:1646  */
4140      {
4141    if (conf_parser_ctx.pass == 2)
4142      block_state.port.value |= OPER_FLAG_MODULE;
4143   }
4144 < #line 4144 "conf_parser.c" /* yacc.c:1646  */
4144 > #line 4145 "conf_parser.c" /* yacc.c:1646  */
4145      break;
4146  
4147    case 228:
4148 < #line 1284 "conf_parser.y" /* yacc.c:1646  */
4148 > #line 1285 "conf_parser.y" /* yacc.c:1646  */
4149      {
4150    if (conf_parser_ctx.pass == 2)
4151      block_state.port.value |= OPER_FLAG_OPME;
4152   }
4153 < #line 4153 "conf_parser.c" /* yacc.c:1646  */
4153 > #line 4154 "conf_parser.c" /* yacc.c:1646  */
4154      break;
4155  
4156    case 229:
4157 < #line 1288 "conf_parser.y" /* yacc.c:1646  */
4157 > #line 1289 "conf_parser.y" /* yacc.c:1646  */
4158      {
4159    if (conf_parser_ctx.pass == 2)
4160      block_state.port.value |= OPER_FLAG_NICK_RESV;
4161   }
4162 < #line 4162 "conf_parser.c" /* yacc.c:1646  */
4162 > #line 4163 "conf_parser.c" /* yacc.c:1646  */
4163      break;
4164  
4165    case 230:
4166 < #line 1292 "conf_parser.y" /* yacc.c:1646  */
4166 > #line 1293 "conf_parser.y" /* yacc.c:1646  */
4167      {
4168    if (conf_parser_ctx.pass == 2)
4169      block_state.port.value |= OPER_FLAG_JOIN_RESV;
4170   }
4171 < #line 4171 "conf_parser.c" /* yacc.c:1646  */
4171 > #line 4172 "conf_parser.c" /* yacc.c:1646  */
4172      break;
4173  
4174    case 231:
4175 < #line 1296 "conf_parser.y" /* yacc.c:1646  */
4175 > #line 1297 "conf_parser.y" /* yacc.c:1646  */
4176      {
4177    if (conf_parser_ctx.pass == 2)
4178      block_state.port.value |= OPER_FLAG_RESV;
4179   }
4180 < #line 4180 "conf_parser.c" /* yacc.c:1646  */
4180 > #line 4181 "conf_parser.c" /* yacc.c:1646  */
4181      break;
4182  
4183    case 232:
4184 < #line 1300 "conf_parser.y" /* yacc.c:1646  */
4184 > #line 1301 "conf_parser.y" /* yacc.c:1646  */
4185      {
4186    if (conf_parser_ctx.pass == 2)
4187      block_state.port.value |= OPER_FLAG_UNRESV;
4188   }
4189 < #line 4189 "conf_parser.c" /* yacc.c:1646  */
4189 > #line 4190 "conf_parser.c" /* yacc.c:1646  */
4190      break;
4191  
4192    case 233:
4193 < #line 1304 "conf_parser.y" /* yacc.c:1646  */
4193 > #line 1305 "conf_parser.y" /* yacc.c:1646  */
4194      {
4195    if (conf_parser_ctx.pass == 2)
4196      block_state.port.value |= OPER_FLAG_CLOSE;
4197   }
4198 < #line 4198 "conf_parser.c" /* yacc.c:1646  */
4198 > #line 4199 "conf_parser.c" /* yacc.c:1646  */
4199      break;
4200  
4201    case 234:
4202 < #line 1314 "conf_parser.y" /* yacc.c:1646  */
4202 > #line 1315 "conf_parser.y" /* yacc.c:1646  */
4203      {
4204    if (conf_parser_ctx.pass != 1)
4205      break;
# Line 4211 | Line 4212 | yyreduce:
4212    block_state.max_sendq.value = DEFAULT_SENDQ;
4213    block_state.max_recvq.value = DEFAULT_RECVQ;
4214   }
4215 < #line 4215 "conf_parser.c" /* yacc.c:1646  */
4215 > #line 4216 "conf_parser.c" /* yacc.c:1646  */
4216      break;
4217  
4218    case 235:
4219 < #line 1326 "conf_parser.y" /* yacc.c:1646  */
4219 > #line 1327 "conf_parser.y" /* yacc.c:1646  */
4220      {
4221    struct ClassItem *class = NULL;
4222  
# Line 4258 | Line 4259 | yyreduce:
4259    class->cidr_bitlen_ipv6 = block_state.cidr_bitlen_ipv6.value;
4260    class->number_per_cidr = block_state.number_per_cidr.value;
4261   }
4262 < #line 4262 "conf_parser.c" /* yacc.c:1646  */
4262 > #line 4263 "conf_parser.c" /* yacc.c:1646  */
4263      break;
4264  
4265    case 255:
4266 < #line 1389 "conf_parser.y" /* yacc.c:1646  */
4266 > #line 1390 "conf_parser.y" /* yacc.c:1646  */
4267      {
4268    if (conf_parser_ctx.pass == 1)
4269      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
4270   }
4271 < #line 4271 "conf_parser.c" /* yacc.c:1646  */
4271 > #line 4272 "conf_parser.c" /* yacc.c:1646  */
4272      break;
4273  
4274    case 256:
4275 < #line 1395 "conf_parser.y" /* yacc.c:1646  */
4275 > #line 1396 "conf_parser.y" /* yacc.c:1646  */
4276      {
4277    if (conf_parser_ctx.pass == 1)
4278      block_state.ping_freq.value = (yyvsp[-1].number);
4279   }
4280 < #line 4280 "conf_parser.c" /* yacc.c:1646  */
4280 > #line 4281 "conf_parser.c" /* yacc.c:1646  */
4281      break;
4282  
4283    case 257:
4284 < #line 1401 "conf_parser.y" /* yacc.c:1646  */
4284 > #line 1402 "conf_parser.y" /* yacc.c:1646  */
4285      {
4286    if (conf_parser_ctx.pass == 1)
4287      block_state.max_perip.value = (yyvsp[-1].number);
4288   }
4289 < #line 4289 "conf_parser.c" /* yacc.c:1646  */
4289 > #line 4290 "conf_parser.c" /* yacc.c:1646  */
4290      break;
4291  
4292    case 258:
4293 < #line 1407 "conf_parser.y" /* yacc.c:1646  */
4293 > #line 1408 "conf_parser.y" /* yacc.c:1646  */
4294      {
4295    if (conf_parser_ctx.pass == 1)
4296      block_state.con_freq.value = (yyvsp[-1].number);
4297   }
4298 < #line 4298 "conf_parser.c" /* yacc.c:1646  */
4298 > #line 4299 "conf_parser.c" /* yacc.c:1646  */
4299      break;
4300  
4301    case 259:
4302 < #line 1413 "conf_parser.y" /* yacc.c:1646  */
4302 > #line 1414 "conf_parser.y" /* yacc.c:1646  */
4303      {
4304    if (conf_parser_ctx.pass == 1)
4305      block_state.max_channels.value = (yyvsp[-1].number);
4306   }
4307 < #line 4307 "conf_parser.c" /* yacc.c:1646  */
4307 > #line 4308 "conf_parser.c" /* yacc.c:1646  */
4308      break;
4309  
4310    case 260:
4311 < #line 1419 "conf_parser.y" /* yacc.c:1646  */
4311 > #line 1420 "conf_parser.y" /* yacc.c:1646  */
4312      {
4313    if (conf_parser_ctx.pass == 1)
4314      block_state.max_total.value = (yyvsp[-1].number);
4315   }
4316 < #line 4316 "conf_parser.c" /* yacc.c:1646  */
4316 > #line 4317 "conf_parser.c" /* yacc.c:1646  */
4317      break;
4318  
4319    case 261:
4320 < #line 1425 "conf_parser.y" /* yacc.c:1646  */
4320 > #line 1426 "conf_parser.y" /* yacc.c:1646  */
4321      {
4322    if (conf_parser_ctx.pass == 1)
4323      block_state.max_global.value = (yyvsp[-1].number);
4324   }
4325 < #line 4325 "conf_parser.c" /* yacc.c:1646  */
4325 > #line 4326 "conf_parser.c" /* yacc.c:1646  */
4326      break;
4327  
4328    case 262:
4329 < #line 1431 "conf_parser.y" /* yacc.c:1646  */
4329 > #line 1432 "conf_parser.y" /* yacc.c:1646  */
4330      {
4331    if (conf_parser_ctx.pass == 1)
4332      block_state.max_local.value = (yyvsp[-1].number);
4333   }
4334 < #line 4334 "conf_parser.c" /* yacc.c:1646  */
4334 > #line 4335 "conf_parser.c" /* yacc.c:1646  */
4335      break;
4336  
4337    case 263:
4338 < #line 1437 "conf_parser.y" /* yacc.c:1646  */
4338 > #line 1438 "conf_parser.y" /* yacc.c:1646  */
4339      {
4340    if (conf_parser_ctx.pass == 1)
4341      block_state.max_sendq.value = (yyvsp[-1].number);
4342   }
4343 < #line 4343 "conf_parser.c" /* yacc.c:1646  */
4343 > #line 4344 "conf_parser.c" /* yacc.c:1646  */
4344      break;
4345  
4346    case 264:
4347 < #line 1443 "conf_parser.y" /* yacc.c:1646  */
4347 > #line 1444 "conf_parser.y" /* yacc.c:1646  */
4348      {
4349    if (conf_parser_ctx.pass == 1)
4350      if ((yyvsp[-1].number) >= CLIENT_FLOOD_MIN && (yyvsp[-1].number) <= CLIENT_FLOOD_MAX)
4351        block_state.max_recvq.value = (yyvsp[-1].number);
4352   }
4353 < #line 4353 "conf_parser.c" /* yacc.c:1646  */
4353 > #line 4354 "conf_parser.c" /* yacc.c:1646  */
4354      break;
4355  
4356    case 265:
4357 < #line 1450 "conf_parser.y" /* yacc.c:1646  */
4357 > #line 1451 "conf_parser.y" /* yacc.c:1646  */
4358      {
4359    if (conf_parser_ctx.pass == 1)
4360      block_state.cidr_bitlen_ipv4.value = (yyvsp[-1].number) > 32 ? 32 : (yyvsp[-1].number);
4361   }
4362 < #line 4362 "conf_parser.c" /* yacc.c:1646  */
4362 > #line 4363 "conf_parser.c" /* yacc.c:1646  */
4363      break;
4364  
4365    case 266:
4366 < #line 1456 "conf_parser.y" /* yacc.c:1646  */
4366 > #line 1457 "conf_parser.y" /* yacc.c:1646  */
4367      {
4368    if (conf_parser_ctx.pass == 1)
4369      block_state.cidr_bitlen_ipv6.value = (yyvsp[-1].number) > 128 ? 128 : (yyvsp[-1].number);
4370   }
4371 < #line 4371 "conf_parser.c" /* yacc.c:1646  */
4371 > #line 4372 "conf_parser.c" /* yacc.c:1646  */
4372      break;
4373  
4374    case 267:
4375 < #line 1462 "conf_parser.y" /* yacc.c:1646  */
4375 > #line 1463 "conf_parser.y" /* yacc.c:1646  */
4376      {
4377    if (conf_parser_ctx.pass == 1)
4378      block_state.number_per_cidr.value = (yyvsp[-1].number);
4379   }
4380 < #line 4380 "conf_parser.c" /* yacc.c:1646  */
4380 > #line 4381 "conf_parser.c" /* yacc.c:1646  */
4381      break;
4382  
4383    case 268:
4384 < #line 1468 "conf_parser.y" /* yacc.c:1646  */
4384 > #line 1469 "conf_parser.y" /* yacc.c:1646  */
4385      {
4386    if (conf_parser_ctx.pass != 1)
4387      break;
# Line 4388 | Line 4389 | yyreduce:
4389    block_state.min_idle.value = (yyvsp[-1].number);
4390    block_state.flags.value |= CLASS_FLAGS_FAKE_IDLE;
4391   }
4392 < #line 4392 "conf_parser.c" /* yacc.c:1646  */
4392 > #line 4393 "conf_parser.c" /* yacc.c:1646  */
4393      break;
4394  
4395    case 269:
4396 < #line 1477 "conf_parser.y" /* yacc.c:1646  */
4396 > #line 1478 "conf_parser.y" /* yacc.c:1646  */
4397      {
4398    if (conf_parser_ctx.pass != 1)
4399      break;
# Line 4400 | Line 4401 | yyreduce:
4401    block_state.max_idle.value = (yyvsp[-1].number);
4402    block_state.flags.value |= CLASS_FLAGS_FAKE_IDLE;
4403   }
4404 < #line 4404 "conf_parser.c" /* yacc.c:1646  */
4404 > #line 4405 "conf_parser.c" /* yacc.c:1646  */
4405      break;
4406  
4407    case 270:
4408 < #line 1486 "conf_parser.y" /* yacc.c:1646  */
4408 > #line 1487 "conf_parser.y" /* yacc.c:1646  */
4409      {
4410    if (conf_parser_ctx.pass == 1)
4411      block_state.flags.value &= CLASS_FLAGS_FAKE_IDLE;
4412   }
4413 < #line 4413 "conf_parser.c" /* yacc.c:1646  */
4413 > #line 4414 "conf_parser.c" /* yacc.c:1646  */
4414      break;
4415  
4416    case 274:
4417 < #line 1493 "conf_parser.y" /* yacc.c:1646  */
4417 > #line 1494 "conf_parser.y" /* yacc.c:1646  */
4418      {
4419    if (conf_parser_ctx.pass == 1)
4420      block_state.flags.value |= CLASS_FLAGS_RANDOM_IDLE;
4421   }
4422 < #line 4422 "conf_parser.c" /* yacc.c:1646  */
4422 > #line 4423 "conf_parser.c" /* yacc.c:1646  */
4423      break;
4424  
4425    case 275:
4426 < #line 1497 "conf_parser.y" /* yacc.c:1646  */
4426 > #line 1498 "conf_parser.y" /* yacc.c:1646  */
4427      {
4428    if (conf_parser_ctx.pass == 1)
4429      block_state.flags.value |= CLASS_FLAGS_HIDE_IDLE_FROM_OPERS;
4430   }
4431 < #line 4431 "conf_parser.c" /* yacc.c:1646  */
4431 > #line 4432 "conf_parser.c" /* yacc.c:1646  */
4432      break;
4433  
4434    case 276:
4435 < #line 1507 "conf_parser.y" /* yacc.c:1646  */
4435 > #line 1508 "conf_parser.y" /* yacc.c:1646  */
4436      {
4437    if (conf_parser_ctx.pass == 2)
4438      reset_block_state();
4439   }
4440 < #line 4440 "conf_parser.c" /* yacc.c:1646  */
4440 > #line 4441 "conf_parser.c" /* yacc.c:1646  */
4441      break;
4442  
4443    case 278:
4444 < #line 1513 "conf_parser.y" /* yacc.c:1646  */
4444 > #line 1514 "conf_parser.y" /* yacc.c:1646  */
4445      {
4446    block_state.flags.value = 0;
4447   }
4448 < #line 4448 "conf_parser.c" /* yacc.c:1646  */
4448 > #line 4449 "conf_parser.c" /* yacc.c:1646  */
4449      break;
4450  
4451    case 282:
4452 < #line 1519 "conf_parser.y" /* yacc.c:1646  */
4452 > #line 1520 "conf_parser.y" /* yacc.c:1646  */
4453      {
4454    if (conf_parser_ctx.pass == 2)
4455      block_state.flags.value |= LISTENER_SSL;
4456   }
4457 < #line 4457 "conf_parser.c" /* yacc.c:1646  */
4457 > #line 4458 "conf_parser.c" /* yacc.c:1646  */
4458      break;
4459  
4460    case 283:
4461 < #line 1523 "conf_parser.y" /* yacc.c:1646  */
4461 > #line 1524 "conf_parser.y" /* yacc.c:1646  */
4462      {
4463    if (conf_parser_ctx.pass == 2)
4464      block_state.flags.value |= LISTENER_HIDDEN;
4465   }
4466 < #line 4466 "conf_parser.c" /* yacc.c:1646  */
4466 > #line 4467 "conf_parser.c" /* yacc.c:1646  */
4467      break;
4468  
4469    case 284:
4470 < #line 1527 "conf_parser.y" /* yacc.c:1646  */
4470 > #line 1528 "conf_parser.y" /* yacc.c:1646  */
4471      {
4472    if (conf_parser_ctx.pass == 2)
4473     block_state.flags.value |= LISTENER_SERVER;
4474   }
4475 < #line 4475 "conf_parser.c" /* yacc.c:1646  */
4475 > #line 4476 "conf_parser.c" /* yacc.c:1646  */
4476      break;
4477  
4478    case 292:
4479 < #line 1535 "conf_parser.y" /* yacc.c:1646  */
4479 > #line 1536 "conf_parser.y" /* yacc.c:1646  */
4480      { block_state.flags.value = 0; }
4481 < #line 4481 "conf_parser.c" /* yacc.c:1646  */
4481 > #line 4482 "conf_parser.c" /* yacc.c:1646  */
4482      break;
4483  
4484    case 296:
4485 < #line 1540 "conf_parser.y" /* yacc.c:1646  */
4485 > #line 1541 "conf_parser.y" /* yacc.c:1646  */
4486      {
4487    if (conf_parser_ctx.pass == 2)
4488    {
# Line 4495 | Line 4496 | yyreduce:
4496      listener_add((yyvsp[0].number), block_state.addr.buf, block_state.flags.value);
4497    }
4498   }
4499 < #line 4499 "conf_parser.c" /* yacc.c:1646  */
4499 > #line 4500 "conf_parser.c" /* yacc.c:1646  */
4500      break;
4501  
4502    case 297:
4503 < #line 1553 "conf_parser.y" /* yacc.c:1646  */
4503 > #line 1554 "conf_parser.y" /* yacc.c:1646  */
4504      {
4505    if (conf_parser_ctx.pass == 2)
4506    {
# Line 4515 | Line 4516 | yyreduce:
4516        listener_add(i, block_state.addr.buf, block_state.flags.value);
4517    }
4518   }
4519 < #line 4519 "conf_parser.c" /* yacc.c:1646  */
4519 > #line 4520 "conf_parser.c" /* yacc.c:1646  */
4520      break;
4521  
4522    case 298:
4523 < #line 1570 "conf_parser.y" /* yacc.c:1646  */
4523 > #line 1571 "conf_parser.y" /* yacc.c:1646  */
4524      {
4525    if (conf_parser_ctx.pass == 2)
4526      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
4527   }
4528 < #line 4528 "conf_parser.c" /* yacc.c:1646  */
4528 > #line 4529 "conf_parser.c" /* yacc.c:1646  */
4529      break;
4530  
4531    case 299:
4532 < #line 1576 "conf_parser.y" /* yacc.c:1646  */
4532 > #line 1577 "conf_parser.y" /* yacc.c:1646  */
4533      {
4534    if (conf_parser_ctx.pass == 2)
4535      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
4536   }
4537 < #line 4537 "conf_parser.c" /* yacc.c:1646  */
4537 > #line 4538 "conf_parser.c" /* yacc.c:1646  */
4538      break;
4539  
4540    case 300:
4541 < #line 1586 "conf_parser.y" /* yacc.c:1646  */
4541 > #line 1587 "conf_parser.y" /* yacc.c:1646  */
4542      {
4543    if (conf_parser_ctx.pass == 2)
4544      reset_block_state();
4545   }
4546 < #line 4546 "conf_parser.c" /* yacc.c:1646  */
4546 > #line 4547 "conf_parser.c" /* yacc.c:1646  */
4547      break;
4548  
4549    case 301:
4550 < #line 1590 "conf_parser.y" /* yacc.c:1646  */
4550 > #line 1591 "conf_parser.y" /* yacc.c:1646  */
4551      {
4552    dlink_node *node = NULL;
4553  
# Line 4587 | Line 4588 | yyreduce:
4588      add_conf_by_address(CONF_CLIENT, conf);
4589    }
4590   }
4591 < #line 4591 "conf_parser.c" /* yacc.c:1646  */
4591 > #line 4592 "conf_parser.c" /* yacc.c:1646  */
4592      break;
4593  
4594    case 313:
4595 < #line 1643 "conf_parser.y" /* yacc.c:1646  */
4595 > #line 1644 "conf_parser.y" /* yacc.c:1646  */
4596      {
4597    if (conf_parser_ctx.pass == 2)
4598      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
4599   }
4600 < #line 4600 "conf_parser.c" /* yacc.c:1646  */
4600 > #line 4601 "conf_parser.c" /* yacc.c:1646  */
4601      break;
4602  
4603    case 314:
4604 < #line 1649 "conf_parser.y" /* yacc.c:1646  */
4604 > #line 1650 "conf_parser.y" /* yacc.c:1646  */
4605      {
4606    if (conf_parser_ctx.pass == 2)
4607      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
4608   }
4609 < #line 4609 "conf_parser.c" /* yacc.c:1646  */
4609 > #line 4610 "conf_parser.c" /* yacc.c:1646  */
4610      break;
4611  
4612    case 315:
4613 < #line 1655 "conf_parser.y" /* yacc.c:1646  */
4613 > #line 1656 "conf_parser.y" /* yacc.c:1646  */
4614      {
4615    if (conf_parser_ctx.pass == 2)
4616      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
4617   }
4618 < #line 4618 "conf_parser.c" /* yacc.c:1646  */
4618 > #line 4619 "conf_parser.c" /* yacc.c:1646  */
4619      break;
4620  
4621    case 316:
4622 < #line 1661 "conf_parser.y" /* yacc.c:1646  */
4622 > #line 1662 "conf_parser.y" /* yacc.c:1646  */
4623      {
4624    if (conf_parser_ctx.pass == 2)
4625    {
# Line 4628 | Line 4629 | yyreduce:
4629        block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED;
4630    }
4631   }
4632 < #line 4632 "conf_parser.c" /* yacc.c:1646  */
4632 > #line 4633 "conf_parser.c" /* yacc.c:1646  */
4633      break;
4634  
4635    case 317:
4636 < #line 1672 "conf_parser.y" /* yacc.c:1646  */
4636 > #line 1673 "conf_parser.y" /* yacc.c:1646  */
4637      {
4638    if (conf_parser_ctx.pass == 2)
4639      block_state.flags.value &= (CONF_FLAGS_ENCRYPTED | CONF_FLAGS_SPOOF_IP);
4640   }
4641 < #line 4641 "conf_parser.c" /* yacc.c:1646  */
4641 > #line 4642 "conf_parser.c" /* yacc.c:1646  */
4642      break;
4643  
4644    case 321:
4645 < #line 1679 "conf_parser.y" /* yacc.c:1646  */
4645 > #line 1680 "conf_parser.y" /* yacc.c:1646  */
4646      {
4647    if (conf_parser_ctx.pass == 2)
4648      block_state.flags.value |= CONF_FLAGS_SPOOF_NOTICE;
4649   }
4650 < #line 4650 "conf_parser.c" /* yacc.c:1646  */
4650 > #line 4651 "conf_parser.c" /* yacc.c:1646  */
4651      break;
4652  
4653    case 322:
4654 < #line 1683 "conf_parser.y" /* yacc.c:1646  */
4654 > #line 1684 "conf_parser.y" /* yacc.c:1646  */
4655      {
4656    if (conf_parser_ctx.pass == 2)
4657      block_state.flags.value |= CONF_FLAGS_NOLIMIT;
4658   }
4659 < #line 4659 "conf_parser.c" /* yacc.c:1646  */
4659 > #line 4660 "conf_parser.c" /* yacc.c:1646  */
4660      break;
4661  
4662    case 323:
4663 < #line 1687 "conf_parser.y" /* yacc.c:1646  */
4663 > #line 1688 "conf_parser.y" /* yacc.c:1646  */
4664      {
4665    if (conf_parser_ctx.pass == 2)
4666      block_state.flags.value |= CONF_FLAGS_EXEMPTKLINE;
4667   }
4668 < #line 4668 "conf_parser.c" /* yacc.c:1646  */
4668 > #line 4669 "conf_parser.c" /* yacc.c:1646  */
4669      break;
4670  
4671    case 324:
4672 < #line 1691 "conf_parser.y" /* yacc.c:1646  */
4672 > #line 1692 "conf_parser.y" /* yacc.c:1646  */
4673      {
4674    if (conf_parser_ctx.pass == 2)
4675      block_state.flags.value |= CONF_FLAGS_EXEMPTXLINE;
4676   }
4677 < #line 4677 "conf_parser.c" /* yacc.c:1646  */
4677 > #line 4678 "conf_parser.c" /* yacc.c:1646  */
4678      break;
4679  
4680    case 325:
4681 < #line 1695 "conf_parser.y" /* yacc.c:1646  */
4681 > #line 1696 "conf_parser.y" /* yacc.c:1646  */
4682      {
4683    if (conf_parser_ctx.pass == 2)
4684      block_state.flags.value |= CONF_FLAGS_NEED_IDENTD;
4685   }
4686 < #line 4686 "conf_parser.c" /* yacc.c:1646  */
4686 > #line 4687 "conf_parser.c" /* yacc.c:1646  */
4687      break;
4688  
4689    case 326:
4690 < #line 1699 "conf_parser.y" /* yacc.c:1646  */
4690 > #line 1700 "conf_parser.y" /* yacc.c:1646  */
4691      {
4692    if (conf_parser_ctx.pass == 2)
4693      block_state.flags.value |= CONF_FLAGS_CAN_FLOOD;
4694   }
4695 < #line 4695 "conf_parser.c" /* yacc.c:1646  */
4695 > #line 4696 "conf_parser.c" /* yacc.c:1646  */
4696      break;
4697  
4698    case 327:
4699 < #line 1703 "conf_parser.y" /* yacc.c:1646  */
4699 > #line 1704 "conf_parser.y" /* yacc.c:1646  */
4700      {
4701    if (conf_parser_ctx.pass == 2)
4702      block_state.flags.value |= CONF_FLAGS_NO_TILDE;
4703   }
4704 < #line 4704 "conf_parser.c" /* yacc.c:1646  */
4704 > #line 4705 "conf_parser.c" /* yacc.c:1646  */
4705      break;
4706  
4707    case 328:
4708 < #line 1707 "conf_parser.y" /* yacc.c:1646  */
4708 > #line 1708 "conf_parser.y" /* yacc.c:1646  */
4709      {
4710    if (conf_parser_ctx.pass == 2)
4711      block_state.flags.value |= CONF_FLAGS_EXEMPTRESV;
4712   }
4713 < #line 4713 "conf_parser.c" /* yacc.c:1646  */
4713 > #line 4714 "conf_parser.c" /* yacc.c:1646  */
4714      break;
4715  
4716    case 329:
4717 < #line 1711 "conf_parser.y" /* yacc.c:1646  */
4717 > #line 1712 "conf_parser.y" /* yacc.c:1646  */
4718      {
4719    if (conf_parser_ctx.pass == 2)
4720      block_state.flags.value |= CONF_FLAGS_WEBIRC;
4721   }
4722 < #line 4722 "conf_parser.c" /* yacc.c:1646  */
4722 > #line 4723 "conf_parser.c" /* yacc.c:1646  */
4723      break;
4724  
4725    case 330:
4726 < #line 1715 "conf_parser.y" /* yacc.c:1646  */
4726 > #line 1716 "conf_parser.y" /* yacc.c:1646  */
4727      {
4728    if (conf_parser_ctx.pass == 2)
4729      block_state.flags.value |= CONF_FLAGS_NEED_PASSWORD;
4730   }
4731 < #line 4731 "conf_parser.c" /* yacc.c:1646  */
4731 > #line 4732 "conf_parser.c" /* yacc.c:1646  */
4732      break;
4733  
4734    case 331:
4735 < #line 1721 "conf_parser.y" /* yacc.c:1646  */
4735 > #line 1722 "conf_parser.y" /* yacc.c:1646  */
4736      {
4737    if (conf_parser_ctx.pass != 2)
4738      break;
# Line 4744 | Line 4745 | yyreduce:
4745    else
4746      ilog(LOG_TYPE_IRCD, "Spoof either is too long or contains invalid characters. Ignoring it.");
4747   }
4748 < #line 4748 "conf_parser.c" /* yacc.c:1646  */
4748 > #line 4749 "conf_parser.c" /* yacc.c:1646  */
4749      break;
4750  
4751    case 332:
4752 < #line 1735 "conf_parser.y" /* yacc.c:1646  */
4752 > #line 1736 "conf_parser.y" /* yacc.c:1646  */
4753      {
4754    if (conf_parser_ctx.pass != 2)
4755      break;
# Line 4756 | Line 4757 | yyreduce:
4757    strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
4758    block_state.flags.value |= CONF_FLAGS_REDIR;
4759   }
4760 < #line 4760 "conf_parser.c" /* yacc.c:1646  */
4760 > #line 4761 "conf_parser.c" /* yacc.c:1646  */
4761      break;
4762  
4763    case 333:
4764 < #line 1744 "conf_parser.y" /* yacc.c:1646  */
4764 > #line 1745 "conf_parser.y" /* yacc.c:1646  */
4765      {
4766    if (conf_parser_ctx.pass != 2)
4767      break;
# Line 4768 | Line 4769 | yyreduce:
4769    block_state.flags.value |= CONF_FLAGS_REDIR;
4770    block_state.port.value = (yyvsp[-1].number);
4771   }
4772 < #line 4772 "conf_parser.c" /* yacc.c:1646  */
4772 > #line 4773 "conf_parser.c" /* yacc.c:1646  */
4773      break;
4774  
4775    case 334:
4776 < #line 1757 "conf_parser.y" /* yacc.c:1646  */
4776 > #line 1758 "conf_parser.y" /* yacc.c:1646  */
4777      {
4778    if (conf_parser_ctx.pass != 2)
4779      break;
# Line 4780 | Line 4781 | yyreduce:
4781    reset_block_state();
4782    strlcpy(block_state.rpass.buf, CONF_NOREASON, sizeof(block_state.rpass.buf));
4783   }
4784 < #line 4784 "conf_parser.c" /* yacc.c:1646  */
4784 > #line 4785 "conf_parser.c" /* yacc.c:1646  */
4785      break;
4786  
4787    case 335:
4788 < #line 1764 "conf_parser.y" /* yacc.c:1646  */
4788 > #line 1765 "conf_parser.y" /* yacc.c:1646  */
4789      {
4790    if (conf_parser_ctx.pass != 2)
4791      break;
4792  
4793    resv_make(block_state.name.buf, block_state.rpass.buf, &block_state.mask.list);
4794   }
4795 < #line 4795 "conf_parser.c" /* yacc.c:1646  */
4795 > #line 4796 "conf_parser.c" /* yacc.c:1646  */
4796      break;
4797  
4798    case 342:
4799 < #line 1775 "conf_parser.y" /* yacc.c:1646  */
4799 > #line 1776 "conf_parser.y" /* yacc.c:1646  */
4800      {
4801    if (conf_parser_ctx.pass == 2)
4802      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
4803   }
4804 < #line 4804 "conf_parser.c" /* yacc.c:1646  */
4804 > #line 4805 "conf_parser.c" /* yacc.c:1646  */
4805      break;
4806  
4807    case 343:
4808 < #line 1781 "conf_parser.y" /* yacc.c:1646  */
4808 > #line 1782 "conf_parser.y" /* yacc.c:1646  */
4809      {
4810    if (conf_parser_ctx.pass == 2)
4811      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
4812   }
4813 < #line 4813 "conf_parser.c" /* yacc.c:1646  */
4813 > #line 4814 "conf_parser.c" /* yacc.c:1646  */
4814      break;
4815  
4816    case 344:
4817 < #line 1787 "conf_parser.y" /* yacc.c:1646  */
4817 > #line 1788 "conf_parser.y" /* yacc.c:1646  */
4818      {
4819    if (conf_parser_ctx.pass == 2)
4820      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
4821   }
4822 < #line 4822 "conf_parser.c" /* yacc.c:1646  */
4822 > #line 4823 "conf_parser.c" /* yacc.c:1646  */
4823      break;
4824  
4825    case 350:
4826 < #line 1802 "conf_parser.y" /* yacc.c:1646  */
4826 > #line 1803 "conf_parser.y" /* yacc.c:1646  */
4827      {
4828    if (conf_parser_ctx.pass != 2)
4829      break;
# Line 4833 | Line 4834 | yyreduce:
4834      service->name = xstrdup(yylval.string);
4835    }
4836   }
4837 < #line 4837 "conf_parser.c" /* yacc.c:1646  */
4837 > #line 4838 "conf_parser.c" /* yacc.c:1646  */
4838      break;
4839  
4840    case 351:
4841 < #line 1818 "conf_parser.y" /* yacc.c:1646  */
4841 > #line 1819 "conf_parser.y" /* yacc.c:1646  */
4842      {
4843    if (conf_parser_ctx.pass != 2)
4844      break;
# Line 4849 | Line 4850 | yyreduce:
4850    strlcpy(block_state.host.buf, "*", sizeof(block_state.host.buf));
4851    block_state.flags.value = SHARED_ALL;
4852   }
4853 < #line 4853 "conf_parser.c" /* yacc.c:1646  */
4853 > #line 4854 "conf_parser.c" /* yacc.c:1646  */
4854      break;
4855  
4856    case 352:
4857 < #line 1829 "conf_parser.y" /* yacc.c:1646  */
4857 > #line 1830 "conf_parser.y" /* yacc.c:1646  */
4858      {
4859    if (conf_parser_ctx.pass != 2)
4860      break;
# Line 4864 | Line 4865 | yyreduce:
4865    shared->user = xstrdup(block_state.user.buf);
4866    shared->host = xstrdup(block_state.host.buf);
4867   }
4868 < #line 4868 "conf_parser.c" /* yacc.c:1646  */
4868 > #line 4869 "conf_parser.c" /* yacc.c:1646  */
4869      break;
4870  
4871    case 359:
4872 < #line 1844 "conf_parser.y" /* yacc.c:1646  */
4872 > #line 1845 "conf_parser.y" /* yacc.c:1646  */
4873      {
4874    if (conf_parser_ctx.pass == 2)
4875      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
4876   }
4877 < #line 4877 "conf_parser.c" /* yacc.c:1646  */
4877 > #line 4878 "conf_parser.c" /* yacc.c:1646  */
4878      break;
4879  
4880    case 360:
4881 < #line 1850 "conf_parser.y" /* yacc.c:1646  */
4881 > #line 1851 "conf_parser.y" /* yacc.c:1646  */
4882      {
4883    if (conf_parser_ctx.pass == 2)
4884    {
# Line 4895 | Line 4896 | yyreduce:
4896      split_nuh(&nuh);
4897    }
4898   }
4899 < #line 4899 "conf_parser.c" /* yacc.c:1646  */
4899 > #line 4900 "conf_parser.c" /* yacc.c:1646  */
4900      break;
4901  
4902    case 361:
4903 < #line 1869 "conf_parser.y" /* yacc.c:1646  */
4903 > #line 1870 "conf_parser.y" /* yacc.c:1646  */
4904      {
4905    if (conf_parser_ctx.pass == 2)
4906      block_state.flags.value = 0;
4907   }
4908 < #line 4908 "conf_parser.c" /* yacc.c:1646  */
4908 > #line 4909 "conf_parser.c" /* yacc.c:1646  */
4909      break;
4910  
4911    case 365:
4912 < #line 1876 "conf_parser.y" /* yacc.c:1646  */
4912 > #line 1877 "conf_parser.y" /* yacc.c:1646  */
4913      {
4914    if (conf_parser_ctx.pass == 2)
4915      block_state.flags.value |= SHARED_KLINE;
4916   }
4917 < #line 4917 "conf_parser.c" /* yacc.c:1646  */
4917 > #line 4918 "conf_parser.c" /* yacc.c:1646  */
4918      break;
4919  
4920    case 366:
4921 < #line 1880 "conf_parser.y" /* yacc.c:1646  */
4921 > #line 1881 "conf_parser.y" /* yacc.c:1646  */
4922      {
4923    if (conf_parser_ctx.pass == 2)
4924      block_state.flags.value |= SHARED_UNKLINE;
4925   }
4926 < #line 4926 "conf_parser.c" /* yacc.c:1646  */
4926 > #line 4927 "conf_parser.c" /* yacc.c:1646  */
4927      break;
4928  
4929    case 367:
4930 < #line 1884 "conf_parser.y" /* yacc.c:1646  */
4930 > #line 1885 "conf_parser.y" /* yacc.c:1646  */
4931      {
4932    if (conf_parser_ctx.pass == 2)
4933      block_state.flags.value |= SHARED_DLINE;
4934   }
4935 < #line 4935 "conf_parser.c" /* yacc.c:1646  */
4935 > #line 4936 "conf_parser.c" /* yacc.c:1646  */
4936      break;
4937  
4938    case 368:
4939 < #line 1888 "conf_parser.y" /* yacc.c:1646  */
4939 > #line 1889 "conf_parser.y" /* yacc.c:1646  */
4940      {
4941    if (conf_parser_ctx.pass == 2)
4942      block_state.flags.value |= SHARED_UNDLINE;
4943   }
4944 < #line 4944 "conf_parser.c" /* yacc.c:1646  */
4944 > #line 4945 "conf_parser.c" /* yacc.c:1646  */
4945      break;
4946  
4947    case 369:
4948 < #line 1892 "conf_parser.y" /* yacc.c:1646  */
4948 > #line 1893 "conf_parser.y" /* yacc.c:1646  */
4949      {
4950    if (conf_parser_ctx.pass == 2)
4951      block_state.flags.value |= SHARED_XLINE;
4952   }
4953 < #line 4953 "conf_parser.c" /* yacc.c:1646  */
4953 > #line 4954 "conf_parser.c" /* yacc.c:1646  */
4954      break;
4955  
4956    case 370:
4957 < #line 1896 "conf_parser.y" /* yacc.c:1646  */
4957 > #line 1897 "conf_parser.y" /* yacc.c:1646  */
4958      {
4959    if (conf_parser_ctx.pass == 2)
4960      block_state.flags.value |= SHARED_UNXLINE;
4961   }
4962 < #line 4962 "conf_parser.c" /* yacc.c:1646  */
4962 > #line 4963 "conf_parser.c" /* yacc.c:1646  */
4963      break;
4964  
4965    case 371:
4966 < #line 1900 "conf_parser.y" /* yacc.c:1646  */
4966 > #line 1901 "conf_parser.y" /* yacc.c:1646  */
4967      {
4968    if (conf_parser_ctx.pass == 2)
4969      block_state.flags.value |= SHARED_RESV;
4970   }
4971 < #line 4971 "conf_parser.c" /* yacc.c:1646  */
4971 > #line 4972 "conf_parser.c" /* yacc.c:1646  */
4972      break;
4973  
4974    case 372:
4975 < #line 1904 "conf_parser.y" /* yacc.c:1646  */
4975 > #line 1905 "conf_parser.y" /* yacc.c:1646  */
4976      {
4977    if (conf_parser_ctx.pass == 2)
4978      block_state.flags.value |= SHARED_UNRESV;
4979   }
4980 < #line 4980 "conf_parser.c" /* yacc.c:1646  */
4980 > #line 4981 "conf_parser.c" /* yacc.c:1646  */
4981      break;
4982  
4983    case 373:
4984 < #line 1908 "conf_parser.y" /* yacc.c:1646  */
4984 > #line 1909 "conf_parser.y" /* yacc.c:1646  */
4985      {
4986    if (conf_parser_ctx.pass == 2)
4987      block_state.flags.value |= SHARED_LOCOPS;
4988   }
4989 < #line 4989 "conf_parser.c" /* yacc.c:1646  */
4989 > #line 4990 "conf_parser.c" /* yacc.c:1646  */
4990      break;
4991  
4992    case 374:
4993 < #line 1912 "conf_parser.y" /* yacc.c:1646  */
4993 > #line 1913 "conf_parser.y" /* yacc.c:1646  */
4994      {
4995    if (conf_parser_ctx.pass == 2)
4996      block_state.flags.value = SHARED_ALL;
4997   }
4998 < #line 4998 "conf_parser.c" /* yacc.c:1646  */
4998 > #line 4999 "conf_parser.c" /* yacc.c:1646  */
4999      break;
5000  
5001    case 375:
5002 < #line 1922 "conf_parser.y" /* yacc.c:1646  */
5002 > #line 1923 "conf_parser.y" /* yacc.c:1646  */
5003      {
5004    if (conf_parser_ctx.pass != 2)
5005      break;
# Line 5008 | Line 5009 | yyreduce:
5009    strlcpy(block_state.name.buf, "*", sizeof(block_state.name.buf));
5010    block_state.flags.value = CLUSTER_ALL;
5011   }
5012 < #line 5012 "conf_parser.c" /* yacc.c:1646  */
5012 > #line 5013 "conf_parser.c" /* yacc.c:1646  */
5013      break;
5014  
5015    case 376:
5016 < #line 1931 "conf_parser.y" /* yacc.c:1646  */
5016 > #line 1932 "conf_parser.y" /* yacc.c:1646  */
5017      {
5018    if (conf_parser_ctx.pass != 2)
5019      break;
# Line 5021 | Line 5022 | yyreduce:
5022    cluster->type = block_state.flags.value;
5023    cluster->server = xstrdup(block_state.name.buf);
5024   }
5025 < #line 5025 "conf_parser.c" /* yacc.c:1646  */
5025 > #line 5026 "conf_parser.c" /* yacc.c:1646  */
5026      break;
5027  
5028    case 382:
5029 < #line 1944 "conf_parser.y" /* yacc.c:1646  */
5029 > #line 1945 "conf_parser.y" /* yacc.c:1646  */
5030      {
5031    if (conf_parser_ctx.pass == 2)
5032      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5033   }
5034 < #line 5034 "conf_parser.c" /* yacc.c:1646  */
5034 > #line 5035 "conf_parser.c" /* yacc.c:1646  */
5035      break;
5036  
5037    case 383:
5038 < #line 1950 "conf_parser.y" /* yacc.c:1646  */
5038 > #line 1951 "conf_parser.y" /* yacc.c:1646  */
5039      {
5040    if (conf_parser_ctx.pass == 2)
5041      block_state.flags.value = 0;
5042   }
5043 < #line 5043 "conf_parser.c" /* yacc.c:1646  */
5043 > #line 5044 "conf_parser.c" /* yacc.c:1646  */
5044      break;
5045  
5046    case 387:
5047 < #line 1957 "conf_parser.y" /* yacc.c:1646  */
5047 > #line 1958 "conf_parser.y" /* yacc.c:1646  */
5048      {
5049    if (conf_parser_ctx.pass == 2)
5050      block_state.flags.value |= CLUSTER_KLINE;
5051   }
5052 < #line 5052 "conf_parser.c" /* yacc.c:1646  */
5052 > #line 5053 "conf_parser.c" /* yacc.c:1646  */
5053      break;
5054  
5055    case 388:
5056 < #line 1961 "conf_parser.y" /* yacc.c:1646  */
5056 > #line 1962 "conf_parser.y" /* yacc.c:1646  */
5057      {
5058    if (conf_parser_ctx.pass == 2)
5059      block_state.flags.value |= CLUSTER_UNKLINE;
5060   }
5061 < #line 5061 "conf_parser.c" /* yacc.c:1646  */
5061 > #line 5062 "conf_parser.c" /* yacc.c:1646  */
5062      break;
5063  
5064    case 389:
5065 < #line 1965 "conf_parser.y" /* yacc.c:1646  */
5065 > #line 1966 "conf_parser.y" /* yacc.c:1646  */
5066      {
5067    if (conf_parser_ctx.pass == 2)
5068      block_state.flags.value |= CLUSTER_DLINE;
5069   }
5070 < #line 5070 "conf_parser.c" /* yacc.c:1646  */
5070 > #line 5071 "conf_parser.c" /* yacc.c:1646  */
5071      break;
5072  
5073    case 390:
5074 < #line 1969 "conf_parser.y" /* yacc.c:1646  */
5074 > #line 1970 "conf_parser.y" /* yacc.c:1646  */
5075      {
5076    if (conf_parser_ctx.pass == 2)
5077      block_state.flags.value |= CLUSTER_UNDLINE;
5078   }
5079 < #line 5079 "conf_parser.c" /* yacc.c:1646  */
5079 > #line 5080 "conf_parser.c" /* yacc.c:1646  */
5080      break;
5081  
5082    case 391:
5083 < #line 1973 "conf_parser.y" /* yacc.c:1646  */
5083 > #line 1974 "conf_parser.y" /* yacc.c:1646  */
5084      {
5085    if (conf_parser_ctx.pass == 2)
5086      block_state.flags.value |= CLUSTER_XLINE;
5087   }
5088 < #line 5088 "conf_parser.c" /* yacc.c:1646  */
5088 > #line 5089 "conf_parser.c" /* yacc.c:1646  */
5089      break;
5090  
5091    case 392:
5092 < #line 1977 "conf_parser.y" /* yacc.c:1646  */
5092 > #line 1978 "conf_parser.y" /* yacc.c:1646  */
5093      {
5094    if (conf_parser_ctx.pass == 2)
5095      block_state.flags.value |= CLUSTER_UNXLINE;
5096   }
5097 < #line 5097 "conf_parser.c" /* yacc.c:1646  */
5097 > #line 5098 "conf_parser.c" /* yacc.c:1646  */
5098      break;
5099  
5100    case 393:
5101 < #line 1981 "conf_parser.y" /* yacc.c:1646  */
5101 > #line 1982 "conf_parser.y" /* yacc.c:1646  */
5102      {
5103    if (conf_parser_ctx.pass == 2)
5104      block_state.flags.value |= CLUSTER_RESV;
5105   }
5106 < #line 5106 "conf_parser.c" /* yacc.c:1646  */
5106 > #line 5107 "conf_parser.c" /* yacc.c:1646  */
5107      break;
5108  
5109    case 394:
5110 < #line 1985 "conf_parser.y" /* yacc.c:1646  */
5110 > #line 1986 "conf_parser.y" /* yacc.c:1646  */
5111      {
5112    if (conf_parser_ctx.pass == 2)
5113      block_state.flags.value |= CLUSTER_UNRESV;
5114   }
5115 < #line 5115 "conf_parser.c" /* yacc.c:1646  */
5115 > #line 5116 "conf_parser.c" /* yacc.c:1646  */
5116      break;
5117  
5118    case 395:
5119 < #line 1989 "conf_parser.y" /* yacc.c:1646  */
5119 > #line 1990 "conf_parser.y" /* yacc.c:1646  */
5120      {
5121    if (conf_parser_ctx.pass == 2)
5122      block_state.flags.value |= CLUSTER_LOCOPS;
5123   }
5124 < #line 5124 "conf_parser.c" /* yacc.c:1646  */
5124 > #line 5125 "conf_parser.c" /* yacc.c:1646  */
5125      break;
5126  
5127    case 396:
5128 < #line 1993 "conf_parser.y" /* yacc.c:1646  */
5128 > #line 1994 "conf_parser.y" /* yacc.c:1646  */
5129      {
5130    if (conf_parser_ctx.pass == 2)
5131      block_state.flags.value = CLUSTER_ALL;
5132   }
5133 < #line 5133 "conf_parser.c" /* yacc.c:1646  */
5133 > #line 5134 "conf_parser.c" /* yacc.c:1646  */
5134      break;
5135  
5136    case 397:
5137 < #line 2003 "conf_parser.y" /* yacc.c:1646  */
5137 > #line 2004 "conf_parser.y" /* yacc.c:1646  */
5138      {
5139  
5140    if (conf_parser_ctx.pass != 2)
# Line 5143 | Line 5144 | yyreduce:
5144    block_state.aftype.value = AF_INET;
5145    block_state.port.value = PORTNUM;
5146   }
5147 < #line 5147 "conf_parser.c" /* yacc.c:1646  */
5147 > #line 5148 "conf_parser.c" /* yacc.c:1646  */
5148      break;
5149  
5150    case 398:
5151 < #line 2012 "conf_parser.y" /* yacc.c:1646  */
5151 > #line 2013 "conf_parser.y" /* yacc.c:1646  */
5152      {
5153    struct MaskItem *conf = NULL;
5154    struct addrinfo hints, *res;
# Line 5209 | Line 5210 | yyreduce:
5210    conf_add_class_to_conf(conf, block_state.class.buf);
5211    lookup_confhost(conf);
5212   }
5213 < #line 5213 "conf_parser.c" /* yacc.c:1646  */
5213 > #line 5214 "conf_parser.c" /* yacc.c:1646  */
5214      break;
5215  
5216    case 416:
5217 < #line 2092 "conf_parser.y" /* yacc.c:1646  */
5217 > #line 2093 "conf_parser.y" /* yacc.c:1646  */
5218      {
5219    if (conf_parser_ctx.pass == 2)
5220      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5221   }
5222 < #line 5222 "conf_parser.c" /* yacc.c:1646  */
5222 > #line 5223 "conf_parser.c" /* yacc.c:1646  */
5223      break;
5224  
5225    case 417:
5226 < #line 2098 "conf_parser.y" /* yacc.c:1646  */
5226 > #line 2099 "conf_parser.y" /* yacc.c:1646  */
5227      {
5228    if (conf_parser_ctx.pass == 2)
5229      strlcpy(block_state.host.buf, yylval.string, sizeof(block_state.host.buf));
5230   }
5231 < #line 5231 "conf_parser.c" /* yacc.c:1646  */
5231 > #line 5232 "conf_parser.c" /* yacc.c:1646  */
5232      break;
5233  
5234    case 418:
5235 < #line 2104 "conf_parser.y" /* yacc.c:1646  */
5235 > #line 2105 "conf_parser.y" /* yacc.c:1646  */
5236      {
5237    if (conf_parser_ctx.pass == 2)
5238      strlcpy(block_state.bind.buf, yylval.string, sizeof(block_state.bind.buf));
5239   }
5240 < #line 5240 "conf_parser.c" /* yacc.c:1646  */
5240 > #line 5241 "conf_parser.c" /* yacc.c:1646  */
5241      break;
5242  
5243    case 419:
5244 < #line 2110 "conf_parser.y" /* yacc.c:1646  */
5244 > #line 2111 "conf_parser.y" /* yacc.c:1646  */
5245      {
5246    if (conf_parser_ctx.pass != 2)
5247      break;
# Line 5252 | Line 5253 | yyreduce:
5253    else
5254      strlcpy(block_state.spass.buf, yylval.string, sizeof(block_state.spass.buf));
5255   }
5256 < #line 5256 "conf_parser.c" /* yacc.c:1646  */
5256 > #line 5257 "conf_parser.c" /* yacc.c:1646  */
5257      break;
5258  
5259    case 420:
5260 < #line 2123 "conf_parser.y" /* yacc.c:1646  */
5260 > #line 2124 "conf_parser.y" /* yacc.c:1646  */
5261      {
5262    if (conf_parser_ctx.pass != 2)
5263      break;
# Line 5268 | Line 5269 | yyreduce:
5269    else
5270      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5271   }
5272 < #line 5272 "conf_parser.c" /* yacc.c:1646  */
5272 > #line 5273 "conf_parser.c" /* yacc.c:1646  */
5273      break;
5274  
5275    case 421:
5276 < #line 2136 "conf_parser.y" /* yacc.c:1646  */
5276 > #line 2137 "conf_parser.y" /* yacc.c:1646  */
5277      {
5278    if (conf_parser_ctx.pass == 2)
5279      strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf));
5280   }
5281 < #line 5281 "conf_parser.c" /* yacc.c:1646  */
5281 > #line 5282 "conf_parser.c" /* yacc.c:1646  */
5282      break;
5283  
5284    case 422:
5285 < #line 2142 "conf_parser.y" /* yacc.c:1646  */
5285 > #line 2143 "conf_parser.y" /* yacc.c:1646  */
5286      {
5287    if (conf_parser_ctx.pass == 2)
5288      block_state.port.value = (yyvsp[-1].number);
5289   }
5290 < #line 5290 "conf_parser.c" /* yacc.c:1646  */
5290 > #line 5291 "conf_parser.c" /* yacc.c:1646  */
5291      break;
5292  
5293    case 423:
5294 < #line 2148 "conf_parser.y" /* yacc.c:1646  */
5294 > #line 2149 "conf_parser.y" /* yacc.c:1646  */
5295      {
5296    if (conf_parser_ctx.pass == 2)
5297      block_state.aftype.value = AF_INET;
5298   }
5299 < #line 5299 "conf_parser.c" /* yacc.c:1646  */
5299 > #line 5300 "conf_parser.c" /* yacc.c:1646  */
5300      break;
5301  
5302    case 424:
5303 < #line 2152 "conf_parser.y" /* yacc.c:1646  */
5303 > #line 2153 "conf_parser.y" /* yacc.c:1646  */
5304      {
5305    if (conf_parser_ctx.pass == 2)
5306      block_state.aftype.value = AF_INET6;
5307   }
5308 < #line 5308 "conf_parser.c" /* yacc.c:1646  */
5308 > #line 5309 "conf_parser.c" /* yacc.c:1646  */
5309      break;
5310  
5311    case 425:
5312 < #line 2158 "conf_parser.y" /* yacc.c:1646  */
5312 > #line 2159 "conf_parser.y" /* yacc.c:1646  */
5313      {
5314    block_state.flags.value &= CONF_FLAGS_ENCRYPTED;
5315   }
5316 < #line 5316 "conf_parser.c" /* yacc.c:1646  */
5316 > #line 5317 "conf_parser.c" /* yacc.c:1646  */
5317      break;
5318  
5319    case 429:
5320 < #line 2164 "conf_parser.y" /* yacc.c:1646  */
5320 > #line 2165 "conf_parser.y" /* yacc.c:1646  */
5321      {
5322    if (conf_parser_ctx.pass == 2)
5323      block_state.flags.value |= CONF_FLAGS_ALLOW_AUTO_CONN;
5324   }
5325 < #line 5325 "conf_parser.c" /* yacc.c:1646  */
5325 > #line 5326 "conf_parser.c" /* yacc.c:1646  */
5326      break;
5327  
5328    case 430:
5329 < #line 2168 "conf_parser.y" /* yacc.c:1646  */
5329 > #line 2169 "conf_parser.y" /* yacc.c:1646  */
5330      {
5331    if (conf_parser_ctx.pass == 2)
5332      block_state.flags.value |= CONF_FLAGS_SSL;
5333   }
5334 < #line 5334 "conf_parser.c" /* yacc.c:1646  */
5334 > #line 5335 "conf_parser.c" /* yacc.c:1646  */
5335      break;
5336  
5337    case 431:
5338 < #line 2174 "conf_parser.y" /* yacc.c:1646  */
5338 > #line 2175 "conf_parser.y" /* yacc.c:1646  */
5339      {
5340    if (conf_parser_ctx.pass == 2)
5341    {
# Line 5344 | Line 5345 | yyreduce:
5345        block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED;
5346    }
5347   }
5348 < #line 5348 "conf_parser.c" /* yacc.c:1646  */
5348 > #line 5349 "conf_parser.c" /* yacc.c:1646  */
5349      break;
5350  
5351    case 432:
5352 < #line 2185 "conf_parser.y" /* yacc.c:1646  */
5352 > #line 2186 "conf_parser.y" /* yacc.c:1646  */
5353      {
5354    if (conf_parser_ctx.pass == 2)
5355      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.hub.list);
5356   }
5357 < #line 5357 "conf_parser.c" /* yacc.c:1646  */
5357 > #line 5358 "conf_parser.c" /* yacc.c:1646  */
5358      break;
5359  
5360    case 433:
5361 < #line 2191 "conf_parser.y" /* yacc.c:1646  */
5361 > #line 2192 "conf_parser.y" /* yacc.c:1646  */
5362      {
5363    if (conf_parser_ctx.pass == 2)
5364      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.leaf.list);
5365   }
5366 < #line 5366 "conf_parser.c" /* yacc.c:1646  */
5366 > #line 5367 "conf_parser.c" /* yacc.c:1646  */
5367      break;
5368  
5369    case 434:
5370 < #line 2197 "conf_parser.y" /* yacc.c:1646  */
5370 > #line 2198 "conf_parser.y" /* yacc.c:1646  */
5371      {
5372    if (conf_parser_ctx.pass == 2)
5373      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
5374   }
5375 < #line 5375 "conf_parser.c" /* yacc.c:1646  */
5375 > #line 5376 "conf_parser.c" /* yacc.c:1646  */
5376      break;
5377  
5378    case 435:
5379 < #line 2203 "conf_parser.y" /* yacc.c:1646  */
5379 > #line 2204 "conf_parser.y" /* yacc.c:1646  */
5380      {
5381   #ifdef HAVE_TLS
5382    if (conf_parser_ctx.pass == 2)
# Line 5385 | Line 5386 | yyreduce:
5386      conf_error_report("Ignoring connect::ciphers -- no TLS support");
5387   #endif
5388   }
5389 < #line 5389 "conf_parser.c" /* yacc.c:1646  */
5389 > #line 5390 "conf_parser.c" /* yacc.c:1646  */
5390      break;
5391  
5392    case 436:
5393 < #line 2218 "conf_parser.y" /* yacc.c:1646  */
5393 > #line 2219 "conf_parser.y" /* yacc.c:1646  */
5394      {
5395    if (conf_parser_ctx.pass == 2)
5396      reset_block_state();
5397   }
5398 < #line 5398 "conf_parser.c" /* yacc.c:1646  */
5398 > #line 5399 "conf_parser.c" /* yacc.c:1646  */
5399      break;
5400  
5401    case 437:
5402 < #line 2222 "conf_parser.y" /* yacc.c:1646  */
5402 > #line 2223 "conf_parser.y" /* yacc.c:1646  */
5403      {
5404    struct MaskItem *conf = NULL;
5405  
# Line 5419 | Line 5420 | yyreduce:
5420      conf->reason = xstrdup(CONF_NOREASON);
5421    add_conf_by_address(CONF_KLINE, conf);
5422   }
5423 < #line 5423 "conf_parser.c" /* yacc.c:1646  */
5423 > #line 5424 "conf_parser.c" /* yacc.c:1646  */
5424      break;
5425  
5426    case 443:
5427 < #line 2247 "conf_parser.y" /* yacc.c:1646  */
5427 > #line 2248 "conf_parser.y" /* yacc.c:1646  */
5428      {
5429  
5430    if (conf_parser_ctx.pass == 2)
# Line 5442 | Line 5443 | yyreduce:
5443      split_nuh(&nuh);
5444    }
5445   }
5446 < #line 5446 "conf_parser.c" /* yacc.c:1646  */
5446 > #line 5447 "conf_parser.c" /* yacc.c:1646  */
5447      break;
5448  
5449    case 444:
5450 < #line 2267 "conf_parser.y" /* yacc.c:1646  */
5450 > #line 2268 "conf_parser.y" /* yacc.c:1646  */
5451      {
5452    if (conf_parser_ctx.pass == 2)
5453      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5454   }
5455 < #line 5455 "conf_parser.c" /* yacc.c:1646  */
5455 > #line 5456 "conf_parser.c" /* yacc.c:1646  */
5456      break;
5457  
5458    case 445:
5459 < #line 2277 "conf_parser.y" /* yacc.c:1646  */
5459 > #line 2278 "conf_parser.y" /* yacc.c:1646  */
5460      {
5461    if (conf_parser_ctx.pass == 2)
5462      reset_block_state();
5463   }
5464 < #line 5464 "conf_parser.c" /* yacc.c:1646  */
5464 > #line 5465 "conf_parser.c" /* yacc.c:1646  */
5465      break;
5466  
5467    case 446:
5468 < #line 2281 "conf_parser.y" /* yacc.c:1646  */
5468 > #line 2282 "conf_parser.y" /* yacc.c:1646  */
5469      {
5470    struct MaskItem *conf = NULL;
5471  
# Line 5486 | Line 5487 | yyreduce:
5487      add_conf_by_address(CONF_DLINE, conf);
5488    }
5489   }
5490 < #line 5490 "conf_parser.c" /* yacc.c:1646  */
5490 > #line 5491 "conf_parser.c" /* yacc.c:1646  */
5491      break;
5492  
5493    case 452:
5494 < #line 2307 "conf_parser.y" /* yacc.c:1646  */
5494 > #line 2308 "conf_parser.y" /* yacc.c:1646  */
5495      {
5496    if (conf_parser_ctx.pass == 2)
5497      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
5498   }
5499 < #line 5499 "conf_parser.c" /* yacc.c:1646  */
5499 > #line 5500 "conf_parser.c" /* yacc.c:1646  */
5500      break;
5501  
5502    case 453:
5503 < #line 2313 "conf_parser.y" /* yacc.c:1646  */
5503 > #line 2314 "conf_parser.y" /* yacc.c:1646  */
5504      {
5505    if (conf_parser_ctx.pass == 2)
5506      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5507   }
5508 < #line 5508 "conf_parser.c" /* yacc.c:1646  */
5508 > #line 5509 "conf_parser.c" /* yacc.c:1646  */
5509      break;
5510  
5511    case 459:
5512 < #line 2328 "conf_parser.y" /* yacc.c:1646  */
5512 > #line 2329 "conf_parser.y" /* yacc.c:1646  */
5513      {
5514    if (conf_parser_ctx.pass == 2)
5515    {
# Line 5521 | Line 5522 | yyreduce:
5522      }
5523    }
5524   }
5525 < #line 5525 "conf_parser.c" /* yacc.c:1646  */
5525 > #line 5526 "conf_parser.c" /* yacc.c:1646  */
5526      break;
5527  
5528    case 460:
5529 < #line 2345 "conf_parser.y" /* yacc.c:1646  */
5529 > #line 2346 "conf_parser.y" /* yacc.c:1646  */
5530      {
5531    if (conf_parser_ctx.pass == 2)
5532      reset_block_state();
5533   }
5534 < #line 5534 "conf_parser.c" /* yacc.c:1646  */
5534 > #line 5535 "conf_parser.c" /* yacc.c:1646  */
5535      break;
5536  
5537    case 461:
5538 < #line 2349 "conf_parser.y" /* yacc.c:1646  */
5538 > #line 2350 "conf_parser.y" /* yacc.c:1646  */
5539      {
5540    if (conf_parser_ctx.pass != 2)
5541      break;
# Line 5550 | Line 5551 | yyreduce:
5551    else
5552      gecos->reason = xstrdup(CONF_NOREASON);
5553   }
5554 < #line 5554 "conf_parser.c" /* yacc.c:1646  */
5554 > #line 5555 "conf_parser.c" /* yacc.c:1646  */
5555      break;
5556  
5557    case 467:
5558 < #line 2369 "conf_parser.y" /* yacc.c:1646  */
5558 > #line 2370 "conf_parser.y" /* yacc.c:1646  */
5559      {
5560    if (conf_parser_ctx.pass == 2)
5561      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5562   }
5563 < #line 5563 "conf_parser.c" /* yacc.c:1646  */
5563 > #line 5564 "conf_parser.c" /* yacc.c:1646  */
5564      break;
5565  
5566    case 468:
5567 < #line 2375 "conf_parser.y" /* yacc.c:1646  */
5567 > #line 2376 "conf_parser.y" /* yacc.c:1646  */
5568      {
5569    if (conf_parser_ctx.pass == 2)
5570      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5571   }
5572 < #line 5572 "conf_parser.c" /* yacc.c:1646  */
5572 > #line 5573 "conf_parser.c" /* yacc.c:1646  */
5573      break;
5574  
5575    case 520:
5576 < #line 2438 "conf_parser.y" /* yacc.c:1646  */
5576 > #line 2439 "conf_parser.y" /* yacc.c:1646  */
5577      {
5578    ConfigGeneral.away_count = (yyvsp[-1].number);
5579   }
5580 < #line 5580 "conf_parser.c" /* yacc.c:1646  */
5580 > #line 5581 "conf_parser.c" /* yacc.c:1646  */
5581      break;
5582  
5583    case 521:
5584 < #line 2443 "conf_parser.y" /* yacc.c:1646  */
5584 > #line 2444 "conf_parser.y" /* yacc.c:1646  */
5585      {
5586    ConfigGeneral.away_time = (yyvsp[-1].number);
5587   }
5588 < #line 5588 "conf_parser.c" /* yacc.c:1646  */
5588 > #line 5589 "conf_parser.c" /* yacc.c:1646  */
5589      break;
5590  
5591    case 522:
5592 < #line 2448 "conf_parser.y" /* yacc.c:1646  */
5592 > #line 2449 "conf_parser.y" /* yacc.c:1646  */
5593      {
5594    ConfigGeneral.max_watch = (yyvsp[-1].number);
5595   }
5596 < #line 5596 "conf_parser.c" /* yacc.c:1646  */
5596 > #line 5597 "conf_parser.c" /* yacc.c:1646  */
5597      break;
5598  
5599    case 523:
5600 < #line 2453 "conf_parser.y" /* yacc.c:1646  */
5600 > #line 2454 "conf_parser.y" /* yacc.c:1646  */
5601      {
5602    ConfigGeneral.whowas_history_length = (yyvsp[-1].number);
5603   }
5604 < #line 5604 "conf_parser.c" /* yacc.c:1646  */
5604 > #line 5605 "conf_parser.c" /* yacc.c:1646  */
5605      break;
5606  
5607    case 524:
5608 < #line 2458 "conf_parser.y" /* yacc.c:1646  */
5608 > #line 2459 "conf_parser.y" /* yacc.c:1646  */
5609      {
5610    if (conf_parser_ctx.pass == 2)
5611      ConfigGeneral.cycle_on_host_change = yylval.number;
5612   }
5613 < #line 5613 "conf_parser.c" /* yacc.c:1646  */
5613 > #line 5614 "conf_parser.c" /* yacc.c:1646  */
5614      break;
5615  
5616    case 525:
5617 < #line 2464 "conf_parser.y" /* yacc.c:1646  */
5617 > #line 2465 "conf_parser.y" /* yacc.c:1646  */
5618      {
5619    ConfigGeneral.dline_min_cidr = (yyvsp[-1].number);
5620   }
5621 < #line 5621 "conf_parser.c" /* yacc.c:1646  */
5621 > #line 5622 "conf_parser.c" /* yacc.c:1646  */
5622      break;
5623  
5624    case 526:
5625 < #line 2469 "conf_parser.y" /* yacc.c:1646  */
5625 > #line 2470 "conf_parser.y" /* yacc.c:1646  */
5626      {
5627    ConfigGeneral.dline_min_cidr6 = (yyvsp[-1].number);
5628   }
5629 < #line 5629 "conf_parser.c" /* yacc.c:1646  */
5629 > #line 5630 "conf_parser.c" /* yacc.c:1646  */
5630      break;
5631  
5632    case 527:
5633 < #line 2474 "conf_parser.y" /* yacc.c:1646  */
5633 > #line 2475 "conf_parser.y" /* yacc.c:1646  */
5634      {
5635    ConfigGeneral.kline_min_cidr = (yyvsp[-1].number);
5636   }
5637 < #line 5637 "conf_parser.c" /* yacc.c:1646  */
5637 > #line 5638 "conf_parser.c" /* yacc.c:1646  */
5638      break;
5639  
5640    case 528:
5641 < #line 2479 "conf_parser.y" /* yacc.c:1646  */
5641 > #line 2480 "conf_parser.y" /* yacc.c:1646  */
5642      {
5643    ConfigGeneral.kline_min_cidr6 = (yyvsp[-1].number);
5644   }
5645 < #line 5645 "conf_parser.c" /* yacc.c:1646  */
5645 > #line 5646 "conf_parser.c" /* yacc.c:1646  */
5646      break;
5647  
5648    case 529:
5649 < #line 2484 "conf_parser.y" /* yacc.c:1646  */
5649 > #line 2485 "conf_parser.y" /* yacc.c:1646  */
5650      {
5651    ConfigGeneral.tkline_expire_notices = yylval.number;
5652   }
5653 < #line 5653 "conf_parser.c" /* yacc.c:1646  */
5653 > #line 5654 "conf_parser.c" /* yacc.c:1646  */
5654      break;
5655  
5656    case 530:
5657 < #line 2489 "conf_parser.y" /* yacc.c:1646  */
5657 > #line 2490 "conf_parser.y" /* yacc.c:1646  */
5658      {
5659    ConfigGeneral.kill_chase_time_limit = (yyvsp[-1].number);
5660   }
5661 < #line 5661 "conf_parser.c" /* yacc.c:1646  */
5661 > #line 5662 "conf_parser.c" /* yacc.c:1646  */
5662      break;
5663  
5664    case 531:
5665 < #line 2494 "conf_parser.y" /* yacc.c:1646  */
5665 > #line 2495 "conf_parser.y" /* yacc.c:1646  */
5666      {
5667    ConfigGeneral.ignore_bogus_ts = yylval.number;
5668   }
5669 < #line 5669 "conf_parser.c" /* yacc.c:1646  */
5669 > #line 5670 "conf_parser.c" /* yacc.c:1646  */
5670      break;
5671  
5672    case 532:
5673 < #line 2499 "conf_parser.y" /* yacc.c:1646  */
5673 > #line 2500 "conf_parser.y" /* yacc.c:1646  */
5674      {
5675    ConfigGeneral.failed_oper_notice = yylval.number;
5676   }
5677 < #line 5677 "conf_parser.c" /* yacc.c:1646  */
5677 > #line 5678 "conf_parser.c" /* yacc.c:1646  */
5678      break;
5679  
5680    case 533:
5681 < #line 2504 "conf_parser.y" /* yacc.c:1646  */
5681 > #line 2505 "conf_parser.y" /* yacc.c:1646  */
5682      {
5683    ConfigGeneral.anti_nick_flood = yylval.number;
5684   }
5685 < #line 5685 "conf_parser.c" /* yacc.c:1646  */
5685 > #line 5686 "conf_parser.c" /* yacc.c:1646  */
5686      break;
5687  
5688    case 534:
5689 < #line 2509 "conf_parser.y" /* yacc.c:1646  */
5689 > #line 2510 "conf_parser.y" /* yacc.c:1646  */
5690      {
5691    ConfigGeneral.max_nick_time = (yyvsp[-1].number);
5692   }
5693 < #line 5693 "conf_parser.c" /* yacc.c:1646  */
5693 > #line 5694 "conf_parser.c" /* yacc.c:1646  */
5694      break;
5695  
5696    case 535:
5697 < #line 2514 "conf_parser.y" /* yacc.c:1646  */
5697 > #line 2515 "conf_parser.y" /* yacc.c:1646  */
5698      {
5699    ConfigGeneral.max_nick_changes = (yyvsp[-1].number);
5700   }
5701 < #line 5701 "conf_parser.c" /* yacc.c:1646  */
5701 > #line 5702 "conf_parser.c" /* yacc.c:1646  */
5702      break;
5703  
5704    case 536:
5705 < #line 2519 "conf_parser.y" /* yacc.c:1646  */
5705 > #line 2520 "conf_parser.y" /* yacc.c:1646  */
5706      {
5707    ConfigGeneral.max_accept = (yyvsp[-1].number);
5708   }
5709 < #line 5709 "conf_parser.c" /* yacc.c:1646  */
5709 > #line 5710 "conf_parser.c" /* yacc.c:1646  */
5710      break;
5711  
5712    case 537:
5713 < #line 2524 "conf_parser.y" /* yacc.c:1646  */
5713 > #line 2525 "conf_parser.y" /* yacc.c:1646  */
5714      {
5715    ConfigGeneral.anti_spam_exit_message_time = (yyvsp[-1].number);
5716   }
5717 < #line 5717 "conf_parser.c" /* yacc.c:1646  */
5717 > #line 5718 "conf_parser.c" /* yacc.c:1646  */
5718      break;
5719  
5720    case 538:
5721 < #line 2529 "conf_parser.y" /* yacc.c:1646  */
5721 > #line 2530 "conf_parser.y" /* yacc.c:1646  */
5722      {
5723    ConfigGeneral.ts_warn_delta = (yyvsp[-1].number);
5724   }
5725 < #line 5725 "conf_parser.c" /* yacc.c:1646  */
5725 > #line 5726 "conf_parser.c" /* yacc.c:1646  */
5726      break;
5727  
5728    case 539:
5729 < #line 2534 "conf_parser.y" /* yacc.c:1646  */
5729 > #line 2535 "conf_parser.y" /* yacc.c:1646  */
5730      {
5731    if (conf_parser_ctx.pass == 2)
5732      ConfigGeneral.ts_max_delta = (yyvsp[-1].number);
5733   }
5734 < #line 5734 "conf_parser.c" /* yacc.c:1646  */
5734 > #line 5735 "conf_parser.c" /* yacc.c:1646  */
5735      break;
5736  
5737    case 540:
5738 < #line 2540 "conf_parser.y" /* yacc.c:1646  */
5738 > #line 2541 "conf_parser.y" /* yacc.c:1646  */
5739      {
5740    ConfigGeneral.invisible_on_connect = yylval.number;
5741   }
5742 < #line 5742 "conf_parser.c" /* yacc.c:1646  */
5742 > #line 5743 "conf_parser.c" /* yacc.c:1646  */
5743      break;
5744  
5745    case 541:
5746 < #line 2545 "conf_parser.y" /* yacc.c:1646  */
5746 > #line 2546 "conf_parser.y" /* yacc.c:1646  */
5747      {
5748    ConfigGeneral.warn_no_connect_block = yylval.number;
5749   }
5750 < #line 5750 "conf_parser.c" /* yacc.c:1646  */
5750 > #line 5751 "conf_parser.c" /* yacc.c:1646  */
5751      break;
5752  
5753    case 542:
5754 < #line 2550 "conf_parser.y" /* yacc.c:1646  */
5754 > #line 2551 "conf_parser.y" /* yacc.c:1646  */
5755      {
5756    ConfigGeneral.stats_e_disabled = yylval.number;
5757   }
5758 < #line 5758 "conf_parser.c" /* yacc.c:1646  */
5758 > #line 5759 "conf_parser.c" /* yacc.c:1646  */
5759      break;
5760  
5761    case 543:
5762 < #line 2555 "conf_parser.y" /* yacc.c:1646  */
5762 > #line 2556 "conf_parser.y" /* yacc.c:1646  */
5763      {
5764    ConfigGeneral.stats_m_oper_only = yylval.number;
5765   }
5766 < #line 5766 "conf_parser.c" /* yacc.c:1646  */
5766 > #line 5767 "conf_parser.c" /* yacc.c:1646  */
5767      break;
5768  
5769    case 544:
5770 < #line 2560 "conf_parser.y" /* yacc.c:1646  */
5770 > #line 2561 "conf_parser.y" /* yacc.c:1646  */
5771      {
5772    ConfigGeneral.stats_o_oper_only = yylval.number;
5773   }
5774 < #line 5774 "conf_parser.c" /* yacc.c:1646  */
5774 > #line 5775 "conf_parser.c" /* yacc.c:1646  */
5775      break;
5776  
5777    case 545:
5778 < #line 2565 "conf_parser.y" /* yacc.c:1646  */
5778 > #line 2566 "conf_parser.y" /* yacc.c:1646  */
5779      {
5780    ConfigGeneral.stats_P_oper_only = yylval.number;
5781   }
5782 < #line 5782 "conf_parser.c" /* yacc.c:1646  */
5782 > #line 5783 "conf_parser.c" /* yacc.c:1646  */
5783      break;
5784  
5785    case 546:
5786 < #line 2570 "conf_parser.y" /* yacc.c:1646  */
5786 > #line 2571 "conf_parser.y" /* yacc.c:1646  */
5787      {
5788    ConfigGeneral.stats_u_oper_only = yylval.number;
5789   }
5790 < #line 5790 "conf_parser.c" /* yacc.c:1646  */
5790 > #line 5791 "conf_parser.c" /* yacc.c:1646  */
5791      break;
5792  
5793    case 547:
5794 < #line 2575 "conf_parser.y" /* yacc.c:1646  */
5794 > #line 2576 "conf_parser.y" /* yacc.c:1646  */
5795      {
5796    ConfigGeneral.stats_k_oper_only = 2 * yylval.number;
5797   }
5798 < #line 5798 "conf_parser.c" /* yacc.c:1646  */
5798 > #line 5799 "conf_parser.c" /* yacc.c:1646  */
5799      break;
5800  
5801    case 548:
5802 < #line 2578 "conf_parser.y" /* yacc.c:1646  */
5802 > #line 2579 "conf_parser.y" /* yacc.c:1646  */
5803      {
5804    ConfigGeneral.stats_k_oper_only = 1;
5805   }
5806 < #line 5806 "conf_parser.c" /* yacc.c:1646  */
5806 > #line 5807 "conf_parser.c" /* yacc.c:1646  */
5807      break;
5808  
5809    case 549:
5810 < #line 2583 "conf_parser.y" /* yacc.c:1646  */
5810 > #line 2584 "conf_parser.y" /* yacc.c:1646  */
5811      {
5812    ConfigGeneral.stats_i_oper_only = 2 * yylval.number;
5813   }
5814 < #line 5814 "conf_parser.c" /* yacc.c:1646  */
5814 > #line 5815 "conf_parser.c" /* yacc.c:1646  */
5815      break;
5816  
5817    case 550:
5818 < #line 2586 "conf_parser.y" /* yacc.c:1646  */
5818 > #line 2587 "conf_parser.y" /* yacc.c:1646  */
5819      {
5820    ConfigGeneral.stats_i_oper_only = 1;
5821   }
5822 < #line 5822 "conf_parser.c" /* yacc.c:1646  */
5822 > #line 5823 "conf_parser.c" /* yacc.c:1646  */
5823      break;
5824  
5825    case 551:
5826 < #line 2591 "conf_parser.y" /* yacc.c:1646  */
5826 > #line 2592 "conf_parser.y" /* yacc.c:1646  */
5827      {
5828    ConfigGeneral.pace_wait = (yyvsp[-1].number);
5829   }
5830 < #line 5830 "conf_parser.c" /* yacc.c:1646  */
5830 > #line 5831 "conf_parser.c" /* yacc.c:1646  */
5831      break;
5832  
5833    case 552:
5834 < #line 2596 "conf_parser.y" /* yacc.c:1646  */
5834 > #line 2597 "conf_parser.y" /* yacc.c:1646  */
5835      {
5836    ConfigGeneral.caller_id_wait = (yyvsp[-1].number);
5837   }
5838 < #line 5838 "conf_parser.c" /* yacc.c:1646  */
5838 > #line 5839 "conf_parser.c" /* yacc.c:1646  */
5839      break;
5840  
5841    case 553:
5842 < #line 2601 "conf_parser.y" /* yacc.c:1646  */
5842 > #line 2602 "conf_parser.y" /* yacc.c:1646  */
5843      {
5844    ConfigGeneral.opers_bypass_callerid = yylval.number;
5845   }
5846 < #line 5846 "conf_parser.c" /* yacc.c:1646  */
5846 > #line 5847 "conf_parser.c" /* yacc.c:1646  */
5847      break;
5848  
5849    case 554:
5850 < #line 2606 "conf_parser.y" /* yacc.c:1646  */
5850 > #line 2607 "conf_parser.y" /* yacc.c:1646  */
5851      {
5852    ConfigGeneral.pace_wait_simple = (yyvsp[-1].number);
5853   }
5854 < #line 5854 "conf_parser.c" /* yacc.c:1646  */
5854 > #line 5855 "conf_parser.c" /* yacc.c:1646  */
5855      break;
5856  
5857    case 555:
5858 < #line 2611 "conf_parser.y" /* yacc.c:1646  */
5858 > #line 2612 "conf_parser.y" /* yacc.c:1646  */
5859      {
5860    ConfigGeneral.short_motd = yylval.number;
5861   }
5862 < #line 5862 "conf_parser.c" /* yacc.c:1646  */
5862 > #line 5863 "conf_parser.c" /* yacc.c:1646  */
5863      break;
5864  
5865    case 556:
5866 < #line 2616 "conf_parser.y" /* yacc.c:1646  */
5866 > #line 2617 "conf_parser.y" /* yacc.c:1646  */
5867      {
5868    ConfigGeneral.no_oper_flood = yylval.number;
5869   }
5870 < #line 5870 "conf_parser.c" /* yacc.c:1646  */
5870 > #line 5871 "conf_parser.c" /* yacc.c:1646  */
5871      break;
5872  
5873    case 557:
5874 < #line 2621 "conf_parser.y" /* yacc.c:1646  */
5874 > #line 2622 "conf_parser.y" /* yacc.c:1646  */
5875      {
5876    ConfigGeneral.dots_in_ident = (yyvsp[-1].number);
5877   }
5878 < #line 5878 "conf_parser.c" /* yacc.c:1646  */
5878 > #line 5879 "conf_parser.c" /* yacc.c:1646  */
5879      break;
5880  
5881    case 558:
5882 < #line 2626 "conf_parser.y" /* yacc.c:1646  */
5882 > #line 2627 "conf_parser.y" /* yacc.c:1646  */
5883      {
5884    ConfigGeneral.max_targets = (yyvsp[-1].number);
5885   }
5886 < #line 5886 "conf_parser.c" /* yacc.c:1646  */
5886 > #line 5887 "conf_parser.c" /* yacc.c:1646  */
5887      break;
5888  
5889    case 559:
5890 < #line 2631 "conf_parser.y" /* yacc.c:1646  */
5890 > #line 2632 "conf_parser.y" /* yacc.c:1646  */
5891      {
5892    ConfigGeneral.ping_cookie = yylval.number;
5893   }
5894 < #line 5894 "conf_parser.c" /* yacc.c:1646  */
5894 > #line 5895 "conf_parser.c" /* yacc.c:1646  */
5895      break;
5896  
5897    case 560:
5898 < #line 2636 "conf_parser.y" /* yacc.c:1646  */
5898 > #line 2637 "conf_parser.y" /* yacc.c:1646  */
5899      {
5900    ConfigGeneral.disable_auth = yylval.number;
5901   }
5902 < #line 5902 "conf_parser.c" /* yacc.c:1646  */
5902 > #line 5903 "conf_parser.c" /* yacc.c:1646  */
5903      break;
5904  
5905    case 561:
5906 < #line 2641 "conf_parser.y" /* yacc.c:1646  */
5906 > #line 2642 "conf_parser.y" /* yacc.c:1646  */
5907      {
5908    ConfigGeneral.throttle_count = (yyvsp[-1].number);
5909   }
5910 < #line 5910 "conf_parser.c" /* yacc.c:1646  */
5910 > #line 5911 "conf_parser.c" /* yacc.c:1646  */
5911      break;
5912  
5913    case 562:
5914 < #line 2646 "conf_parser.y" /* yacc.c:1646  */
5914 > #line 2647 "conf_parser.y" /* yacc.c:1646  */
5915      {
5916    ConfigGeneral.throttle_time = (yyvsp[-1].number);
5917   }
5918 < #line 5918 "conf_parser.c" /* yacc.c:1646  */
5918 > #line 5919 "conf_parser.c" /* yacc.c:1646  */
5919      break;
5920  
5921    case 563:
5922 < #line 2651 "conf_parser.y" /* yacc.c:1646  */
5922 > #line 2652 "conf_parser.y" /* yacc.c:1646  */
5923      {
5924    ConfigGeneral.oper_umodes = 0;
5925   }
5926 < #line 5926 "conf_parser.c" /* yacc.c:1646  */
5926 > #line 5927 "conf_parser.c" /* yacc.c:1646  */
5927      break;
5928  
5929    case 567:
5930 < #line 2657 "conf_parser.y" /* yacc.c:1646  */
5930 > #line 2658 "conf_parser.y" /* yacc.c:1646  */
5931      {
5932    ConfigGeneral.oper_umodes |= UMODE_BOTS;
5933   }
5934 < #line 5934 "conf_parser.c" /* yacc.c:1646  */
5934 > #line 5935 "conf_parser.c" /* yacc.c:1646  */
5935      break;
5936  
5937    case 568:
5938 < #line 2660 "conf_parser.y" /* yacc.c:1646  */
5938 > #line 2661 "conf_parser.y" /* yacc.c:1646  */
5939      {
5940    ConfigGeneral.oper_umodes |= UMODE_CCONN;
5941   }
5942 < #line 5942 "conf_parser.c" /* yacc.c:1646  */
5942 > #line 5943 "conf_parser.c" /* yacc.c:1646  */
5943      break;
5944  
5945    case 569:
5946 < #line 2663 "conf_parser.y" /* yacc.c:1646  */
5946 > #line 2664 "conf_parser.y" /* yacc.c:1646  */
5947      {
5948    ConfigGeneral.oper_umodes |= UMODE_DEAF;
5949   }
5950 < #line 5950 "conf_parser.c" /* yacc.c:1646  */
5950 > #line 5951 "conf_parser.c" /* yacc.c:1646  */
5951      break;
5952  
5953    case 570:
5954 < #line 2666 "conf_parser.y" /* yacc.c:1646  */
5954 > #line 2667 "conf_parser.y" /* yacc.c:1646  */
5955      {
5956    ConfigGeneral.oper_umodes |= UMODE_DEBUG;
5957   }
5958 < #line 5958 "conf_parser.c" /* yacc.c:1646  */
5958 > #line 5959 "conf_parser.c" /* yacc.c:1646  */
5959      break;
5960  
5961    case 571:
5962 < #line 2669 "conf_parser.y" /* yacc.c:1646  */
5962 > #line 2670 "conf_parser.y" /* yacc.c:1646  */
5963      {
5964    ConfigGeneral.oper_umodes |= UMODE_FULL;
5965   }
5966 < #line 5966 "conf_parser.c" /* yacc.c:1646  */
5966 > #line 5967 "conf_parser.c" /* yacc.c:1646  */
5967      break;
5968  
5969    case 572:
5970 < #line 2672 "conf_parser.y" /* yacc.c:1646  */
5970 > #line 2673 "conf_parser.y" /* yacc.c:1646  */
5971      {
5972    ConfigGeneral.oper_umodes |= UMODE_HIDDEN;
5973   }
5974 < #line 5974 "conf_parser.c" /* yacc.c:1646  */
5974 > #line 5975 "conf_parser.c" /* yacc.c:1646  */
5975      break;
5976  
5977    case 573:
5978 < #line 2675 "conf_parser.y" /* yacc.c:1646  */
5978 > #line 2676 "conf_parser.y" /* yacc.c:1646  */
5979      {
5980    ConfigGeneral.oper_umodes |= UMODE_HIDECHANS;
5981   }
5982 < #line 5982 "conf_parser.c" /* yacc.c:1646  */
5982 > #line 5983 "conf_parser.c" /* yacc.c:1646  */
5983      break;
5984  
5985    case 574:
5986 < #line 2678 "conf_parser.y" /* yacc.c:1646  */
5986 > #line 2679 "conf_parser.y" /* yacc.c:1646  */
5987      {
5988    ConfigGeneral.oper_umodes |= UMODE_HIDEIDLE;
5989   }
5990 < #line 5990 "conf_parser.c" /* yacc.c:1646  */
5990 > #line 5991 "conf_parser.c" /* yacc.c:1646  */
5991      break;
5992  
5993    case 575:
5994 < #line 2681 "conf_parser.y" /* yacc.c:1646  */
5994 > #line 2682 "conf_parser.y" /* yacc.c:1646  */
5995      {
5996    ConfigGeneral.oper_umodes |= UMODE_SKILL;
5997   }
5998 < #line 5998 "conf_parser.c" /* yacc.c:1646  */
5998 > #line 5999 "conf_parser.c" /* yacc.c:1646  */
5999      break;
6000  
6001    case 576:
6002 < #line 2684 "conf_parser.y" /* yacc.c:1646  */
6002 > #line 2685 "conf_parser.y" /* yacc.c:1646  */
6003      {
6004    ConfigGeneral.oper_umodes |= UMODE_NCHANGE;
6005   }
6006 < #line 6006 "conf_parser.c" /* yacc.c:1646  */
6006 > #line 6007 "conf_parser.c" /* yacc.c:1646  */
6007      break;
6008  
6009    case 577:
6010 < #line 2687 "conf_parser.y" /* yacc.c:1646  */
6010 > #line 2688 "conf_parser.y" /* yacc.c:1646  */
6011      {
6012    ConfigGeneral.oper_umodes |= UMODE_REJ;
6013   }
6014 < #line 6014 "conf_parser.c" /* yacc.c:1646  */
6014 > #line 6015 "conf_parser.c" /* yacc.c:1646  */
6015      break;
6016  
6017    case 578:
6018 < #line 2690 "conf_parser.y" /* yacc.c:1646  */
6018 > #line 2691 "conf_parser.y" /* yacc.c:1646  */
6019      {
6020    ConfigGeneral.oper_umodes |= UMODE_UNAUTH;
6021   }
6022 < #line 6022 "conf_parser.c" /* yacc.c:1646  */
6022 > #line 6023 "conf_parser.c" /* yacc.c:1646  */
6023      break;
6024  
6025    case 579:
6026 < #line 2693 "conf_parser.y" /* yacc.c:1646  */
6026 > #line 2694 "conf_parser.y" /* yacc.c:1646  */
6027      {
6028    ConfigGeneral.oper_umodes |= UMODE_SPY;
6029   }
6030 < #line 6030 "conf_parser.c" /* yacc.c:1646  */
6030 > #line 6031 "conf_parser.c" /* yacc.c:1646  */
6031      break;
6032  
6033    case 580:
6034 < #line 2696 "conf_parser.y" /* yacc.c:1646  */
6034 > #line 2697 "conf_parser.y" /* yacc.c:1646  */
6035      {
6036    ConfigGeneral.oper_umodes |= UMODE_EXTERNAL;
6037   }
6038 < #line 6038 "conf_parser.c" /* yacc.c:1646  */
6038 > #line 6039 "conf_parser.c" /* yacc.c:1646  */
6039      break;
6040  
6041    case 581:
6042 < #line 2699 "conf_parser.y" /* yacc.c:1646  */
6042 > #line 2700 "conf_parser.y" /* yacc.c:1646  */
6043      {
6044    ConfigGeneral.oper_umodes |= UMODE_SERVNOTICE;
6045   }
6046 < #line 6046 "conf_parser.c" /* yacc.c:1646  */
6046 > #line 6047 "conf_parser.c" /* yacc.c:1646  */
6047      break;
6048  
6049    case 582:
6050 < #line 2702 "conf_parser.y" /* yacc.c:1646  */
6050 > #line 2703 "conf_parser.y" /* yacc.c:1646  */
6051      {
6052    ConfigGeneral.oper_umodes |= UMODE_INVISIBLE;
6053   }
6054 < #line 6054 "conf_parser.c" /* yacc.c:1646  */
6054 > #line 6055 "conf_parser.c" /* yacc.c:1646  */
6055      break;
6056  
6057    case 583:
6058 < #line 2705 "conf_parser.y" /* yacc.c:1646  */
6058 > #line 2706 "conf_parser.y" /* yacc.c:1646  */
6059      {
6060    ConfigGeneral.oper_umodes |= UMODE_WALLOP;
6061   }
6062 < #line 6062 "conf_parser.c" /* yacc.c:1646  */
6062 > #line 6063 "conf_parser.c" /* yacc.c:1646  */
6063      break;
6064  
6065    case 584:
6066 < #line 2708 "conf_parser.y" /* yacc.c:1646  */
6066 > #line 2709 "conf_parser.y" /* yacc.c:1646  */
6067      {
6068    ConfigGeneral.oper_umodes |= UMODE_SOFTCALLERID;
6069   }
6070 < #line 6070 "conf_parser.c" /* yacc.c:1646  */
6070 > #line 6071 "conf_parser.c" /* yacc.c:1646  */
6071      break;
6072  
6073    case 585:
6074 < #line 2711 "conf_parser.y" /* yacc.c:1646  */
6074 > #line 2712 "conf_parser.y" /* yacc.c:1646  */
6075      {
6076    ConfigGeneral.oper_umodes |= UMODE_CALLERID;
6077   }
6078 < #line 6078 "conf_parser.c" /* yacc.c:1646  */
6078 > #line 6079 "conf_parser.c" /* yacc.c:1646  */
6079      break;
6080  
6081    case 586:
6082 < #line 2714 "conf_parser.y" /* yacc.c:1646  */
6082 > #line 2715 "conf_parser.y" /* yacc.c:1646  */
6083      {
6084    ConfigGeneral.oper_umodes |= UMODE_LOCOPS;
6085   }
6086 < #line 6086 "conf_parser.c" /* yacc.c:1646  */
6086 > #line 6087 "conf_parser.c" /* yacc.c:1646  */
6087      break;
6088  
6089    case 587:
6090 < #line 2717 "conf_parser.y" /* yacc.c:1646  */
6090 > #line 2718 "conf_parser.y" /* yacc.c:1646  */
6091      {
6092    ConfigGeneral.oper_umodes |= UMODE_REGONLY;
6093   }
6094 < #line 6094 "conf_parser.c" /* yacc.c:1646  */
6094 > #line 6095 "conf_parser.c" /* yacc.c:1646  */
6095      break;
6096  
6097    case 588:
6098 < #line 2720 "conf_parser.y" /* yacc.c:1646  */
6098 > #line 2721 "conf_parser.y" /* yacc.c:1646  */
6099      {
6100    ConfigGeneral.oper_umodes |= UMODE_FARCONNECT;
6101   }
6102 < #line 6102 "conf_parser.c" /* yacc.c:1646  */
6102 > #line 6103 "conf_parser.c" /* yacc.c:1646  */
6103      break;
6104  
6105    case 589:
6106 < #line 2725 "conf_parser.y" /* yacc.c:1646  */
6106 > #line 2726 "conf_parser.y" /* yacc.c:1646  */
6107      {
6108    ConfigGeneral.oper_only_umodes = 0;
6109   }
6110 < #line 6110 "conf_parser.c" /* yacc.c:1646  */
6110 > #line 6111 "conf_parser.c" /* yacc.c:1646  */
6111      break;
6112  
6113    case 593:
6114 < #line 2731 "conf_parser.y" /* yacc.c:1646  */
6114 > #line 2732 "conf_parser.y" /* yacc.c:1646  */
6115      {
6116    ConfigGeneral.oper_only_umodes |= UMODE_BOTS;
6117   }
6118 < #line 6118 "conf_parser.c" /* yacc.c:1646  */
6118 > #line 6119 "conf_parser.c" /* yacc.c:1646  */
6119      break;
6120  
6121    case 594:
6122 < #line 2734 "conf_parser.y" /* yacc.c:1646  */
6122 > #line 2735 "conf_parser.y" /* yacc.c:1646  */
6123      {
6124    ConfigGeneral.oper_only_umodes |= UMODE_CCONN;
6125   }
6126 < #line 6126 "conf_parser.c" /* yacc.c:1646  */
6126 > #line 6127 "conf_parser.c" /* yacc.c:1646  */
6127      break;
6128  
6129    case 595:
6130 < #line 2737 "conf_parser.y" /* yacc.c:1646  */
6130 > #line 2738 "conf_parser.y" /* yacc.c:1646  */
6131      {
6132    ConfigGeneral.oper_only_umodes |= UMODE_DEAF;
6133   }
6134 < #line 6134 "conf_parser.c" /* yacc.c:1646  */
6134 > #line 6135 "conf_parser.c" /* yacc.c:1646  */
6135      break;
6136  
6137    case 596:
6138 < #line 2740 "conf_parser.y" /* yacc.c:1646  */
6138 > #line 2741 "conf_parser.y" /* yacc.c:1646  */
6139      {
6140    ConfigGeneral.oper_only_umodes |= UMODE_DEBUG;
6141   }
6142 < #line 6142 "conf_parser.c" /* yacc.c:1646  */
6142 > #line 6143 "conf_parser.c" /* yacc.c:1646  */
6143      break;
6144  
6145    case 597:
6146 < #line 2743 "conf_parser.y" /* yacc.c:1646  */
6146 > #line 2744 "conf_parser.y" /* yacc.c:1646  */
6147      {
6148    ConfigGeneral.oper_only_umodes |= UMODE_FULL;
6149   }
6150 < #line 6150 "conf_parser.c" /* yacc.c:1646  */
6150 > #line 6151 "conf_parser.c" /* yacc.c:1646  */
6151      break;
6152  
6153    case 598:
6154 < #line 2746 "conf_parser.y" /* yacc.c:1646  */
6154 > #line 2747 "conf_parser.y" /* yacc.c:1646  */
6155      {
6156    ConfigGeneral.oper_only_umodes |= UMODE_SKILL;
6157   }
6158 < #line 6158 "conf_parser.c" /* yacc.c:1646  */
6158 > #line 6159 "conf_parser.c" /* yacc.c:1646  */
6159      break;
6160  
6161    case 599:
6162 < #line 2749 "conf_parser.y" /* yacc.c:1646  */
6162 > #line 2750 "conf_parser.y" /* yacc.c:1646  */
6163      {
6164    ConfigGeneral.oper_only_umodes |= UMODE_HIDDEN;
6165   }
6166 < #line 6166 "conf_parser.c" /* yacc.c:1646  */
6166 > #line 6167 "conf_parser.c" /* yacc.c:1646  */
6167      break;
6168  
6169    case 600:
6170 < #line 2752 "conf_parser.y" /* yacc.c:1646  */
6170 > #line 2753 "conf_parser.y" /* yacc.c:1646  */
6171      {
6172    ConfigGeneral.oper_only_umodes |= UMODE_NCHANGE;
6173   }
6174 < #line 6174 "conf_parser.c" /* yacc.c:1646  */
6174 > #line 6175 "conf_parser.c" /* yacc.c:1646  */
6175      break;
6176  
6177    case 601:
6178 < #line 2755 "conf_parser.y" /* yacc.c:1646  */
6178 > #line 2756 "conf_parser.y" /* yacc.c:1646  */
6179      {
6180    ConfigGeneral.oper_only_umodes |= UMODE_REJ;
6181   }
6182 < #line 6182 "conf_parser.c" /* yacc.c:1646  */
6182 > #line 6183 "conf_parser.c" /* yacc.c:1646  */
6183      break;
6184  
6185    case 602:
6186 < #line 2758 "conf_parser.y" /* yacc.c:1646  */
6186 > #line 2759 "conf_parser.y" /* yacc.c:1646  */
6187      {
6188    ConfigGeneral.oper_only_umodes |= UMODE_UNAUTH;
6189   }
6190 < #line 6190 "conf_parser.c" /* yacc.c:1646  */
6190 > #line 6191 "conf_parser.c" /* yacc.c:1646  */
6191      break;
6192  
6193    case 603:
6194 < #line 2761 "conf_parser.y" /* yacc.c:1646  */
6194 > #line 2762 "conf_parser.y" /* yacc.c:1646  */
6195      {
6196    ConfigGeneral.oper_only_umodes |= UMODE_SPY;
6197   }
6198 < #line 6198 "conf_parser.c" /* yacc.c:1646  */
6198 > #line 6199 "conf_parser.c" /* yacc.c:1646  */
6199      break;
6200  
6201    case 604:
6202 < #line 2764 "conf_parser.y" /* yacc.c:1646  */
6202 > #line 2765 "conf_parser.y" /* yacc.c:1646  */
6203      {
6204    ConfigGeneral.oper_only_umodes |= UMODE_EXTERNAL;
6205   }
6206 < #line 6206 "conf_parser.c" /* yacc.c:1646  */
6206 > #line 6207 "conf_parser.c" /* yacc.c:1646  */
6207      break;
6208  
6209    case 605:
6210 < #line 2767 "conf_parser.y" /* yacc.c:1646  */
6210 > #line 2768 "conf_parser.y" /* yacc.c:1646  */
6211      {
6212    ConfigGeneral.oper_only_umodes |= UMODE_SERVNOTICE;
6213   }
6214 < #line 6214 "conf_parser.c" /* yacc.c:1646  */
6214 > #line 6215 "conf_parser.c" /* yacc.c:1646  */
6215      break;
6216  
6217    case 606:
6218 < #line 2770 "conf_parser.y" /* yacc.c:1646  */
6218 > #line 2771 "conf_parser.y" /* yacc.c:1646  */
6219      {
6220    ConfigGeneral.oper_only_umodes |= UMODE_INVISIBLE;
6221   }
6222 < #line 6222 "conf_parser.c" /* yacc.c:1646  */
6222 > #line 6223 "conf_parser.c" /* yacc.c:1646  */
6223      break;
6224  
6225    case 607:
6226 < #line 2773 "conf_parser.y" /* yacc.c:1646  */
6226 > #line 2774 "conf_parser.y" /* yacc.c:1646  */
6227      {
6228    ConfigGeneral.oper_only_umodes |= UMODE_WALLOP;
6229   }
6230 < #line 6230 "conf_parser.c" /* yacc.c:1646  */
6230 > #line 6231 "conf_parser.c" /* yacc.c:1646  */
6231      break;
6232  
6233    case 608:
6234 < #line 2776 "conf_parser.y" /* yacc.c:1646  */
6234 > #line 2777 "conf_parser.y" /* yacc.c:1646  */
6235      {
6236    ConfigGeneral.oper_only_umodes |= UMODE_SOFTCALLERID;
6237   }
6238 < #line 6238 "conf_parser.c" /* yacc.c:1646  */
6238 > #line 6239 "conf_parser.c" /* yacc.c:1646  */
6239      break;
6240  
6241    case 609:
6242 < #line 2779 "conf_parser.y" /* yacc.c:1646  */
6242 > #line 2780 "conf_parser.y" /* yacc.c:1646  */
6243      {
6244    ConfigGeneral.oper_only_umodes |= UMODE_CALLERID;
6245   }
6246 < #line 6246 "conf_parser.c" /* yacc.c:1646  */
6246 > #line 6247 "conf_parser.c" /* yacc.c:1646  */
6247      break;
6248  
6249    case 610:
6250 < #line 2782 "conf_parser.y" /* yacc.c:1646  */
6250 > #line 2783 "conf_parser.y" /* yacc.c:1646  */
6251      {
6252    ConfigGeneral.oper_only_umodes |= UMODE_LOCOPS;
6253   }
6254 < #line 6254 "conf_parser.c" /* yacc.c:1646  */
6254 > #line 6255 "conf_parser.c" /* yacc.c:1646  */
6255      break;
6256  
6257    case 611:
6258 < #line 2785 "conf_parser.y" /* yacc.c:1646  */
6258 > #line 2786 "conf_parser.y" /* yacc.c:1646  */
6259      {
6260    ConfigGeneral.oper_only_umodes |= UMODE_REGONLY;
6261   }
6262 < #line 6262 "conf_parser.c" /* yacc.c:1646  */
6262 > #line 6263 "conf_parser.c" /* yacc.c:1646  */
6263      break;
6264  
6265    case 612:
6266 < #line 2788 "conf_parser.y" /* yacc.c:1646  */
6266 > #line 2789 "conf_parser.y" /* yacc.c:1646  */
6267      {
6268    ConfigGeneral.oper_only_umodes |= UMODE_FARCONNECT;
6269   }
6270 < #line 6270 "conf_parser.c" /* yacc.c:1646  */
6270 > #line 6271 "conf_parser.c" /* yacc.c:1646  */
6271      break;
6272  
6273    case 613:
6274 < #line 2793 "conf_parser.y" /* yacc.c:1646  */
6274 > #line 2794 "conf_parser.y" /* yacc.c:1646  */
6275      {
6276    ConfigGeneral.min_nonwildcard = (yyvsp[-1].number);
6277   }
6278 < #line 6278 "conf_parser.c" /* yacc.c:1646  */
6278 > #line 6279 "conf_parser.c" /* yacc.c:1646  */
6279      break;
6280  
6281    case 614:
6282 < #line 2798 "conf_parser.y" /* yacc.c:1646  */
6282 > #line 2799 "conf_parser.y" /* yacc.c:1646  */
6283      {
6284    ConfigGeneral.min_nonwildcard_simple = (yyvsp[-1].number);
6285   }
6286 < #line 6286 "conf_parser.c" /* yacc.c:1646  */
6286 > #line 6287 "conf_parser.c" /* yacc.c:1646  */
6287      break;
6288  
6289    case 615:
6290 < #line 2803 "conf_parser.y" /* yacc.c:1646  */
6290 > #line 2804 "conf_parser.y" /* yacc.c:1646  */
6291      {
6292    ConfigGeneral.default_floodcount = (yyvsp[-1].number);
6293   }
6294 < #line 6294 "conf_parser.c" /* yacc.c:1646  */
6294 > #line 6295 "conf_parser.c" /* yacc.c:1646  */
6295      break;
6296  
6297    case 616:
6298 < #line 2808 "conf_parser.y" /* yacc.c:1646  */
6298 > #line 2809 "conf_parser.y" /* yacc.c:1646  */
6299      {
6300    ConfigGeneral.default_floodtime = (yyvsp[-1].number);
6301   }
6302 < #line 6302 "conf_parser.c" /* yacc.c:1646  */
6302 > #line 6303 "conf_parser.c" /* yacc.c:1646  */
6303      break;
6304  
6305    case 635:
6306 < #line 2836 "conf_parser.y" /* yacc.c:1646  */
6306 > #line 2837 "conf_parser.y" /* yacc.c:1646  */
6307      {
6308    ConfigChannel.disable_fake_channels = yylval.number;
6309   }
6310 < #line 6310 "conf_parser.c" /* yacc.c:1646  */
6310 > #line 6311 "conf_parser.c" /* yacc.c:1646  */
6311      break;
6312  
6313    case 636:
6314 < #line 2841 "conf_parser.y" /* yacc.c:1646  */
6314 > #line 2842 "conf_parser.y" /* yacc.c:1646  */
6315      {
6316    ConfigChannel.invite_client_count = (yyvsp[-1].number);
6317   }
6318 < #line 6318 "conf_parser.c" /* yacc.c:1646  */
6318 > #line 6319 "conf_parser.c" /* yacc.c:1646  */
6319      break;
6320  
6321    case 637:
6322 < #line 2846 "conf_parser.y" /* yacc.c:1646  */
6322 > #line 2847 "conf_parser.y" /* yacc.c:1646  */
6323      {
6324    ConfigChannel.invite_client_time = (yyvsp[-1].number);
6325   }
6326 < #line 6326 "conf_parser.c" /* yacc.c:1646  */
6326 > #line 6327 "conf_parser.c" /* yacc.c:1646  */
6327      break;
6328  
6329    case 638:
6330 < #line 2851 "conf_parser.y" /* yacc.c:1646  */
6330 > #line 2852 "conf_parser.y" /* yacc.c:1646  */
6331      {
6332    ConfigChannel.invite_delay_channel = (yyvsp[-1].number);
6333   }
6334 < #line 6334 "conf_parser.c" /* yacc.c:1646  */
6334 > #line 6335 "conf_parser.c" /* yacc.c:1646  */
6335      break;
6336  
6337    case 639:
6338 < #line 2856 "conf_parser.y" /* yacc.c:1646  */
6338 > #line 2857 "conf_parser.y" /* yacc.c:1646  */
6339      {
6340    ConfigChannel.invite_expire_time = (yyvsp[-1].number);
6341   }
6342 < #line 6342 "conf_parser.c" /* yacc.c:1646  */
6342 > #line 6343 "conf_parser.c" /* yacc.c:1646  */
6343      break;
6344  
6345    case 640:
6346 < #line 2861 "conf_parser.y" /* yacc.c:1646  */
6346 > #line 2862 "conf_parser.y" /* yacc.c:1646  */
6347      {
6348    ConfigChannel.knock_client_count = (yyvsp[-1].number);
6349   }
6350 < #line 6350 "conf_parser.c" /* yacc.c:1646  */
6350 > #line 6351 "conf_parser.c" /* yacc.c:1646  */
6351      break;
6352  
6353    case 641:
6354 < #line 2866 "conf_parser.y" /* yacc.c:1646  */
6354 > #line 2867 "conf_parser.y" /* yacc.c:1646  */
6355      {
6356    ConfigChannel.knock_client_time = (yyvsp[-1].number);
6357   }
6358 < #line 6358 "conf_parser.c" /* yacc.c:1646  */
6358 > #line 6359 "conf_parser.c" /* yacc.c:1646  */
6359      break;
6360  
6361    case 642:
6362 < #line 2871 "conf_parser.y" /* yacc.c:1646  */
6362 > #line 2872 "conf_parser.y" /* yacc.c:1646  */
6363      {
6364    ConfigChannel.knock_delay_channel = (yyvsp[-1].number);
6365   }
6366 < #line 6366 "conf_parser.c" /* yacc.c:1646  */
6366 > #line 6367 "conf_parser.c" /* yacc.c:1646  */
6367      break;
6368  
6369    case 643:
6370 < #line 2876 "conf_parser.y" /* yacc.c:1646  */
6370 > #line 2877 "conf_parser.y" /* yacc.c:1646  */
6371      {
6372    ConfigChannel.max_channels = (yyvsp[-1].number);
6373   }
6374 < #line 6374 "conf_parser.c" /* yacc.c:1646  */
6374 > #line 6375 "conf_parser.c" /* yacc.c:1646  */
6375      break;
6376  
6377    case 644:
6378 < #line 2881 "conf_parser.y" /* yacc.c:1646  */
6378 > #line 2882 "conf_parser.y" /* yacc.c:1646  */
6379      {
6380    ConfigChannel.max_invites = (yyvsp[-1].number);
6381   }
6382 < #line 6382 "conf_parser.c" /* yacc.c:1646  */
6382 > #line 6383 "conf_parser.c" /* yacc.c:1646  */
6383      break;
6384  
6385    case 645:
6386 < #line 2886 "conf_parser.y" /* yacc.c:1646  */
6386 > #line 2887 "conf_parser.y" /* yacc.c:1646  */
6387      {
6388    ConfigChannel.max_bans = (yyvsp[-1].number);
6389   }
6390 < #line 6390 "conf_parser.c" /* yacc.c:1646  */
6390 > #line 6391 "conf_parser.c" /* yacc.c:1646  */
6391      break;
6392  
6393    case 646:
6394 < #line 2891 "conf_parser.y" /* yacc.c:1646  */
6394 > #line 2892 "conf_parser.y" /* yacc.c:1646  */
6395      {
6396    ConfigChannel.max_bans_large = (yyvsp[-1].number);
6397   }
6398 < #line 6398 "conf_parser.c" /* yacc.c:1646  */
6398 > #line 6399 "conf_parser.c" /* yacc.c:1646  */
6399      break;
6400  
6401    case 647:
6402 < #line 2896 "conf_parser.y" /* yacc.c:1646  */
6402 > #line 2897 "conf_parser.y" /* yacc.c:1646  */
6403      {
6404    ConfigChannel.default_join_flood_count = yylval.number;
6405   }
6406 < #line 6406 "conf_parser.c" /* yacc.c:1646  */
6406 > #line 6407 "conf_parser.c" /* yacc.c:1646  */
6407      break;
6408  
6409    case 648:
6410 < #line 2901 "conf_parser.y" /* yacc.c:1646  */
6410 > #line 2902 "conf_parser.y" /* yacc.c:1646  */
6411      {
6412    ConfigChannel.default_join_flood_time = (yyvsp[-1].number);
6413   }
6414 < #line 6414 "conf_parser.c" /* yacc.c:1646  */
6414 > #line 6415 "conf_parser.c" /* yacc.c:1646  */
6415      break;
6416  
6417    case 662:
6418 < #line 2924 "conf_parser.y" /* yacc.c:1646  */
6418 > #line 2925 "conf_parser.y" /* yacc.c:1646  */
6419      {
6420    if (conf_parser_ctx.pass == 2)
6421      ConfigServerHide.flatten_links = yylval.number;
6422   }
6423 < #line 6423 "conf_parser.c" /* yacc.c:1646  */
6423 > #line 6424 "conf_parser.c" /* yacc.c:1646  */
6424      break;
6425  
6426    case 663:
6427 < #line 2930 "conf_parser.y" /* yacc.c:1646  */
6427 > #line 2931 "conf_parser.y" /* yacc.c:1646  */
6428      {
6429    if (conf_parser_ctx.pass == 2)
6430    {
# Line 6438 | Line 6439 | yyreduce:
6439      ConfigServerHide.flatten_links_delay = (yyvsp[-1].number);
6440    }
6441   }
6442 < #line 6442 "conf_parser.c" /* yacc.c:1646  */
6442 > #line 6443 "conf_parser.c" /* yacc.c:1646  */
6443      break;
6444  
6445    case 664:
6446 < #line 2946 "conf_parser.y" /* yacc.c:1646  */
6446 > #line 2947 "conf_parser.y" /* yacc.c:1646  */
6447      {
6448    if (conf_parser_ctx.pass == 2)
6449    {
# Line 6450 | Line 6451 | yyreduce:
6451      ConfigServerHide.flatten_links_file = xstrdup(yylval.string);
6452    }
6453   }
6454 < #line 6454 "conf_parser.c" /* yacc.c:1646  */
6454 > #line 6455 "conf_parser.c" /* yacc.c:1646  */
6455      break;
6456  
6457    case 665:
6458 < #line 2955 "conf_parser.y" /* yacc.c:1646  */
6458 > #line 2956 "conf_parser.y" /* yacc.c:1646  */
6459      {
6460    if (conf_parser_ctx.pass == 2)
6461      ConfigServerHide.disable_remote_commands = yylval.number;
6462   }
6463 < #line 6463 "conf_parser.c" /* yacc.c:1646  */
6463 > #line 6464 "conf_parser.c" /* yacc.c:1646  */
6464      break;
6465  
6466    case 666:
6467 < #line 2961 "conf_parser.y" /* yacc.c:1646  */
6467 > #line 2962 "conf_parser.y" /* yacc.c:1646  */
6468      {
6469    if (conf_parser_ctx.pass == 2)
6470      ConfigServerHide.hide_servers = yylval.number;
6471   }
6472 < #line 6472 "conf_parser.c" /* yacc.c:1646  */
6472 > #line 6473 "conf_parser.c" /* yacc.c:1646  */
6473      break;
6474  
6475    case 667:
6476 < #line 2967 "conf_parser.y" /* yacc.c:1646  */
6476 > #line 2968 "conf_parser.y" /* yacc.c:1646  */
6477      {
6478    if (conf_parser_ctx.pass == 2)
6479      ConfigServerHide.hide_services = yylval.number;
6480   }
6481 < #line 6481 "conf_parser.c" /* yacc.c:1646  */
6481 > #line 6482 "conf_parser.c" /* yacc.c:1646  */
6482      break;
6483  
6484    case 668:
6485 < #line 2973 "conf_parser.y" /* yacc.c:1646  */
6485 > #line 2974 "conf_parser.y" /* yacc.c:1646  */
6486      {
6487    if (conf_parser_ctx.pass == 2)
6488    {
# Line 6489 | Line 6490 | yyreduce:
6490      ConfigServerHide.hidden_name = xstrdup(yylval.string);
6491    }
6492   }
6493 < #line 6493 "conf_parser.c" /* yacc.c:1646  */
6493 > #line 6494 "conf_parser.c" /* yacc.c:1646  */
6494      break;
6495  
6496    case 669:
6497 < #line 2982 "conf_parser.y" /* yacc.c:1646  */
6497 > #line 2983 "conf_parser.y" /* yacc.c:1646  */
6498      {
6499    if (conf_parser_ctx.pass == 2)
6500      ConfigServerHide.hidden = yylval.number;
6501   }
6502 < #line 6502 "conf_parser.c" /* yacc.c:1646  */
6502 > #line 6503 "conf_parser.c" /* yacc.c:1646  */
6503      break;
6504  
6505    case 670:
6506 < #line 2988 "conf_parser.y" /* yacc.c:1646  */
6506 > #line 2989 "conf_parser.y" /* yacc.c:1646  */
6507      {
6508    if (conf_parser_ctx.pass == 2)
6509      ConfigServerHide.hide_server_ips = yylval.number;
6510   }
6511 < #line 6511 "conf_parser.c" /* yacc.c:1646  */
6511 > #line 6512 "conf_parser.c" /* yacc.c:1646  */
6512      break;
6513  
6514  
6515 < #line 6515 "conf_parser.c" /* yacc.c:1646  */
6515 > #line 6516 "conf_parser.c" /* yacc.c:1646  */
6516        default: break;
6517      }
6518    /* User semantic actions sometimes alter yychar, and that requires

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)