Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-03-14 | Check perms for removal of oper-only channel modes. | Matt Schatz | |
Oper-only channel modes are currently unsettable by any channel op, oper or not. Correct this by checking both directions of an oper-only channel mode and continue only checking the setting of an oper-only user mode. As anyone should be able to unset their own user modes and UnOper() removes all oper-only user modes automatically. | |||
2019-02-18 | Various text improvements: consistency, syntax, help and doc updates/fixes. | Robby | |
2019-01-24 | Remove trailing whitespace from various source files. | Peter Powell | |
2019-01-24 | Move the <disabled> tag out of the core to a new module. | Peter Powell | |
2019-01-10 | Improve the error messages given when creating a mode. | Peter Powell | |
2018-08-22 | Send the 001-004 numerics and MOTD/LUSERS from core_info. | Peter Powell | |
Co-authored-by: Attila Molnar <attilamolnar@hush.com> | |||
2018-08-13 | Implement IRCv3 message tag support. | Peter Powell | |
Co-authored-by: Attila Molnar <attilamolnar@hush.com> | |||
2018-01-29 | Add ERR_INVALIDMODEPARAM for responding to invalid mode params. | Peter Powell | |
Currently on invalid modes we do a combination of different things: 1. Send a custom mode-specific numeric (which often collides with other modes). 2. Send a server notice. 3. Do absolutely nothing. This new numeric is a generic way of handling invalid parameters when setting a mode that avoids all of the mistakes of the previous behaviour. | |||
2017-12-11 | Ensure that ModeParser doesn't try to process a non-existent mode. | B00mX0r | |
This fixes #1431 and closes #1432. | |||
2017-12-10 | Extract RFC modes from the core to core_channel and core_user. | Peter Powell | |
2017-11-06 | Enable using m_customprefix to alter core prefix modes. | Peter Powell | |
This replaces the devoice module which has now been removed. If you want users to be able to devoice themselves then you can load the customprefix module add the following config tag: <customprefix name="voice" depriv="yes"> If you wish to keep identical behaviour rather than allowing users to use "MODE #YourChannel -v TheirNick" then you can load the alias module and add the following config tag: <alias text="DEVOICE" format="#*" replace="MODE $2 -v $nick"> | |||
2017-11-06 | Move depriv from m_customprefix into PrefixMode. | Peter Powell | |
2017-11-06 | Add support for setting the unset rank in ModeHandler. | Peter Powell | |
2017-10-04 | Fix RPL_SERVERVERSION treating the modes as a single parameter. | Peter Powell | |
2017-09-18 | Convert Disabled[CU]Modes to use a bitset instead of a char array. | Peter Powell | |
2017-09-18 | Add ModeParser::IsModeChar to standardise mode validation. | Peter Powell | |
2016-12-30 | Make ModeHandler::GetUserParameter() const, accept const User | Attila Molnar | |
2016-08-30 | Change Membership:hasMode() to accept a PrefixMode | Attila Molnar | |
2016-08-30 | Replace loop over alphabet with loop over mode list in several places | Attila Molnar | |
2016-08-30 | Pass the ModeHandler to User::HasModePermission() | Attila Molnar | |
Mark the method as const | |||
2016-08-29 | Mark ModeHandler::GetModeChar() and ModeWatcher::GetModeType() as const | Attila Molnar | |
2016-08-29 | Convert ModeHandler::GetNumParams() to NeedsParam() that returns a bool | Attila Molnar | |
2016-08-17 | Merge insp20 | Attila Molnar | |
2016-05-30 | Fix 005 not showing some modes with the same rank as others. | Peter Powell | |
2016-02-25 | Convert WriteNumeric() calls to pass the parameters of the numeric as method ↵ | Attila Molnar | |
parameters | |||
2015-11-23 | Implement ModeHandler::RegisterService() | Attila Molnar | |
2015-01-10 | Reduce std::string::substr() usage | Attila Molnar | |
substr() returns a new string while erase() and assign() modify the existing one | |||
2014-12-15 | Change type of some associative containers to their flat versions, including ↵ | Attila Molnar | |
Extensible storage | |||
2014-12-15 | Add typedef ModeParser::ModeWatcherMap, remove ModeWatchIter | Attila Molnar | |
2014-11-30 | Reject empty mode parameters in ModeParser::Process() instead of relying on ↵ | Attila Molnar | |
ModeHandlers to do it | |||
2014-09-10 | Remove listmode hiding support from the core | Attila Molnar | |
This is now handled by m_hidelist | |||
2014-09-04 | Migrate code from ModeParser into cmd_mode (core_user) | Attila Molnar | |
- Process() that takes a std::vector<std::string> - DisplayCurrentModes() - DisplayListModes() | |||
2014-09-04 | Split ModeParser::DisplayListMode() into two parts | Attila Molnar | |
ShowListModeList() sends the list of one listmode to a user, DisplayListMode() calls it for each mode letter | |||
2014-09-04 | Remove unused parameter passed to ModeParser::DisplayCurrentModes() | Attila Molnar | |
2014-09-04 | Pass Modes::ChangeList references to the OnPreMode hook, make it modifiable | Attila Molnar | |
This gets rid of the duplicated mode parsing logic in m_namedmodes | |||
2014-09-04 | Let callers customize the begin/end positions for ↵ | Attila Molnar | |
ModeParser::ModeParamsToChangeList() This helps spanningtree when it deals with a vector of parameters where the modes begin at different positions | |||
2014-09-03 | Use Modes::ChangeList in ModeHandler::RemoveMode() | Attila Molnar | |
2014-09-03 | Add a ModeParser::Process() overload that can process an entire ↵ | Attila Molnar | |
Modes::ChangeList This is a wrapper that calls ProcessSingle() repeatedly until the entire changelist is processed | |||
2014-09-03 | Make it possible to resume processing a partially processed Modes::ChangeList | Attila Molnar | |
Return number of processed mode changes from ModeParser::ProcessSingle() and add a begin index parameter | |||
2014-09-03 | Split out ModeParser::ModeParamsToChangeList() | Attila Molnar | |
2014-09-03 | Handle mode merges in ModeParser::ProcessSingle() | Attila Molnar | |
2014-09-03 | Validate mode parameters from ModeParser::ProcessSingle() | Attila Molnar | |
2014-09-03 | Split out ModeParser::ProcessSingle() from Process() | Attila Molnar | |
This applies up to one MODE line's worth of mode changes from a Modes::ChangeList | |||
2014-09-03 | Add mode process flag MODE_CHECKACCESS | Attila Molnar | |
2014-09-03 | Remove ModeHandler::m_paramtype and GetTranslateType() | Attila Molnar | |
2014-09-03 | Remove ModeParser::LastParseTranslate and GetLastParseTranslate() | Attila Molnar | |
2014-09-03 | Remove ModeParser::LastParseParams and GetLastParseParams() | Attila Molnar | |
2014-09-03 | Compare Limits.MaxModes to the size of LastChangeList in ModeParser::Process() | Attila Molnar | |
2014-09-03 | Remove ProtocolInterface::SendMode() | Attila Molnar | |
2014-09-03 | Pass the modes to the OnMode hook as a Modes::ChangeList, pass ↵ | Attila Molnar | |
ModeProcessFlags too |