summaryrefslogtreecommitdiff
path: root/src/users.cpp
AgeCommit message (Collapse)Author
2015-12-07Do not insert FakeUsers into UserManager::uuidlistAttila Molnar
Inserting them causes FindUUID() and FindNick() to return server users which is not what modules want
2015-11-03Move already sent id rollover handling and static LocalUser::already_sent_id ↵Attila Molnar
into UserManager
2015-11-03Add UserManager::NextAlreadySentId() and convert all code to use itAttila Molnar
2015-11-02Rewrite invite systemAttila Molnar
- Moved out of core, now lives entirely in core_channel - Accessible using the provided API after including the appropriate header - Invites are stored in an extension attached to LocalUser/Channel objects, they no longer need special handling when destroying these objects or when lowering TS - Expiration of timed invites are implemented using Timers - When creating a new invite let a non-timed invite override a timed one
2015-02-27Fix oversights in substr() conversionAttila Molnar
Thanks to @StevenVanAcker for reporting and testing this
2015-01-24Remove needless checks from User::WriteCommon()/WriteCommonRaw()Attila Molnar
2015-01-24Implement User::WriteCommonRaw() using ForEachNeighbor()Attila Molnar
2015-01-24Implement User::WriteCommonQuit() using ForEachNeighbor() in UserManagerAttila Molnar
2015-01-24Add User::ForEachNeighbor()Attila Molnar
2015-01-10Reduce std::string::substr() usageAttila Molnar
substr() returns a new string while erase() and assign() modify the existing one
2014-09-05Unset oper-only modes in User::UnOper() in a more sensible wayAttila Molnar
Get the user mode list from the ModeParser instead of trying all possible mode letters
2014-09-03Replace irc::modestacker usage with the new ModeParser::Process()Attila Molnar
2014-07-28Do not attempt to detect non-culled users at destruction by looking for ↵Attila Molnar
their uuid, leave it to Extensible This does not take uuid/sid reuse into consideration and Extensible implements this detection already in a proper way
2014-07-28Allow fast sid reuse by erasing fake users from UserManager::uuidlist when ↵Attila Molnar
the netsplit is handled, not in cull()
2014-07-25Merge insp20Attila Molnar
2014-07-19Erase local users from UserManager::local_list in QuitUser()Attila Molnar
2014-07-16Move typedef ClassVector to ServerConfig::ClassVectorAttila Molnar
2014-07-14Rename UserChanList to User::ChanList, remove UCListIterAttila Molnar
2014-07-14Rename UserMembList to Channel::MemberMap, switch all code to use itAttila Molnar
2014-07-14Change return type of Channel::GetUsers() to reference from pointer as it is ↵Attila Molnar
never NULL
2014-07-03Get rid of irc::strings (assign()) in User::ChangeNick()Attila Molnar
2014-07-03Deduplicate code in User::ChangeNick()Attila Molnar
2014-07-03Remove now needless User::ForceNickChange()Attila Molnar
Change call sites to call ChangeNick()
2014-07-03Move calling the OnUserPreNick() hook and the restrictbannedusers check from ↵Attila Molnar
core to cmd_nick (core_user)
2014-06-20Check Q-Lines on nick change in core_xlineAttila Molnar
2014-06-20Reject nickname case changes too when enforcing <security:restrictbannedusers>Attila Molnar
2014-06-20Change the type of the user parameter in the OnUserPreNick() hook from User ↵Attila Molnar
to LocalUser No remote users were passed to this hook before. Remove needless IS_LOCAL() checks.
2014-06-20Increment serverstats::Collisions when a collision is handled, not when a ↵Attila Molnar
module denies a nick change
2014-06-14Kill needless #includes in source filesAttila Molnar
2014-06-13Change allocation of InspIRCd::Parser to be physically part of the object ↵Attila Molnar
containing it
2014-06-13Change allocation of InspIRCd::BanCache to be physically part of the object ↵Attila Molnar
containing it
2014-06-13Pull in bancache.h from inspircd.hAttila Molnar
2014-06-13Change allocation of InspIRCd::stats to be physically part of the object ↵Attila Molnar
containing it While at it, remove "stats" from all field names
2014-06-07Fix harmless loop off-by-ones found by Moonlightningsatmd
2014-05-23Prefix all definitions in config.h to avoid potential collisions.Peter Powell
2014-04-11Kill <channels> in favour of <connect:maxchans> and <oper:maxchans>.Peter Powell
Remove channels/high-join-limit privilege
2014-04-02Remove unused User::WriteCommonExcept()Attila Molnar
WriteCommonRaw(msg, false) has similiar functionality with a std::string parameter
2014-04-02Move User::SendAll() into core_privmsgAttila Molnar
This functionality is only used by the PRIVMSG and NOTICE handlers
2014-04-02Remove User::WriteTo() functions; use User::WriteFrom() insteadAttila Molnar
The removed functions were rarely used and all they did was to call User::WriteFrom() with swapped arguments. On call sites, WriteTo() hardly offers any readability improvement over WriteFrom().
2014-03-25Change storage of UserManager::all_opers to be a vectorAttila Molnar
2014-03-17Rewrite clone counting to use one map instead of twoAttila Molnar
2014-03-15Change allocation of UserManager::clientlist to be physically part of the ↵Attila Molnar
object containing it
2014-03-14Change allocation of UserManager::uuidlist to be physically part of the ↵Attila Molnar
object containing it
2014-03-08Make the maximum hostname length configurable in the config.Peter Powell
2014-03-03Update nick timestamps in User::ChangeNick(), pass the new TS in a parameterAttila Molnar
2014-02-27Remove REG_ALL checks from User::SharesChannelWith()Attila Molnar
These checks are never true currently and even if one or both users are unregistered proceeding is harmless
2014-02-21Index Channel::modes and User::modes with the id of the mode instead of its ↵Attila Molnar
letter
2014-02-08Change all socketengine methods to be staticAttila Molnar
2014-02-06Fix various cases of UUID exposure.Peter Powell
- Introduce WriteCommand which sends * when the user has not registered. - Switch a ton of code to use WriteCommand instead of WriteServ. - Convert WriteNotice to be a wrapper around WriteCommand. - Only send * when NICK has not been sent instead of before registration.
2014-01-25Convert InspIRCd::PassCompare to return bool instead of int.Peter Powell
The insane behaviour of this method was due to an implementation detail which has since become irrelevent.