summaryrefslogtreecommitdiff
path: root/src/usermanager.cpp
AgeCommit message (Collapse)Author
2014-01-22Split IOHook into IOHook and IOHookProviderAttila Molnar
Create one IOHook instance for each hooked socket which contains all the hook specific data and read/write/close functions, removing the need for the "issl_session" array in SSL modules. Register instances of the IOHookProvider class in the core and use them to create specialized IOHook instances (OnConnect/OnAccept). Remove the OnHookIO hook, add a dynamic reference to ListenSocket that points to the hook provider (if any) to use for incoming connections on that socket. For outgoing connections modules still have to find the IOHookProvider they want to use themselves but instead of calling AddIOHook(hookprov), now they have to call IOHookProvider::OnConnect() after the connection has been established.
2014-01-05Improve UserManager::QuitUser() and related codeAttila Molnar
- Make operreason optional; NULL means same as quitreason - Remove User::quietquit, it is now handled internally in spanningtree - Send snotice about quitting remote users from spanningtree
2013-12-18Clean up CoreExceptionAttila Molnar
- Remove default constructor - Replace virtual functions returning C strings with functions returning const std::string refs
2013-12-15Move stuff around a bit:Peter Powell
- Create FileSystem class: * Move ServerConfig::CleanFilename to FileSystem::GetFileName and rewrite. * Move ServerConfig::ExpandPath to FileSystem. * Move ServerConfig::FileExists to FileSystem. * Move ServerConfig::StartsWithWindowsDriveLetter to FileSystem. - Move FileReader to fileutils.cpp and fix documentation. - Move UserManager::DoBackgroundUserStuff to usermanager.cpp.
2013-08-10Rename <options:moronbanner> to <options:xlinemessage>.Peter Powell
This name is more descriptive of what is actually is used for.
2013-08-04Change the syntax of FOREACH macros to be less dumb.Adam
2013-07-19Replace hardcoded mode letters, part 3attilamolnar
This changes most remaining User::IsModeSet() calls to use ModeReferences for modes that were created by other modules or the core
2013-07-02Allow for skipping clone checking before DNS is complete.Daniel Vassdal
2013-06-07Create IOHook interface (extracted from Module)attilamolnar
2013-06-06Move code between usermanager.(cpp|h), clarify commentsattilamolnar
Initialize clientlist and uuidlist in UserManager constructor
2013-06-06Move DoBackgroundUserStuff() and AllModulesReportReady() into UserManagerattilamolnar
2013-06-06Merge insp20attilamolnar
2013-05-21Merge pull request #545 from SaberUK/master+logging-cleanupAttila Molnar
Clean up the logging system (part 1 of 2).
2013-05-19Fix spacing in calls to LogManager::Log.Peter Powell
2013-05-18Replaced vsnprintf with VAFORMAT pretty much everywhere.Daniel Vassdal
2013-05-18Remove unused UserManager::ServerPrivmsgAll()attilamolnar
2013-05-18Initialize local_countattilamolnar
2013-05-16Workaround for std::list::size() having linear complexity on some ↵attilamolnar
implementations
2013-05-15Replace some C-isms with C++-isms.Peter Powell
* 'const char*' to 'const std::string&'. * snprintf to std::string concatenation. * Replace duplicated OneOfMatches with InspIRCd::MatchMask.
2013-05-14Add method for writing server notices.Peter Powell
This allows us to send a server notice to a user without worrying about whether they are registered or not. If a user receives a server notice and they are not registered then the nickname field will contain an asterisk instead of their nick name.
2013-04-28Merge insp20attilamolnar
2013-04-26Modularize DNSAdam
The DNS modules are temporarily in commands/ so they're loaded automatically Thanks to Attila for helping with much of this.
2013-04-21Log some internal errors on DEFAULT loglevel instead of DEBUG, log detected ↵attilamolnar
errors in m_callerid
2013-04-19Fix uuids getting truncated in the nick hash in UserManager::AddUser() if ↵attilamolnar
nickmax is < 9
2013-04-12Add LOG_ prefix to the log level enum values.Peter Powell
2013-04-04Stop recreating hashmaps every hour, move garbage collection code related to ↵attilamolnar
local users to UserManager
2013-04-04Make cmd_whowas act like a module, remove special handlingattilamolnar
2013-04-01Change User::GetIPString() to return const std::string&attilamolnar
2013-03-11Stop user initialization when the user is marked as quitting after OnSetUserIPattilamolnar
2012-11-29Make LocalUserList an std::listattilamolnar
2012-11-29Add a typedef for LocalUserListattilamolnar
2012-11-29Reorder local user initialization stepsattilamolnar
OnSetUserIP hook now runs after the user has a connect class and the g/k/z lines were checked (ip only, no host at that point) Fixes #360 reported by @JDowny Allows #336
2012-11-24Simplify UserManager::AddLocalClone()/AddGlobalClone()attilamolnar
2012-10-21Make better use of User::GetFullRealHost()attilamolnar
2012-09-13Call OnUserSetIP() whenever the IP of a local user changes, set ↵attilamolnar
ident,host,dhost in LocalUser constructor
2012-06-29Fix typo in log message.Peter Powell
2012-06-12Snomask qQ: Swap quit message and IP for easier parsing by bots or scriptsRobby-
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-
2010-03-19Add RAWIO log level which is more verbose than DEBUGdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12646 e03df62e-2008-0410-955e-edbf42e46eb7
2010-03-06Fix logged error when user is denied by connect classdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12609 e03df62e-2008-0410-955e-edbf42e46eb7
2010-03-02Move DNSBL and ident lookups after <connect deny>/bancache/Z:line checksdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12588 e03df62e-2008-0410-955e-edbf42e46eb7
2010-03-02Fix m_ident deleting sockets that are still in usedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12586 e03df62e-2008-0410-955e-edbf42e46eb7
2010-03-02DelFd should not fail, it will leave a bad dangling pointer in that casedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12584 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-14m_dnsbl updatesdanieldg
Prevent user registration until dnsbl lookups are complete Allow DNSBLs to be checked using <connect:dnsbl> (MARK type) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12454 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-30Remove users from uuidlist on QuitUser, not during cull (allows UID reuse on ↵danieldg
fast netsplits) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12326 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-11...because every now and again, i have to do a massive commit.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-09Remove mode counter, not reliable and only used for umode +idanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12246 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-06Move StreamSocket inheritance off of Userdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12047 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-06Show IP of the user in the quit snomask [dKingston]danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12042 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-03Move MODENOTICE command to a command moduledanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11991 e03df62e-2008-0410-955e-edbf42e46eb7