]> jfr.im git - irc/rqf/shadowircd.git/blame - include/config.h
[svn] Repair operspy who !#channel, broken by me in r3283.
[irc/rqf/shadowircd.git] / include / config.h
CommitLineData
212380e3 1/*
2 * ircd-ratbox: A slightly useful ircd.
3 * config.h: The ircd compile-time-configurable header.
4 *
5 * Copyright (C) 1990 Jarkko Oikarinen and University of Oulu, Co Center
6 * Copyright (C) 1996-2002 Hybrid Development Team
7 * Copyright (C) 2002-2004 ircd-ratbox development team
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
22 * USA
23 *
24 * $Id: config.h 1701 2006-06-27 16:25:52Z jilles $
25 */
26
27#ifndef INCLUDED_config_h
28#define INCLUDED_config_h
29
30#include "setup.h"
31
32/*
33 * Directory paths and filenames for UNIX systems.
34 * IRCD_PREFIX is set using ./configure --prefix, see INSTALL.
35 * The other defaults should be fine.
36 *
37 * NOTE: CHANGING THESE WILL NOT ALTER THE DIRECTORY THAT FILES WILL
38 * BE INSTALLED TO. IF YOU CHANGE THESE, DO NOT USE MAKE INSTALL,
39 * BUT COPY THE FILES MANUALLY TO WHERE YOU WANT THEM.
40 *
41 * IRCD_PREFIX = prefix for all directories,
42 * DPATH = root directory of installation,
43 * BINPATH = directory for binary files,
44 * ETCPATH = directory for configuration files,
45 * LOGPATH = directory for logfiles,
46 * MODPATH = directory for modules,
47 * AUTOMODPATH = directory for autoloaded modules
48 */
49
50/* dirs */
51#define DPATH IRCD_PREFIX
52#define BINPATH IRCD_PREFIX "/bin/"
53#define LIBPATH IRCD_PREFIX "/lib/"
54#define MODPATH MODULE_DIR
55#define AUTOMODPATH MODULE_DIR "/autoload/"
56#define ETCPATH ETC_DIR
57#define LOGPATH LOG_DIR
58#define UHPATH HELP_DIR "/users"
59#define HPATH HELP_DIR "/opers"
60
61/* files */
62#define SPATH BINPATH "/ircd" /* ircd executable */
63#define LIPATH LIBPATH "/libircd" SHARED_SUFFIX /* ircd library */
64#define SLPATH BINPATH "/servlink" /* servlink executable */
65#define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */
66#define KPATH ETCPATH "/kline.conf" /* kline file */
67#define DLPATH ETCPATH "/dline.conf" /* dline file */
68#define XPATH ETCPATH "/xline.conf" /* xline file */
69#define RESVPATH ETCPATH "/resv.conf" /* resv file */
70#define RPATH ETCPATH "/ircd.rsa" /* ircd rsa private keyfile */
71#define MPATH ETCPATH "/ircd.motd" /* MOTD file */
72#define LPATH LOGPATH "/ircd.log" /* ircd logfile */
73#define PPATH ETCPATH "/ircd.pid" /* pid file */
74#define OPATH ETCPATH "/opers.motd" /* oper MOTD file */
75
76/* IGNORE_BOGUS_TS
77 * Ignore bogus timestamps from other servers. Yes this will desync
78 * the network, but it will allow chanops to resync with a valid non TS 0
79 *
80 * This should be enabled network wide, or not at all.
81 */
82#undef IGNORE_BOGUS_TS
83
84/* HIDE_SERVERS_IPS
85 *
86 * If this is undefined, anyone can see a servers ip. If it is defined,
87 * noone can.
88 */
89#define HIDE_SERVERS_IPS
90
91/* TS6_ONLY
92 *
93 * If this is defined only TS6 servers may link to the network. See
94 * doc/TS6.txt for more information. If your network has old servers
95 * (hyb7.0, ircd-ratbox-1.x, +CSr) or hybserv you should NOT define this.
96 */
97#undef TS6_ONLY
98
99/* USE_LOGFILE - log errors and such to LPATH
100 * If you wish to have the server send 'vital' messages about server
101 * to a logfile, define USE_LOGFILE.
102 */
103#define USE_LOGFILE
104
105/* CLIENT_FLOOD - client excess flood threshold(in messages)
106 * The number of messages that we can receive before we disconnect the
107 * remote client...
108 */
109#define CLIENT_FLOOD 20
110
111/* HANGONGOODLINK and HANGONRETRYDELAY
112 * Often net breaks for a short time and it's useful to try to
113 * establishing the same connection again faster than CONNECTFREQUENCY
114 * would allow. But, to keep trying on bad connection, we require
115 * that connection has been open for certain minimum time
116 * (HANGONGOODLINK) and we give the net few seconds to steady
117 * (HANGONRETRYDELAY). This latter has to be long enough that the
118 * other end of the connection has time to notice it broke too.
119 * 1997/09/18 recommended values by ThemBones for modern EFnet
120 */
121#define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */
122#define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */
123
124/* KILLCHASETIMELIMIT -
125 * Max time from the nickname change that still causes KILL
126 * automatically to switch for the current nick of that user. (seconds)
127 */
128#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */
129
130/* RATBOX_SOMAXCONN
131 * Use SOMAXCONN if OS has it, otherwise use this value for the
132 * listen(); backlog. 5 for AIX/SUNOS, 25 for other OSs.
133 */
134#define RATBOX_SOMAXCONN 25
135
136/* ----------------------------------------------------------------
137 * STOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOP
138 * ----------------------------------------------------------------
139 * The options below this line should NOT be modified.
140 * ----------------------------------------------------------------
141 */
142
143/* MAX_BUFFER
144 * The amount of fds to reserve for clients exempt from limits
145 * and dns lookups.
146 */
147#define MAX_BUFFER 60
148
149/* HARD_FDLIMIT_
150 * The maximum amount of FDs to use. MAX_CLIENTS is set in ./configure.
151 */
152#define HARD_FDLIMIT_ MAX_CLIENTS + MAX_BUFFER + 20
153
154#define CONFIG_RATBOX_LEVEL_2
155
156#include "defaults.h"
157#endif /* INCLUDED_config_h */