aboutsummaryrefslogtreecommitdiffstats
path: root/src/mode.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Compare Limits.MaxModes to the size of LastChangeList in ModeParser::Process()Gravatar Attila Molnar2014-09-031-1/+1
| |
* | Remove ProtocolInterface::SendMode()Gravatar Attila Molnar2014-09-031-3/+0
| |
* | Pass the modes to the OnMode hook as a Modes::ChangeList, pass ↵Gravatar Attila Molnar2014-09-031-1/+1
| | | | | | | | ModeProcessFlags too
* | Populate a Modes::ChangeList object in ModeParser::Process()Gravatar Attila Molnar2014-09-031-0/+2
| |
* | Change mode_sequence to be a const ref in ModeParser::Process()Gravatar Attila Molnar2014-09-021-2/+2
| | | | | | | | Also change the signature of DisplayListModes() to accept a const ref
* | Replace stringstream with a std::string in ModeParser::Process()Gravatar Attila Molnar2014-09-021-4/+5
| | | | | | | | There is no benefit in using a stringstream here
* | Pass prefix rank and prefix char to PrefixMode constructorGravatar Attila Molnar2014-08-061-2/+2
| |
* | Remove a bunch of useless classes representing simple core modesGravatar Attila Molnar2014-08-061-7/+18
| |
* | Remove typedef UserMembCIter, use Channel::MemberMap::const_iterator insteadGravatar Attila Molnar2014-07-141-1/+1
| |
* | Rename UserMembList to Channel::MemberMap, switch all code to use itGravatar Attila Molnar2014-07-141-1/+1
| |
* | Change return type of Channel::GetUsers() to reference from pointer as it is ↵Gravatar Attila Molnar2014-07-141-2/+2
| | | | | | | | never NULL
* | Change allocation of InspIRCd::Modes to be physically part of the object ↵Gravatar Attila Molnar2014-06-241-1/+1
| | | | | | | | containing it using fakederef
* | Add UserManager::GetUsers()Gravatar Attila Molnar2014-03-151-1/+4
| |
* | Add InspIRCd::GetChans(), remove ChannelCount()Gravatar Attila Molnar2014-03-141-1/+4
| |
* | Move the wallops mode from the core into core_wallopsGravatar Attila Molnar2014-03-091-2/+1
| |
* | Throw an exception if ModeParser::AddMode() failsGravatar Attila Molnar2014-02-231-7/+6
| |
* | Assign an id to user modes, parameter chanmodes and simple chanmodesGravatar Attila Molnar2014-02-211-1/+29
| |
* | Replace mode letter parameter of OnRawMode() with a ModeHandler*, remove pcntGravatar Attila Molnar2014-02-211-2/+2
| |
* | Add a ModeParser::FindMode() overload that takes a mode name and a mode typeGravatar Attila Molnar2014-02-201-0/+10
| |
* | Create a name -> ModeHandler* mapGravatar Attila Molnar2014-02-201-0/+9
| |
* | Replace ModeMasks with a two-dimensional arrayGravatar Attila Molnar2014-02-181-37/+19
| |
* | Change the parameter type of ModeHandler::GiveModeList() from ModeMasks to ↵Gravatar Attila Molnar2014-02-181-2/+2
| | | | | | | | ModeType
* | Add ParamModeBase and ParamMode, change all parameter modes to inherit from ↵Gravatar Attila Molnar2014-02-151-18/+26
| | | | | | | | | | | | | | | | | | | | ParamMode - Type of the extension used to store data is a template parameter - The extension is automatically unset when the mode is unset - Handlers inheriting from ParamMode have to provide OnSet() and SerializeParam(); may optionally provide OnUnset() - Transparently handle the case when OnSet() modifies the mode parameter - Remove Channel::custom_mode_params map; ask the mode handlers to serialize their parameters instead
* | Merge insp20Gravatar Attila Molnar2014-01-211-3/+15
|\|
| * Use FindNickOnly() in a few more places if a local user is performing an ↵Gravatar Attila Molnar2014-01-191-5/+21
| | | | | | | | action to prevent UID walking
| * Improve support for rarely used compilers, EKOPath in this case.Gravatar ChrisTX2013-08-311-1/+1
| |
* | Automatically register and unregister mode watchersGravatar Attila Molnar2014-01-061-0/+2
| |
* | Remove useless ULine() checksGravatar Attila Molnar2014-01-051-1/+1
| |
* | Use WriteNumeric() everywhere we send numerics and include the user's nick ↵Gravatar Adam2013-11-121-21/+21
| | | | | | | | automatically
* | Keep lists of mode handlers by typeGravatar attilamolnar2013-09-121-7/+19
| |
* | Move prefix mode specific fields and getters into PrefixModeGravatar attilamolnar2013-09-111-25/+32
| | | | | | | | Add ModeHandler::IsPrefixMode()
* | Create a base class for prefix modesGravatar attilamolnar2013-09-111-29/+27
| | | | | | | | Move Channel::SetPrefix() into Membership
* | Add a type id field to ModeHandlerGravatar attilamolnar2013-09-111-2/+2
| |
* | Clean up a few constructorsGravatar attilamolnar2013-08-121-3/+0
| | | | | | | | Do not silently correct a zero TS in Channel::Channel(); require callers to supply a valid TS instead
* | Change the syntax of FOREACH macros to be less dumb.Gravatar Adam2013-08-041-1/+1
| |
* | Move SetNoticeMask(), FormatNoticeMasks() and ProcessNoticeMasks() from the ↵Gravatar attilamolnar2013-07-191-1/+4
| | | | | | | | User class to the snomask modehandler
* | Replace hardcoded mode letters passed to IsModeSet() and GetModeParameter() ↵Gravatar attilamolnar2013-07-011-8/+8
| | | | | | | | with ModeHandlers, part 1
* | Fix a few oversightsGravatar attilamolnar2013-07-011-1/+1
| | | | | | | | This partially reverts e0cb6bd46fb1d804ad6adea5688c844f7e1a0f6f
* | Call Channel::SetModeParam() from the mode parser when needed instead of ↵Gravatar attilamolnar2013-06-131-4/+3
| | | | | | | | requiring mode handlers to do it
* | Replace void* dest and target_type parameters of OnMode with a User* and a ↵Gravatar attilamolnar2013-06-131-8/+4
| | | | | | | | Channel*
* | Introduce ModeProcessFlags, can be passed to ModeParser::Process() to ↵Gravatar attilamolnar2013-06-131-3/+6
| | | | | | | | | | | | | | | | indicate local only mode changes and mode merges Change ProtocolInterface::SendMode() to take source and destination parameters, and call it from the mode parser whenever the mode change is global This deprecates the ambiguous InspIRCd::SendMode() and InspIRCd::SendGlobalMode() interface (the latter sent mode changes originating from local users twice, etc.)
* | Store prefix rank in a ModeHandler field, change ↵Gravatar attilamolnar2013-06-061-6/+1
| | | | | | | | ModeHandler::GetPrefixRank() to be non-virtual
* | Convert User::FormatNoticeMasks() to use std::string.Gravatar Peter Powell2013-06-061-1/+1
| |
* | Move a few trivial functions into headersGravatar attilamolnar2013-06-021-10/+0
| |
* | Watch mode names with ModeWatchers instead of mode lettersGravatar attilamolnar2013-06-011-59/+47
| |
* | Remove useless ModeType parameter from ModeWatcher::BeforeMode() and AfterMode()Gravatar attilamolnar2013-06-011-5/+5
| |
* | Simplify user mode removal via ModeHandler::RemoveMode()Gravatar attilamolnar2013-05-271-15/+7
| | | | | | | | | | The function does not need to be virtual because the core can remove any user mode using the default logic The optional modestack parameter was always NULL, so remove it
* | Deduplicate RemoveMode() implementationsGravatar attilamolnar2013-05-271-17/+31
| | | | | | | | | | The default (core) implementation can now remove prefix modes The modestacker parameter is now mandatory
* | Cache mode list that is sent in the 004 numericGravatar attilamolnar2013-05-241-35/+10
| | | | | | | | Deduplicate UserModeList(), ChannelModeList() and ParaModeList() code
* | Remove dead ModeParser codeGravatar attilamolnar2013-05-241-16/+0
| |