]>
Commit | Line | Data |
---|---|---|
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.dist 438 2006-01-06 01:00:44Z 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 MODPATH IRCD_PREFIX "/modules/" | |
54 | #define AUTOMODPATH IRCD_PREFIX "/modules/autoload/" | |
55 | #define ETCPATH IRCD_PREFIX "/etc" | |
56 | #define LOGPATH IRCD_PREFIX "/logs" | |
57 | #define UHPATH IRCD_PREFIX "/help/users" | |
58 | #define HPATH IRCD_PREFIX "/help/opers" | |
59 | ||
60 | /* files */ | |
61 | #define SPATH BINPATH "/ircd" /* ircd executable */ | |
62 | #define SLPATH BINPATH "/servlink" /* servlink executable */ | |
63 | #define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */ | |
64 | #define KPATH ETCPATH "/kline.conf" /* kline file */ | |
65 | #define DLPATH ETCPATH "/dline.conf" /* dline file */ | |
66 | #define XPATH ETCPATH "/xline.conf" /* xline file */ | |
67 | #define RESVPATH ETCPATH "/resv.conf" /* resv file */ | |
68 | #define RPATH ETCPATH "/ircd.rsa" /* ircd rsa private keyfile */ | |
69 | #define MPATH ETCPATH "/ircd.motd" /* MOTD file */ | |
70 | #define LPATH LOGPATH "/ircd.log" /* ircd logfile */ | |
71 | #define PPATH ETCPATH "/ircd.pid" /* pid file */ | |
72 | #define OPATH ETCPATH "/opers.motd" /* oper MOTD file */ | |
73 | ||
74 | /* IGNORE_BOGUS_TS | |
75 | * Ignore bogus timestamps from other servers. Yes this will desync | |
76 | * the network, but it will allow chanops to resync with a valid non TS 0 | |
77 | * | |
78 | * This should be enabled network wide, or not at all. | |
79 | */ | |
80 | #undef IGNORE_BOGUS_TS | |
81 | ||
82 | /* HIDE_SERVERS_IPS | |
83 | * | |
84 | * If this is undefined, opers will be unable to see servers ips and will be | |
85 | * shown a masked ip, admins will be shown the real ip. | |
86 | * | |
87 | * If this is defined, nobody can see a servers ip. | |
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 | /* NICKNAMEHISTORYLENGTH - size of WHOWAS array | |
112 | * this defines the length of the nickname history. each time a user changes | |
113 | * nickname or signs off, their old nickname is added to the top of the list. | |
114 | * NOTE: this is directly related to the amount of memory ircd will use whilst | |
115 | * resident and running - it hardly ever gets swapped to disk! Memory | |
116 | * will be preallocated for the entire whowas array when ircd is started. | |
117 | */ | |
118 | #ifndef SMALL_NET | |
119 | #define NICKNAMEHISTORYLENGTH 15000 | |
120 | #else | |
121 | #define NICKNAMEHISTORYLENGTH 1500 | |
122 | #endif | |
123 | ||
124 | /* HANGONGOODLINK and HANGONGOODLINK | |
125 | * Often net breaks for a short time and it's useful to try to | |
126 | * establishing the same connection again faster than CONNECTFREQUENCY | |
127 | * would allow. But, to keep trying on bad connection, we require | |
128 | * that connection has been open for certain minimum time | |
129 | * (HANGONGOODLINK) and we give the net few seconds to steady | |
130 | * (HANGONRETRYDELAY). This latter has to be long enough that the | |
131 | * other end of the connection has time to notice it broke too. | |
132 | * 1997/09/18 recommended values by ThemBones for modern EFnet | |
133 | */ | |
134 | #define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */ | |
135 | #define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */ | |
136 | ||
137 | /* KILLCHASETIMELIMIT - | |
138 | * Max time from the nickname change that still causes KILL | |
139 | * automatically to switch for the current nick of that user. (seconds) | |
140 | */ | |
141 | #define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */ | |
142 | ||
143 | /* RATBOX_SOMAXCONN | |
144 | * Use SOMAXCONN if OS has it, otherwise use this value for the | |
145 | * listen(); backlog. 5 for AIX/SUNOS, 25 for other OSs. | |
146 | */ | |
147 | #define RATBOX_SOMAXCONN 25 | |
148 | ||
149 | /* ---------------------------------------------------------------- | |
150 | * STOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOPSTOP | |
151 | * ---------------------------------------------------------------- | |
152 | * The options below this line should NOT be modified. | |
153 | * ---------------------------------------------------------------- | |
154 | */ | |
155 | ||
156 | /* MAX_BUFFER | |
157 | * The amount of fds to reserve for clients exempt from limits | |
158 | * and dns lookups. | |
159 | */ | |
160 | #define MAX_BUFFER 60 | |
161 | ||
162 | /* HARD_FDLIMIT_ | |
163 | * The maximum amount of FDs to use. MAX_CLIENTS is set in ./configure. | |
164 | */ | |
165 | #define HARD_FDLIMIT_ MAX_CLIENTS + MAX_BUFFER + 20 | |
166 | ||
167 | #define CONFIG_RATBOX_LEVEL_2 | |
168 | ||
169 | #include "defaults.h" | |
170 | #endif /* INCLUDED_config_h */ |