summaryrefslogtreecommitdiff
path: root/src/inspircd_io.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-01-27 15:26:59 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-01-27 15:26:59 +0000
commit653638c68684ec035fd58bc2d0d91c9bf9aa2ab9 (patch)
tree364fd9cce4e2e8d6e86ddc3f1267b98dbed51854 /src/inspircd_io.cpp
parent469c2e7f5ad7d3f4d7d150d643ce363a650f19b9 (diff)
Improved IP handling. Now uses in_addr to store client ip, not char[16]!
Added global and local session limits All of this needs TESTING. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2934 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspircd_io.cpp')
-rw-r--r--src/inspircd_io.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/inspircd_io.cpp b/src/inspircd_io.cpp
index a52c5933b..8534af18e 100644
--- a/src/inspircd_io.cpp
+++ b/src/inspircd_io.cpp
@@ -149,6 +149,7 @@ void ServerConfig::Read(bool bail, userrec* user)
{
char dbg[MAXBUF],pauseval[MAXBUF],Value[MAXBUF],timeout[MAXBUF],NB[MAXBUF],flood[MAXBUF],MW[MAXBUF],MCON[MAXBUF],MT[MAXBUF];
char AH[MAXBUF],AP[MAXBUF],AF[MAXBUF],DNT[MAXBUF],pfreq[MAXBUF],thold[MAXBUF],sqmax[MAXBUF],rqmax[MAXBUF],SLIMT[MAXBUF];
+ char localmax[MAXBUF],globalmax[MAXBUF];
ConnectClass c;
std::stringstream errstr;
include_stack.clear();
@@ -293,6 +294,8 @@ void ServerConfig::Read(bool bail, userrec* user)
ConfValue("connect","threshold",i,thold,&Config->config_f);
ConfValue("connect","sendq",i,sqmax,&Config->config_f);
ConfValue("connect","recvq",i,rqmax,&Config->config_f);
+ ConfValue("connect","localmax",i,localmax,&Config->config_f);
+ ConfValue("connect","globalmax",i,globalmax,&Config->config_f);
if (*Value)
{
c.host = Value;
@@ -306,6 +309,16 @@ void ServerConfig::Read(bool bail, userrec* user)
c.threshold = 5;
c.sendqmax = 262144; // 256k
c.recvqmax = 4096; // 4k
+ c.maxlocal = 3;
+ c.maxglobal = 3;
+ if (atoi(localmax)>0)
+ {
+ c.maxlocal = atoi(localmax);
+ }
+ if (atoi(globalmax)>0)
+ {
+ c.maxglobal = atoi(globalmax);
+ }
if (atoi(thold)>0)
{
c.threshold = atoi(thold);