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

Comparing ircd-hybrid-7.3/src/ircd_parser.y (file contents):
Revision 1074 by michael, Wed Feb 17 23:28:33 2010 UTC vs.
Revision 1076 by michael, Thu Feb 18 09:23:47 2010 UTC

# Line 1038 | Line 1038 | oper_entry: OPERATOR
1038  
1039   oper_name_b: | oper_name_t;
1040   oper_items:     oper_items oper_item | oper_item;
1041 < oper_item:      oper_name | oper_user | oper_password | oper_hidden_admin |
1042 <                oper_hidden_oper | oper_umodes |
1043 <                oper_class | oper_global_kill | oper_remote |
1044 <                oper_kline | oper_xline | oper_unkline |
1045 <                oper_gline | oper_nick_changes | oper_remoteban |
1046 <                oper_die | oper_rehash | oper_admin | oper_operwall |
1047 <                oper_encrypted | oper_rsa_public_key_file |
1048 <                oper_flags | error ';' ;
1041 > oper_item:      oper_name | oper_user | oper_password |
1042 >                oper_umodes | oper_class | oper_encrypted |
1043 >                oper_rsa_public_key_file | oper_flags | error ';' ;
1044  
1045   oper_name: NAME '=' QSTRING ';'
1046   {
# Line 1264 | Line 1259 | oper_umodes_item:  T_BOTS
1259      yy_aconf->modes |= UMODE_LOCOPS;
1260   };
1261  
1267 oper_global_kill: GLOBAL_KILL '=' TBOOL ';'
1268 {
1269  if (conf_parser_ctx.pass == 2)
1270  {
1271    if (yylval.number)
1272      yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
1273    else
1274      yy_aconf->port &= ~OPER_FLAG_GLOBAL_KILL;
1275  }
1276 };
1277
1278 oper_remote: REMOTE '=' TBOOL ';'
1279 {
1280  if (conf_parser_ctx.pass == 2)
1281  {
1282    if (yylval.number)
1283      yy_aconf->port |= OPER_FLAG_REMOTE;
1284    else
1285      yy_aconf->port &= ~OPER_FLAG_REMOTE;
1286  }
1287 };
1288
1289 oper_remoteban: REMOTEBAN '=' TBOOL ';'
1290 {
1291  if (conf_parser_ctx.pass == 2)
1292  {
1293    if (yylval.number)
1294      yy_aconf->port |= OPER_FLAG_REMOTEBAN;
1295    else
1296      yy_aconf->port &= ~OPER_FLAG_REMOTEBAN;
1297  }
1298 };
1299
1300 oper_kline: KLINE '=' TBOOL ';'
1301 {
1302  if (conf_parser_ctx.pass == 2)
1303  {
1304    if (yylval.number)
1305      yy_aconf->port |= OPER_FLAG_K;
1306    else
1307      yy_aconf->port &= ~OPER_FLAG_K;
1308  }
1309 };
1310
1311 oper_xline: XLINE '=' TBOOL ';'
1312 {
1313  if (conf_parser_ctx.pass == 2)
1314  {
1315    if (yylval.number)
1316      yy_aconf->port |= OPER_FLAG_X;
1317    else
1318      yy_aconf->port &= ~OPER_FLAG_X;
1319  }
1320 };
1321
1322 oper_unkline: UNKLINE '=' TBOOL ';'
1323 {
1324  if (conf_parser_ctx.pass == 2)
1325  {
1326    if (yylval.number)
1327      yy_aconf->port |= OPER_FLAG_UNKLINE;
1328    else
1329      yy_aconf->port &= ~OPER_FLAG_UNKLINE;
1330  }
1331 };
1332
1333 oper_gline: GLINE '=' TBOOL ';'
1334 {
1335  if (conf_parser_ctx.pass == 2)
1336  {
1337    if (yylval.number)
1338      yy_aconf->port |= OPER_FLAG_GLINE;
1339    else
1340      yy_aconf->port &= ~OPER_FLAG_GLINE;
1341  }
1342 };
1343
1344 oper_nick_changes: NICK_CHANGES '=' TBOOL ';'
1345 {
1346  if (conf_parser_ctx.pass == 2)
1347  {
1348    if (yylval.number)
1349      yy_aconf->port |= OPER_FLAG_N;
1350    else
1351      yy_aconf->port &= ~OPER_FLAG_N;
1352  }
1353 };
1354
1355 oper_die: DIE '=' TBOOL ';'
1356 {
1357  if (conf_parser_ctx.pass == 2)
1358  {
1359    if (yylval.number)
1360      yy_aconf->port |= OPER_FLAG_DIE;
1361    else
1362      yy_aconf->port &= ~OPER_FLAG_DIE;
1363  }
1364 };
1365
1366 oper_rehash: REHASH '=' TBOOL ';'
1367 {
1368  if (conf_parser_ctx.pass == 2)
1369  {
1370    if (yylval.number)
1371      yy_aconf->port |= OPER_FLAG_REHASH;
1372    else
1373      yy_aconf->port &= ~OPER_FLAG_REHASH;
1374  }
1375 };
1376
1377 oper_admin: ADMIN '=' TBOOL ';'
1378 {
1379  if (conf_parser_ctx.pass == 2)
1380  {
1381    if (yylval.number)
1382      yy_aconf->port |= OPER_FLAG_ADMIN;
1383    else
1384      yy_aconf->port &= ~OPER_FLAG_ADMIN;
1385  }
1386 };
1387
1388 oper_hidden_admin: HIDDEN_ADMIN '=' TBOOL ';'
1389 {
1390  if (conf_parser_ctx.pass == 2)
1391  {
1392    if (yylval.number)
1393      yy_aconf->port |= OPER_FLAG_HIDDEN_ADMIN;
1394    else
1395      yy_aconf->port &= ~OPER_FLAG_HIDDEN_ADMIN;
1396  }
1397 };
1398
1399 oper_hidden_oper: HIDDEN_OPER '=' TBOOL ';'
1400 {
1401  if (conf_parser_ctx.pass == 2)
1402  {
1403    if (yylval.number)
1404      yy_aconf->port |= OPER_FLAG_HIDDEN_OPER;
1405    else
1406      yy_aconf->port &= ~OPER_FLAG_HIDDEN_OPER;
1407  }
1408 };
1409
1410 oper_operwall: T_OPERWALL '=' TBOOL ';'
1411 {
1412  if (conf_parser_ctx.pass == 2)
1413  {
1414    if (yylval.number)
1415      yy_aconf->port |= OPER_FLAG_OPERWALL;
1416    else
1417      yy_aconf->port &= ~OPER_FLAG_OPERWALL;
1418  }
1419 };
1420
1262   oper_flags: IRCD_FLAGS
1263   {
1264   } '='  oper_flags_items ';';
# Line 1875 | Line 1716 | auth_entry: IRCD_AUTH
1716  
1717   auth_items:     auth_items auth_item | auth_item;
1718   auth_item:      auth_user | auth_passwd | auth_class | auth_flags |
1719 <                auth_kline_exempt | auth_need_ident |
1720 <                auth_exceed_limit | auth_no_tilde | auth_gline_exempt |
1880 <                auth_spoof | auth_spoof_notice |
1881 <                auth_redir_serv | auth_redir_port | auth_can_flood |
1882 <                auth_need_password | auth_encrypted | error ';' ;
1719 >                auth_spoof | auth_redir_serv | auth_redir_port |
1720 >                auth_encrypted | error ';' ;
1721  
1722   auth_user: USER '=' QSTRING ';'
1723   {
# Line 1931 | Line 1769 | auth_passwd: PASSWORD '=' QSTRING ';'
1769    }
1770   };
1771  
1934 auth_spoof_notice: SPOOF_NOTICE '=' TBOOL ';'
1935 {
1936  if (conf_parser_ctx.pass == 2)
1937  {
1938    if (yylval.number)
1939      yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
1940    else
1941      yy_aconf->flags &= ~CONF_FLAGS_SPOOF_NOTICE;
1942  }
1943 };
1944
1772   auth_class: CLASS '=' QSTRING ';'
1773   {
1774    if (conf_parser_ctx.pass == 2)
# Line 1977 | Line 1804 | auth_flags_item_atom: SPOOF_NOTICE
1804      if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_SPOOF_NOTICE;
1805      else yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
1806    }
1980
1807   } | EXCEED_LIMIT
1808   {
1809    if (conf_parser_ctx.pass == 2)
# Line 2043 | Line 1869 | auth_flags_item_atom: SPOOF_NOTICE
1869    }
1870   };
1871  
2046 auth_kline_exempt: KLINE_EXEMPT '=' TBOOL ';'
2047 {
2048  if (conf_parser_ctx.pass == 2)
2049  {
2050    if (yylval.number)
2051      yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
2052    else
2053      yy_aconf->flags &= ~CONF_FLAGS_EXEMPTKLINE;
2054  }
2055 };
2056
2057 auth_need_ident: NEED_IDENT '=' TBOOL ';'
2058 {
2059  if (conf_parser_ctx.pass == 2)
2060  {
2061    if (yylval.number)
2062      yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
2063    else
2064      yy_aconf->flags &= ~CONF_FLAGS_NEED_IDENTD;
2065  }
2066 };
2067
2068 auth_exceed_limit: EXCEED_LIMIT '=' TBOOL ';'
2069 {
2070  if (conf_parser_ctx.pass == 2)
2071  {
2072    if (yylval.number)
2073      yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
2074    else
2075      yy_aconf->flags &= ~CONF_FLAGS_NOLIMIT;
2076  }
2077 };
2078
2079 auth_can_flood: CAN_FLOOD '=' TBOOL ';'
2080 {
2081  if (conf_parser_ctx.pass == 2)
2082  {
2083    if (yylval.number)
2084      yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
2085    else
2086      yy_aconf->flags &= ~CONF_FLAGS_CAN_FLOOD;
2087  }
2088 };
2089
2090 auth_no_tilde: NO_TILDE '=' TBOOL ';'
2091 {
2092  if (conf_parser_ctx.pass == 2)
2093  {
2094    if (yylval.number)
2095      yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
2096    else
2097      yy_aconf->flags &= ~CONF_FLAGS_NO_TILDE;
2098  }
2099 };
2100
2101 auth_gline_exempt: GLINE_EXEMPT '=' TBOOL ';'
2102 {
2103  if (conf_parser_ctx.pass == 2)
2104  {
2105    if (yylval.number)
2106      yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
2107    else
2108      yy_aconf->flags &= ~CONF_FLAGS_EXEMPTGLINE;
2109  }
2110 };
2111
1872   /* XXX - need check for illegal hostnames here */
1873   auth_spoof: SPOOF '=' QSTRING ';'
1874   {
# Line 2148 | Line 1908 | auth_redir_port: REDIRPORT '=' NUMBER ';
1908    }
1909   };
1910  
2151 auth_need_password: NEED_PASSWORD '=' TBOOL ';'
2152 {
2153  if (conf_parser_ctx.pass == 2)
2154  {
2155    if (yylval.number)
2156      yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
2157    else
2158      yy_aconf->flags &= ~CONF_FLAGS_NEED_PASSWORD;
2159  }
2160 };
2161
1911  
1912   /***************************************************************************
1913   *  section resv
# Line 2557 | Line 2306 | connect_name_b: | connect_name_t;
2306   connect_items:  connect_items connect_item | connect_item;
2307   connect_item:   connect_name | connect_host | connect_vhost |
2308                  connect_send_password | connect_accept_password |
2309 <                connect_aftype | connect_port |
2310 <                connect_fakename | connect_flags | connect_hub_mask |
2311 <                connect_leaf_mask | connect_class | connect_auto |
2563 <                connect_encrypted | connect_compressed | connect_cryptlink |
2309 >                connect_aftype | connect_port | connect_fakename |
2310 >                connect_flags | connect_hub_mask | connect_leaf_mask |
2311 >                connect_class | connect_encrypted |
2312                  connect_rsa_public_key_file | connect_cipher_preference |
2313 <                connect_topicburst | error ';' ;
2313 >                error ';' ;
2314  
2315   connect_name: NAME '=' QSTRING ';'
2316   {
# Line 2788 | Line 2536 | connect_encrypted: ENCRYPTED '=' TBOOL '
2536    }
2537   };
2538  
2791 connect_cryptlink: CRYPTLINK '=' TBOOL ';'
2792 {
2793  if (conf_parser_ctx.pass == 2)
2794  {
2795    if (yylval.number)
2796      yy_aconf->flags |= CONF_FLAGS_CRYPTLINK;
2797    else
2798      yy_aconf->flags &= ~CONF_FLAGS_CRYPTLINK;
2799  }
2800 };
2801
2802 connect_compressed: COMPRESSED '=' TBOOL ';'
2803 {
2804  if (conf_parser_ctx.pass == 2)
2805  {
2806    if (yylval.number)
2807 #ifndef HAVE_LIBZ
2808      yyerror("Ignoring compressed=yes; -- no zlib support");
2809 #else
2810      yy_aconf->flags |= CONF_FLAGS_COMPRESSED;
2811 #endif
2812    else
2813      yy_aconf->flags &= ~CONF_FLAGS_COMPRESSED;
2814  }
2815 };
2816
2817 connect_auto: AUTOCONN '=' TBOOL ';'
2818 {
2819  if (conf_parser_ctx.pass == 2)
2820  {
2821    if (yylval.number)
2822      yy_aconf->flags |= CONF_FLAGS_ALLOW_AUTO_CONN;
2823    else
2824      yy_aconf->flags &= ~CONF_FLAGS_ALLOW_AUTO_CONN;
2825  }
2826 };
2827
2828 connect_topicburst: TOPICBURST '=' TBOOL ';'
2829 {
2830  if (conf_parser_ctx.pass == 2)
2831  {
2832    if (yylval.number)
2833      SetConfTopicBurst(yy_aconf);
2834    else
2835      ClearConfTopicBurst(yy_aconf);
2836  }
2837 };
2838
2539   connect_hub_mask: HUB_MASK '=' QSTRING ';'
2540   {
2541    if (conf_parser_ctx.pass == 2)

Diff Legend

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