1 |
/* |
2 |
* ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd). |
3 |
* defaults.h: The ircd defaults header for values and paths. |
4 |
* |
5 |
* Copyright (C) 2002 by the past and present ircd coders, and others. |
6 |
* |
7 |
* This program is free software; you can redistribute it and/or modify |
8 |
* it under the terms of the GNU General Public License as published by |
9 |
* the Free Software Foundation; either version 2 of the License, or |
10 |
* (at your option) any later version. |
11 |
* |
12 |
* This program is distributed in the hope that it will be useful, |
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
15 |
* GNU General Public License for more details. |
16 |
* |
17 |
* You should have received a copy of the GNU General Public License |
18 |
* along with this program; if not, write to the Free Software |
19 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 |
20 |
* USA |
21 |
* |
22 |
* $Id$ |
23 |
*/ |
24 |
|
25 |
#ifndef INCLUDED_defaults_h |
26 |
#define INCLUDED_defaults_h |
27 |
|
28 |
/* Here are some default paths. Most except DPATH are |
29 |
* configurable at runtime. */ |
30 |
|
31 |
/* |
32 |
* Directory paths and filenames for UNIX systems. |
33 |
* PREFIX is set using ./configure --prefix, see INSTALL. |
34 |
* The other defaults should be fine. |
35 |
* |
36 |
* NOTE: CHANGING THESE WILL NOT ALTER THE DIRECTORY THAT FILES WILL |
37 |
* BE INSTALLED TO. IF YOU CHANGE THESE, DO NOT USE MAKE INSTALL, |
38 |
* BUT COPY THE FILES MANUALLY TO WHERE YOU WANT THEM. |
39 |
* |
40 |
* PREFIX = prefix for all directories |
41 |
* DPATH = root directory of installation |
42 |
* BINPATH = directory for binary files |
43 |
* MSGPATH = directory for language 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 PREFIX |
52 |
#define SBINPATH PREFIX "/sbin/" |
53 |
#define BINPATH PREFIX "/bin/" |
54 |
#define MSGPATH DATADIR "/" PACKAGE "/messages" |
55 |
#define MODPATH LIBDIR "/" PACKAGE "/modules/" |
56 |
#define HPATH DATADIR "/" PACKAGE "/help/opers" |
57 |
#define UHPATH DATADIR "/" PACKAGE "/help/users" |
58 |
#define AUTOMODPATH MODPATH "/autoload/" |
59 |
#define ETCPATH SYSCONFDIR |
60 |
#define LOGPATH LOCALSTATEDIR "/log" |
61 |
|
62 |
/* files */ |
63 |
#define SPATH SBINPATH "/ircd" /* ircd executable */ |
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 CRESVPATH ETCPATH "/cresv.conf" /* channel resvs file */ |
68 |
#define NRESVPATH ETCPATH "/nresv.conf" /* nick resvs file */ |
69 |
#define DLPATH ETCPATH "/dline.conf" /* dline file */ |
70 |
#define GPATH ETCPATH "/gline.conf" /* gline conffile */ |
71 |
#define XPATH ETCPATH "/xline.conf" /* xline file */ |
72 |
#define RXPATH ETCPATH "/rxline.conf" |
73 |
#define RKPATH ETCPATH "/rkline.conf" |
74 |
#define MPATH ETCPATH "/ircd.motd" /* MOTD file */ |
75 |
#define LPATH LOGPATH "/ircd.log" /* ircd logfile */ |
76 |
#define PPATH LOCALSTATEDIR "/ircd.pid" /* pid file */ |
77 |
#define OPATH ETCPATH "/opers.motd" /* oper MOTD file */ |
78 |
#define LIPATH ETCPATH "/links.txt" /* cached links file */ |
79 |
|
80 |
/* this file is included to supply default |
81 |
* values for things which are now configurable at runtime. |
82 |
*/ |
83 |
|
84 |
#define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */ |
85 |
#define HYBRID_SOMAXCONN 25 |
86 |
#define MAX_TDKLINE_TIME (24*60*360) |
87 |
#define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */ |
88 |
|
89 |
/* tests show that about 7 fds are not registered by fdlist.c, these |
90 |
* include std* descriptors + some others (by OpenSSL etc.). Note this is |
91 |
* intentionally too high, we don't want to eat fds up to the last one */ |
92 |
#define LEAKED_FDS 10 |
93 |
/* how many (privileged) clients can exceed max_clients */ |
94 |
#define MAX_BUFFER 60 |
95 |
|
96 |
#define MAXCLIENTS_MAX (hard_fdlimit - LEAKED_FDS - MAX_BUFFER) |
97 |
#define MAXCLIENTS_MIN 32 |
98 |
|
99 |
/* class {} default values */ |
100 |
#define DEFAULT_SENDQ 9000000 /* default max SendQ */ |
101 |
#define PORTNUM 6667 /* default outgoing portnum */ |
102 |
#define DEFAULT_PINGFREQUENCY 120 /* Default ping frequency */ |
103 |
#define DEFAULT_CONNECTFREQUENCY 600 /* Default connect frequency */ |
104 |
|
105 |
#define WATCHSIZE_MIN 1 |
106 |
#define WATCHSIZE_DEFAULT 32 |
107 |
#define TS_MAX_DELTA_MIN 10 /* min value for ts_max_delta */ |
108 |
#define TS_MAX_DELTA_DEFAULT 600 /* default for ts_max_delta */ |
109 |
#define TS_WARN_DELTA_MIN 10 /* min value for ts_warn_delta */ |
110 |
#define TS_WARN_DELTA_DEFAULT 30 /* default for ts_warn_delta */ |
111 |
|
112 |
/* ServerInfo default values */ |
113 |
#define NETWORK_NAME_DEFAULT "EFnet" /* default for network_name */ |
114 |
#define NETWORK_DESC_DEFAULT "Eris Free Network" /* default for network_desc */ |
115 |
#define SERVICE_NAME_DEFAULT "service.someserver" |
116 |
|
117 |
/* General defaults */ |
118 |
#define MAXIMUM_LINKS_DEFAULT 0 /* default for maximum_links */ |
119 |
|
120 |
#define CLIENT_FLOOD_DEFAULT 2560 /* default for client_flood */ |
121 |
#define CLIENT_FLOOD_MAX 8000 |
122 |
#define CLIENT_FLOOD_MIN 512 |
123 |
|
124 |
#define LINKS_DELAY_DEFAULT 300 |
125 |
|
126 |
#define MAX_TARGETS_DEFAULT 4 /* default for max_targets */ |
127 |
|
128 |
#define INIT_LOG_LEVEL L_NOTICE /* default for log_level */ |
129 |
|
130 |
#define CONNECTTIMEOUT 30 /* Recommended value: 30 */ |
131 |
#define IDENT_TIMEOUT 10 |
132 |
|
133 |
#define MIN_JOIN_LEAVE_TIME 60 |
134 |
#define MAX_JOIN_LEAVE_COUNT 25 |
135 |
#define OPER_SPAM_COUNTDOWN 5 |
136 |
#define JOIN_LEAVE_COUNT_EXPIRE_TIME 120 |
137 |
|
138 |
#define MIN_SPAM_NUM 5 |
139 |
#define MIN_SPAM_TIME 60 |
140 |
|
141 |
#endif /* INCLUDED_defaults_h */ |