Fixes to improve portability (especially to OS X, Solaris, OpenBSD).
[ircu2.10.12-pk.git] / ircd / ircd_lexer.l
index 774ed3df3521c4107ba05c42a17d929e81b43bd1..73109d206dc57182ea26bdd8b4a3ae567cbc1774 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * ircd_parser.y: A yacc/bison parser for ircd config files.
+ * ircd_lexer.l: A lexical scanner for ircd config files.
  * This is part of ircu, an Internet Relay Chat server.
  * The contents of this file are Copyright(C) 2001 by Andrew Miller, the
  * ircd-hybrid team and the ircu team.
@@ -33,16 +33,23 @@ init_lexer(void)
 {
   yyin = fopen(configfile, "r");
   if (yyin == NULL)
-    yy_fatal_error("Could not open the configuration file.");
+  {
+#ifdef YY_FATAL_ERROR
+    YY_FATAL_ERROR("Could not open the configuration file.");
+#else
+    fprintf(stderr, "Could not open the configuration file.");
+#endif
+  }
+#ifdef YY_NEW_FILE
   YY_NEW_FILE;
+#endif
   lineno = 1;
 }
-
 %}
-%option noyywrap
-%option case-insensitive
-%option nounput
 
+%e 1500
+%p 3000
+%n 1000
 
 WHITE [ \t\r]+
 SHCOMMENT #[^\n]*
@@ -121,35 +128,38 @@ ip return IP;
 crule return CRULE;
 kill return KILL;
 quarantine return QUARANTINE;
+iauth return IAUTH;
+timeout return TIMEOUT;
 features return FEATURES;
 channel return CHANNEL;
-bypass_local_channel_limits return TPRIV_CHAN_LIMIT;
-set_local_channel_modes return TPRIV_MODE_LCHAN;
-protected_local_channel return TPRIV_DEOP_LCHAN;
-bypass_join_local_channels return TPRIV_WALK_LCHAN;
-global_kill return TPRIV_KILL;
+chan_limit return TPRIV_CHAN_LIMIT;
+mode_lchan return TPRIV_MODE_LCHAN;
+deop_lchan return TPRIV_DEOP_LCHAN;
+walk_lchan return TPRIV_WALK_LCHAN;
 local_kill return TPRIV_LOCAL_KILL;
 rehash return TPRIV_REHASH;
 restart return TPRIV_RESTART;
 die return TPRIV_DIE;
 gline return TPRIV_GLINE;
 local_gline return TPRIV_LOCAL_GLINE;
-jupe_server return TPRIV_JUPE;
-local_jupe_server return TPRIV_LOCAL_JUPE;
-hack_channel_modes return TPRIV_OPMODE;
-change_settings return TPRIV_SET;
-extended_who_information return TPRIV_WHOX;
-gline_channels return TPRIV_BADCHAN;
-local_gline_channels return TPRIV_LOCAL_BADCHAN;
-see_private_channels return TPRIV_SEE_CHAN;
-see_invisible_users return TPRIV_SHOW_INVIS;
-list_all_invisible_users return TPRIV_SHOW_ALL_INVIS;
-globally_opered return TPRIV_PROPAGATE;
-unlimited_who_queries return TPRIV_UNLIMIT_QUERY;
-oper_status_display return TPRIV_DISPLAY;
-see_other_opers return TPRIV_SEE_OPERS;
-wide_glines return TPRIV_WIDE_GLINE;
+local_jupe return TPRIV_LOCAL_JUPE;
+opmode return TPRIV_OPMODE;
+set return TPRIV_SET;
+whox return TPRIV_WHOX;
+badchan return TPRIV_BADCHAN;
+local_badchan return TPRIV_LOCAL_BADCHAN;
+see_chan return TPRIV_SEE_CHAN;
+show_invis return TPRIV_SHOW_INVIS;
+show_all_invis return TPRIV_SHOW_ALL_INVIS;
+propagate return TPRIV_PROPAGATE;
+unlimit_query return TPRIV_UNLIMIT_QUERY;
+display return TPRIV_DISPLAY;
+see_opers return TPRIV_SEE_OPERS;
+wide_gline return TPRIV_WIDE_GLINE;
+force_opmode return TPRIV_FORCE_OPMODE;
+force_local_opmode return TPRIV_FORCE_LOCAL_OPMODE;
 pseudo return PSEUDO;
 prepend return PREPEND;
+usermode return USERMODE;
 \n lineno++;
 . return yytext[0];