X-Git-Url: https://jfr.im/git/solanum.git/blobdiff_plain/6fcb8629ae638cceeead036a7240821c9886fe0f..272af6a505831a25601a07b93b0cec98846e2749:/include/defaults.h diff --git a/include/defaults.h b/include/defaults.h index 99d64471..599b2611 100644 --- a/include/defaults.h +++ b/include/defaults.h @@ -20,20 +20,45 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA - * - * $Id: defaults.h 3354 2007-04-03 09:21:31Z nenolod $ */ #ifndef INCLUDED_defaults_h #define INCLUDED_defaults_h -/* this file is included (only) at the end of config.h, to supply default - * values for things which are now configurable at runtime. +/* /!\ DANGER WILL ROBINSON! DANGER! /!\ + * + * Do not mess with these values unless you know what you are doing! */ +#include "setup.h" + /* * First, set other fd limits based on values from user */ + +typedef enum { + IRCD_PATH_PREFIX, + IRCD_PATH_MODULES, + IRCD_PATH_AUTOLOAD_MODULES, + IRCD_PATH_ETC, + IRCD_PATH_LOG, + IRCD_PATH_USERHELP, + IRCD_PATH_OPERHELP, + IRCD_PATH_IRCD_EXEC, + IRCD_PATH_IRCD_CONF, + IRCD_PATH_IRCD_MOTD, + IRCD_PATH_IRCD_LOG, + IRCD_PATH_IRCD_PID, + IRCD_PATH_IRCD_OMOTD, + IRCD_PATH_BANDB, + IRCD_PATH_BIN, + IRCD_PATH_LIBEXEC, + IRCD_PATH_COUNT +} ircd_path_t; + +extern const char *ircd_paths[IRCD_PATH_COUNT]; + +#define MAXCONNECTIONS 65535 /* default max connections if getrlimit doesn't work */ /* class {} default values */ #define DEFAULT_SENDQ 20000000 /* default max SendQ */ #define PORTNUM 6667 /* default outgoing portnum */ @@ -45,19 +70,77 @@ #define TS_WARN_DELTA_DEFAULT 30 /* default for ts_warn_delta */ /* ServerInfo default values */ #define NETWORK_NAME_DEFAULT "EFnet" /* default for network_name */ -#define NETWORK_DESC_DEFAULT "Eris Free Network" /* default for network_desc */ /* General defaults */ #define CLIENT_FLOOD_DEFAULT 20 /* default for client_flood */ #define CLIENT_FLOOD_MAX 2000 #define CLIENT_FLOOD_MIN 10 #define LINKS_DELAY_DEFAULT 300 #define MAX_TARGETS_DEFAULT 4 /* default for max_targets */ -#define IDENT_TIMEOUT 10 +#define IDENT_TIMEOUT_DEFAULT 5 #define MIN_JOIN_LEAVE_TIME 60 #define MAX_JOIN_LEAVE_COUNT 25 #define OPER_SPAM_COUNTDOWN 5 #define JOIN_LEAVE_COUNT_EXPIRE_TIME 120 #define MIN_SPAM_NUM 5 #define MIN_SPAM_TIME 60 -#define CONFIG_RATBOX_LEVEL_1 + +/* + * Directory paths and filenames for UNIX systems. + * IRCD_PREFIX is set using ./configure --prefix, see INSTALL. + * + * IRCD_PREFIX = prefix for all directories, + * DPATH = root directory of installation, + * BINPATH = directory for binary files, + * ETCPATH = directory for configuration files, + * LOGPATH = directory for logfiles, + * MODPATH = directory for modules, + * AUTOMODPATH = directory for autoloaded modules + */ + +#define DPATH IRCD_PREFIX +#define BINPATH IRCD_PREFIX "/bin/" +#define MODPATH MODULE_DIR +#define AUTOMODPATH MODULE_DIR "/autoload/" +#define ETCPATH ETC_DIR +#define LOGPATH LOG_DIR +#define UHPATH HELP_DIR "/users" +#define HPATH HELP_DIR "/opers" +#define SPATH BINPATH "/" PROGRAM_PREFIX "charybdis" /* ircd executable */ +#define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */ +#define MPATH ETCPATH "/ircd.motd" /* MOTD file */ +#define LPATH LOGPATH "/ircd.log" /* ircd logfile */ +#define PPATH PKGRUNDIR "/ircd.pid" /* pid file */ +#define OPATH ETCPATH "/opers.motd" /* oper MOTD file */ +#define DBPATH PKGLOCALSTATEDIR "/ban.db" /* bandb file */ + +/* HANGONGOODLINK and HANGONRETRYDELAY + * Often net breaks for a short time and it's useful to try to + * establishing the same connection again faster than CONNECTFREQUENCY + * would allow. But, to keep trying on bad connection, we require + * that connection has been open for certain minimum time + * (HANGONGOODLINK) and we give the net few seconds to steady + * (HANGONRETRYDELAY). This latter has to be long enough that the + * other end of the connection has time to notice it broke too. + */ +#define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */ +#define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */ + +/* KILLCHASETIMELIMIT - + * Max time from the nickname change that still causes KILL + * automatically to switch for the current nick of that user. (seconds) + */ +#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */ + +/* MAX_BUFFER + * The amount of fds to reserve for clients exempt from limits + * and dns lookups. + */ +#define MAX_BUFFER 60 + +/* CHARYBDIS_SOMAXCONN + * Use SOMAXCONN if OS has it, otherwise use this value for the + * listen(); backlog. 5 for AIX/SUNOS, 25 for other OSs. + */ +#define CHARYBDIS_SOMAXCONN 25 + #endif /* INCLUDED_defaults_h */