/*
-Copyright (C) 2002 Andy Smith
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the
-
- Free Software Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA
-*/
+ * Copyright (c) 2002 Andy Smith
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002 Andy Smith
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef COMPAT_H
#define COMPAT_H
char *yytext;
#line 1 "config-lexer.l"
/*
- * Copyright (C) 2002 Erik Fears
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * QSTRING , ccomment and hashcomment taken from Hybrid7:
- * Copyright (C) 2002 by the past and present ircd coders, and others.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
-#line 32 "config-lexer.l"
+#line 26 "config-lexer.l"
#include <stdio.h>
#include <string.h>
int linenum = 1;
char linebuf[512];
-#line 787 "config-lexer.c"
+#line 781 "config-lexer.c"
#define INITIAL 0
}
{
-#line 51 "config-lexer.l"
+#line 45 "config-lexer.l"
-#line 997 "config-lexer.c"
+#line 991 "config-lexer.c"
while ( 1 ) /* loops until end-of-file is reached */
{
case 1:
YY_RULE_SETUP
-#line 53 "config-lexer.l"
+#line 47 "config-lexer.l"
{ ccomment(); }
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 55 "config-lexer.l"
+#line 49 "config-lexer.l"
;
YY_BREAK
case 3:
/* rule 3 can match eol */
YY_RULE_SETUP
-#line 57 "config-lexer.l"
+#line 51 "config-lexer.l"
{
/* QSTRING from Hybrid7. Why re-invent the wheel? */
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 96 "config-lexer.l"
+#line 90 "config-lexer.l"
{ return AWAY; }
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 97 "config-lexer.l"
+#line 91 "config-lexer.l"
{ return BAN_UNKNOWN; }
YY_BREAK
case 6:
YY_RULE_SETUP
-#line 98 "config-lexer.l"
+#line 92 "config-lexer.l"
{ return BLACKLIST; }
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 99 "config-lexer.l"
+#line 93 "config-lexer.l"
{ return CHANNEL; }
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 100 "config-lexer.l"
+#line 94 "config-lexer.l"
{ return CONNREGEX; }
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 101 "config-lexer.l"
+#line 95 "config-lexer.l"
{ return DNS_FDLIMIT; }
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 102 "config-lexer.l"
+#line 96 "config-lexer.l"
{ return DNSBL_FROM; }
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 103 "config-lexer.l"
+#line 97 "config-lexer.l"
{ return DNSBL_TO; }
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 104 "config-lexer.l"
+#line 98 "config-lexer.l"
{ return EXEMPT; }
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 105 "config-lexer.l"
+#line 99 "config-lexer.l"
{ return FD; }
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 106 "config-lexer.l"
+#line 100 "config-lexer.l"
{ return INVITE; }
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 107 "config-lexer.l"
+#line 101 "config-lexer.l"
{ return IRC; }
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 108 "config-lexer.l"
+#line 102 "config-lexer.l"
{ return KLINE; }
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 109 "config-lexer.l"
+#line 103 "config-lexer.l"
{ return KEY; }
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 110 "config-lexer.l"
+#line 104 "config-lexer.l"
{ return MASK; }
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 111 "config-lexer.l"
+#line 105 "config-lexer.l"
{ return MAX_READ; }
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 112 "config-lexer.l"
+#line 106 "config-lexer.l"
{ return MODE; }
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 113 "config-lexer.l"
+#line 107 "config-lexer.l"
{ return NAME; }
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 114 "config-lexer.l"
+#line 108 "config-lexer.l"
{ return NEGCACHE; }
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 115 "config-lexer.l"
+#line 109 "config-lexer.l"
{ return NEGCACHE_REBUILD; }
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 116 "config-lexer.l"
+#line 110 "config-lexer.l"
{ return NICK; }
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 117 "config-lexer.l"
+#line 111 "config-lexer.l"
{ return NICKSERV; }
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 118 "config-lexer.l"
+#line 112 "config-lexer.l"
{ return OPER; }
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 119 "config-lexer.l"
+#line 113 "config-lexer.l"
{ return OPM; }
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 120 "config-lexer.l"
+#line 114 "config-lexer.l"
{ return OPTIONS; }
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 121 "config-lexer.l"
+#line 115 "config-lexer.l"
{ return PASSWORD; }
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 122 "config-lexer.l"
+#line 116 "config-lexer.l"
{ return PERFORM; }
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 123 "config-lexer.l"
+#line 117 "config-lexer.l"
{ return PIDFILE; }
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 124 "config-lexer.l"
+#line 118 "config-lexer.l"
{ return PORT; }
YY_BREAK
case 33:
YY_RULE_SETUP
-#line 125 "config-lexer.l"
+#line 119 "config-lexer.l"
{ return PROTOCOL; }
YY_BREAK
case 34:
YY_RULE_SETUP
-#line 126 "config-lexer.l"
+#line 120 "config-lexer.l"
{ return READTIMEOUT; }
YY_BREAK
case 35:
YY_RULE_SETUP
-#line 127 "config-lexer.l"
+#line 121 "config-lexer.l"
{ return REALNAME; }
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 128 "config-lexer.l"
+#line 122 "config-lexer.l"
{ return REPLY; }
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 129 "config-lexer.l"
+#line 123 "config-lexer.l"
{ return SCANLOG; }
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 130 "config-lexer.l"
+#line 124 "config-lexer.l"
{ return SCANNER; }
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 131 "config-lexer.l"
+#line 125 "config-lexer.l"
{ return SENDMAIL; }
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 132 "config-lexer.l"
+#line 126 "config-lexer.l"
{ return SERVER; }
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 133 "config-lexer.l"
+#line 127 "config-lexer.l"
{ return TARGET_IP; }
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 134 "config-lexer.l"
+#line 128 "config-lexer.l"
{ return TARGET_PORT; }
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 135 "config-lexer.l"
+#line 129 "config-lexer.l"
{ return TARGET_STRING;}
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 136 "config-lexer.l"
+#line 130 "config-lexer.l"
{ return TIMEOUT; }
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 137 "config-lexer.l"
+#line 131 "config-lexer.l"
{ return TYPE; }
YY_BREAK
case 46:
YY_RULE_SETUP
-#line 138 "config-lexer.l"
+#line 132 "config-lexer.l"
{ return USER; }
YY_BREAK
case 47:
YY_RULE_SETUP
-#line 139 "config-lexer.l"
+#line 133 "config-lexer.l"
{ return USERNAME; }
YY_BREAK
case 48:
YY_RULE_SETUP
-#line 140 "config-lexer.l"
+#line 134 "config-lexer.l"
{ return VHOST; }
YY_BREAK
case 49:
YY_RULE_SETUP
-#line 142 "config-lexer.l"
+#line 136 "config-lexer.l"
{ return YEARS; }
YY_BREAK
case 50:
YY_RULE_SETUP
-#line 143 "config-lexer.l"
+#line 137 "config-lexer.l"
{ return YEARS; }
YY_BREAK
case 51:
YY_RULE_SETUP
-#line 144 "config-lexer.l"
+#line 138 "config-lexer.l"
{ return MONTHS; }
YY_BREAK
case 52:
YY_RULE_SETUP
-#line 145 "config-lexer.l"
+#line 139 "config-lexer.l"
{ return MONTHS; }
YY_BREAK
case 53:
YY_RULE_SETUP
-#line 146 "config-lexer.l"
+#line 140 "config-lexer.l"
{ return WEEKS; }
YY_BREAK
case 54:
YY_RULE_SETUP
-#line 147 "config-lexer.l"
+#line 141 "config-lexer.l"
{ return WEEKS; }
YY_BREAK
case 55:
YY_RULE_SETUP
-#line 148 "config-lexer.l"
+#line 142 "config-lexer.l"
{ return DAYS; }
YY_BREAK
case 56:
YY_RULE_SETUP
-#line 149 "config-lexer.l"
+#line 143 "config-lexer.l"
{ return DAYS; }
YY_BREAK
case 57:
YY_RULE_SETUP
-#line 150 "config-lexer.l"
+#line 144 "config-lexer.l"
{ return HOURS; }
YY_BREAK
case 58:
YY_RULE_SETUP
-#line 151 "config-lexer.l"
+#line 145 "config-lexer.l"
{ return HOURS; }
YY_BREAK
case 59:
YY_RULE_SETUP
-#line 152 "config-lexer.l"
+#line 146 "config-lexer.l"
{ return MINUTES; }
YY_BREAK
case 60:
YY_RULE_SETUP
-#line 153 "config-lexer.l"
+#line 147 "config-lexer.l"
{ return MINUTES; }
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 154 "config-lexer.l"
+#line 148 "config-lexer.l"
{ return SECONDS; }
YY_BREAK
case 62:
YY_RULE_SETUP
-#line 155 "config-lexer.l"
+#line 149 "config-lexer.l"
{ return SECONDS; }
YY_BREAK
case 63:
YY_RULE_SETUP
-#line 157 "config-lexer.l"
+#line 151 "config-lexer.l"
{ return BYTES; }
YY_BREAK
case 64:
YY_RULE_SETUP
-#line 158 "config-lexer.l"
+#line 152 "config-lexer.l"
{ return BYTES; }
YY_BREAK
case 65:
YY_RULE_SETUP
-#line 159 "config-lexer.l"
+#line 153 "config-lexer.l"
{ return KBYTES; }
YY_BREAK
case 66:
YY_RULE_SETUP
-#line 160 "config-lexer.l"
+#line 154 "config-lexer.l"
{ return KBYTES; }
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 161 "config-lexer.l"
+#line 155 "config-lexer.l"
{ return KBYTES; }
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 162 "config-lexer.l"
+#line 156 "config-lexer.l"
{ return KBYTES; }
YY_BREAK
case 69:
YY_RULE_SETUP
-#line 163 "config-lexer.l"
+#line 157 "config-lexer.l"
{ return KBYTES; }
YY_BREAK
case 70:
YY_RULE_SETUP
-#line 164 "config-lexer.l"
+#line 158 "config-lexer.l"
{ return MBYTES; }
YY_BREAK
case 71:
YY_RULE_SETUP
-#line 165 "config-lexer.l"
+#line 159 "config-lexer.l"
{ return MBYTES; }
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 166 "config-lexer.l"
+#line 160 "config-lexer.l"
{ return MBYTES; }
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 167 "config-lexer.l"
+#line 161 "config-lexer.l"
{ return MBYTES; }
YY_BREAK
case 74:
YY_RULE_SETUP
-#line 168 "config-lexer.l"
+#line 162 "config-lexer.l"
{ return MBYTES; }
YY_BREAK
case 75:
YY_RULE_SETUP
-#line 170 "config-lexer.l"
+#line 164 "config-lexer.l"
{
yylval.number = OPM_TYPE_HTTP;
return PROTOCOLTYPE;
YY_BREAK
case 76:
YY_RULE_SETUP
-#line 175 "config-lexer.l"
+#line 169 "config-lexer.l"
{
yylval.number = OPM_TYPE_HTTPPOST;
return PROTOCOLTYPE;
YY_BREAK
case 77:
YY_RULE_SETUP
-#line 180 "config-lexer.l"
+#line 174 "config-lexer.l"
{
yylval.number = OPM_TYPE_SOCKS4;
return PROTOCOLTYPE;
YY_BREAK
case 78:
YY_RULE_SETUP
-#line 185 "config-lexer.l"
+#line 179 "config-lexer.l"
{
yylval.number = OPM_TYPE_SOCKS5;
return PROTOCOLTYPE;
YY_BREAK
case 79:
YY_RULE_SETUP
-#line 190 "config-lexer.l"
+#line 184 "config-lexer.l"
{
yylval.number = OPM_TYPE_WINGATE;
return PROTOCOLTYPE;
YY_BREAK
case 80:
YY_RULE_SETUP
-#line 195 "config-lexer.l"
+#line 189 "config-lexer.l"
{
yylval.number = OPM_TYPE_ROUTER;
return PROTOCOLTYPE;
YY_BREAK
case 81:
YY_RULE_SETUP
-#line 201 "config-lexer.l"
+#line 195 "config-lexer.l"
{
yylval.number=atoi(yytext);
return NUMBER;
YY_BREAK
case 82:
YY_RULE_SETUP
-#line 210 "config-lexer.l"
+#line 204 "config-lexer.l"
{
yylval.number=1;
return NUMBER;
YY_BREAK
case 83:
YY_RULE_SETUP
-#line 214 "config-lexer.l"
+#line 208 "config-lexer.l"
{
yylval.number=1;
return NUMBER;
YY_BREAK
case 84:
YY_RULE_SETUP
-#line 218 "config-lexer.l"
+#line 212 "config-lexer.l"
{
yylval.number=1;
return NUMBER;
YY_BREAK
case 85:
YY_RULE_SETUP
-#line 225 "config-lexer.l"
+#line 219 "config-lexer.l"
{
yylval.number=0;
return NUMBER;
YY_BREAK
case 86:
YY_RULE_SETUP
-#line 230 "config-lexer.l"
+#line 224 "config-lexer.l"
{
yylval.number=0;
return NUMBER;
YY_BREAK
case 87:
YY_RULE_SETUP
-#line 235 "config-lexer.l"
+#line 229 "config-lexer.l"
{
yylval.number=0;
return NUMBER;
case 88:
/* rule 88 can match eol */
YY_RULE_SETUP
-#line 241 "config-lexer.l"
+#line 235 "config-lexer.l"
{
strlcpy(linebuf, yytext + 1, sizeof(linebuf));
++linenum;
YY_BREAK
case 89:
YY_RULE_SETUP
-#line 247 "config-lexer.l"
+#line 241 "config-lexer.l"
/* ignore whitespace */;
YY_BREAK
case 90:
YY_RULE_SETUP
-#line 249 "config-lexer.l"
+#line 243 "config-lexer.l"
return yytext[0];
YY_BREAK
case 91:
YY_RULE_SETUP
-#line 251 "config-lexer.l"
+#line 245 "config-lexer.l"
ECHO;
YY_BREAK
-#line 1597 "config-lexer.c"
+#line 1591 "config-lexer.c"
case YY_STATE_EOF(INITIAL):
yyterminate();
#define YYTABLES_NAME "yytables"
-#line 251 "config-lexer.l"
+#line 245 "config-lexer.l"
/*
- * Copyright (C) 2002 Erik Fears
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * QSTRING , ccomment and hashcomment taken from Hybrid7:
- * Copyright (C) 2002 by the past and present ircd coders, and others.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
%option case-insensitive
/* Copy the first part of user declarations. */
-#line 25 "config-parser.y" /* yacc.c:339 */
+#line 21 "config-parser.y" /* yacc.c:339 */
#include <stdio.h>
#include <string.h>
typedef union YYSTYPE YYSTYPE;
union YYSTYPE
{
-#line 88 "config-parser.y" /* yacc.c:355 */
+#line 84 "config-parser.y" /* yacc.c:355 */
int number;
char *string;
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 103, 103, 104, 107, 108, 109, 110, 111, 112,
- 114, 114, 115, 116, 117, 118, 119, 120, 121, 122,
- 125, 125, 126, 127, 128, 129, 134, 136, 137, 139,
- 140, 141, 142, 143, 144, 146, 151, 156, 162, 167,
- 175, 177, 178, 180, 181, 182, 183, 184, 185, 186,
- 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
- 198, 204, 210, 216, 222, 228, 234, 240, 248, 253,
- 258, 264, 270, 276, 282, 292, 292, 309, 310, 312,
- 313, 314, 316, 324, 332, 343, 343, 359, 360, 362,
- 363, 364, 366, 376, 389, 389, 434, 435, 437, 438,
- 439, 440, 441, 442, 443, 444, 445, 446, 448, 455,
- 462, 469, 485, 491, 497, 503, 509, 528, 530, 531,
- 533, 534, 535, 536, 537, 539, 545, 551, 560, 560,
- 579, 580, 582, 583, 584, 585, 586, 587, 589, 596,
- 603, 614, 620, 622, 623, 625, 643, 645, 646, 648,
- 649, 651
+ 0, 99, 99, 100, 103, 104, 105, 106, 107, 108,
+ 110, 110, 111, 112, 113, 114, 115, 116, 117, 118,
+ 121, 121, 122, 123, 124, 125, 130, 132, 133, 135,
+ 136, 137, 138, 139, 140, 142, 147, 152, 158, 163,
+ 171, 173, 174, 176, 177, 178, 179, 180, 181, 182,
+ 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
+ 194, 200, 206, 212, 218, 224, 230, 236, 244, 249,
+ 254, 260, 266, 272, 278, 288, 288, 305, 306, 308,
+ 309, 310, 312, 320, 328, 339, 339, 355, 356, 358,
+ 359, 360, 362, 372, 385, 385, 430, 431, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 444, 451,
+ 458, 465, 481, 487, 493, 499, 505, 524, 526, 527,
+ 529, 530, 531, 532, 533, 535, 541, 547, 556, 556,
+ 575, 576, 578, 579, 580, 581, 582, 583, 585, 592,
+ 599, 610, 616, 618, 619, 621, 639, 641, 642, 644,
+ 645, 647
};
#endif
switch (yyn)
{
case 10:
-#line 114 "config-parser.y" /* yacc.c:1646 */
+#line 110 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = 0; }
#line 1582 "config-parser.c" /* yacc.c:1646 */
break;
case 12:
-#line 115 "config-parser.y" /* yacc.c:1646 */
+#line 111 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
#line 1588 "config-parser.c" /* yacc.c:1646 */
break;
case 13:
-#line 116 "config-parser.y" /* yacc.c:1646 */
+#line 112 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
#line 1594 "config-parser.c" /* yacc.c:1646 */
break;
case 14:
-#line 117 "config-parser.y" /* yacc.c:1646 */
+#line 113 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 + (yyvsp[0].number); }
#line 1600 "config-parser.c" /* yacc.c:1646 */
break;
case 15:
-#line 118 "config-parser.y" /* yacc.c:1646 */
+#line 114 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 + (yyvsp[0].number); }
#line 1606 "config-parser.c" /* yacc.c:1646 */
break;
case 16:
-#line 119 "config-parser.y" /* yacc.c:1646 */
+#line 115 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 + (yyvsp[0].number); }
#line 1612 "config-parser.c" /* yacc.c:1646 */
break;
case 17:
-#line 120 "config-parser.y" /* yacc.c:1646 */
+#line 116 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 + (yyvsp[0].number); }
#line 1618 "config-parser.c" /* yacc.c:1646 */
break;
case 18:
-#line 121 "config-parser.y" /* yacc.c:1646 */
+#line 117 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 * 4 + (yyvsp[0].number); }
#line 1624 "config-parser.c" /* yacc.c:1646 */
break;
case 19:
-#line 122 "config-parser.y" /* yacc.c:1646 */
+#line 118 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 365 + (yyvsp[0].number); }
#line 1630 "config-parser.c" /* yacc.c:1646 */
break;
case 20:
-#line 125 "config-parser.y" /* yacc.c:1646 */
+#line 121 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = 0; }
#line 1636 "config-parser.c" /* yacc.c:1646 */
break;
case 22:
-#line 126 "config-parser.y" /* yacc.c:1646 */
+#line 122 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
#line 1642 "config-parser.c" /* yacc.c:1646 */
break;
case 23:
-#line 127 "config-parser.y" /* yacc.c:1646 */
+#line 123 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
#line 1648 "config-parser.c" /* yacc.c:1646 */
break;
case 24:
-#line 128 "config-parser.y" /* yacc.c:1646 */
+#line 124 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 1024 + (yyvsp[0].number); }
#line 1654 "config-parser.c" /* yacc.c:1646 */
break;
case 25:
-#line 129 "config-parser.y" /* yacc.c:1646 */
+#line 125 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 1024 * 1024 + (yyvsp[0].number); }
#line 1660 "config-parser.c" /* yacc.c:1646 */
break;
case 35:
-#line 147 "config-parser.y" /* yacc.c:1646 */
+#line 143 "config-parser.y" /* yacc.c:1646 */
{
OptionsItem->negcache = (yyvsp[-1].number);
}
break;
case 36:
-#line 152 "config-parser.y" /* yacc.c:1646 */
+#line 148 "config-parser.y" /* yacc.c:1646 */
{
OptionsItem->negcache_rebuild = (yyvsp[-1].number);
}
break;
case 37:
-#line 157 "config-parser.y" /* yacc.c:1646 */
+#line 153 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OptionsItem->pidfile);
OptionsItem->pidfile = xstrdup((yyvsp[-1].string));
break;
case 38:
-#line 163 "config-parser.y" /* yacc.c:1646 */
+#line 159 "config-parser.y" /* yacc.c:1646 */
{
OptionsItem->dns_fdlimit = (yyvsp[-1].number);
}
break;
case 39:
-#line 168 "config-parser.y" /* yacc.c:1646 */
+#line 164 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OptionsItem->scanlog);
OptionsItem->scanlog = xstrdup((yyvsp[-1].string));
break;
case 60:
-#line 199 "config-parser.y" /* yacc.c:1646 */
+#line 195 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->away);
IRCItem->away = xstrdup((yyvsp[-1].string));
break;
case 61:
-#line 205 "config-parser.y" /* yacc.c:1646 */
+#line 201 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->kline);
IRCItem->kline = xstrdup((yyvsp[-1].string));
break;
case 62:
-#line 211 "config-parser.y" /* yacc.c:1646 */
+#line 207 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->mode);
IRCItem->mode = xstrdup((yyvsp[-1].string));
break;
case 63:
-#line 217 "config-parser.y" /* yacc.c:1646 */
+#line 213 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->nick);
IRCItem->nick = xstrdup((yyvsp[-1].string));
break;
case 64:
-#line 223 "config-parser.y" /* yacc.c:1646 */
+#line 219 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->nickserv);
IRCItem->nickserv = xstrdup((yyvsp[-1].string));
break;
case 65:
-#line 229 "config-parser.y" /* yacc.c:1646 */
+#line 225 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->oper);
IRCItem->oper = xstrdup((yyvsp[-1].string));
break;
case 66:
-#line 235 "config-parser.y" /* yacc.c:1646 */
+#line 231 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->password);
IRCItem->password = xstrdup((yyvsp[-1].string));
break;
case 67:
-#line 241 "config-parser.y" /* yacc.c:1646 */
+#line 237 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
node = node_create(xstrdup((yyvsp[-1].string)));
break;
case 68:
-#line 249 "config-parser.y" /* yacc.c:1646 */
+#line 245 "config-parser.y" /* yacc.c:1646 */
{
IRCItem->port = (yyvsp[-1].number);
}
break;
case 69:
-#line 254 "config-parser.y" /* yacc.c:1646 */
+#line 250 "config-parser.y" /* yacc.c:1646 */
{
IRCItem->readtimeout = (yyvsp[-1].number);
}
break;
case 70:
-#line 259 "config-parser.y" /* yacc.c:1646 */
+#line 255 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->realname);
IRCItem->realname = xstrdup((yyvsp[-1].string));
break;
case 71:
-#line 265 "config-parser.y" /* yacc.c:1646 */
+#line 261 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->server);
IRCItem->server = xstrdup((yyvsp[-1].string));
break;
case 72:
-#line 271 "config-parser.y" /* yacc.c:1646 */
+#line 267 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->username);
IRCItem->username = xstrdup((yyvsp[-1].string));
break;
case 73:
-#line 277 "config-parser.y" /* yacc.c:1646 */
+#line 273 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->vhost);
IRCItem->vhost = xstrdup((yyvsp[-1].string));
break;
case 74:
-#line 283 "config-parser.y" /* yacc.c:1646 */
+#line 279 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->connregex);
IRCItem->connregex = xstrdup((yyvsp[-1].string));
break;
case 75:
-#line 292 "config-parser.y" /* yacc.c:1646 */
+#line 288 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct ChannelConf *item;
break;
case 82:
-#line 317 "config-parser.y" /* yacc.c:1646 */
+#line 313 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
break;
case 83:
-#line 325 "config-parser.y" /* yacc.c:1646 */
+#line 321 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
break;
case 84:
-#line 333 "config-parser.y" /* yacc.c:1646 */
+#line 329 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
break;
case 85:
-#line 343 "config-parser.y" /* yacc.c:1646 */
+#line 339 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct UserConf *item;
break;
case 92:
-#line 367 "config-parser.y" /* yacc.c:1646 */
+#line 363 "config-parser.y" /* yacc.c:1646 */
{
struct UserConf *item = tmp;
node_t *node;
break;
case 93:
-#line 377 "config-parser.y" /* yacc.c:1646 */
+#line 373 "config-parser.y" /* yacc.c:1646 */
{
struct UserConf *item = tmp;
node_t *node;
break;
case 94:
-#line 389 "config-parser.y" /* yacc.c:1646 */
+#line 385 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct ScannerConf *item, *olditem;
break;
case 108:
-#line 449 "config-parser.y" /* yacc.c:1646 */
+#line 445 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->name);
break;
case 109:
-#line 456 "config-parser.y" /* yacc.c:1646 */
+#line 452 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->vhost);
break;
case 110:
-#line 463 "config-parser.y" /* yacc.c:1646 */
+#line 459 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->target_ip);
break;
case 111:
-#line 470 "config-parser.y" /* yacc.c:1646 */
+#line 466 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
break;
case 112:
-#line 486 "config-parser.y" /* yacc.c:1646 */
+#line 482 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->fd = (yyvsp[-1].number);
break;
case 113:
-#line 492 "config-parser.y" /* yacc.c:1646 */
+#line 488 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->target_port = (yyvsp[-1].number);
break;
case 114:
-#line 498 "config-parser.y" /* yacc.c:1646 */
+#line 494 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->timeout = (yyvsp[-1].number);
break;
case 115:
-#line 504 "config-parser.y" /* yacc.c:1646 */
+#line 500 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->max_read = (yyvsp[-1].number);
break;
case 116:
-#line 510 "config-parser.y" /* yacc.c:1646 */
+#line 506 "config-parser.y" /* yacc.c:1646 */
{
struct ProtocolConf *item;
struct ScannerConf *item2;
break;
case 125:
-#line 540 "config-parser.y" /* yacc.c:1646 */
+#line 536 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->dnsbl_from);
OpmItem->dnsbl_from = xstrdup((yyvsp[-1].string));
break;
case 126:
-#line 546 "config-parser.y" /* yacc.c:1646 */
+#line 542 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->dnsbl_to);
OpmItem->dnsbl_to = xstrdup((yyvsp[-1].string));
break;
case 127:
-#line 552 "config-parser.y" /* yacc.c:1646 */
+#line 548 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->sendmail);
OpmItem->sendmail = xstrdup((yyvsp[-1].string));
break;
case 128:
-#line 560 "config-parser.y" /* yacc.c:1646 */
+#line 556 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct BlacklistConf *item;
break;
case 138:
-#line 589 "config-parser.y" /* yacc.c:1646 */
+#line 585 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
break;
case 139:
-#line 596 "config-parser.y" /* yacc.c:1646 */
+#line 592 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
break;
case 140:
-#line 603 "config-parser.y" /* yacc.c:1646 */
+#line 599 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
break;
case 141:
-#line 614 "config-parser.y" /* yacc.c:1646 */
+#line 610 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
break;
case 145:
-#line 626 "config-parser.y" /* yacc.c:1646 */
+#line 622 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistReplyConf *item;
struct BlacklistConf *blacklist = tmp;
break;
case 151:
-#line 652 "config-parser.y" /* yacc.c:1646 */
+#line 648 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
node = node_create(xstrdup((yyvsp[-1].string)));
#endif
return yyresult;
}
-#line 659 "config-parser.y" /* yacc.c:1906 */
+#line 655 "config-parser.y" /* yacc.c:1906 */
typedef union YYSTYPE YYSTYPE;
union YYSTYPE
{
-#line 88 "config-parser.y" /* yacc.c:1909 */
+#line 84 "config-parser.y" /* yacc.c:1909 */
int number;
char *string;
/*
- * Copyright (C) 2002-2003 Erik Fears
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
-
%{
#include <stdio.h>
#include <string.h>
/*
- * Copyright (C) 2002 Erik Fears
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef CONFIG_H
#define CONFIG_H
/*
-Copyright (C) 2002-2003 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-
- Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef DNSBL_H
#define DNSBL_H
/*
- * Copyright (C) 2002-2003 Erik Fears
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
- *
- *
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
#include "setup.h"
+/*
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef IRC_H
#define IRC_H
/*
- * Copyright (C) 2002-2003 Erik Fears
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
#include <stdlib.h>
-#ifndef LIST_H
-#define LIST_H
-
-
-/* Copyright (C) 2002 by the past and present ircd coders, and others.
- * The following macros are adapted from Hybrid7 DLINK macros
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
+/*
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
+#ifndef LIST_H
+#define LIST_H
+
#define LIST_FOREACH(pos, head) for (pos = (head); pos != NULL; pos = pos->next)
#define LIST_FOREACH_SAFE(pos, n, head) for (pos = (head), n = pos ? pos->next : NULL; pos != NULL; pos = n, n = pos ? pos->next : NULL)
#define LIST_FOREACH_PREV(pos, head) for (pos = (head); pos != NULL; pos = pos->prev)
#define LIST_SIZE(list) list->elements
-/* End Copyright/Hybrid Macros */
-
typedef struct _node node_t;
typedef struct _list list_t;
/*
-Copyright (C) 2002 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to
-
- The Free Software Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef LOG_H
#define LOG_H
/*
-Copyright (C) 2002-2003 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-
- Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002-2003 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef MAIN_H
#define MAIN_H
extern unsigned int OPT_DEBUG;
/*
* ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd)
*
- * Copyright (c) 1997-2014 ircd-hybrid development team
+ * Copyright (c) 1997-2015 ircd-hybrid development team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/*
* ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd)
*
- * Copyright (c) 1997-2014 ircd-hybrid development team
+ * Copyright (c) 1997-2015 ircd-hybrid development team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/*
- * Copyright (C) 2002 Erik Fears
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
#include <stdlib.h>
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef MALLOC_H
#define MALLOC_H
/*
-Copyright (C) 2002 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-
- Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef MISC_H
#define MISC_H
/*
-Copyright (C) 2002-2003 Andy Smith
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to:
-
- the Free Software Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002-2003 Andy Smith
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
/*
* A Negative caching implementation for IPv4 addresses. The idea is that
+/*
+ * Copyright (c) 2002-2003 Andy Smith
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef NEGCACHE_H
#define NEGCACHE_H
/*
-Copyright (C) 2002 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-
- Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef OPERCMD_H
#define OPERCMD_H
*/
#ifndef PATCHLEVEL
-#define PATCHLEVEL "hopm-1.0.1"
+#define PATCHLEVEL "hopm(TRUNK)"
#endif
/*
- * Copyright (C) 2002 Erik Fears
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to
- *
- * The Free Software Foundation, Inc.
- * 59 Temple Place - Suite 330
- * Boston, MA 02111-1307, USA.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
*/
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef SCAN_H
#define SCAN_H
/*
-Copyright (C) 2002 Erik Fears
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-
- Foundation, Inc.
- 59 Temple Place - Suite 330
- Boston, MA 02111-1307, USA.
-
-*/
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
#include "setup.h"
+/*
+ * Copyright (c) 2002 Erik Fears
+ * Copyright (c) 2014-2015 ircd-hybrid development team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
#ifndef STATS_H
#define STATS_H