From eb08ac122471f47488cf411a0d552c5285ca3e66 Mon Sep 17 00:00:00 2001 From: brain Date: Mon, 14 Apr 2008 20:14:56 +0000 Subject: [PATCH] Move options vlaues netbuffersize, maxwho, maxconn, softlimit, quietbursts, nouserdns into performance tag git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9505 e03df62e-2008-0410-955e-edbf42e46eb7 --- docs/inspircd.conf.example | 82 ++++++++++++++++------------ src/configreader.cpp | 10 ++-- src/modules/m_spanningtree/utils.cpp | 2 +- 3 files changed, 52 insertions(+), 42 deletions(-) diff --git a/docs/inspircd.conf.example b/docs/inspircd.conf.example index 36e3b9c99..6b89a49b8 100644 --- a/docs/inspircd.conf.example +++ b/docs/inspircd.conf.example @@ -803,41 +803,11 @@ # especially in the case of bots, and it is # # recommended that this option is enabled. # # # -# netbuffersize - Size of the buffer used to receive data from # -# clients. The ircd may only read() this amount # -# of text in one go at any time. (OPTIONAL) # -# # -# maxwho - The maximum number of results returned by a /WHO # -# query. This is to prevent /WHO being used as a # -# spam vector or means of flooding an ircd. The # -# default is 128, it is not recommended to raise it # -# above 1024. Values up to 65535 are permitted. If # -# this value is omitted, any size WHO is allowed by # -# anyone. # -# # -# somaxconn - The maximum number of sockets that may be waiting # -# in the accept queue. This usually allows the ircd # -# to soak up more connections in a shorter space of # -# time when increased but please be aware there is a # -# system defined maximum value to this, the same way # -# there is a system defined maximum number of file # -# descriptors. Some systems may only allow this to # -# be up to 5 (ugh) while others such as FreeBSD will # -# default to a much nicer 128. # -# # # moduledir - This optional value indicates a runtime change of # # the location where modules are to be found. This # # does not add a supplementary directory. There can # # only be one module path. # # # -# softlimit - This optional feature allows a defined softlimit. # -# if defined sets a soft maxconnections value, has # -# to be less than the ./configure maxclients # -# # -# nouserdns - If set to yes, true or 1, no user DNS lookups # -# will be performed for connecting users. This can # -# save a lot of resources on very busy IRC servers. # -# # # syntaxhints - If set to yes, true or 1, when a user does not # # give enough parameters for a command, a syntax # # hint will be given (using the RPL_TEXT numeric) # @@ -899,22 +869,16 @@ suffixquit="" prefixpart="\"" suffixpart="\"" - netbuffersize="10240" - maxwho="128" noservices="no" qprefix="~" aprefix="&" deprotectself="no" deprotectothers="no" - somaxconn="128" - softlimit="12800" - nouserdns="no" syntaxhints="no" cyclehosts="yes" ircumsgprefix="no" announcets="yes" hostintopic="yes" - quietbursts="yes" pingwarning="15" serverpingfreq="60" allowhalfop="yes" @@ -922,6 +886,52 @@ moronbanner="You're banned! Email haha@abuse.com with the ERROR line below for help." exemptchanops=""> + +#-#-#-#-#-#-#-#-#-#-#-# PERFORMANCE CONFIGURATION #-#-#-#-#-#-#-#-#-#-# +# # +# maxwho - The maximum number of results returned by a /WHO # +# query. This is to prevent /WHO being used as a # +# spam vector or means of flooding an ircd. The # +# default is 128, it is not recommended to raise it # +# above 1024. Values up to 65535 are permitted. If # +# this value is omitted, any size WHO is allowed by # +# anyone. # +# # +# somaxconn - The maximum number of sockets that may be waiting # +# in the accept queue. This usually allows the ircd # +# to soak up more connections in a shorter space of # +# time when increased but please be aware there is a # +# system defined maximum value to this, the same way # +# there is a system defined maximum number of file # +# descriptors. Some systems may only allow this to # +# be up to 5 (ugh) while others such as FreeBSD will # +# default to a much nicer 128. # +# # +# moduledir - This optional value indicates a runtime change of # +# the location where modules are to be found. This # +# does not add a supplementary directory. There can # +# only be one module path. # +# # +# softlimit - This optional feature allows a defined softlimit. # +# if defined sets a soft maxconnections value, has # +# to be less than the ./configure maxclients # +# # +# nouserdns - If set to yes, true or 1, no user DNS lookups # +# will be performed for connecting users. This can # +# save a lot of resources on very busy IRC servers. # +# # +# netbuffersize - Size of the buffer used to receive data from # +# clients. The ircd may only read() this amount # +# of text in one go at any time. (OPTIONAL) # +# # + + + #-#-#-#-#-#-#-#-#-#-#-# SECURITY CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-# # # # announceinvites # diff --git a/src/configreader.cpp b/src/configreader.cpp index a5ca8bfce..20e6c7c87 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -763,8 +763,8 @@ void ServerConfig::Read(bool bail, User* user) /* These tags can occur ONCE or not at all */ InitialConfig Values[] = { - {"options", "softlimit", "0", new ValueContainerUInt (&this->SoftLimit), DT_INTEGER, ValidateSoftLimit}, - {"options", "somaxconn", SOMAXCONN_S, new ValueContainerInt (&this->MaxConn), DT_INTEGER, ValidateMaxConn}, + {"performance", "softlimit", "0", new ValueContainerUInt (&this->SoftLimit), DT_INTEGER, ValidateSoftLimit}, + {"performance", "somaxconn", SOMAXCONN_S, new ValueContainerInt (&this->MaxConn), DT_INTEGER, ValidateMaxConn}, {"options", "moronbanner", "Youre banned!", new ValueContainerChar (this->MoronBanner), DT_CHARPTR, NoValidation}, {"server", "name", "", new ValueContainerChar (this->ServerName), DT_HOSTNAME|DT_BOOTONLY, ValidateServerName}, {"server", "description", "Configure Me", new ValueContainerChar (this->ServerDesc), DT_CHARPTR, NoValidation}, @@ -785,8 +785,8 @@ void ServerConfig::Read(bool bail, User* user) {"options", "prefixpart", "", new ValueContainerChar (this->PrefixPart), DT_CHARPTR, NoValidation}, {"options", "suffixpart", "", new ValueContainerChar (this->SuffixPart), DT_CHARPTR, NoValidation}, {"options", "fixedpart", "", new ValueContainerChar (this->FixedPart), DT_CHARPTR, NoValidation}, - {"options", "netbuffersize","10240", new ValueContainerInt (&this->NetBufferSize), DT_INTEGER, ValidateNetBufferSize}, - {"options", "maxwho", "128", new ValueContainerInt (&this->MaxWhoResults), DT_INTEGER, ValidateMaxWho}, + {"performance", "netbuffersize","10240", new ValueContainerInt (&this->NetBufferSize), DT_INTEGER, ValidateNetBufferSize}, + {"performance", "maxwho", "128", new ValueContainerInt (&this->MaxWhoResults), DT_INTEGER, ValidateMaxWho}, {"options", "allowhalfop", "0", new ValueContainerBool (&this->AllowHalfop), DT_BOOLEAN, NoValidation}, {"dns", "server", "", new ValueContainerChar (this->DNSServer), DT_IPADDRESS,DNSServerValidator}, {"dns", "timeout", "5", new ValueContainerInt (&this->dns_timeout), DT_INTEGER, NoValidation}, @@ -799,7 +799,7 @@ void ServerConfig::Read(bool bail, User* user) {"security", "hidewhois", "", new ValueContainerChar (this->HideWhoisServer), DT_NOSPACES, NoValidation}, {"security", "hidekills", "", new ValueContainerChar (this->HideKillsServer), DT_NOSPACES, NoValidation}, {"security", "operspywhois", "0", new ValueContainerBool (&this->OperSpyWhois), DT_BOOLEAN, NoValidation}, - {"options", "nouserdns", "0", new ValueContainerBool (&this->NoUserDns), DT_BOOLEAN, NoValidation}, + {"performance", "nouserdns", "0", new ValueContainerBool (&this->NoUserDns), DT_BOOLEAN, NoValidation}, {"options", "syntaxhints", "0", new ValueContainerBool (&this->SyntaxHints), DT_BOOLEAN, NoValidation}, {"options", "cyclehosts", "0", new ValueContainerBool (&this->CycleHosts), DT_BOOLEAN, NoValidation}, {"options", "ircumsgprefix","0", new ValueContainerBool (&this->UndernetMsgPrefix), DT_BOOLEAN, NoValidation}, diff --git a/src/modules/m_spanningtree/utils.cpp b/src/modules/m_spanningtree/utils.cpp index 2a6efcdc1..d9d6c2f01 100644 --- a/src/modules/m_spanningtree/utils.cpp +++ b/src/modules/m_spanningtree/utils.cpp @@ -443,7 +443,7 @@ void SpanningTreeUtilities::ReadConfiguration(bool rebind) HideULines = Conf->ReadFlag("security","hideulines",0); AnnounceTSChange = Conf->ReadFlag("options","announcets",0); ChallengeResponse = !Conf->ReadFlag("security", "disablehmac", 0); - quiet_bursts = Conf->ReadFlag("options", "quietbursts", 0); + quiet_bursts = Conf->ReadFlag("performance", "quietbursts", 0); PingWarnTime = Conf->ReadInteger("options", "pingwarning", 0, true); PingFreq = Conf->ReadInteger("options", "serverpingfreq", 0, true); -- 2.39.2