mirror of
https://github.com/matrix-construct/construct
synced 2024-12-28 16:34:13 +01:00
Cleanup defaults.h config file.
Clean up spaces/tabs mixing mess (bleh), add some defaults for authd stuff, and get rid of CHARYBDIS_SOMAXCONN (just define SOMAXCONN if it's available...).
This commit is contained in:
parent
e791dc6d5e
commit
9057170ce8
6 changed files with 66 additions and 60 deletions
|
@ -38,6 +38,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "authd.h"
|
#include "authd.h"
|
||||||
|
#include "defaults.h"
|
||||||
#include "provider.h"
|
#include "provider.h"
|
||||||
#include "notice.h"
|
#include "notice.h"
|
||||||
#include "stdinc.h"
|
#include "stdinc.h"
|
||||||
|
@ -111,7 +112,7 @@ static void initiate_blacklist_dnsquery(struct blacklist *, struct auth_client *
|
||||||
|
|
||||||
/* Variables */
|
/* Variables */
|
||||||
static rb_dlink_list blacklist_list = { NULL, NULL, 0 };
|
static rb_dlink_list blacklist_list = { NULL, NULL, 0 };
|
||||||
static int blacklist_timeout = 15;
|
static int blacklist_timeout = BLACKLIST_TIMEOUT_DEFAULT;
|
||||||
|
|
||||||
/* private interfaces */
|
/* private interfaces */
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "stdinc.h"
|
#include "stdinc.h"
|
||||||
|
#include "defaults.h"
|
||||||
#include "match.h"
|
#include "match.h"
|
||||||
#include "authd.h"
|
#include "authd.h"
|
||||||
#include "notice.h"
|
#include "notice.h"
|
||||||
|
@ -66,7 +67,7 @@ static void client_fail(struct auth_client *auth, ident_message message);
|
||||||
static void client_success(struct auth_client *auth);
|
static void client_success(struct auth_client *auth);
|
||||||
static char * get_valid_ident(char *buf);
|
static char * get_valid_ident(char *buf);
|
||||||
|
|
||||||
static int ident_timeout = 5;
|
static int ident_timeout = IDENT_TIMEOUT_DEFAULT;
|
||||||
static bool ident_enable = true;
|
static bool ident_enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -18,8 +18,9 @@
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "rb_lib.h"
|
|
||||||
#include "stdinc.h"
|
#include "stdinc.h"
|
||||||
|
#include "rb_lib.h"
|
||||||
|
#include "defaults.h"
|
||||||
#include "setup.h"
|
#include "setup.h"
|
||||||
#include "authd.h"
|
#include "authd.h"
|
||||||
#include "notice.h"
|
#include "notice.h"
|
||||||
|
@ -94,7 +95,7 @@ static CNCB opm_connected;
|
||||||
static void opm_cancel(struct auth_client *auth);
|
static void opm_cancel(struct auth_client *auth);
|
||||||
static bool create_listener(const char *ip, uint16_t port);
|
static bool create_listener(const char *ip, uint16_t port);
|
||||||
|
|
||||||
static int opm_timeout = 10;
|
static int opm_timeout = OPM_TIMEOUT_DEFAULT;
|
||||||
static bool opm_enable = false;
|
static bool opm_enable = false;
|
||||||
|
|
||||||
#define LISTEN_IPV4 0
|
#define LISTEN_IPV4 0
|
||||||
|
|
|
@ -52,7 +52,7 @@ static void client_fail(struct auth_client *auth, dns_message message);
|
||||||
static void client_success(struct auth_client *auth);
|
static void client_success(struct auth_client *auth);
|
||||||
static void dns_answer_callback(const char *res, bool status, query_type type, void *data);
|
static void dns_answer_callback(const char *res, bool status, query_type type, void *data);
|
||||||
|
|
||||||
static int rdns_timeout = 15;
|
static int rdns_timeout = RDNS_TIMEOUT_DEFAULT;
|
||||||
|
|
||||||
static void
|
static void
|
||||||
dns_answer_callback(const char *res, bool status, query_type type, void *data)
|
dns_answer_callback(const char *res, bool status, query_type type, void *data)
|
||||||
|
|
|
@ -32,10 +32,7 @@
|
||||||
|
|
||||||
#include "setup.h"
|
#include "setup.h"
|
||||||
|
|
||||||
/*
|
/* Below are the elements for default paths. */
|
||||||
* First, set other fd limits based on values from user
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
IRCD_PATH_PREFIX,
|
IRCD_PATH_PREFIX,
|
||||||
IRCD_PATH_MODULES,
|
IRCD_PATH_MODULES,
|
||||||
|
@ -58,35 +55,42 @@ typedef enum {
|
||||||
|
|
||||||
extern const char *ircd_paths[IRCD_PATH_COUNT];
|
extern const char *ircd_paths[IRCD_PATH_COUNT];
|
||||||
|
|
||||||
#define MAXCONNECTIONS 65535 /* default max connections if getrlimit doesn't work */
|
/* The below are used as defaults if not found in the configuration file (or on ircd warm-up).
|
||||||
|
* Don't change these - edit the conf file instead.
|
||||||
|
*/
|
||||||
|
#define MAXCONNECTIONS 65535 /* default max connections if getrlimit doesn't work */
|
||||||
/* class {} default values */
|
/* class {} default values */
|
||||||
#define DEFAULT_SENDQ 20000000 /* default max SendQ */
|
#define DEFAULT_SENDQ 20000000 /* default max SendQ */
|
||||||
#define PORTNUM 6667 /* default outgoing portnum */
|
#define PORTNUM 6667 /* default outgoing portnum */
|
||||||
#define DEFAULT_PINGFREQUENCY 120 /* Default ping frequency */
|
#define DEFAULT_PINGFREQUENCY 120 /* Default ping frequency */
|
||||||
#define DEFAULT_CONNECTFREQUENCY 600 /* Default connect frequency */
|
#define DEFAULT_CONNECTFREQUENCY 600 /* Default connect frequency */
|
||||||
#define TS_MAX_DELTA_MIN 10 /* min value for ts_max_delta */
|
#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_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_MIN 10 /* min value for ts_warn_delta */
|
||||||
#define TS_WARN_DELTA_DEFAULT 30 /* default for ts_warn_delta */
|
#define TS_WARN_DELTA_DEFAULT 30 /* default for ts_warn_delta */
|
||||||
/* ServerInfo default values */
|
/* ServerInfo default values */
|
||||||
#define NETWORK_NAME_DEFAULT "EFnet" /* default for network_name */
|
#define NETWORK_NAME_DEFAULT "DefaultNet" /* default for network_name */
|
||||||
/* General defaults */
|
/* General defaults */
|
||||||
#define CLIENT_FLOOD_DEFAULT 20 /* default for client_flood */
|
#define CLIENT_FLOOD_DEFAULT 20 /* default for client_flood */
|
||||||
#define CLIENT_FLOOD_MAX 2000
|
#define CLIENT_FLOOD_MAX 2000
|
||||||
#define CLIENT_FLOOD_MIN 10
|
#define CLIENT_FLOOD_MIN 10
|
||||||
#define LINKS_DELAY_DEFAULT 300
|
#define LINKS_DELAY_DEFAULT 300
|
||||||
#define MAX_TARGETS_DEFAULT 4 /* default for max_targets */
|
#define MAX_TARGETS_DEFAULT 4 /* default for max_targets */
|
||||||
#define IDENT_TIMEOUT_DEFAULT 5
|
#define IDENT_TIMEOUT_DEFAULT 5
|
||||||
#define MIN_JOIN_LEAVE_TIME 60
|
#define BLACKLIST_TIMEOUT_DEFAULT 10
|
||||||
#define MAX_JOIN_LEAVE_COUNT 25
|
#define OPM_TIMEOUT_DEFAULT 10
|
||||||
#define OPER_SPAM_COUNTDOWN 5
|
#define RDNS_TIMEOUT_DEFAULT 5
|
||||||
#define JOIN_LEAVE_COUNT_EXPIRE_TIME 120
|
#define MIN_JOIN_LEAVE_TIME 60
|
||||||
#define MIN_SPAM_NUM 5
|
#define MAX_JOIN_LEAVE_COUNT 25
|
||||||
#define MIN_SPAM_TIME 60
|
#define OPER_SPAM_COUNTDOWN 5
|
||||||
|
#define JOIN_LEAVE_COUNT_EXPIRE_TIME 120
|
||||||
|
#define MIN_SPAM_NUM 5
|
||||||
|
#define MIN_SPAM_TIME 60
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Directory paths and filenames for UNIX systems.
|
* Directory paths and filenames for UNIX systems.
|
||||||
* IRCD_PREFIX is set using ./configure --prefix, see INSTALL.
|
* IRCD_PREFIX is set using ./configure --prefix, see INSTALL.
|
||||||
|
* Do not change these without corresponding changes in the build system.
|
||||||
*
|
*
|
||||||
* IRCD_PREFIX = prefix for all directories,
|
* IRCD_PREFIX = prefix for all directories,
|
||||||
* DPATH = root directory of installation,
|
* DPATH = root directory of installation,
|
||||||
|
@ -97,21 +101,25 @@ extern const char *ircd_paths[IRCD_PATH_COUNT];
|
||||||
* AUTOMODPATH = directory for autoloaded modules
|
* AUTOMODPATH = directory for autoloaded modules
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define DPATH IRCD_PREFIX
|
#define DPATH IRCD_PREFIX
|
||||||
#define BINPATH IRCD_PREFIX "/bin/"
|
#define BINPATH IRCD_PREFIX "/bin/"
|
||||||
#define MODPATH MODULE_DIR
|
#define MODPATH MODULE_DIR
|
||||||
#define AUTOMODPATH MODULE_DIR "/autoload/"
|
#define AUTOMODPATH MODULE_DIR "/autoload/"
|
||||||
#define ETCPATH ETC_DIR
|
#define ETCPATH ETC_DIR
|
||||||
#define LOGPATH LOG_DIR
|
#define LOGPATH LOG_DIR
|
||||||
#define UHPATH HELP_DIR "/users"
|
#define UHPATH HELP_DIR "/users"
|
||||||
#define HPATH HELP_DIR "/opers"
|
#define HPATH HELP_DIR "/opers"
|
||||||
#define SPATH BINPATH "/" PROGRAM_PREFIX "charybdis" /* ircd executable */
|
#define SPATH BINPATH "/" PROGRAM_PREFIX "/" BRANDING_NAME /* ircd executable */
|
||||||
#define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */
|
#define CPATH ETCPATH "/ircd.conf" /* ircd.conf file */
|
||||||
#define MPATH ETCPATH "/ircd.motd" /* MOTD file */
|
#define MPATH ETCPATH "/ircd.motd" /* MOTD file */
|
||||||
#define LPATH LOGPATH "/ircd.log" /* ircd logfile */
|
#define LPATH LOGPATH "/ircd.log" /* ircd logfile */
|
||||||
#define PPATH PKGRUNDIR "/ircd.pid" /* pid file */
|
#define PPATH PKGRUNDIR "/ircd.pid" /* pid file */
|
||||||
#define OPATH ETCPATH "/opers.motd" /* oper MOTD file */
|
#define OPATH ETCPATH "/opers.motd" /* oper MOTD file */
|
||||||
#define DBPATH PKGLOCALSTATEDIR "/ban.db" /* bandb file */
|
#define DBPATH PKGLOCALSTATEDIR "/ban.db" /* bandb file */
|
||||||
|
|
||||||
|
/* Below are somewhat configurable settings (though it's probably a bad idea
|
||||||
|
* to blindly mess with them). If in any doubt, leave them alone.
|
||||||
|
*/
|
||||||
|
|
||||||
/* HANGONGOODLINK and HANGONRETRYDELAY
|
/* HANGONGOODLINK and HANGONRETRYDELAY
|
||||||
* Often net breaks for a short time and it's useful to try to
|
* Often net breaks for a short time and it's useful to try to
|
||||||
|
@ -122,25 +130,27 @@ extern const char *ircd_paths[IRCD_PATH_COUNT];
|
||||||
* (HANGONRETRYDELAY). This latter has to be long enough that the
|
* (HANGONRETRYDELAY). This latter has to be long enough that the
|
||||||
* other end of the connection has time to notice it broke too.
|
* other end of the connection has time to notice it broke too.
|
||||||
*/
|
*/
|
||||||
#define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */
|
#define HANGONRETRYDELAY 60 /* Recommended value: 30-60 seconds */
|
||||||
#define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */
|
#define HANGONGOODLINK 3600 /* Recommended value: 30-60 minutes */
|
||||||
|
|
||||||
/* KILLCHASETIMELIMIT -
|
/* KILLCHASETIMELIMIT -
|
||||||
* Max time from the nickname change that still causes KILL
|
* Max time from the nickname change that still causes KILL
|
||||||
* automatically to switch for the current nick of that user. (seconds)
|
* automatically to switch for the current nick of that user. (seconds)
|
||||||
*/
|
*/
|
||||||
#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */
|
#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */
|
||||||
|
|
||||||
/* MAX_BUFFER
|
/* MAX_BUFFER
|
||||||
* The amount of fds to reserve for clients exempt from limits
|
* The amount of fds to reserve for clients exempt from limits
|
||||||
* and dns lookups.
|
* and dns lookups.
|
||||||
*/
|
*/
|
||||||
#define MAX_BUFFER 60
|
#define MAX_BUFFER 60
|
||||||
|
|
||||||
/* CHARYBDIS_SOMAXCONN
|
/*
|
||||||
* Use SOMAXCONN if OS has it, otherwise use this value for the
|
* Use SOMAXCONN if OS has it, otherwise use this value for the
|
||||||
* listen(); backlog. 5 for AIX/SUNOS, 25 for other OSs.
|
* listen(); backlog. 5 for AIX/SUNOS, 25 for other OSs.
|
||||||
*/
|
*/
|
||||||
#define CHARYBDIS_SOMAXCONN 25
|
#ifndef SOMAXCONN
|
||||||
|
# define SOMAXCONN 25
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* INCLUDED_defaults_h */
|
#endif /* INCLUDED_defaults_h */
|
||||||
|
|
|
@ -153,14 +153,7 @@ show_ports(struct Client *source_p)
|
||||||
* inetport - create a listener socket in the AF_INET or AF_INET6 domain,
|
* inetport - create a listener socket in the AF_INET or AF_INET6 domain,
|
||||||
* bind it to the port given in 'port' and listen to it
|
* bind it to the port given in 'port' and listen to it
|
||||||
* returns true (1) if successful false (0) on error.
|
* returns true (1) if successful false (0) on error.
|
||||||
*
|
|
||||||
* If the operating system has a define for SOMAXCONN, use it, otherwise
|
|
||||||
* use CHARYBDIS_SOMAXCONN
|
|
||||||
*/
|
*/
|
||||||
#ifdef SOMAXCONN
|
|
||||||
#undef CHARYBDIS_SOMAXCONN
|
|
||||||
#define CHARYBDIS_SOMAXCONN SOMAXCONN
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
inetport(struct Listener *listener)
|
inetport(struct Listener *listener)
|
||||||
|
@ -247,7 +240,7 @@ inetport(struct Listener *listener)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(rb_listen(F, CHARYBDIS_SOMAXCONN, listener->defer_accept))
|
if(rb_listen(F, SOMAXCONN, listener->defer_accept))
|
||||||
{
|
{
|
||||||
errstr = strerror(rb_get_sockerr(F));
|
errstr = strerror(rb_get_sockerr(F));
|
||||||
sendto_realops_snomask(SNO_GENERAL, L_ALL,
|
sendto_realops_snomask(SNO_GENERAL, L_ALL,
|
||||||
|
|
Loading…
Reference in a new issue