X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fusers.h;h=88abfbcd1c6dc8c682fa3a2597f7c2e15891f148;hb=584cbe80152ed3bb8cdbedc41c43d63cd10ca799;hp=57dea3fa5557643603c72e7c03752191400bfa40;hpb=74ee9af96639323d852a8b15be72ee9974e0a826;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/users.h b/include/users.h index 57dea3fa5..88abfbcd1 100644 --- a/include/users.h +++ b/include/users.h @@ -60,7 +60,7 @@ enum UserModes { */ enum RegistrationState { -#ifndef WIN32 // Burlex: This is already defined in win32, luckily it is still 0. +#ifndef _WIN32 // Burlex: This is already defined in win32, luckily it is still 0. REG_NONE = 0, /* Has sent nothing */ #endif @@ -393,7 +393,9 @@ class CoreExport User : public Extensible /** Sets the client IP for this user * @return true if the conversion was successful */ - bool SetClientIP(const char* sip); + virtual bool SetClientIP(const char* sip, bool recheck_eline = true); + + virtual void SetClientIP(const irc::sockets::sockaddrs& sa, bool recheck_eline = true); /** Constructor * @throw CoreException if the UID allocated to the user already exists @@ -745,21 +747,25 @@ class CoreExport LocalUser : public User, public InviteBase UserIOHandler eh; + /** Position in UserManager::local_users + */ + LocalUserList::iterator localuseriter; + /** Stats counter for bytes inbound */ - int bytes_in; + unsigned int bytes_in; /** Stats counter for bytes outbound */ - int bytes_out; + unsigned int bytes_out; /** Stats counter for commands inbound */ - int cmds_in; + unsigned int cmds_in; /** Stats counter for commands outbound */ - int cmds_out; + unsigned int cmds_out; /** Password specified by the user when they registered (if any). * This is stored even if the \ block doesnt need a password, so that @@ -819,6 +825,10 @@ class CoreExport LocalUser : public User, public InviteBase */ void SetClass(const std::string &explicit_name = ""); + bool SetClientIP(const char* sip, bool recheck_eline = true); + + void SetClientIP(const irc::sockets::sockaddrs& sa, bool recheck_eline = true); + void SendText(const std::string& line); void Write(const std::string& text); void Write(const char*, ...) CUSTOM_PRINTF(2, 3);