From c58bf409a7a927997ec4ca0d1359eb5502db606c Mon Sep 17 00:00:00 2001 From: Russell King Date: Wed, 10 Feb 2021 19:02:21 +0000 Subject: Load the certificate chain rather than just the first cert As we are using LE certificates, we need to load the certificate chain rather than just the first certificate from the file. --- src/conf_parser.c | 1474 ++++++++++++++++++++++++++--------------------------- src/conf_parser.y | 6 +- 2 files changed, 738 insertions(+), 742 deletions(-) diff --git a/src/conf_parser.c b/src/conf_parser.c index 85856c7..ee1a51f 100644 --- a/src/conf_parser.c +++ b/src/conf_parser.c @@ -1037,66 +1037,66 @@ static const yytype_uint16 yyrline[] = 472, 479, 481, 481, 482, 482, 483, 483, 484, 484, 485, 485, 486, 486, 487, 487, 488, 488, 489, 489, 490, 491, 494, 495, 497, 497, 498, 504, 512, 512, - 513, 519, 527, 569, 627, 656, 664, 679, 694, 703, - 717, 726, 754, 784, 809, 831, 853, 862, 864, 864, - 865, 865, 866, 866, 868, 877, 886, 899, 898, 916, - 916, 917, 917, 917, 919, 925, 934, 935, 935, 937, - 937, 938, 940, 947, 947, 960, 961, 963, 963, 964, - 964, 966, 974, 977, 983, 982, 988, 988, 989, 993, - 997, 1001, 1005, 1009, 1013, 1017, 1021, 1032, 1031, 1117, - 1117, 1118, 1118, 1118, 1119, 1119, 1119, 1120, 1120, 1121, - 1122, 1122, 1124, 1130, 1136, 1142, 1153, 1159, 1165, 1176, - 1183, 1182, 1188, 1188, 1189, 1193, 1197, 1201, 1205, 1209, - 1213, 1217, 1221, 1225, 1229, 1233, 1237, 1241, 1245, 1249, - 1253, 1257, 1261, 1265, 1269, 1273, 1280, 1279, 1285, 1285, - 1286, 1290, 1294, 1298, 1302, 1306, 1310, 1314, 1318, 1322, - 1326, 1330, 1334, 1338, 1342, 1346, 1350, 1354, 1358, 1362, - 1366, 1370, 1374, 1378, 1382, 1393, 1392, 1453, 1453, 1454, - 1455, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 1463, - 1464, 1464, 1465, 1466, 1467, 1468, 1470, 1476, 1482, 1488, - 1494, 1500, 1506, 1512, 1518, 1524, 1531, 1537, 1543, 1549, - 1558, 1568, 1567, 1573, 1573, 1574, 1578, 1589, 1588, 1595, - 1594, 1599, 1599, 1600, 1604, 1608, 1614, 1614, 1615, 1615, - 1615, 1615, 1615, 1617, 1617, 1619, 1619, 1621, 1635, 1655, - 1661, 1671, 1670, 1714, 1714, 1715, 1715, 1715, 1715, 1716, - 1716, 1716, 1717, 1718, 1718, 1720, 1726, 1732, 1738, 1744, - 1756, 1755, 1761, 1761, 1762, 1766, 1770, 1774, 1778, 1782, - 1786, 1790, 1794, 1798, 1804, 1818, 1827, 1841, 1840, 1855, - 1855, 1856, 1856, 1856, 1856, 1858, 1864, 1870, 1880, 1882, - 1882, 1883, 1883, 1885, 1901, 1900, 1925, 1925, 1926, 1926, - 1926, 1926, 1928, 1934, 1954, 1953, 1959, 1959, 1960, 1964, - 1968, 1972, 1976, 1980, 1984, 1988, 1992, 1996, 2006, 2005, - 2026, 2026, 2027, 2027, 2027, 2029, 2036, 2035, 2041, 2041, - 2042, 2046, 2050, 2054, 2058, 2062, 2066, 2070, 2074, 2078, - 2088, 2087, 2166, 2166, 2167, 2167, 2167, 2168, 2168, 2169, - 2170, 2170, 2170, 2171, 2171, 2171, 2172, 2172, 2173, 2175, - 2181, 2187, 2193, 2206, 2219, 2225, 2231, 2235, 2244, 2243, - 2248, 2248, 2249, 2253, 2259, 2270, 2276, 2282, 2288, 2304, - 2303, 2329, 2329, 2330, 2330, 2330, 2332, 2352, 2362, 2361, - 2388, 2388, 2389, 2389, 2389, 2391, 2397, 2406, 2408, 2408, - 2409, 2409, 2409, 2411, 2425, 2441, 2440, 2463, 2463, 2464, - 2464, 2464, 2466, 2472, 2481, 2484, 2484, 2485, 2485, 2486, - 2486, 2487, 2487, 2488, 2488, 2489, 2489, 2490, 2491, 2492, - 2492, 2493, 2493, 2494, 2494, 2495, 2495, 2496, 2497, 2497, - 2498, 2498, 2499, 2499, 2500, 2500, 2501, 2501, 2502, 2502, - 2503, 2503, 2504, 2505, 2506, 2506, 2507, 2507, 2508, 2509, - 2510, 2511, 2511, 2512, 2513, 2514, 2517, 2522, 2528, 2534, - 2540, 2546, 2551, 2556, 2561, 2566, 2571, 2576, 2581, 2586, - 2591, 2596, 2601, 2606, 2611, 2617, 2628, 2633, 2638, 2643, - 2648, 2653, 2658, 2661, 2666, 2669, 2674, 2679, 2684, 2689, - 2694, 2699, 2704, 2709, 2714, 2719, 2724, 2733, 2738, 2743, - 2749, 2748, 2753, 2753, 2754, 2757, 2760, 2763, 2766, 2769, - 2772, 2775, 2778, 2781, 2784, 2787, 2790, 2793, 2796, 2799, - 2802, 2805, 2808, 2811, 2814, 2817, 2823, 2822, 2827, 2827, - 2828, 2831, 2834, 2837, 2840, 2843, 2846, 2849, 2852, 2855, - 2858, 2861, 2864, 2867, 2870, 2873, 2876, 2879, 2882, 2885, - 2888, 2891, 2896, 2901, 2906, 2911, 2919, 2922, 2922, 2923, - 2924, 2924, 2925, 2925, 2926, 2927, 2928, 2929, 2930, 2930, - 2931, 2931, 2932, 2934, 2939, 2944, 2949, 2954, 2959, 2964, - 2969, 2974, 2979, 2984, 2989, 2995, 2994, 2999, 2999, 3000, - 3003, 3006, 3009, 3012, 3015, 3023, 3026, 3026, 3027, 3027, - 3028, 3029, 3030, 3031, 3031, 3032, 3033, 3035, 3041, 3047, - 3053, 3059, 3068, 3082, 3088 + 513, 519, 527, 567, 625, 654, 662, 677, 692, 701, + 715, 724, 752, 782, 807, 829, 851, 860, 862, 862, + 863, 863, 864, 864, 866, 875, 884, 897, 896, 914, + 914, 915, 915, 915, 917, 923, 932, 933, 933, 935, + 935, 936, 938, 945, 945, 958, 959, 961, 961, 962, + 962, 964, 972, 975, 981, 980, 986, 986, 987, 991, + 995, 999, 1003, 1007, 1011, 1015, 1019, 1030, 1029, 1115, + 1115, 1116, 1116, 1116, 1117, 1117, 1117, 1118, 1118, 1119, + 1120, 1120, 1122, 1128, 1134, 1140, 1151, 1157, 1163, 1174, + 1181, 1180, 1186, 1186, 1187, 1191, 1195, 1199, 1203, 1207, + 1211, 1215, 1219, 1223, 1227, 1231, 1235, 1239, 1243, 1247, + 1251, 1255, 1259, 1263, 1267, 1271, 1278, 1277, 1283, 1283, + 1284, 1288, 1292, 1296, 1300, 1304, 1308, 1312, 1316, 1320, + 1324, 1328, 1332, 1336, 1340, 1344, 1348, 1352, 1356, 1360, + 1364, 1368, 1372, 1376, 1380, 1391, 1390, 1451, 1451, 1452, + 1453, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, + 1462, 1462, 1463, 1464, 1465, 1466, 1468, 1474, 1480, 1486, + 1492, 1498, 1504, 1510, 1516, 1522, 1529, 1535, 1541, 1547, + 1556, 1566, 1565, 1571, 1571, 1572, 1576, 1587, 1586, 1593, + 1592, 1597, 1597, 1598, 1602, 1606, 1612, 1612, 1613, 1613, + 1613, 1613, 1613, 1615, 1615, 1617, 1617, 1619, 1633, 1653, + 1659, 1669, 1668, 1712, 1712, 1713, 1713, 1713, 1713, 1714, + 1714, 1714, 1715, 1716, 1716, 1718, 1724, 1730, 1736, 1742, + 1754, 1753, 1759, 1759, 1760, 1764, 1768, 1772, 1776, 1780, + 1784, 1788, 1792, 1796, 1802, 1816, 1825, 1839, 1838, 1853, + 1853, 1854, 1854, 1854, 1854, 1856, 1862, 1868, 1878, 1880, + 1880, 1881, 1881, 1883, 1899, 1898, 1923, 1923, 1924, 1924, + 1924, 1924, 1926, 1932, 1952, 1951, 1957, 1957, 1958, 1962, + 1966, 1970, 1974, 1978, 1982, 1986, 1990, 1994, 2004, 2003, + 2024, 2024, 2025, 2025, 2025, 2027, 2034, 2033, 2039, 2039, + 2040, 2044, 2048, 2052, 2056, 2060, 2064, 2068, 2072, 2076, + 2086, 2085, 2164, 2164, 2165, 2165, 2165, 2166, 2166, 2167, + 2168, 2168, 2168, 2169, 2169, 2169, 2170, 2170, 2171, 2173, + 2179, 2185, 2191, 2204, 2217, 2223, 2229, 2233, 2242, 2241, + 2246, 2246, 2247, 2251, 2257, 2268, 2274, 2280, 2286, 2302, + 2301, 2327, 2327, 2328, 2328, 2328, 2330, 2350, 2360, 2359, + 2386, 2386, 2387, 2387, 2387, 2389, 2395, 2404, 2406, 2406, + 2407, 2407, 2407, 2409, 2423, 2439, 2438, 2461, 2461, 2462, + 2462, 2462, 2464, 2470, 2479, 2482, 2482, 2483, 2483, 2484, + 2484, 2485, 2485, 2486, 2486, 2487, 2487, 2488, 2489, 2490, + 2490, 2491, 2491, 2492, 2492, 2493, 2493, 2494, 2495, 2495, + 2496, 2496, 2497, 2497, 2498, 2498, 2499, 2499, 2500, 2500, + 2501, 2501, 2502, 2503, 2504, 2504, 2505, 2505, 2506, 2507, + 2508, 2509, 2509, 2510, 2511, 2512, 2515, 2520, 2526, 2532, + 2538, 2544, 2549, 2554, 2559, 2564, 2569, 2574, 2579, 2584, + 2589, 2594, 2599, 2604, 2609, 2615, 2626, 2631, 2636, 2641, + 2646, 2651, 2656, 2659, 2664, 2667, 2672, 2677, 2682, 2687, + 2692, 2697, 2702, 2707, 2712, 2717, 2722, 2731, 2736, 2741, + 2747, 2746, 2751, 2751, 2752, 2755, 2758, 2761, 2764, 2767, + 2770, 2773, 2776, 2779, 2782, 2785, 2788, 2791, 2794, 2797, + 2800, 2803, 2806, 2809, 2812, 2815, 2821, 2820, 2825, 2825, + 2826, 2829, 2832, 2835, 2838, 2841, 2844, 2847, 2850, 2853, + 2856, 2859, 2862, 2865, 2868, 2871, 2874, 2877, 2880, 2883, + 2886, 2889, 2894, 2899, 2904, 2909, 2917, 2920, 2920, 2921, + 2922, 2922, 2923, 2923, 2924, 2925, 2926, 2927, 2928, 2928, + 2929, 2929, 2930, 2932, 2937, 2942, 2947, 2952, 2957, 2962, + 2967, 2972, 2977, 2982, 2987, 2993, 2992, 2997, 2997, 2998, + 3001, 3004, 3007, 3010, 3013, 3021, 3024, 3024, 3025, 3025, + 3026, 3027, 3028, 3029, 3029, 3030, 3031, 3033, 3039, 3045, + 3051, 3057, 3066, 3080, 3086 }; #endif @@ -3064,10 +3064,8 @@ yyreduce: break; } - if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string, - SSL_FILETYPE_PEM) <= 0 || - SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string, - SSL_FILETYPE_PEM) <= 0) + if (SSL_CTX_use_certificate_chain_file(ServerInfo.server_ctx, yylval.string) <= 0 || + SSL_CTX_use_certificate_chain_file(ServerInfo.client_ctx, yylval.string) <= 0) { report_crypto_errors(); conf_error_report("Could not open/read certificate file"); @@ -3094,11 +3092,11 @@ yyreduce: } #endif } -#line 3098 "conf_parser.c" /* yacc.c:1652 */ +#line 3096 "conf_parser.c" /* yacc.c:1652 */ break; case 83: -#line 570 "conf_parser.y" /* yacc.c:1652 */ +#line 568 "conf_parser.y" /* yacc.c:1652 */ { #ifdef HAVE_LIBCRYPTO BIO *file = NULL; @@ -3155,11 +3153,11 @@ yyreduce: } #endif } -#line 3159 "conf_parser.c" /* yacc.c:1652 */ +#line 3157 "conf_parser.c" /* yacc.c:1652 */ break; case 84: -#line 628 "conf_parser.y" /* yacc.c:1652 */ +#line 626 "conf_parser.y" /* yacc.c:1652 */ { #ifdef HAVE_LIBCRYPTO if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx) @@ -3187,22 +3185,22 @@ yyreduce: } #endif } -#line 3191 "conf_parser.c" /* yacc.c:1652 */ +#line 3189 "conf_parser.c" /* yacc.c:1652 */ break; case 85: -#line 657 "conf_parser.y" /* yacc.c:1652 */ +#line 655 "conf_parser.y" /* yacc.c:1652 */ { #ifdef HAVE_LIBCRYPTO if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx) SSL_CTX_set_cipher_list(ServerInfo.server_ctx, yylval.string); #endif } -#line 3202 "conf_parser.c" /* yacc.c:1652 */ +#line 3200 "conf_parser.c" /* yacc.c:1652 */ break; case 86: -#line 665 "conf_parser.y" /* yacc.c:1652 */ +#line 663 "conf_parser.y" /* yacc.c:1652 */ { /* this isn't rehashable */ if (conf_parser_ctx.pass == 2 && !ServerInfo.name) @@ -3216,11 +3214,11 @@ yyreduce: } } } -#line 3220 "conf_parser.c" /* yacc.c:1652 */ +#line 3218 "conf_parser.c" /* yacc.c:1652 */ break; case 87: -#line 680 "conf_parser.y" /* yacc.c:1652 */ +#line 678 "conf_parser.y" /* yacc.c:1652 */ { /* this isn't rehashable */ if (conf_parser_ctx.pass == 2 && !ServerInfo.sid) @@ -3234,11 +3232,11 @@ yyreduce: } } } -#line 3238 "conf_parser.c" /* yacc.c:1652 */ +#line 3236 "conf_parser.c" /* yacc.c:1652 */ break; case 88: -#line 695 "conf_parser.y" /* yacc.c:1652 */ +#line 693 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -3246,11 +3244,11 @@ yyreduce: ServerInfo.description = xstrdup(yylval.string); } } -#line 3250 "conf_parser.c" /* yacc.c:1652 */ +#line 3248 "conf_parser.c" /* yacc.c:1652 */ break; case 89: -#line 704 "conf_parser.y" /* yacc.c:1652 */ +#line 702 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -3263,11 +3261,11 @@ yyreduce: ServerInfo.network_name = xstrdup(yylval.string); } } -#line 3267 "conf_parser.c" /* yacc.c:1652 */ +#line 3265 "conf_parser.c" /* yacc.c:1652 */ break; case 90: -#line 718 "conf_parser.y" /* yacc.c:1652 */ +#line 716 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3275,11 +3273,11 @@ yyreduce: MyFree(ServerInfo.network_desc); ServerInfo.network_desc = xstrdup(yylval.string); } -#line 3279 "conf_parser.c" /* yacc.c:1652 */ +#line 3277 "conf_parser.c" /* yacc.c:1652 */ break; case 91: -#line 727 "conf_parser.y" /* yacc.c:1652 */ +#line 725 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2 && *yylval.string != '*') { @@ -3306,11 +3304,11 @@ yyreduce: } } } -#line 3310 "conf_parser.c" /* yacc.c:1652 */ +#line 3308 "conf_parser.c" /* yacc.c:1652 */ break; case 92: -#line 755 "conf_parser.y" /* yacc.c:1652 */ +#line 753 "conf_parser.y" /* yacc.c:1652 */ { #ifdef IPV6 if (conf_parser_ctx.pass == 2 && *yylval.string != '*') @@ -3339,11 +3337,11 @@ yyreduce: } #endif } -#line 3343 "conf_parser.c" /* yacc.c:1652 */ +#line 3341 "conf_parser.c" /* yacc.c:1652 */ break; case 93: -#line 785 "conf_parser.y" /* yacc.c:1652 */ +#line 783 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3367,11 +3365,11 @@ yyreduce: else ServerInfo.max_clients = (yyvsp[-1].number); } -#line 3371 "conf_parser.c" /* yacc.c:1652 */ +#line 3369 "conf_parser.c" /* yacc.c:1652 */ break; case 94: -#line 810 "conf_parser.y" /* yacc.c:1652 */ +#line 808 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3392,11 +3390,11 @@ yyreduce: else ServerInfo.max_nick_length = (yyvsp[-1].number); } -#line 3396 "conf_parser.c" /* yacc.c:1652 */ +#line 3394 "conf_parser.c" /* yacc.c:1652 */ break; case 95: -#line 832 "conf_parser.y" /* yacc.c:1652 */ +#line 830 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3417,20 +3415,20 @@ yyreduce: else ServerInfo.max_topic_length = (yyvsp[-1].number); } -#line 3421 "conf_parser.c" /* yacc.c:1652 */ +#line 3419 "conf_parser.c" /* yacc.c:1652 */ break; case 96: -#line 854 "conf_parser.y" /* yacc.c:1652 */ +#line 852 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ServerInfo.hub = yylval.number; } -#line 3430 "conf_parser.c" /* yacc.c:1652 */ +#line 3428 "conf_parser.c" /* yacc.c:1652 */ break; case 104: -#line 869 "conf_parser.y" /* yacc.c:1652 */ +#line 867 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3438,11 +3436,11 @@ yyreduce: MyFree(AdminInfo.name); AdminInfo.name = xstrdup(yylval.string); } -#line 3442 "conf_parser.c" /* yacc.c:1652 */ +#line 3440 "conf_parser.c" /* yacc.c:1652 */ break; case 105: -#line 878 "conf_parser.y" /* yacc.c:1652 */ +#line 876 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3450,11 +3448,11 @@ yyreduce: MyFree(AdminInfo.email); AdminInfo.email = xstrdup(yylval.string); } -#line 3454 "conf_parser.c" /* yacc.c:1652 */ +#line 3452 "conf_parser.c" /* yacc.c:1652 */ break; case 106: -#line 887 "conf_parser.y" /* yacc.c:1652 */ +#line 885 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3462,20 +3460,20 @@ yyreduce: MyFree(AdminInfo.description); AdminInfo.description = xstrdup(yylval.string); } -#line 3466 "conf_parser.c" /* yacc.c:1652 */ +#line 3464 "conf_parser.c" /* yacc.c:1652 */ break; case 107: -#line 899 "conf_parser.y" /* yacc.c:1652 */ +#line 897 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 3475 "conf_parser.c" /* yacc.c:1652 */ +#line 3473 "conf_parser.c" /* yacc.c:1652 */ break; case 108: -#line 903 "conf_parser.y" /* yacc.c:1652 */ +#line 901 "conf_parser.y" /* yacc.c:1652 */ { dlink_node *ptr = NULL; @@ -3488,47 +3486,47 @@ yyreduce: DLINK_FOREACH(ptr, block_state.mask.list.head) motd_add(ptr->data, block_state.file.buf); } -#line 3492 "conf_parser.c" /* yacc.c:1652 */ +#line 3490 "conf_parser.c" /* yacc.c:1652 */ break; case 114: -#line 920 "conf_parser.y" /* yacc.c:1652 */ +#line 918 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list); } -#line 3501 "conf_parser.c" /* yacc.c:1652 */ +#line 3499 "conf_parser.c" /* yacc.c:1652 */ break; case 115: -#line 926 "conf_parser.y" /* yacc.c:1652 */ +#line 924 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf)); } -#line 3510 "conf_parser.c" /* yacc.c:1652 */ +#line 3508 "conf_parser.c" /* yacc.c:1652 */ break; case 122: -#line 941 "conf_parser.y" /* yacc.c:1652 */ +#line 939 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigLoggingEntry.use_logging = yylval.number; } -#line 3519 "conf_parser.c" /* yacc.c:1652 */ +#line 3517 "conf_parser.c" /* yacc.c:1652 */ break; case 123: -#line 947 "conf_parser.y" /* yacc.c:1652 */ +#line 945 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 3528 "conf_parser.c" /* yacc.c:1652 */ +#line 3526 "conf_parser.c" /* yacc.c:1652 */ break; case 124: -#line 951 "conf_parser.y" /* yacc.c:1652 */ +#line 949 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3537,128 +3535,128 @@ yyreduce: log_set_file(block_state.type.value, block_state.size.value, block_state.file.buf); } -#line 3541 "conf_parser.c" /* yacc.c:1652 */ +#line 3539 "conf_parser.c" /* yacc.c:1652 */ break; case 131: -#line 967 "conf_parser.y" /* yacc.c:1652 */ +#line 965 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf)); } -#line 3552 "conf_parser.c" /* yacc.c:1652 */ +#line 3550 "conf_parser.c" /* yacc.c:1652 */ break; case 132: -#line 975 "conf_parser.y" /* yacc.c:1652 */ +#line 973 "conf_parser.y" /* yacc.c:1652 */ { block_state.size.value = (yyvsp[-1].number); } -#line 3560 "conf_parser.c" /* yacc.c:1652 */ +#line 3558 "conf_parser.c" /* yacc.c:1652 */ break; case 133: -#line 978 "conf_parser.y" /* yacc.c:1652 */ +#line 976 "conf_parser.y" /* yacc.c:1652 */ { block_state.size.value = 0; } -#line 3568 "conf_parser.c" /* yacc.c:1652 */ +#line 3566 "conf_parser.c" /* yacc.c:1652 */ break; case 134: -#line 983 "conf_parser.y" /* yacc.c:1652 */ +#line 981 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = 0; } -#line 3577 "conf_parser.c" /* yacc.c:1652 */ +#line 3575 "conf_parser.c" /* yacc.c:1652 */ break; case 138: -#line 990 "conf_parser.y" /* yacc.c:1652 */ +#line 988 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_USER; } -#line 3586 "conf_parser.c" /* yacc.c:1652 */ +#line 3584 "conf_parser.c" /* yacc.c:1652 */ break; case 139: -#line 994 "conf_parser.y" /* yacc.c:1652 */ +#line 992 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_OPER; } -#line 3595 "conf_parser.c" /* yacc.c:1652 */ +#line 3593 "conf_parser.c" /* yacc.c:1652 */ break; case 140: -#line 998 "conf_parser.y" /* yacc.c:1652 */ +#line 996 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_GLINE; } -#line 3604 "conf_parser.c" /* yacc.c:1652 */ +#line 3602 "conf_parser.c" /* yacc.c:1652 */ break; case 141: -#line 1002 "conf_parser.y" /* yacc.c:1652 */ +#line 1000 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_XLINE; } -#line 3613 "conf_parser.c" /* yacc.c:1652 */ +#line 3611 "conf_parser.c" /* yacc.c:1652 */ break; case 142: -#line 1006 "conf_parser.y" /* yacc.c:1652 */ +#line 1004 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_RESV; } -#line 3622 "conf_parser.c" /* yacc.c:1652 */ +#line 3620 "conf_parser.c" /* yacc.c:1652 */ break; case 143: -#line 1010 "conf_parser.y" /* yacc.c:1652 */ +#line 1008 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_DLINE; } -#line 3631 "conf_parser.c" /* yacc.c:1652 */ +#line 3629 "conf_parser.c" /* yacc.c:1652 */ break; case 144: -#line 1014 "conf_parser.y" /* yacc.c:1652 */ +#line 1012 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_KLINE; } -#line 3640 "conf_parser.c" /* yacc.c:1652 */ +#line 3638 "conf_parser.c" /* yacc.c:1652 */ break; case 145: -#line 1018 "conf_parser.y" /* yacc.c:1652 */ +#line 1016 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_KILL; } -#line 3649 "conf_parser.c" /* yacc.c:1652 */ +#line 3647 "conf_parser.c" /* yacc.c:1652 */ break; case 146: -#line 1022 "conf_parser.y" /* yacc.c:1652 */ +#line 1020 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.type.value = LOG_TYPE_DEBUG; } -#line 3658 "conf_parser.c" /* yacc.c:1652 */ +#line 3656 "conf_parser.c" /* yacc.c:1652 */ break; case 147: -#line 1032 "conf_parser.y" /* yacc.c:1652 */ +#line 1030 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3666,11 +3664,11 @@ yyreduce: reset_block_state(); block_state.flags.value |= CONF_FLAGS_ENCRYPTED; } -#line 3670 "conf_parser.c" /* yacc.c:1652 */ +#line 3668 "conf_parser.c" /* yacc.c:1652 */ break; case 148: -#line 1039 "conf_parser.y" /* yacc.c:1652 */ +#line 1037 "conf_parser.y" /* yacc.c:1652 */ { dlink_node *ptr = NULL; @@ -3748,38 +3746,38 @@ yyreduce: #endif /* HAVE_LIBCRYPTO */ } } -#line 3752 "conf_parser.c" /* yacc.c:1652 */ +#line 3750 "conf_parser.c" /* yacc.c:1652 */ break; case 162: -#line 1125 "conf_parser.y" /* yacc.c:1652 */ +#line 1123 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 3761 "conf_parser.c" /* yacc.c:1652 */ +#line 3759 "conf_parser.c" /* yacc.c:1652 */ break; case 163: -#line 1131 "conf_parser.y" /* yacc.c:1652 */ +#line 1129 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list); } -#line 3770 "conf_parser.c" /* yacc.c:1652 */ +#line 3768 "conf_parser.c" /* yacc.c:1652 */ break; case 164: -#line 1137 "conf_parser.y" /* yacc.c:1652 */ +#line 1135 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 3779 "conf_parser.c" /* yacc.c:1652 */ +#line 3777 "conf_parser.c" /* yacc.c:1652 */ break; case 165: -#line 1143 "conf_parser.y" /* yacc.c:1652 */ +#line 1141 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3789,29 +3787,29 @@ yyreduce: else block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED; } -#line 3793 "conf_parser.c" /* yacc.c:1652 */ +#line 3791 "conf_parser.c" /* yacc.c:1652 */ break; case 166: -#line 1154 "conf_parser.y" /* yacc.c:1652 */ +#line 1152 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf)); } -#line 3802 "conf_parser.c" /* yacc.c:1652 */ +#line 3800 "conf_parser.c" /* yacc.c:1652 */ break; case 167: -#line 1160 "conf_parser.y" /* yacc.c:1652 */ +#line 1158 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf)); } -#line 3811 "conf_parser.c" /* yacc.c:1652 */ +#line 3809 "conf_parser.c" /* yacc.c:1652 */ break; case 168: -#line 1166 "conf_parser.y" /* yacc.c:1652 */ +#line 1164 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -3821,461 +3819,461 @@ yyreduce: else block_state.flags.value &= ~CONF_FLAGS_SSL; } -#line 3825 "conf_parser.c" /* yacc.c:1652 */ +#line 3823 "conf_parser.c" /* yacc.c:1652 */ break; case 169: -#line 1177 "conf_parser.y" /* yacc.c:1652 */ +#line 1175 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf)); } -#line 3834 "conf_parser.c" /* yacc.c:1652 */ +#line 3832 "conf_parser.c" /* yacc.c:1652 */ break; case 170: -#line 1183 "conf_parser.y" /* yacc.c:1652 */ +#line 1181 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value = 0; } -#line 3843 "conf_parser.c" /* yacc.c:1652 */ +#line 3841 "conf_parser.c" /* yacc.c:1652 */ break; case 174: -#line 1190 "conf_parser.y" /* yacc.c:1652 */ +#line 1188 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_BOTS; } -#line 3852 "conf_parser.c" /* yacc.c:1652 */ +#line 3850 "conf_parser.c" /* yacc.c:1652 */ break; case 175: -#line 1194 "conf_parser.y" /* yacc.c:1652 */ +#line 1192 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_CCONN; } -#line 3861 "conf_parser.c" /* yacc.c:1652 */ +#line 3859 "conf_parser.c" /* yacc.c:1652 */ break; case 176: -#line 1198 "conf_parser.y" /* yacc.c:1652 */ +#line 1196 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_DEAF; } -#line 3870 "conf_parser.c" /* yacc.c:1652 */ +#line 3868 "conf_parser.c" /* yacc.c:1652 */ break; case 177: -#line 1202 "conf_parser.y" /* yacc.c:1652 */ +#line 1200 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_DEBUG; } -#line 3879 "conf_parser.c" /* yacc.c:1652 */ +#line 3877 "conf_parser.c" /* yacc.c:1652 */ break; case 178: -#line 1206 "conf_parser.y" /* yacc.c:1652 */ +#line 1204 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_FULL; } -#line 3888 "conf_parser.c" /* yacc.c:1652 */ +#line 3886 "conf_parser.c" /* yacc.c:1652 */ break; case 179: -#line 1210 "conf_parser.y" /* yacc.c:1652 */ +#line 1208 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_HIDDEN; } -#line 3897 "conf_parser.c" /* yacc.c:1652 */ +#line 3895 "conf_parser.c" /* yacc.c:1652 */ break; case 180: -#line 1214 "conf_parser.y" /* yacc.c:1652 */ +#line 1212 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_SKILL; } -#line 3906 "conf_parser.c" /* yacc.c:1652 */ +#line 3904 "conf_parser.c" /* yacc.c:1652 */ break; case 181: -#line 1218 "conf_parser.y" /* yacc.c:1652 */ +#line 1216 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_NCHANGE; } -#line 3915 "conf_parser.c" /* yacc.c:1652 */ +#line 3913 "conf_parser.c" /* yacc.c:1652 */ break; case 182: -#line 1222 "conf_parser.y" /* yacc.c:1652 */ +#line 1220 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_REJ; } -#line 3924 "conf_parser.c" /* yacc.c:1652 */ +#line 3922 "conf_parser.c" /* yacc.c:1652 */ break; case 183: -#line 1226 "conf_parser.y" /* yacc.c:1652 */ +#line 1224 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_UNAUTH; } -#line 3933 "conf_parser.c" /* yacc.c:1652 */ +#line 3931 "conf_parser.c" /* yacc.c:1652 */ break; case 184: -#line 1230 "conf_parser.y" /* yacc.c:1652 */ +#line 1228 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_SPY; } -#line 3942 "conf_parser.c" /* yacc.c:1652 */ +#line 3940 "conf_parser.c" /* yacc.c:1652 */ break; case 185: -#line 1234 "conf_parser.y" /* yacc.c:1652 */ +#line 1232 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_EXTERNAL; } -#line 3951 "conf_parser.c" /* yacc.c:1652 */ +#line 3949 "conf_parser.c" /* yacc.c:1652 */ break; case 186: -#line 1238 "conf_parser.y" /* yacc.c:1652 */ +#line 1236 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_OPERWALL; } -#line 3960 "conf_parser.c" /* yacc.c:1652 */ +#line 3958 "conf_parser.c" /* yacc.c:1652 */ break; case 187: -#line 1242 "conf_parser.y" /* yacc.c:1652 */ +#line 1240 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_SERVNOTICE; } -#line 3969 "conf_parser.c" /* yacc.c:1652 */ +#line 3967 "conf_parser.c" /* yacc.c:1652 */ break; case 188: -#line 1246 "conf_parser.y" /* yacc.c:1652 */ +#line 1244 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_INVISIBLE; } -#line 3978 "conf_parser.c" /* yacc.c:1652 */ +#line 3976 "conf_parser.c" /* yacc.c:1652 */ break; case 189: -#line 1250 "conf_parser.y" /* yacc.c:1652 */ +#line 1248 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_WALLOP; } -#line 3987 "conf_parser.c" /* yacc.c:1652 */ +#line 3985 "conf_parser.c" /* yacc.c:1652 */ break; case 190: -#line 1254 "conf_parser.y" /* yacc.c:1652 */ +#line 1252 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_SOFTCALLERID; } -#line 3996 "conf_parser.c" /* yacc.c:1652 */ +#line 3994 "conf_parser.c" /* yacc.c:1652 */ break; case 191: -#line 1258 "conf_parser.y" /* yacc.c:1652 */ +#line 1256 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_CALLERID; } -#line 4005 "conf_parser.c" /* yacc.c:1652 */ +#line 4003 "conf_parser.c" /* yacc.c:1652 */ break; case 192: -#line 1262 "conf_parser.y" /* yacc.c:1652 */ +#line 1260 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_LOCOPS; } -#line 4014 "conf_parser.c" /* yacc.c:1652 */ +#line 4012 "conf_parser.c" /* yacc.c:1652 */ break; case 193: -#line 1266 "conf_parser.y" /* yacc.c:1652 */ +#line 1264 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_REGONLY; } -#line 4023 "conf_parser.c" /* yacc.c:1652 */ +#line 4021 "conf_parser.c" /* yacc.c:1652 */ break; case 194: -#line 1270 "conf_parser.y" /* yacc.c:1652 */ +#line 1268 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_FARCONNECT; } -#line 4032 "conf_parser.c" /* yacc.c:1652 */ +#line 4030 "conf_parser.c" /* yacc.c:1652 */ break; case 195: -#line 1274 "conf_parser.y" /* yacc.c:1652 */ +#line 1272 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.modes.value |= UMODE_GOD; } -#line 4041 "conf_parser.c" /* yacc.c:1652 */ +#line 4039 "conf_parser.c" /* yacc.c:1652 */ break; case 196: -#line 1280 "conf_parser.y" /* yacc.c:1652 */ +#line 1278 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value = 0; } -#line 4050 "conf_parser.c" /* yacc.c:1652 */ +#line 4048 "conf_parser.c" /* yacc.c:1652 */ break; case 200: -#line 1287 "conf_parser.y" /* yacc.c:1652 */ +#line 1285 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_KILL_REMOTE; } -#line 4059 "conf_parser.c" /* yacc.c:1652 */ +#line 4057 "conf_parser.c" /* yacc.c:1652 */ break; case 201: -#line 1291 "conf_parser.y" /* yacc.c:1652 */ +#line 1289 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_KILL; } -#line 4068 "conf_parser.c" /* yacc.c:1652 */ +#line 4066 "conf_parser.c" /* yacc.c:1652 */ break; case 202: -#line 1295 "conf_parser.y" /* yacc.c:1652 */ +#line 1293 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_CONNECT_REMOTE; } -#line 4077 "conf_parser.c" /* yacc.c:1652 */ +#line 4075 "conf_parser.c" /* yacc.c:1652 */ break; case 203: -#line 1299 "conf_parser.y" /* yacc.c:1652 */ +#line 1297 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_CONNECT; } -#line 4086 "conf_parser.c" /* yacc.c:1652 */ +#line 4084 "conf_parser.c" /* yacc.c:1652 */ break; case 204: -#line 1303 "conf_parser.y" /* yacc.c:1652 */ +#line 1301 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_SQUIT_REMOTE; } -#line 4095 "conf_parser.c" /* yacc.c:1652 */ +#line 4093 "conf_parser.c" /* yacc.c:1652 */ break; case 205: -#line 1307 "conf_parser.y" /* yacc.c:1652 */ +#line 1305 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_SQUIT; } -#line 4104 "conf_parser.c" /* yacc.c:1652 */ +#line 4102 "conf_parser.c" /* yacc.c:1652 */ break; case 206: -#line 1311 "conf_parser.y" /* yacc.c:1652 */ +#line 1309 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_K; } -#line 4113 "conf_parser.c" /* yacc.c:1652 */ +#line 4111 "conf_parser.c" /* yacc.c:1652 */ break; case 207: -#line 1315 "conf_parser.y" /* yacc.c:1652 */ +#line 1313 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_UNKLINE; } -#line 4122 "conf_parser.c" /* yacc.c:1652 */ +#line 4120 "conf_parser.c" /* yacc.c:1652 */ break; case 208: -#line 1319 "conf_parser.y" /* yacc.c:1652 */ +#line 1317 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_DLINE; } -#line 4131 "conf_parser.c" /* yacc.c:1652 */ +#line 4129 "conf_parser.c" /* yacc.c:1652 */ break; case 209: -#line 1323 "conf_parser.y" /* yacc.c:1652 */ +#line 1321 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_UNDLINE; } -#line 4140 "conf_parser.c" /* yacc.c:1652 */ +#line 4138 "conf_parser.c" /* yacc.c:1652 */ break; case 210: -#line 1327 "conf_parser.y" /* yacc.c:1652 */ +#line 1325 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_XLINE; } -#line 4149 "conf_parser.c" /* yacc.c:1652 */ +#line 4147 "conf_parser.c" /* yacc.c:1652 */ break; case 211: -#line 1331 "conf_parser.y" /* yacc.c:1652 */ +#line 1329 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_UNXLINE; } -#line 4158 "conf_parser.c" /* yacc.c:1652 */ +#line 4156 "conf_parser.c" /* yacc.c:1652 */ break; case 212: -#line 1335 "conf_parser.y" /* yacc.c:1652 */ +#line 1333 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_GLINE; } -#line 4167 "conf_parser.c" /* yacc.c:1652 */ +#line 4165 "conf_parser.c" /* yacc.c:1652 */ break; case 213: -#line 1339 "conf_parser.y" /* yacc.c:1652 */ +#line 1337 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_DIE; } -#line 4176 "conf_parser.c" /* yacc.c:1652 */ +#line 4174 "conf_parser.c" /* yacc.c:1652 */ break; case 214: -#line 1343 "conf_parser.y" /* yacc.c:1652 */ +#line 1341 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_RESTART; } -#line 4185 "conf_parser.c" /* yacc.c:1652 */ +#line 4183 "conf_parser.c" /* yacc.c:1652 */ break; case 215: -#line 1347 "conf_parser.y" /* yacc.c:1652 */ +#line 1345 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_REHASH; } -#line 4194 "conf_parser.c" /* yacc.c:1652 */ +#line 4192 "conf_parser.c" /* yacc.c:1652 */ break; case 216: -#line 1351 "conf_parser.y" /* yacc.c:1652 */ +#line 1349 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_ADMIN; } -#line 4203 "conf_parser.c" /* yacc.c:1652 */ +#line 4201 "conf_parser.c" /* yacc.c:1652 */ break; case 217: -#line 1355 "conf_parser.y" /* yacc.c:1652 */ +#line 1353 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_OPERWALL; } -#line 4212 "conf_parser.c" /* yacc.c:1652 */ +#line 4210 "conf_parser.c" /* yacc.c:1652 */ break; case 218: -#line 1359 "conf_parser.y" /* yacc.c:1652 */ +#line 1357 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_GLOBOPS; } -#line 4221 "conf_parser.c" /* yacc.c:1652 */ +#line 4219 "conf_parser.c" /* yacc.c:1652 */ break; case 219: -#line 1363 "conf_parser.y" /* yacc.c:1652 */ +#line 1361 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_WALLOPS; } -#line 4230 "conf_parser.c" /* yacc.c:1652 */ +#line 4228 "conf_parser.c" /* yacc.c:1652 */ break; case 220: -#line 1367 "conf_parser.y" /* yacc.c:1652 */ +#line 1365 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_LOCOPS; } -#line 4239 "conf_parser.c" /* yacc.c:1652 */ +#line 4237 "conf_parser.c" /* yacc.c:1652 */ break; case 221: -#line 1371 "conf_parser.y" /* yacc.c:1652 */ +#line 1369 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_REMOTEBAN; } -#line 4248 "conf_parser.c" /* yacc.c:1652 */ +#line 4246 "conf_parser.c" /* yacc.c:1652 */ break; case 222: -#line 1375 "conf_parser.y" /* yacc.c:1652 */ +#line 1373 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_SET; } -#line 4257 "conf_parser.c" /* yacc.c:1652 */ +#line 4255 "conf_parser.c" /* yacc.c:1652 */ break; case 223: -#line 1379 "conf_parser.y" /* yacc.c:1652 */ +#line 1377 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_MODULE; } -#line 4266 "conf_parser.c" /* yacc.c:1652 */ +#line 4264 "conf_parser.c" /* yacc.c:1652 */ break; case 224: -#line 1383 "conf_parser.y" /* yacc.c:1652 */ +#line 1381 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value |= OPER_FLAG_TKLINE; } -#line 4275 "conf_parser.c" /* yacc.c:1652 */ +#line 4273 "conf_parser.c" /* yacc.c:1652 */ break; case 225: -#line 1393 "conf_parser.y" /* yacc.c:1652 */ +#line 1391 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 1) break; @@ -4288,11 +4286,11 @@ yyreduce: block_state.max_sendq.value = DEFAULT_SENDQ; block_state.max_recvq.value = DEFAULT_RECVQ; } -#line 4292 "conf_parser.c" /* yacc.c:1652 */ +#line 4290 "conf_parser.c" /* yacc.c:1652 */ break; case 226: -#line 1405 "conf_parser.y" /* yacc.c:1652 */ +#line 1403 "conf_parser.y" /* yacc.c:1652 */ { struct ClassItem *class = NULL; @@ -4340,129 +4338,129 @@ yyreduce: class->cidr_bitlen_ipv6 = block_state.cidr_bitlen_ipv6.value; class->number_per_cidr = block_state.number_per_cidr.value; } -#line 4344 "conf_parser.c" /* yacc.c:1652 */ +#line 4342 "conf_parser.c" /* yacc.c:1652 */ break; case 246: -#line 1471 "conf_parser.y" /* yacc.c:1652 */ +#line 1469 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf)); } -#line 4353 "conf_parser.c" /* yacc.c:1652 */ +#line 4351 "conf_parser.c" /* yacc.c:1652 */ break; case 247: -#line 1477 "conf_parser.y" /* yacc.c:1652 */ +#line 1475 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.ping_freq.value = (yyvsp[-1].number); } -#line 4362 "conf_parser.c" /* yacc.c:1652 */ +#line 4360 "conf_parser.c" /* yacc.c:1652 */ break; case 248: -#line 1483 "conf_parser.y" /* yacc.c:1652 */ +#line 1481 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_perip.value = (yyvsp[-1].number); } -#line 4371 "conf_parser.c" /* yacc.c:1652 */ +#line 4369 "conf_parser.c" /* yacc.c:1652 */ break; case 249: -#line 1489 "conf_parser.y" /* yacc.c:1652 */ +#line 1487 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.con_freq.value = (yyvsp[-1].number); } -#line 4380 "conf_parser.c" /* yacc.c:1652 */ +#line 4378 "conf_parser.c" /* yacc.c:1652 */ break; case 250: -#line 1495 "conf_parser.y" /* yacc.c:1652 */ +#line 1493 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_total.value = (yyvsp[-1].number); } -#line 4389 "conf_parser.c" /* yacc.c:1652 */ +#line 4387 "conf_parser.c" /* yacc.c:1652 */ break; case 251: -#line 1501 "conf_parser.y" /* yacc.c:1652 */ +#line 1499 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_global.value = (yyvsp[-1].number); } -#line 4398 "conf_parser.c" /* yacc.c:1652 */ +#line 4396 "conf_parser.c" /* yacc.c:1652 */ break; case 252: -#line 1507 "conf_parser.y" /* yacc.c:1652 */ +#line 1505 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_local.value = (yyvsp[-1].number); } -#line 4407 "conf_parser.c" /* yacc.c:1652 */ +#line 4405 "conf_parser.c" /* yacc.c:1652 */ break; case 253: -#line 1513 "conf_parser.y" /* yacc.c:1652 */ +#line 1511 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_ident.value = (yyvsp[-1].number); } -#line 4416 "conf_parser.c" /* yacc.c:1652 */ +#line 4414 "conf_parser.c" /* yacc.c:1652 */ break; case 254: -#line 1519 "conf_parser.y" /* yacc.c:1652 */ +#line 1517 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.max_sendq.value = (yyvsp[-1].number); } -#line 4425 "conf_parser.c" /* yacc.c:1652 */ +#line 4423 "conf_parser.c" /* yacc.c:1652 */ break; case 255: -#line 1525 "conf_parser.y" /* yacc.c:1652 */ +#line 1523 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) if ((yyvsp[-1].number) >= CLIENT_FLOOD_MIN && (yyvsp[-1].number) <= CLIENT_FLOOD_MAX) block_state.max_recvq.value = (yyvsp[-1].number); } -#line 4435 "conf_parser.c" /* yacc.c:1652 */ +#line 4433 "conf_parser.c" /* yacc.c:1652 */ break; case 256: -#line 1532 "conf_parser.y" /* yacc.c:1652 */ +#line 1530 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.cidr_bitlen_ipv4.value = (yyvsp[-1].number) > 32 ? 32 : (yyvsp[-1].number); } -#line 4444 "conf_parser.c" /* yacc.c:1652 */ +#line 4442 "conf_parser.c" /* yacc.c:1652 */ break; case 257: -#line 1538 "conf_parser.y" /* yacc.c:1652 */ +#line 1536 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.cidr_bitlen_ipv6.value = (yyvsp[-1].number) > 128 ? 128 : (yyvsp[-1].number); } -#line 4453 "conf_parser.c" /* yacc.c:1652 */ +#line 4451 "conf_parser.c" /* yacc.c:1652 */ break; case 258: -#line 1544 "conf_parser.y" /* yacc.c:1652 */ +#line 1542 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.number_per_cidr.value = (yyvsp[-1].number); } -#line 4462 "conf_parser.c" /* yacc.c:1652 */ +#line 4460 "conf_parser.c" /* yacc.c:1652 */ break; case 259: -#line 1550 "conf_parser.y" /* yacc.c:1652 */ +#line 1548 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 1) break; @@ -4470,11 +4468,11 @@ yyreduce: block_state.min_idle.value = (yyvsp[-1].number); block_state.flags.value |= CLASS_FLAGS_FAKE_IDLE; } -#line 4474 "conf_parser.c" /* yacc.c:1652 */ +#line 4472 "conf_parser.c" /* yacc.c:1652 */ break; case 260: -#line 1559 "conf_parser.y" /* yacc.c:1652 */ +#line 1557 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 1) break; @@ -4482,88 +4480,88 @@ yyreduce: block_state.max_idle.value = (yyvsp[-1].number); block_state.flags.value |= CLASS_FLAGS_FAKE_IDLE; } -#line 4486 "conf_parser.c" /* yacc.c:1652 */ +#line 4484 "conf_parser.c" /* yacc.c:1652 */ break; case 261: -#line 1568 "conf_parser.y" /* yacc.c:1652 */ +#line 1566 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.flags.value &= CLASS_FLAGS_FAKE_IDLE; } -#line 4495 "conf_parser.c" /* yacc.c:1652 */ +#line 4493 "conf_parser.c" /* yacc.c:1652 */ break; case 265: -#line 1575 "conf_parser.y" /* yacc.c:1652 */ +#line 1573 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.flags.value |= CLASS_FLAGS_RANDOM_IDLE; } -#line 4504 "conf_parser.c" /* yacc.c:1652 */ +#line 4502 "conf_parser.c" /* yacc.c:1652 */ break; case 266: -#line 1579 "conf_parser.y" /* yacc.c:1652 */ +#line 1577 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 1) block_state.flags.value |= CLASS_FLAGS_HIDE_IDLE_FROM_OPERS; } -#line 4513 "conf_parser.c" /* yacc.c:1652 */ +#line 4511 "conf_parser.c" /* yacc.c:1652 */ break; case 267: -#line 1589 "conf_parser.y" /* yacc.c:1652 */ +#line 1587 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 4522 "conf_parser.c" /* yacc.c:1652 */ +#line 4520 "conf_parser.c" /* yacc.c:1652 */ break; case 269: -#line 1595 "conf_parser.y" /* yacc.c:1652 */ +#line 1593 "conf_parser.y" /* yacc.c:1652 */ { block_state.flags.value = 0; } -#line 4530 "conf_parser.c" /* yacc.c:1652 */ +#line 4528 "conf_parser.c" /* yacc.c:1652 */ break; case 273: -#line 1601 "conf_parser.y" /* yacc.c:1652 */ +#line 1599 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= LISTENER_SSL; } -#line 4539 "conf_parser.c" /* yacc.c:1652 */ +#line 4537 "conf_parser.c" /* yacc.c:1652 */ break; case 274: -#line 1605 "conf_parser.y" /* yacc.c:1652 */ +#line 1603 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= LISTENER_HIDDEN; } -#line 4548 "conf_parser.c" /* yacc.c:1652 */ +#line 4546 "conf_parser.c" /* yacc.c:1652 */ break; case 275: -#line 1609 "conf_parser.y" /* yacc.c:1652 */ +#line 1607 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= LISTENER_SERVER; } -#line 4557 "conf_parser.c" /* yacc.c:1652 */ +#line 4555 "conf_parser.c" /* yacc.c:1652 */ break; case 283: -#line 1617 "conf_parser.y" /* yacc.c:1652 */ +#line 1615 "conf_parser.y" /* yacc.c:1652 */ { block_state.flags.value = 0; } -#line 4563 "conf_parser.c" /* yacc.c:1652 */ +#line 4561 "conf_parser.c" /* yacc.c:1652 */ break; case 287: -#line 1622 "conf_parser.y" /* yacc.c:1652 */ +#line 1620 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -4578,11 +4576,11 @@ yyreduce: add_listener((yyvsp[0].number), block_state.addr.buf, block_state.flags.value); } } -#line 4582 "conf_parser.c" /* yacc.c:1652 */ +#line 4580 "conf_parser.c" /* yacc.c:1652 */ break; case 288: -#line 1636 "conf_parser.y" /* yacc.c:1652 */ +#line 1634 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -4601,38 +4599,38 @@ yyreduce: add_listener(i, block_state.addr.buf, block_state.flags.value); } } -#line 4605 "conf_parser.c" /* yacc.c:1652 */ +#line 4603 "conf_parser.c" /* yacc.c:1652 */ break; case 289: -#line 1656 "conf_parser.y" /* yacc.c:1652 */ +#line 1654 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf)); } -#line 4614 "conf_parser.c" /* yacc.c:1652 */ +#line 4612 "conf_parser.c" /* yacc.c:1652 */ break; case 290: -#line 1662 "conf_parser.y" /* yacc.c:1652 */ +#line 1660 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf)); } -#line 4623 "conf_parser.c" /* yacc.c:1652 */ +#line 4621 "conf_parser.c" /* yacc.c:1652 */ break; case 291: -#line 1671 "conf_parser.y" /* yacc.c:1652 */ +#line 1669 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 4632 "conf_parser.c" /* yacc.c:1652 */ +#line 4630 "conf_parser.c" /* yacc.c:1652 */ break; case 292: -#line 1675 "conf_parser.y" /* yacc.c:1652 */ +#line 1673 "conf_parser.y" /* yacc.c:1652 */ { dlink_node *ptr = NULL; @@ -4671,47 +4669,47 @@ yyreduce: add_conf_by_address(CONF_CLIENT, conf); } } -#line 4675 "conf_parser.c" /* yacc.c:1652 */ +#line 4673 "conf_parser.c" /* yacc.c:1652 */ break; case 305: -#line 1721 "conf_parser.y" /* yacc.c:1652 */ +#line 1719 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list); } -#line 4684 "conf_parser.c" /* yacc.c:1652 */ +#line 4682 "conf_parser.c" /* yacc.c:1652 */ break; case 306: -#line 1727 "conf_parser.y" /* yacc.c:1652 */ +#line 1725 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 4693 "conf_parser.c" /* yacc.c:1652 */ +#line 4691 "conf_parser.c" /* yacc.c:1652 */ break; case 307: -#line 1733 "conf_parser.y" /* yacc.c:1652 */ +#line 1731 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf)); } -#line 4702 "conf_parser.c" /* yacc.c:1652 */ +#line 4700 "conf_parser.c" /* yacc.c:1652 */ break; case 308: -#line 1739 "conf_parser.y" /* yacc.c:1652 */ +#line 1737 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf)); } -#line 4711 "conf_parser.c" /* yacc.c:1652 */ +#line 4709 "conf_parser.c" /* yacc.c:1652 */ break; case 309: -#line 1745 "conf_parser.y" /* yacc.c:1652 */ +#line 1743 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -4721,110 +4719,110 @@ yyreduce: block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED; } } -#line 4725 "conf_parser.c" /* yacc.c:1652 */ +#line 4723 "conf_parser.c" /* yacc.c:1652 */ break; case 310: -#line 1756 "conf_parser.y" /* yacc.c:1652 */ +#line 1754 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value &= (CONF_FLAGS_ENCRYPTED | CONF_FLAGS_SPOOF_IP); } -#line 4734 "conf_parser.c" /* yacc.c:1652 */ +#line 4732 "conf_parser.c" /* yacc.c:1652 */ break; case 314: -#line 1763 "conf_parser.y" /* yacc.c:1652 */ +#line 1761 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_SPOOF_NOTICE; } -#line 4743 "conf_parser.c" /* yacc.c:1652 */ +#line 4741 "conf_parser.c" /* yacc.c:1652 */ break; case 315: -#line 1767 "conf_parser.y" /* yacc.c:1652 */ +#line 1765 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_NOLIMIT; } -#line 4752 "conf_parser.c" /* yacc.c:1652 */ +#line 4750 "conf_parser.c" /* yacc.c:1652 */ break; case 316: -#line 1771 "conf_parser.y" /* yacc.c:1652 */ +#line 1769 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_EXEMPTKLINE; } -#line 4761 "conf_parser.c" /* yacc.c:1652 */ +#line 4759 "conf_parser.c" /* yacc.c:1652 */ break; case 317: -#line 1775 "conf_parser.y" /* yacc.c:1652 */ +#line 1773 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_NEED_IDENTD; } -#line 4770 "conf_parser.c" /* yacc.c:1652 */ +#line 4768 "conf_parser.c" /* yacc.c:1652 */ break; case 318: -#line 1779 "conf_parser.y" /* yacc.c:1652 */ +#line 1777 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_CAN_FLOOD; } -#line 4779 "conf_parser.c" /* yacc.c:1652 */ +#line 4777 "conf_parser.c" /* yacc.c:1652 */ break; case 319: -#line 1783 "conf_parser.y" /* yacc.c:1652 */ +#line 1781 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_NO_TILDE; } -#line 4788 "conf_parser.c" /* yacc.c:1652 */ +#line 4786 "conf_parser.c" /* yacc.c:1652 */ break; case 320: -#line 1787 "conf_parser.y" /* yacc.c:1652 */ +#line 1785 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_EXEMPTGLINE; } -#line 4797 "conf_parser.c" /* yacc.c:1652 */ +#line 4795 "conf_parser.c" /* yacc.c:1652 */ break; case 321: -#line 1791 "conf_parser.y" /* yacc.c:1652 */ +#line 1789 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_EXEMPTRESV; } -#line 4806 "conf_parser.c" /* yacc.c:1652 */ +#line 4804 "conf_parser.c" /* yacc.c:1652 */ break; case 322: -#line 1795 "conf_parser.y" /* yacc.c:1652 */ +#line 1793 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_WEBIRC; } -#line 4815 "conf_parser.c" /* yacc.c:1652 */ +#line 4813 "conf_parser.c" /* yacc.c:1652 */ break; case 323: -#line 1799 "conf_parser.y" /* yacc.c:1652 */ +#line 1797 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_NEED_PASSWORD; } -#line 4824 "conf_parser.c" /* yacc.c:1652 */ +#line 4822 "conf_parser.c" /* yacc.c:1652 */ break; case 324: -#line 1805 "conf_parser.y" /* yacc.c:1652 */ +#line 1803 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4837,11 +4835,11 @@ yyreduce: else ilog(LOG_TYPE_IRCD, "Spoof either is too long or contains invalid characters. Ignoring it."); } -#line 4841 "conf_parser.c" /* yacc.c:1652 */ +#line 4839 "conf_parser.c" /* yacc.c:1652 */ break; case 325: -#line 1819 "conf_parser.y" /* yacc.c:1652 */ +#line 1817 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4849,11 +4847,11 @@ yyreduce: strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); block_state.flags.value |= CONF_FLAGS_REDIR; } -#line 4853 "conf_parser.c" /* yacc.c:1652 */ +#line 4851 "conf_parser.c" /* yacc.c:1652 */ break; case 326: -#line 1828 "conf_parser.y" /* yacc.c:1652 */ +#line 1826 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4861,11 +4859,11 @@ yyreduce: block_state.flags.value |= CONF_FLAGS_REDIR; block_state.port.value = (yyvsp[-1].number); } -#line 4865 "conf_parser.c" /* yacc.c:1652 */ +#line 4863 "conf_parser.c" /* yacc.c:1652 */ break; case 327: -#line 1841 "conf_parser.y" /* yacc.c:1652 */ +#line 1839 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4873,49 +4871,49 @@ yyreduce: reset_block_state(); strlcpy(block_state.rpass.buf, CONF_NOREASON, sizeof(block_state.rpass.buf)); } -#line 4877 "conf_parser.c" /* yacc.c:1652 */ +#line 4875 "conf_parser.c" /* yacc.c:1652 */ break; case 328: -#line 1848 "conf_parser.y" /* yacc.c:1652 */ +#line 1846 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; create_resv(block_state.name.buf, block_state.rpass.buf, &block_state.mask.list); } -#line 4888 "conf_parser.c" /* yacc.c:1652 */ +#line 4886 "conf_parser.c" /* yacc.c:1652 */ break; case 335: -#line 1859 "conf_parser.y" /* yacc.c:1652 */ +#line 1857 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 4897 "conf_parser.c" /* yacc.c:1652 */ +#line 4895 "conf_parser.c" /* yacc.c:1652 */ break; case 336: -#line 1865 "conf_parser.y" /* yacc.c:1652 */ +#line 1863 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 4906 "conf_parser.c" /* yacc.c:1652 */ +#line 4904 "conf_parser.c" /* yacc.c:1652 */ break; case 337: -#line 1871 "conf_parser.y" /* yacc.c:1652 */ +#line 1869 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list); } -#line 4915 "conf_parser.c" /* yacc.c:1652 */ +#line 4913 "conf_parser.c" /* yacc.c:1652 */ break; case 343: -#line 1886 "conf_parser.y" /* yacc.c:1652 */ +#line 1884 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4926,11 +4924,11 @@ yyreduce: conf->name = xstrdup(yylval.string); } } -#line 4930 "conf_parser.c" /* yacc.c:1652 */ +#line 4928 "conf_parser.c" /* yacc.c:1652 */ break; case 344: -#line 1901 "conf_parser.y" /* yacc.c:1652 */ +#line 1899 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -4942,11 +4940,11 @@ yyreduce: strlcpy(block_state.host.buf, "*", sizeof(block_state.host.buf)); block_state.flags.value = SHARED_ALL; } -#line 4946 "conf_parser.c" /* yacc.c:1652 */ +#line 4944 "conf_parser.c" /* yacc.c:1652 */ break; case 345: -#line 1912 "conf_parser.y" /* yacc.c:1652 */ +#line 1910 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; @@ -4959,20 +4957,20 @@ yyreduce: conf->user = xstrdup(block_state.user.buf); conf->host = xstrdup(block_state.host.buf); } -#line 4963 "conf_parser.c" /* yacc.c:1652 */ +#line 4961 "conf_parser.c" /* yacc.c:1652 */ break; case 352: -#line 1929 "conf_parser.y" /* yacc.c:1652 */ +#line 1927 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 4972 "conf_parser.c" /* yacc.c:1652 */ +#line 4970 "conf_parser.c" /* yacc.c:1652 */ break; case 353: -#line 1935 "conf_parser.y" /* yacc.c:1652 */ +#line 1933 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -4990,110 +4988,110 @@ yyreduce: split_nuh(&nuh); } } -#line 4994 "conf_parser.c" /* yacc.c:1652 */ +#line 4992 "conf_parser.c" /* yacc.c:1652 */ break; case 354: -#line 1954 "conf_parser.y" /* yacc.c:1652 */ +#line 1952 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value = 0; } -#line 5003 "conf_parser.c" /* yacc.c:1652 */ +#line 5001 "conf_parser.c" /* yacc.c:1652 */ break; case 358: -#line 1961 "conf_parser.y" /* yacc.c:1652 */ +#line 1959 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_KLINE; } -#line 5012 "conf_parser.c" /* yacc.c:1652 */ +#line 5010 "conf_parser.c" /* yacc.c:1652 */ break; case 359: -#line 1965 "conf_parser.y" /* yacc.c:1652 */ +#line 1963 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNKLINE; } -#line 5021 "conf_parser.c" /* yacc.c:1652 */ +#line 5019 "conf_parser.c" /* yacc.c:1652 */ break; case 360: -#line 1969 "conf_parser.y" /* yacc.c:1652 */ +#line 1967 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_DLINE; } -#line 5030 "conf_parser.c" /* yacc.c:1652 */ +#line 5028 "conf_parser.c" /* yacc.c:1652 */ break; case 361: -#line 1973 "conf_parser.y" /* yacc.c:1652 */ +#line 1971 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNDLINE; } -#line 5039 "conf_parser.c" /* yacc.c:1652 */ +#line 5037 "conf_parser.c" /* yacc.c:1652 */ break; case 362: -#line 1977 "conf_parser.y" /* yacc.c:1652 */ +#line 1975 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_XLINE; } -#line 5048 "conf_parser.c" /* yacc.c:1652 */ +#line 5046 "conf_parser.c" /* yacc.c:1652 */ break; case 363: -#line 1981 "conf_parser.y" /* yacc.c:1652 */ +#line 1979 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNXLINE; } -#line 5057 "conf_parser.c" /* yacc.c:1652 */ +#line 5055 "conf_parser.c" /* yacc.c:1652 */ break; case 364: -#line 1985 "conf_parser.y" /* yacc.c:1652 */ +#line 1983 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_RESV; } -#line 5066 "conf_parser.c" /* yacc.c:1652 */ +#line 5064 "conf_parser.c" /* yacc.c:1652 */ break; case 365: -#line 1989 "conf_parser.y" /* yacc.c:1652 */ +#line 1987 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNRESV; } -#line 5075 "conf_parser.c" /* yacc.c:1652 */ +#line 5073 "conf_parser.c" /* yacc.c:1652 */ break; case 366: -#line 1993 "conf_parser.y" /* yacc.c:1652 */ +#line 1991 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_LOCOPS; } -#line 5084 "conf_parser.c" /* yacc.c:1652 */ +#line 5082 "conf_parser.c" /* yacc.c:1652 */ break; case 367: -#line 1997 "conf_parser.y" /* yacc.c:1652 */ +#line 1995 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value = SHARED_ALL; } -#line 5093 "conf_parser.c" /* yacc.c:1652 */ +#line 5091 "conf_parser.c" /* yacc.c:1652 */ break; case 368: -#line 2006 "conf_parser.y" /* yacc.c:1652 */ +#line 2004 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -5103,11 +5101,11 @@ yyreduce: strlcpy(block_state.name.buf, "*", sizeof(block_state.name.buf)); block_state.flags.value = SHARED_ALL; } -#line 5107 "conf_parser.c" /* yacc.c:1652 */ +#line 5105 "conf_parser.c" /* yacc.c:1652 */ break; case 369: -#line 2015 "conf_parser.y" /* yacc.c:1652 */ +#line 2013 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; @@ -5118,119 +5116,119 @@ yyreduce: conf->flags = block_state.flags.value; conf->name = xstrdup(block_state.name.buf); } -#line 5122 "conf_parser.c" /* yacc.c:1652 */ +#line 5120 "conf_parser.c" /* yacc.c:1652 */ break; case 375: -#line 2030 "conf_parser.y" /* yacc.c:1652 */ +#line 2028 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 5131 "conf_parser.c" /* yacc.c:1652 */ +#line 5129 "conf_parser.c" /* yacc.c:1652 */ break; case 376: -#line 2036 "conf_parser.y" /* yacc.c:1652 */ +#line 2034 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value = 0; } -#line 5140 "conf_parser.c" /* yacc.c:1652 */ +#line 5138 "conf_parser.c" /* yacc.c:1652 */ break; case 380: -#line 2043 "conf_parser.y" /* yacc.c:1652 */ +#line 2041 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_KLINE; } -#line 5149 "conf_parser.c" /* yacc.c:1652 */ +#line 5147 "conf_parser.c" /* yacc.c:1652 */ break; case 381: -#line 2047 "conf_parser.y" /* yacc.c:1652 */ +#line 2045 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNKLINE; } -#line 5158 "conf_parser.c" /* yacc.c:1652 */ +#line 5156 "conf_parser.c" /* yacc.c:1652 */ break; case 382: -#line 2051 "conf_parser.y" /* yacc.c:1652 */ +#line 2049 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_DLINE; } -#line 5167 "conf_parser.c" /* yacc.c:1652 */ +#line 5165 "conf_parser.c" /* yacc.c:1652 */ break; case 383: -#line 2055 "conf_parser.y" /* yacc.c:1652 */ +#line 2053 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNDLINE; } -#line 5176 "conf_parser.c" /* yacc.c:1652 */ +#line 5174 "conf_parser.c" /* yacc.c:1652 */ break; case 384: -#line 2059 "conf_parser.y" /* yacc.c:1652 */ +#line 2057 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_XLINE; } -#line 5185 "conf_parser.c" /* yacc.c:1652 */ +#line 5183 "conf_parser.c" /* yacc.c:1652 */ break; case 385: -#line 2063 "conf_parser.y" /* yacc.c:1652 */ +#line 2061 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNXLINE; } -#line 5194 "conf_parser.c" /* yacc.c:1652 */ +#line 5192 "conf_parser.c" /* yacc.c:1652 */ break; case 386: -#line 2067 "conf_parser.y" /* yacc.c:1652 */ +#line 2065 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_RESV; } -#line 5203 "conf_parser.c" /* yacc.c:1652 */ +#line 5201 "conf_parser.c" /* yacc.c:1652 */ break; case 387: -#line 2071 "conf_parser.y" /* yacc.c:1652 */ +#line 2069 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_UNRESV; } -#line 5212 "conf_parser.c" /* yacc.c:1652 */ +#line 5210 "conf_parser.c" /* yacc.c:1652 */ break; case 388: -#line 2075 "conf_parser.y" /* yacc.c:1652 */ +#line 2073 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= SHARED_LOCOPS; } -#line 5221 "conf_parser.c" /* yacc.c:1652 */ +#line 5219 "conf_parser.c" /* yacc.c:1652 */ break; case 389: -#line 2079 "conf_parser.y" /* yacc.c:1652 */ +#line 2077 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value = SHARED_ALL; } -#line 5230 "conf_parser.c" /* yacc.c:1652 */ +#line 5228 "conf_parser.c" /* yacc.c:1652 */ break; case 390: -#line 2088 "conf_parser.y" /* yacc.c:1652 */ +#line 2086 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) @@ -5240,11 +5238,11 @@ yyreduce: block_state.aftype.value = AF_INET; block_state.port.value = PORTNUM; } -#line 5244 "conf_parser.c" /* yacc.c:1652 */ +#line 5242 "conf_parser.c" /* yacc.c:1652 */ break; case 391: -#line 2097 "conf_parser.y" /* yacc.c:1652 */ +#line 2095 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; struct addrinfo hints, *res; @@ -5313,38 +5311,38 @@ yyreduce: conf_add_class_to_conf(conf, block_state.class.buf); lookup_confhost(conf); } -#line 5317 "conf_parser.c" /* yacc.c:1652 */ +#line 5315 "conf_parser.c" /* yacc.c:1652 */ break; case 409: -#line 2176 "conf_parser.y" /* yacc.c:1652 */ +#line 2174 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 5326 "conf_parser.c" /* yacc.c:1652 */ +#line 5324 "conf_parser.c" /* yacc.c:1652 */ break; case 410: -#line 2182 "conf_parser.y" /* yacc.c:1652 */ +#line 2180 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.host.buf, yylval.string, sizeof(block_state.host.buf)); } -#line 5335 "conf_parser.c" /* yacc.c:1652 */ +#line 5333 "conf_parser.c" /* yacc.c:1652 */ break; case 411: -#line 2188 "conf_parser.y" /* yacc.c:1652 */ +#line 2186 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.bind.buf, yylval.string, sizeof(block_state.bind.buf)); } -#line 5344 "conf_parser.c" /* yacc.c:1652 */ +#line 5342 "conf_parser.c" /* yacc.c:1652 */ break; case 412: -#line 2194 "conf_parser.y" /* yacc.c:1652 */ +#line 2192 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -5356,11 +5354,11 @@ yyreduce: else strlcpy(block_state.spass.buf, yylval.string, sizeof(block_state.spass.buf)); } -#line 5360 "conf_parser.c" /* yacc.c:1652 */ +#line 5358 "conf_parser.c" /* yacc.c:1652 */ break; case 413: -#line 2207 "conf_parser.y" /* yacc.c:1652 */ +#line 2205 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass != 2) break; @@ -5372,75 +5370,75 @@ yyreduce: else strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 5376 "conf_parser.c" /* yacc.c:1652 */ +#line 5374 "conf_parser.c" /* yacc.c:1652 */ break; case 414: -#line 2220 "conf_parser.y" /* yacc.c:1652 */ +#line 2218 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf)); } -#line 5385 "conf_parser.c" /* yacc.c:1652 */ +#line 5383 "conf_parser.c" /* yacc.c:1652 */ break; case 415: -#line 2226 "conf_parser.y" /* yacc.c:1652 */ +#line 2224 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.port.value = (yyvsp[-1].number); } -#line 5394 "conf_parser.c" /* yacc.c:1652 */ +#line 5392 "conf_parser.c" /* yacc.c:1652 */ break; case 416: -#line 2232 "conf_parser.y" /* yacc.c:1652 */ +#line 2230 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.aftype.value = AF_INET; } -#line 5403 "conf_parser.c" /* yacc.c:1652 */ +#line 5401 "conf_parser.c" /* yacc.c:1652 */ break; case 417: -#line 2236 "conf_parser.y" /* yacc.c:1652 */ +#line 2234 "conf_parser.y" /* yacc.c:1652 */ { #ifdef IPV6 if (conf_parser_ctx.pass == 2) block_state.aftype.value = AF_INET6; #endif } -#line 5414 "conf_parser.c" /* yacc.c:1652 */ +#line 5412 "conf_parser.c" /* yacc.c:1652 */ break; case 418: -#line 2244 "conf_parser.y" /* yacc.c:1652 */ +#line 2242 "conf_parser.y" /* yacc.c:1652 */ { block_state.flags.value &= CONF_FLAGS_ENCRYPTED; } -#line 5422 "conf_parser.c" /* yacc.c:1652 */ +#line 5420 "conf_parser.c" /* yacc.c:1652 */ break; case 422: -#line 2250 "conf_parser.y" /* yacc.c:1652 */ +#line 2248 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_ALLOW_AUTO_CONN; } -#line 5431 "conf_parser.c" /* yacc.c:1652 */ +#line 5429 "conf_parser.c" /* yacc.c:1652 */ break; case 423: -#line 2254 "conf_parser.y" /* yacc.c:1652 */ +#line 2252 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) block_state.flags.value |= CONF_FLAGS_SSL; } -#line 5440 "conf_parser.c" /* yacc.c:1652 */ +#line 5438 "conf_parser.c" /* yacc.c:1652 */ break; case 424: -#line 2260 "conf_parser.y" /* yacc.c:1652 */ +#line 2258 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -5450,38 +5448,38 @@ yyreduce: block_state.flags.value &= ~CONF_FLAGS_ENCRYPTED; } } -#line 5454 "conf_parser.c" /* yacc.c:1652 */ +#line 5452 "conf_parser.c" /* yacc.c:1652 */ break; case 425: -#line 2271 "conf_parser.y" /* yacc.c:1652 */ +#line 2269 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.hub.list); } -#line 5463 "conf_parser.c" /* yacc.c:1652 */ +#line 5461 "conf_parser.c" /* yacc.c:1652 */ break; case 426: -#line 2277 "conf_parser.y" /* yacc.c:1652 */ +#line 2275 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.leaf.list); } -#line 5472 "conf_parser.c" /* yacc.c:1652 */ +#line 5470 "conf_parser.c" /* yacc.c:1652 */ break; case 427: -#line 2283 "conf_parser.y" /* yacc.c:1652 */ +#line 2281 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf)); } -#line 5481 "conf_parser.c" /* yacc.c:1652 */ +#line 5479 "conf_parser.c" /* yacc.c:1652 */ break; case 428: -#line 2289 "conf_parser.y" /* yacc.c:1652 */ +#line 2287 "conf_parser.y" /* yacc.c:1652 */ { #ifdef HAVE_LIBCRYPTO if (conf_parser_ctx.pass == 2) @@ -5491,20 +5489,20 @@ yyreduce: conf_error_report("Ignoring connect::ciphers -- no OpenSSL support"); #endif } -#line 5495 "conf_parser.c" /* yacc.c:1652 */ +#line 5493 "conf_parser.c" /* yacc.c:1652 */ break; case 429: -#line 2304 "conf_parser.y" /* yacc.c:1652 */ +#line 2302 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 5504 "conf_parser.c" /* yacc.c:1652 */ +#line 5502 "conf_parser.c" /* yacc.c:1652 */ break; case 430: -#line 2308 "conf_parser.y" /* yacc.c:1652 */ +#line 2306 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; @@ -5525,11 +5523,11 @@ yyreduce: conf->reason = xstrdup(CONF_NOREASON); add_conf_by_address(CONF_KLINE, conf); } -#line 5529 "conf_parser.c" /* yacc.c:1652 */ +#line 5527 "conf_parser.c" /* yacc.c:1652 */ break; case 436: -#line 2333 "conf_parser.y" /* yacc.c:1652 */ +#line 2331 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) @@ -5548,29 +5546,29 @@ yyreduce: split_nuh(&nuh); } } -#line 5552 "conf_parser.c" /* yacc.c:1652 */ +#line 5550 "conf_parser.c" /* yacc.c:1652 */ break; case 437: -#line 2353 "conf_parser.y" /* yacc.c:1652 */ +#line 2351 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 5561 "conf_parser.c" /* yacc.c:1652 */ +#line 5559 "conf_parser.c" /* yacc.c:1652 */ break; case 438: -#line 2362 "conf_parser.y" /* yacc.c:1652 */ +#line 2360 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 5570 "conf_parser.c" /* yacc.c:1652 */ +#line 5568 "conf_parser.c" /* yacc.c:1652 */ break; case 439: -#line 2366 "conf_parser.y" /* yacc.c:1652 */ +#line 2364 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; @@ -5592,29 +5590,29 @@ yyreduce: add_conf_by_address(CONF_DLINE, conf); } } -#line 5596 "conf_parser.c" /* yacc.c:1652 */ +#line 5594 "conf_parser.c" /* yacc.c:1652 */ break; case 445: -#line 2392 "conf_parser.y" /* yacc.c:1652 */ +#line 2390 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf)); } -#line 5605 "conf_parser.c" /* yacc.c:1652 */ +#line 5603 "conf_parser.c" /* yacc.c:1652 */ break; case 446: -#line 2398 "conf_parser.y" /* yacc.c:1652 */ +#line 2396 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 5614 "conf_parser.c" /* yacc.c:1652 */ +#line 5612 "conf_parser.c" /* yacc.c:1652 */ break; case 453: -#line 2412 "conf_parser.y" /* yacc.c:1652 */ +#line 2410 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -5627,11 +5625,11 @@ yyreduce: } } } -#line 5631 "conf_parser.c" /* yacc.c:1652 */ +#line 5629 "conf_parser.c" /* yacc.c:1652 */ break; case 454: -#line 2426 "conf_parser.y" /* yacc.c:1652 */ +#line 2424 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -5642,20 +5640,20 @@ yyreduce: add_conf_by_address(CONF_EXEMPT, conf); } } -#line 5646 "conf_parser.c" /* yacc.c:1652 */ +#line 5644 "conf_parser.c" /* yacc.c:1652 */ break; case 455: -#line 2441 "conf_parser.y" /* yacc.c:1652 */ +#line 2439 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) reset_block_state(); } -#line 5655 "conf_parser.c" /* yacc.c:1652 */ +#line 5653 "conf_parser.c" /* yacc.c:1652 */ break; case 456: -#line 2445 "conf_parser.y" /* yacc.c:1652 */ +#line 2443 "conf_parser.y" /* yacc.c:1652 */ { struct MaskItem *conf = NULL; @@ -5673,186 +5671,186 @@ yyreduce: else conf->reason = xstrdup(CONF_NOREASON); } -#line 5677 "conf_parser.c" /* yacc.c:1652 */ +#line 5675 "conf_parser.c" /* yacc.c:1652 */ break; case 462: -#line 2467 "conf_parser.y" /* yacc.c:1652 */ +#line 2465 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf)); } -#line 5686 "conf_parser.c" /* yacc.c:1652 */ +#line 5684 "conf_parser.c" /* yacc.c:1652 */ break; case 463: -#line 2473 "conf_parser.y" /* yacc.c:1652 */ +#line 2471 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf)); } -#line 5695 "conf_parser.c" /* yacc.c:1652 */ +#line 5693 "conf_parser.c" /* yacc.c:1652 */ break; case 516: -#line 2518 "conf_parser.y" /* yacc.c:1652 */ +#line 2516 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.max_watch = (yyvsp[-1].number); } -#line 5703 "conf_parser.c" /* yacc.c:1652 */ +#line 5701 "conf_parser.c" /* yacc.c:1652 */ break; case 517: -#line 2523 "conf_parser.y" /* yacc.c:1652 */ +#line 2521 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigFileEntry.cycle_on_host_change = yylval.number; } -#line 5712 "conf_parser.c" /* yacc.c:1652 */ +#line 5710 "conf_parser.c" /* yacc.c:1652 */ break; case 518: -#line 2529 "conf_parser.y" /* yacc.c:1652 */ +#line 2527 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigFileEntry.glines = yylval.number; } -#line 5721 "conf_parser.c" /* yacc.c:1652 */ +#line 5719 "conf_parser.c" /* yacc.c:1652 */ break; case 519: -#line 2535 "conf_parser.y" /* yacc.c:1652 */ +#line 2533 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigFileEntry.gline_time = (yyvsp[-1].number); } -#line 5730 "conf_parser.c" /* yacc.c:1652 */ +#line 5728 "conf_parser.c" /* yacc.c:1652 */ break; case 520: -#line 2541 "conf_parser.y" /* yacc.c:1652 */ +#line 2539 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigFileEntry.gline_request_time = (yyvsp[-1].number); } -#line 5739 "conf_parser.c" /* yacc.c:1652 */ +#line 5737 "conf_parser.c" /* yacc.c:1652 */ break; case 521: -#line 2547 "conf_parser.y" /* yacc.c:1652 */ +#line 2545 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.gline_min_cidr = (yyvsp[-1].number); } -#line 5747 "conf_parser.c" /* yacc.c:1652 */ +#line 5745 "conf_parser.c" /* yacc.c:1652 */ break; case 522: -#line 2552 "conf_parser.y" /* yacc.c:1652 */ +#line 2550 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.gline_min_cidr6 = (yyvsp[-1].number); } -#line 5755 "conf_parser.c" /* yacc.c:1652 */ +#line 5753 "conf_parser.c" /* yacc.c:1652 */ break; case 523: -#line 2557 "conf_parser.y" /* yacc.c:1652 */ +#line 2555 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.tkline_expire_notices = yylval.number; } -#line 5763 "conf_parser.c" /* yacc.c:1652 */ +#line 5761 "conf_parser.c" /* yacc.c:1652 */ break; case 524: -#line 2562 "conf_parser.y" /* yacc.c:1652 */ +#line 2560 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.kill_chase_time_limit = (yyvsp[-1].number); } -#line 5771 "conf_parser.c" /* yacc.c:1652 */ +#line 5769 "conf_parser.c" /* yacc.c:1652 */ break; case 525: -#line 2567 "conf_parser.y" /* yacc.c:1652 */ +#line 2565 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.hide_spoof_ips = yylval.number; } -#line 5779 "conf_parser.c" /* yacc.c:1652 */ +#line 5777 "conf_parser.c" /* yacc.c:1652 */ break; case 526: -#line 2572 "conf_parser.y" /* yacc.c:1652 */ +#line 2570 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.ignore_bogus_ts = yylval.number; } -#line 5787 "conf_parser.c" /* yacc.c:1652 */ +#line 5785 "conf_parser.c" /* yacc.c:1652 */ break; case 527: -#line 2577 "conf_parser.y" /* yacc.c:1652 */ +#line 2575 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.failed_oper_notice = yylval.number; } -#line 5795 "conf_parser.c" /* yacc.c:1652 */ +#line 5793 "conf_parser.c" /* yacc.c:1652 */ break; case 528: -#line 2582 "conf_parser.y" /* yacc.c:1652 */ +#line 2580 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.anti_nick_flood = yylval.number; } -#line 5803 "conf_parser.c" /* yacc.c:1652 */ +#line 5801 "conf_parser.c" /* yacc.c:1652 */ break; case 529: -#line 2587 "conf_parser.y" /* yacc.c:1652 */ +#line 2585 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.max_nick_time = (yyvsp[-1].number); } -#line 5811 "conf_parser.c" /* yacc.c:1652 */ +#line 5809 "conf_parser.c" /* yacc.c:1652 */ break; case 530: -#line 2592 "conf_parser.y" /* yacc.c:1652 */ +#line 2590 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.max_nick_changes = (yyvsp[-1].number); } -#line 5819 "conf_parser.c" /* yacc.c:1652 */ +#line 5817 "conf_parser.c" /* yacc.c:1652 */ break; case 531: -#line 2597 "conf_parser.y" /* yacc.c:1652 */ +#line 2595 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.max_accept = (yyvsp[-1].number); } -#line 5827 "conf_parser.c" /* yacc.c:1652 */ +#line 5825 "conf_parser.c" /* yacc.c:1652 */ break; case 532: -#line 2602 "conf_parser.y" /* yacc.c:1652 */ +#line 2600 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[-1].number); } -#line 5835 "conf_parser.c" /* yacc.c:1652 */ +#line 5833 "conf_parser.c" /* yacc.c:1652 */ break; case 533: -#line 2607 "conf_parser.y" /* yacc.c:1652 */ +#line 2605 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.ts_warn_delta = (yyvsp[-1].number); } -#line 5843 "conf_parser.c" /* yacc.c:1652 */ +#line 5841 "conf_parser.c" /* yacc.c:1652 */ break; case 534: -#line 2612 "conf_parser.y" /* yacc.c:1652 */ +#line 2610 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigFileEntry.ts_max_delta = (yyvsp[-1].number); } -#line 5852 "conf_parser.c" /* yacc.c:1652 */ +#line 5850 "conf_parser.c" /* yacc.c:1652 */ break; case 535: -#line 2618 "conf_parser.y" /* yacc.c:1652 */ +#line 2616 "conf_parser.y" /* yacc.c:1652 */ { if (((yyvsp[-1].number) > 0) && conf_parser_ctx.pass == 1) { @@ -5862,171 +5860,171 @@ yyreduce: exit(0); } } -#line 5866 "conf_parser.c" /* yacc.c:1652 */ +#line 5864 "conf_parser.c" /* yacc.c:1652 */ break; case 536: -#line 2629 "conf_parser.y" /* yacc.c:1652 */ +#line 2627 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.invisible_on_connect = yylval.number; } -#line 5874 "conf_parser.c" /* yacc.c:1652 */ +#line 5872 "conf_parser.c" /* yacc.c:1652 */ break; case 537: -#line 2634 "conf_parser.y" /* yacc.c:1652 */ +#line 2632 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.warn_no_nline = yylval.number; } -#line 5882 "conf_parser.c" /* yacc.c:1652 */ +#line 5880 "conf_parser.c" /* yacc.c:1652 */ break; case 538: -#line 2639 "conf_parser.y" /* yacc.c:1652 */ +#line 2637 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_e_disabled = yylval.number; } -#line 5890 "conf_parser.c" /* yacc.c:1652 */ +#line 5888 "conf_parser.c" /* yacc.c:1652 */ break; case 539: -#line 2644 "conf_parser.y" /* yacc.c:1652 */ +#line 2642 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_o_oper_only = yylval.number; } -#line 5898 "conf_parser.c" /* yacc.c:1652 */ +#line 5896 "conf_parser.c" /* yacc.c:1652 */ break; case 540: -#line 2649 "conf_parser.y" /* yacc.c:1652 */ +#line 2647 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_P_oper_only = yylval.number; } -#line 5906 "conf_parser.c" /* yacc.c:1652 */ +#line 5904 "conf_parser.c" /* yacc.c:1652 */ break; case 541: -#line 2654 "conf_parser.y" /* yacc.c:1652 */ +#line 2652 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_u_oper_only = yylval.number; } -#line 5914 "conf_parser.c" /* yacc.c:1652 */ +#line 5912 "conf_parser.c" /* yacc.c:1652 */ break; case 542: -#line 2659 "conf_parser.y" /* yacc.c:1652 */ +#line 2657 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_k_oper_only = 2 * yylval.number; } -#line 5922 "conf_parser.c" /* yacc.c:1652 */ +#line 5920 "conf_parser.c" /* yacc.c:1652 */ break; case 543: -#line 2662 "conf_parser.y" /* yacc.c:1652 */ +#line 2660 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_k_oper_only = 1; } -#line 5930 "conf_parser.c" /* yacc.c:1652 */ +#line 5928 "conf_parser.c" /* yacc.c:1652 */ break; case 544: -#line 2667 "conf_parser.y" /* yacc.c:1652 */ +#line 2665 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_i_oper_only = 2 * yylval.number; } -#line 5938 "conf_parser.c" /* yacc.c:1652 */ +#line 5936 "conf_parser.c" /* yacc.c:1652 */ break; case 545: -#line 2670 "conf_parser.y" /* yacc.c:1652 */ +#line 2668 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.stats_i_oper_only = 1; } -#line 5946 "conf_parser.c" /* yacc.c:1652 */ +#line 5944 "conf_parser.c" /* yacc.c:1652 */ break; case 546: -#line 2675 "conf_parser.y" /* yacc.c:1652 */ +#line 2673 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.pace_wait = (yyvsp[-1].number); } -#line 5954 "conf_parser.c" /* yacc.c:1652 */ +#line 5952 "conf_parser.c" /* yacc.c:1652 */ break; case 547: -#line 2680 "conf_parser.y" /* yacc.c:1652 */ +#line 2678 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.caller_id_wait = (yyvsp[-1].number); } -#line 5962 "conf_parser.c" /* yacc.c:1652 */ +#line 5960 "conf_parser.c" /* yacc.c:1652 */ break; case 548: -#line 2685 "conf_parser.y" /* yacc.c:1652 */ +#line 2683 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.opers_bypass_callerid = yylval.number; } -#line 5970 "conf_parser.c" /* yacc.c:1652 */ +#line 5968 "conf_parser.c" /* yacc.c:1652 */ break; case 549: -#line 2690 "conf_parser.y" /* yacc.c:1652 */ +#line 2688 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.pace_wait_simple = (yyvsp[-1].number); } -#line 5978 "conf_parser.c" /* yacc.c:1652 */ +#line 5976 "conf_parser.c" /* yacc.c:1652 */ break; case 550: -#line 2695 "conf_parser.y" /* yacc.c:1652 */ +#line 2693 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.short_motd = yylval.number; } -#line 5986 "conf_parser.c" /* yacc.c:1652 */ +#line 5984 "conf_parser.c" /* yacc.c:1652 */ break; case 551: -#line 2700 "conf_parser.y" /* yacc.c:1652 */ +#line 2698 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.no_oper_flood = yylval.number; } -#line 5994 "conf_parser.c" /* yacc.c:1652 */ +#line 5992 "conf_parser.c" /* yacc.c:1652 */ break; case 552: -#line 2705 "conf_parser.y" /* yacc.c:1652 */ +#line 2703 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.true_no_oper_flood = yylval.number; } -#line 6002 "conf_parser.c" /* yacc.c:1652 */ +#line 6000 "conf_parser.c" /* yacc.c:1652 */ break; case 553: -#line 2710 "conf_parser.y" /* yacc.c:1652 */ +#line 2708 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_pass_resv = yylval.number; } -#line 6010 "conf_parser.c" /* yacc.c:1652 */ +#line 6008 "conf_parser.c" /* yacc.c:1652 */ break; case 554: -#line 2715 "conf_parser.y" /* yacc.c:1652 */ +#line 2713 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.dots_in_ident = (yyvsp[-1].number); } -#line 6018 "conf_parser.c" /* yacc.c:1652 */ +#line 6016 "conf_parser.c" /* yacc.c:1652 */ break; case 555: -#line 2720 "conf_parser.y" /* yacc.c:1652 */ +#line 2718 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.max_targets = (yyvsp[-1].number); } -#line 6026 "conf_parser.c" /* yacc.c:1652 */ +#line 6024 "conf_parser.c" /* yacc.c:1652 */ break; case 556: -#line 2725 "conf_parser.y" /* yacc.c:1652 */ +#line 2723 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string)) { @@ -6034,623 +6032,623 @@ yyreduce: ConfigFileEntry.service_name = xstrdup(yylval.string); } } -#line 6038 "conf_parser.c" /* yacc.c:1652 */ +#line 6036 "conf_parser.c" /* yacc.c:1652 */ break; case 557: -#line 2734 "conf_parser.y" /* yacc.c:1652 */ +#line 2732 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.ping_cookie = yylval.number; } -#line 6046 "conf_parser.c" /* yacc.c:1652 */ +#line 6044 "conf_parser.c" /* yacc.c:1652 */ break; case 558: -#line 2739 "conf_parser.y" /* yacc.c:1652 */ +#line 2737 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.disable_auth = yylval.number; } -#line 6054 "conf_parser.c" /* yacc.c:1652 */ +#line 6052 "conf_parser.c" /* yacc.c:1652 */ break; case 559: -#line 2744 "conf_parser.y" /* yacc.c:1652 */ +#line 2742 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.throttle_time = (yyvsp[-1].number); } -#line 6062 "conf_parser.c" /* yacc.c:1652 */ +#line 6060 "conf_parser.c" /* yacc.c:1652 */ break; case 560: -#line 2749 "conf_parser.y" /* yacc.c:1652 */ +#line 2747 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes = 0; } -#line 6070 "conf_parser.c" /* yacc.c:1652 */ +#line 6068 "conf_parser.c" /* yacc.c:1652 */ break; case 564: -#line 2755 "conf_parser.y" /* yacc.c:1652 */ +#line 2753 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_BOTS; } -#line 6078 "conf_parser.c" /* yacc.c:1652 */ +#line 6076 "conf_parser.c" /* yacc.c:1652 */ break; case 565: -#line 2758 "conf_parser.y" /* yacc.c:1652 */ +#line 2756 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_CCONN; } -#line 6086 "conf_parser.c" /* yacc.c:1652 */ +#line 6084 "conf_parser.c" /* yacc.c:1652 */ break; case 566: -#line 2761 "conf_parser.y" /* yacc.c:1652 */ +#line 2759 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_DEAF; } -#line 6094 "conf_parser.c" /* yacc.c:1652 */ +#line 6092 "conf_parser.c" /* yacc.c:1652 */ break; case 567: -#line 2764 "conf_parser.y" /* yacc.c:1652 */ +#line 2762 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_DEBUG; } -#line 6102 "conf_parser.c" /* yacc.c:1652 */ +#line 6100 "conf_parser.c" /* yacc.c:1652 */ break; case 568: -#line 2767 "conf_parser.y" /* yacc.c:1652 */ +#line 2765 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_FULL; } -#line 6110 "conf_parser.c" /* yacc.c:1652 */ +#line 6108 "conf_parser.c" /* yacc.c:1652 */ break; case 569: -#line 2770 "conf_parser.y" /* yacc.c:1652 */ +#line 2768 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_HIDDEN; } -#line 6118 "conf_parser.c" /* yacc.c:1652 */ +#line 6116 "conf_parser.c" /* yacc.c:1652 */ break; case 570: -#line 2773 "conf_parser.y" /* yacc.c:1652 */ +#line 2771 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_SKILL; } -#line 6126 "conf_parser.c" /* yacc.c:1652 */ +#line 6124 "conf_parser.c" /* yacc.c:1652 */ break; case 571: -#line 2776 "conf_parser.y" /* yacc.c:1652 */ +#line 2774 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_NCHANGE; } -#line 6134 "conf_parser.c" /* yacc.c:1652 */ +#line 6132 "conf_parser.c" /* yacc.c:1652 */ break; case 572: -#line 2779 "conf_parser.y" /* yacc.c:1652 */ +#line 2777 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_REJ; } -#line 6142 "conf_parser.c" /* yacc.c:1652 */ +#line 6140 "conf_parser.c" /* yacc.c:1652 */ break; case 573: -#line 2782 "conf_parser.y" /* yacc.c:1652 */ +#line 2780 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_UNAUTH; } -#line 6150 "conf_parser.c" /* yacc.c:1652 */ +#line 6148 "conf_parser.c" /* yacc.c:1652 */ break; case 574: -#line 2785 "conf_parser.y" /* yacc.c:1652 */ +#line 2783 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_SPY; } -#line 6158 "conf_parser.c" /* yacc.c:1652 */ +#line 6156 "conf_parser.c" /* yacc.c:1652 */ break; case 575: -#line 2788 "conf_parser.y" /* yacc.c:1652 */ +#line 2786 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL; } -#line 6166 "conf_parser.c" /* yacc.c:1652 */ +#line 6164 "conf_parser.c" /* yacc.c:1652 */ break; case 576: -#line 2791 "conf_parser.y" /* yacc.c:1652 */ +#line 2789 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_OPERWALL; } -#line 6174 "conf_parser.c" /* yacc.c:1652 */ +#line 6172 "conf_parser.c" /* yacc.c:1652 */ break; case 577: -#line 2794 "conf_parser.y" /* yacc.c:1652 */ +#line 2792 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE; } -#line 6182 "conf_parser.c" /* yacc.c:1652 */ +#line 6180 "conf_parser.c" /* yacc.c:1652 */ break; case 578: -#line 2797 "conf_parser.y" /* yacc.c:1652 */ +#line 2795 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE; } -#line 6190 "conf_parser.c" /* yacc.c:1652 */ +#line 6188 "conf_parser.c" /* yacc.c:1652 */ break; case 579: -#line 2800 "conf_parser.y" /* yacc.c:1652 */ +#line 2798 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_WALLOP; } -#line 6198 "conf_parser.c" /* yacc.c:1652 */ +#line 6196 "conf_parser.c" /* yacc.c:1652 */ break; case 580: -#line 2803 "conf_parser.y" /* yacc.c:1652 */ +#line 2801 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID; } -#line 6206 "conf_parser.c" /* yacc.c:1652 */ +#line 6204 "conf_parser.c" /* yacc.c:1652 */ break; case 581: -#line 2806 "conf_parser.y" /* yacc.c:1652 */ +#line 2804 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_CALLERID; } -#line 6214 "conf_parser.c" /* yacc.c:1652 */ +#line 6212 "conf_parser.c" /* yacc.c:1652 */ break; case 582: -#line 2809 "conf_parser.y" /* yacc.c:1652 */ +#line 2807 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_LOCOPS; } -#line 6222 "conf_parser.c" /* yacc.c:1652 */ +#line 6220 "conf_parser.c" /* yacc.c:1652 */ break; case 583: -#line 2812 "conf_parser.y" /* yacc.c:1652 */ +#line 2810 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_REGONLY; } -#line 6230 "conf_parser.c" /* yacc.c:1652 */ +#line 6228 "conf_parser.c" /* yacc.c:1652 */ break; case 584: -#line 2815 "conf_parser.y" /* yacc.c:1652 */ +#line 2813 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_FARCONNECT; } -#line 6238 "conf_parser.c" /* yacc.c:1652 */ +#line 6236 "conf_parser.c" /* yacc.c:1652 */ break; case 585: -#line 2818 "conf_parser.y" /* yacc.c:1652 */ +#line 2816 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_umodes |= UMODE_GOD; } -#line 6246 "conf_parser.c" /* yacc.c:1652 */ +#line 6244 "conf_parser.c" /* yacc.c:1652 */ break; case 586: -#line 2823 "conf_parser.y" /* yacc.c:1652 */ +#line 2821 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes = 0; } -#line 6254 "conf_parser.c" /* yacc.c:1652 */ +#line 6252 "conf_parser.c" /* yacc.c:1652 */ break; case 590: -#line 2829 "conf_parser.y" /* yacc.c:1652 */ +#line 2827 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_BOTS; } -#line 6262 "conf_parser.c" /* yacc.c:1652 */ +#line 6260 "conf_parser.c" /* yacc.c:1652 */ break; case 591: -#line 2832 "conf_parser.y" /* yacc.c:1652 */ +#line 2830 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_CCONN; } -#line 6270 "conf_parser.c" /* yacc.c:1652 */ +#line 6268 "conf_parser.c" /* yacc.c:1652 */ break; case 592: -#line 2835 "conf_parser.y" /* yacc.c:1652 */ +#line 2833 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_DEAF; } -#line 6278 "conf_parser.c" /* yacc.c:1652 */ +#line 6276 "conf_parser.c" /* yacc.c:1652 */ break; case 593: -#line 2838 "conf_parser.y" /* yacc.c:1652 */ +#line 2836 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG; } -#line 6286 "conf_parser.c" /* yacc.c:1652 */ +#line 6284 "conf_parser.c" /* yacc.c:1652 */ break; case 594: -#line 2841 "conf_parser.y" /* yacc.c:1652 */ +#line 2839 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_FULL; } -#line 6294 "conf_parser.c" /* yacc.c:1652 */ +#line 6292 "conf_parser.c" /* yacc.c:1652 */ break; case 595: -#line 2844 "conf_parser.y" /* yacc.c:1652 */ +#line 2842 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_SKILL; } -#line 6302 "conf_parser.c" /* yacc.c:1652 */ +#line 6300 "conf_parser.c" /* yacc.c:1652 */ break; case 596: -#line 2847 "conf_parser.y" /* yacc.c:1652 */ +#line 2845 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN; } -#line 6310 "conf_parser.c" /* yacc.c:1652 */ +#line 6308 "conf_parser.c" /* yacc.c:1652 */ break; case 597: -#line 2850 "conf_parser.y" /* yacc.c:1652 */ +#line 2848 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE; } -#line 6318 "conf_parser.c" /* yacc.c:1652 */ +#line 6316 "conf_parser.c" /* yacc.c:1652 */ break; case 598: -#line 2853 "conf_parser.y" /* yacc.c:1652 */ +#line 2851 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_REJ; } -#line 6326 "conf_parser.c" /* yacc.c:1652 */ +#line 6324 "conf_parser.c" /* yacc.c:1652 */ break; case 599: -#line 2856 "conf_parser.y" /* yacc.c:1652 */ +#line 2854 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH; } -#line 6334 "conf_parser.c" /* yacc.c:1652 */ +#line 6332 "conf_parser.c" /* yacc.c:1652 */ break; case 600: -#line 2859 "conf_parser.y" /* yacc.c:1652 */ +#line 2857 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_SPY; } -#line 6342 "conf_parser.c" /* yacc.c:1652 */ +#line 6340 "conf_parser.c" /* yacc.c:1652 */ break; case 601: -#line 2862 "conf_parser.y" /* yacc.c:1652 */ +#line 2860 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL; } -#line 6350 "conf_parser.c" /* yacc.c:1652 */ +#line 6348 "conf_parser.c" /* yacc.c:1652 */ break; case 602: -#line 2865 "conf_parser.y" /* yacc.c:1652 */ +#line 2863 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL; } -#line 6358 "conf_parser.c" /* yacc.c:1652 */ +#line 6356 "conf_parser.c" /* yacc.c:1652 */ break; case 603: -#line 2868 "conf_parser.y" /* yacc.c:1652 */ +#line 2866 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE; } -#line 6366 "conf_parser.c" /* yacc.c:1652 */ +#line 6364 "conf_parser.c" /* yacc.c:1652 */ break; case 604: -#line 2871 "conf_parser.y" /* yacc.c:1652 */ +#line 2869 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE; } -#line 6374 "conf_parser.c" /* yacc.c:1652 */ +#line 6372 "conf_parser.c" /* yacc.c:1652 */ break; case 605: -#line 2874 "conf_parser.y" /* yacc.c:1652 */ +#line 2872 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP; } -#line 6382 "conf_parser.c" /* yacc.c:1652 */ +#line 6380 "conf_parser.c" /* yacc.c:1652 */ break; case 606: -#line 2877 "conf_parser.y" /* yacc.c:1652 */ +#line 2875 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID; } -#line 6390 "conf_parser.c" /* yacc.c:1652 */ +#line 6388 "conf_parser.c" /* yacc.c:1652 */ break; case 607: -#line 2880 "conf_parser.y" /* yacc.c:1652 */ +#line 2878 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID; } -#line 6398 "conf_parser.c" /* yacc.c:1652 */ +#line 6396 "conf_parser.c" /* yacc.c:1652 */ break; case 608: -#line 2883 "conf_parser.y" /* yacc.c:1652 */ +#line 2881 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS; } -#line 6406 "conf_parser.c" /* yacc.c:1652 */ +#line 6404 "conf_parser.c" /* yacc.c:1652 */ break; case 609: -#line 2886 "conf_parser.y" /* yacc.c:1652 */ +#line 2884 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_REGONLY; } -#line 6414 "conf_parser.c" /* yacc.c:1652 */ +#line 6412 "conf_parser.c" /* yacc.c:1652 */ break; case 610: -#line 2889 "conf_parser.y" /* yacc.c:1652 */ +#line 2887 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_FARCONNECT; } -#line 6422 "conf_parser.c" /* yacc.c:1652 */ +#line 6420 "conf_parser.c" /* yacc.c:1652 */ break; case 611: -#line 2892 "conf_parser.y" /* yacc.c:1652 */ +#line 2890 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.oper_only_umodes |= UMODE_GOD; } -#line 6430 "conf_parser.c" /* yacc.c:1652 */ +#line 6428 "conf_parser.c" /* yacc.c:1652 */ break; case 612: -#line 2897 "conf_parser.y" /* yacc.c:1652 */ +#line 2895 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.min_nonwildcard = (yyvsp[-1].number); } -#line 6438 "conf_parser.c" /* yacc.c:1652 */ +#line 6436 "conf_parser.c" /* yacc.c:1652 */ break; case 613: -#line 2902 "conf_parser.y" /* yacc.c:1652 */ +#line 2900 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.min_nonwildcard_simple = (yyvsp[-1].number); } -#line 6446 "conf_parser.c" /* yacc.c:1652 */ +#line 6444 "conf_parser.c" /* yacc.c:1652 */ break; case 614: -#line 2907 "conf_parser.y" /* yacc.c:1652 */ +#line 2905 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.default_floodcount = (yyvsp[-1].number); } -#line 6454 "conf_parser.c" /* yacc.c:1652 */ +#line 6452 "conf_parser.c" /* yacc.c:1652 */ break; case 615: -#line 2912 "conf_parser.y" /* yacc.c:1652 */ +#line 2910 "conf_parser.y" /* yacc.c:1652 */ { ConfigFileEntry.tkline_max = (yyvsp[-1].number); } -#line 6462 "conf_parser.c" /* yacc.c:1652 */ +#line 6460 "conf_parser.c" /* yacc.c:1652 */ break; case 633: -#line 2935 "conf_parser.y" /* yacc.c:1652 */ +#line 2933 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.disable_fake_channels = yylval.number; } -#line 6470 "conf_parser.c" /* yacc.c:1652 */ +#line 6468 "conf_parser.c" /* yacc.c:1652 */ break; case 634: -#line 2940 "conf_parser.y" /* yacc.c:1652 */ +#line 2938 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.knock_delay = (yyvsp[-1].number); } -#line 6478 "conf_parser.c" /* yacc.c:1652 */ +#line 6476 "conf_parser.c" /* yacc.c:1652 */ break; case 635: -#line 2945 "conf_parser.y" /* yacc.c:1652 */ +#line 2943 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.knock_delay_channel = (yyvsp[-1].number); } -#line 6486 "conf_parser.c" /* yacc.c:1652 */ +#line 6484 "conf_parser.c" /* yacc.c:1652 */ break; case 636: -#line 2950 "conf_parser.y" /* yacc.c:1652 */ +#line 2948 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.max_chans_per_user = (yyvsp[-1].number); } -#line 6494 "conf_parser.c" /* yacc.c:1652 */ +#line 6492 "conf_parser.c" /* yacc.c:1652 */ break; case 637: -#line 2955 "conf_parser.y" /* yacc.c:1652 */ +#line 2953 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.max_chans_per_oper = (yyvsp[-1].number); } -#line 6502 "conf_parser.c" /* yacc.c:1652 */ +#line 6500 "conf_parser.c" /* yacc.c:1652 */ break; case 638: -#line 2960 "conf_parser.y" /* yacc.c:1652 */ +#line 2958 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.max_bans = (yyvsp[-1].number); } -#line 6510 "conf_parser.c" /* yacc.c:1652 */ +#line 6508 "conf_parser.c" /* yacc.c:1652 */ break; case 639: -#line 2965 "conf_parser.y" /* yacc.c:1652 */ +#line 2963 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_split_user_count = (yyvsp[-1].number); } -#line 6518 "conf_parser.c" /* yacc.c:1652 */ +#line 6516 "conf_parser.c" /* yacc.c:1652 */ break; case 640: -#line 2970 "conf_parser.y" /* yacc.c:1652 */ +#line 2968 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_split_server_count = (yyvsp[-1].number); } -#line 6526 "conf_parser.c" /* yacc.c:1652 */ +#line 6524 "conf_parser.c" /* yacc.c:1652 */ break; case 641: -#line 2975 "conf_parser.y" /* yacc.c:1652 */ +#line 2973 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.no_create_on_split = yylval.number; } -#line 6534 "conf_parser.c" /* yacc.c:1652 */ +#line 6532 "conf_parser.c" /* yacc.c:1652 */ break; case 642: -#line 2980 "conf_parser.y" /* yacc.c:1652 */ +#line 2978 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.no_join_on_split = yylval.number; } -#line 6542 "conf_parser.c" /* yacc.c:1652 */ +#line 6540 "conf_parser.c" /* yacc.c:1652 */ break; case 643: -#line 2985 "conf_parser.y" /* yacc.c:1652 */ +#line 2983 "conf_parser.y" /* yacc.c:1652 */ { GlobalSetOptions.joinfloodcount = yylval.number; } -#line 6550 "conf_parser.c" /* yacc.c:1652 */ +#line 6548 "conf_parser.c" /* yacc.c:1652 */ break; case 644: -#line 2990 "conf_parser.y" /* yacc.c:1652 */ +#line 2988 "conf_parser.y" /* yacc.c:1652 */ { GlobalSetOptions.joinfloodtime = (yyvsp[-1].number); } -#line 6558 "conf_parser.c" /* yacc.c:1652 */ +#line 6556 "conf_parser.c" /* yacc.c:1652 */ break; case 645: -#line 2995 "conf_parser.y" /* yacc.c:1652 */ +#line 2993 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes = 0; } -#line 6566 "conf_parser.c" /* yacc.c:1652 */ +#line 6564 "conf_parser.c" /* yacc.c:1652 */ break; case 649: -#line 3001 "conf_parser.y" /* yacc.c:1652 */ +#line 2999 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_PRIVATE; } -#line 6574 "conf_parser.c" /* yacc.c:1652 */ +#line 6572 "conf_parser.c" /* yacc.c:1652 */ break; case 650: -#line 3004 "conf_parser.y" /* yacc.c:1652 */ +#line 3002 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_SECRET; } -#line 6582 "conf_parser.c" /* yacc.c:1652 */ +#line 6580 "conf_parser.c" /* yacc.c:1652 */ break; case 651: -#line 3007 "conf_parser.y" /* yacc.c:1652 */ +#line 3005 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_MODERATED; } -#line 6590 "conf_parser.c" /* yacc.c:1652 */ +#line 6588 "conf_parser.c" /* yacc.c:1652 */ break; case 652: -#line 3010 "conf_parser.y" /* yacc.c:1652 */ +#line 3008 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_TOPICLIMIT; } -#line 6598 "conf_parser.c" /* yacc.c:1652 */ +#line 6596 "conf_parser.c" /* yacc.c:1652 */ break; case 653: -#line 3013 "conf_parser.y" /* yacc.c:1652 */ +#line 3011 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_INVITEONLY; } -#line 6606 "conf_parser.c" /* yacc.c:1652 */ +#line 6604 "conf_parser.c" /* yacc.c:1652 */ break; case 654: -#line 3016 "conf_parser.y" /* yacc.c:1652 */ +#line 3014 "conf_parser.y" /* yacc.c:1652 */ { ConfigChannel.default_modes |= MODE_NOPRIVMSGS; } -#line 6614 "conf_parser.c" /* yacc.c:1652 */ +#line 6612 "conf_parser.c" /* yacc.c:1652 */ break; case 667: -#line 3036 "conf_parser.y" /* yacc.c:1652 */ +#line 3034 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.flatten_links = yylval.number; } -#line 6623 "conf_parser.c" /* yacc.c:1652 */ +#line 6621 "conf_parser.c" /* yacc.c:1652 */ break; case 668: -#line 3042 "conf_parser.y" /* yacc.c:1652 */ +#line 3040 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.disable_remote_commands = yylval.number; } -#line 6632 "conf_parser.c" /* yacc.c:1652 */ +#line 6630 "conf_parser.c" /* yacc.c:1652 */ break; case 669: -#line 3048 "conf_parser.y" /* yacc.c:1652 */ +#line 3046 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.hide_servers = yylval.number; } -#line 6641 "conf_parser.c" /* yacc.c:1652 */ +#line 6639 "conf_parser.c" /* yacc.c:1652 */ break; case 670: -#line 3054 "conf_parser.y" /* yacc.c:1652 */ +#line 3052 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.hide_services = yylval.number; } -#line 6650 "conf_parser.c" /* yacc.c:1652 */ +#line 6648 "conf_parser.c" /* yacc.c:1652 */ break; case 671: -#line 3060 "conf_parser.y" /* yacc.c:1652 */ +#line 3058 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -6658,11 +6656,11 @@ yyreduce: ConfigServerHide.hidden_name = xstrdup(yylval.string); } } -#line 6662 "conf_parser.c" /* yacc.c:1652 */ +#line 6660 "conf_parser.c" /* yacc.c:1652 */ break; case 672: -#line 3069 "conf_parser.y" /* yacc.c:1652 */ +#line 3067 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) { @@ -6675,29 +6673,29 @@ yyreduce: ConfigServerHide.links_delay = (yyvsp[-1].number); } } -#line 6679 "conf_parser.c" /* yacc.c:1652 */ +#line 6677 "conf_parser.c" /* yacc.c:1652 */ break; case 673: -#line 3083 "conf_parser.y" /* yacc.c:1652 */ +#line 3081 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.hidden = yylval.number; } -#line 6688 "conf_parser.c" /* yacc.c:1652 */ +#line 6686 "conf_parser.c" /* yacc.c:1652 */ break; case 674: -#line 3089 "conf_parser.y" /* yacc.c:1652 */ +#line 3087 "conf_parser.y" /* yacc.c:1652 */ { if (conf_parser_ctx.pass == 2) ConfigServerHide.hide_server_ips = yylval.number; } -#line 6697 "conf_parser.c" /* yacc.c:1652 */ +#line 6695 "conf_parser.c" /* yacc.c:1652 */ break; -#line 6701 "conf_parser.c" /* yacc.c:1652 */ +#line 6699 "conf_parser.c" /* yacc.c:1652 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires diff --git a/src/conf_parser.y b/src/conf_parser.y index 823f96a..c82f6d9 100644 --- a/src/conf_parser.y +++ b/src/conf_parser.y @@ -535,10 +535,8 @@ serverinfo_ssl_certificate_file: SSL_CERTIFICATE_FILE '=' QSTRING ';' break; } - if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string, - SSL_FILETYPE_PEM) <= 0 || - SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string, - SSL_FILETYPE_PEM) <= 0) + if (SSL_CTX_use_certificate_chain_file(ServerInfo.server_ctx, yylval.string) <= 0 || + SSL_CTX_use_certificate_chain_file(ServerInfo.client_ctx, yylval.string) <= 0) { report_crypto_errors(); conf_error_report("Could not open/read certificate file"); -- cgit