summaryrefslogtreecommitdiff
path: root/include/users.h
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 /include/users.h
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 'include/users.h')
-rw-r--r--include/users.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/include/users.h b/include/users.h
index c22964a4c..e1bf887bd 100644
--- a/include/users.h
+++ b/include/users.h
@@ -83,6 +83,14 @@ class ConnectClass : public classbase
/** Maximum size of recvq for users in this class (bytes)
*/
long recvqmax;
+
+ /** Local max when connecting by this connection class
+ */
+ long maxlocal;
+
+ /** Global max when connecting by this connection class
+ */
+ long maxglobal;
ConnectClass() : registration_timeout(0), flood(0), host(""), pingtime(0), pass(""), threshold(0), sendqmax(0), recvqmax(0)
{
@@ -204,6 +212,10 @@ class userrec : public connection
time_t reset_due;
long threshold;
+ /** IPV4 ip address
+ */
+ in_addr ip4;
+
/* Write error string
*/
std::string WriteError;
@@ -347,9 +359,8 @@ void DeleteOper(userrec* user);
void kill_link(userrec *user,const char* r);
void kill_link_silent(userrec *user,const char* r);
void AddWhoWas(userrec* u);
-void AddClient(int socket, char* host, int port, bool iscached, char* ip);
+void AddClient(int socket, int port, bool iscached, in_addr ip4);
void FullConnectUser(userrec* user, CullList* Goners);
-//void ConnectUser(userrec *user, CullList* Goners);
userrec* ReHashNick(char* Old, char* New);
void force_nickchange(userrec* user,const char* newnick);