diff options
Diffstat (limited to 'include/defaults.h')
-rw-r--r-- | include/defaults.h | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/include/defaults.h b/include/defaults.h new file mode 100644 index 0000000..038bc87 --- /dev/null +++ b/include/defaults.h @@ -0,0 +1,136 @@ +/* + * ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd). + * defaults.h: The ircd defaults header for values and paths. + * + * 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 + * + * $Id$ + */ + +#ifndef INCLUDED_defaults_h +#define INCLUDED_defaults_h + +/* Here are some default paths. Most except DPATH are + * configurable at runtime. */ + +/* + * Directory paths and filenames for UNIX systems. + * PREFIX is set using ./configure --prefix, see INSTALL. + * The other defaults should be fine. + * + * NOTE: CHANGING THESE WILL NOT ALTER THE DIRECTORY THAT FILES WILL + * BE INSTALLED TO. IF YOU CHANGE THESE, DO NOT USE MAKE INSTALL, + * BUT COPY THE FILES MANUALLY TO WHERE YOU WANT THEM. + * + * PREFIX = prefix for all directories + * DPATH = root directory of installation + * BINPATH = directory for binary files + * MSGPATH = directory for language files + * ETCPATH = directory for configuration files + * LOGPATH = directory for logfiles + * MODPATH = directory for modules + * AUTOMODPATH = directory for autoloaded modules + */ + +/* dirs */ +#define DPATH PREFIX +#define SBINPATH PREFIX "/sbin/" +#define BINPATH PREFIX "/bin/" +#define MSGPATH DATADIR "/" PACKAGE "/messages" +#define MODPATH LIBDIR "/" PACKAGE "/modules/" +#define HPATH DATADIR "/" PACKAGE "/help/opers" +#define UHPATH DATADIR "/" PACKAGE "/help/users" +#define AUTOMODPATH MODPATH "/autoload/" +#define ETCPATH SYSCONFDIR +#define LOGPATH LOCALSTATEDIR "/log" + +/* files */ +#define SPATH SBINPATH "/ircd" /* ircd executable */ +#define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */ +#define KPATH ETCPATH "/kline.conf" /* kline file */ +#define CRESVPATH ETCPATH "/cresv.conf" /* channel resvs file */ +#define NRESVPATH ETCPATH "/nresv.conf" /* nick resvs file */ +#define DLPATH ETCPATH "/dline.conf" /* dline file */ +#define XPATH ETCPATH "/xline.conf" /* xline file */ +#define MPATH ETCPATH "/ircd.motd" /* MOTD file */ +#define LPATH LOGPATH "/ircd.log" /* ircd logfile */ +#define PPATH LOCALSTATEDIR "/ircd.pid" /* pid file */ +#define LIPATH ETCPATH "/links.txt" /* cached links file */ + +/* + * This file is included to supply default values for things which + * are now configurable at runtime. + */ + +#define HYBRID_SOMAXCONN 25 +#define MAX_TDKLINE_TIME (24*60*360) + +/* tests show that about 7 fds are not registered by fdlist.c, these + * include std* descriptors + some others (by OpenSSL etc.). Note this is + * intentionally too high, we don't want to eat fds up to the last one */ +#define LEAKED_FDS 10 +/* how many (privileged) clients can exceed max_clients */ +#define MAX_BUFFER 60 + +#define MAXCLIENTS_MAX (hard_fdlimit - LEAKED_FDS - MAX_BUFFER) +#define MAXCLIENTS_MIN 32 + +/* class {} default values */ +#define DEFAULT_SENDQ 9000000 /* default max SendQ */ +#define DEFAULT_RECVQ 2560 /* default max RecvQ */ +#define PORTNUM 6667 /* default outgoing portnum */ +#define DEFAULT_PINGFREQUENCY 120 /* Default ping frequency */ +#define DEFAULT_CONNECTFREQUENCY 600 /* Default connect frequency */ +#define CLIENT_FLOOD_MAX 8000 +#define CLIENT_FLOOD_MIN 512 + +#define WATCHSIZE_MIN 1 +#define WATCHSIZE_DEFAULT 32 +#define TS_MAX_DELTA_MIN 10 /* min value for ts_max_delta */ +#define TS_MAX_DELTA_DEFAULT 600 /* default for ts_max_delta */ +#define TS_WARN_DELTA_MIN 10 /* min value for ts_warn_delta */ +#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 */ +#define SERVICE_NAME_DEFAULT "service.someserver" + +#define GLINE_REQUEST_EXPIRE_DEFAULT 600 + +/* General defaults */ +#define MAXIMUM_LINKS_DEFAULT 0 /* default for maximum_links */ + +#define LINKS_DELAY_DEFAULT 300 + +#define MAX_TARGETS_DEFAULT 4 /* default for max_targets */ + +#define INIT_LOG_LEVEL L_NOTICE /* default for log_level */ + +#define CONNECTTIMEOUT 30 /* Recommended value: 30 */ +#define IDENT_TIMEOUT 10 + +#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 + +#endif /* INCLUDED_defaults_h */ |