aboutsummaryrefslogtreecommitdiff
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
* Update copyright headers.Gravatar InspIRCd Robot2022-12-301-2/+1
* Fix an unnecessary mode lookup in RemoveMode.Gravatar Sadie Powell2022-05-151-1/+1
* Update copyright headers.Gravatar InspIRCd Robot2022-04-281-1/+1
* Add a numeric builder for the ERR_CHANOPRIVSNEEDED numeric.•••This should make privilege errors more consistent. Gravatar Sadie Powell2022-04-121-6/+2
* Add a method for finding the next prefix mode above a rank.Gravatar Sadie Powell2022-04-111-12/+19
* Remove a weird incorrect comment.Gravatar Sadie Powell2022-04-031-5/+0
* Fix a bunch of weird indentation and spacing issues.Gravatar Sadie Powell2021-04-271-2/+2
* Improve the message sent when a mode does not exist.Gravatar Sadie Powell2021-04-191-1/+3
* Update copyright headers.Gravatar InspIRCd Robot2021-03-051-1/+1
* Fix not sending ERR_INVALIDMODEPARAM when a parameter is malformed.•••Closes #1850. Gravatar Sadie Powell2021-02-271-0/+11
* Update copyright headers.Gravatar InspIRCd Robot2020-01-111-5/+10
* Add a constant for the maximum length of a mode parameter.Gravatar Peter Powell2019-07-231-3/+3
* Show the mode syntax in ERR_INVALIDMODEPARAM.Gravatar Peter Powell2019-06-121-1/+5
* Fix grammar in unknown mode/snomask character messages.Gravatar Robby2019-04-211-1/+1
* Check perms for removal of oper-only channel modes.•••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. Gravatar Matt Schatz2019-03-141-5/+5
* Various text improvements: consistency, syntax, help and doc updates/fixes.Gravatar Robby2019-02-181-2/+2
* Remove trailing whitespace from various source files.Gravatar Peter Powell2019-01-241-1/+1
* Move the <disabled> tag out of the core to a new module.Gravatar Peter Powell2019-01-241-11/+0
* Improve the error messages given when creating a mode.Gravatar Peter Powell2019-01-101-7/+17
* Send the 001-004 numerics and MOTD/LUSERS from core_info.•••Co-authored-by: Attila Molnar <attilamolnar@hush.com> Gravatar Peter Powell2018-08-221-25/+0
* Implement IRCv3 message tag support.•••Co-authored-by: Attila Molnar <attilamolnar@hush.com> Gravatar Peter Powell2018-08-131-30/+12
* Add ERR_INVALIDMODEPARAM for responding to invalid mode params.•••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. Gravatar Peter Powell2018-01-291-0/+5
* Ensure that ModeParser doesn't try to process a non-existent mode.•••This fixes #1431 and closes #1432. Gravatar B00mX0r2017-12-111-0/+6
* Extract RFC modes from the core to core_channel and core_user.Gravatar Peter Powell2017-12-101-48/+0
* Enable using m_customprefix to alter core prefix modes.•••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"> Gravatar Peter Powell2017-11-061-0/+8
* Move depriv from m_customprefix into PrefixMode.Gravatar Peter Powell2017-11-061-1/+10
* Add support for setting the unset rank in ModeHandler.Gravatar Peter Powell2017-11-061-4/+11
* Fix RPL_SERVERVERSION treating the modes as a single parameter.Gravatar Peter Powell2017-10-041-1/+3
* Convert Disabled[CU]Modes to use a bitset instead of a char array.Gravatar Peter Powell2017-09-181-2/+2
* Add ModeParser::IsModeChar to standardise mode validation.Gravatar Peter Powell2017-09-181-7/+8
* Make ModeHandler::GetUserParameter() const, accept const UserGravatar Attila Molnar2016-12-301-1/+1
* Change Membership:hasMode() to accept a PrefixModeGravatar Attila Molnar2016-08-301-1/+1
* Replace loop over alphabet with loop over mode list in several placesGravatar Attila Molnar2016-08-301-4/+5
* Pass the ModeHandler to User::HasModePermission()•••Mark the method as const Gravatar Attila Molnar2016-08-301-1/+1
* Mark ModeHandler::GetModeChar() and ModeWatcher::GetModeType() as constGravatar Attila Molnar2016-08-291-5/+0
* Convert ModeHandler::GetNumParams() to NeedsParam() that returns a boolGravatar Attila Molnar2016-08-291-13/+13
* Merge insp20Gravatar Attila Molnar2016-08-171-5/+14
|\
| * Fix 005 not showing some modes with the same rank as others.Gravatar Peter Powell2016-05-301-6/+14
| * Reject empty mode parameters in ModeParser::Process() instead of relying on M...Gravatar Attila Molnar2014-11-301-1/+1
* | Convert WriteNumeric() calls to pass the parameters of the numeric as method ...Gravatar Attila Molnar2016-02-251-12/+11
* | Implement ModeHandler::RegisterService()Gravatar Attila Molnar2015-11-231-0/+6
* | Reduce std::string::substr() usage•••substr() returns a new string while erase() and assign() modify the existing one Gravatar Attila Molnar2015-01-101-1/+1
* | Change type of some associative containers to their flat versions, including ...Gravatar Attila Molnar2014-12-151-2/+2
* | Add typedef ModeParser::ModeWatcherMap, remove ModeWatchIterGravatar Attila Molnar2014-12-151-7/+7
* | Remove listmode hiding support from the core•••This is now handled by m_hidelist Gravatar Attila Molnar2014-09-101-7/+0
* | Migrate code from ModeParser into cmd_mode (core_user)•••- Process() that takes a std::vector<std::string> - DisplayCurrentModes() - DisplayListModes() Gravatar Attila Molnar2014-09-041-125/+0
* | Split ModeParser::DisplayListMode() into two parts•••ShowListModeList() sends the list of one listmode to a user, DisplayListMode() calls it for each mode letter Gravatar Attila Molnar2014-09-041-1/+9
* | Remove unused parameter passed to ModeParser::DisplayCurrentModes()Gravatar Attila Molnar2014-09-041-2/+2
* | Pass Modes::ChangeList references to the OnPreMode hook, make it modifiable•••This gets rid of the duplicated mode parsing logic in m_namedmodes Gravatar Attila Molnar2014-09-041-1/+1
* | Let callers customize the begin/end positions for ModeParser::ModeParamsToCha...•••This helps spanningtree when it deals with a vector of parameters where the modes begin at different positions Gravatar Attila Molnar2014-09-041-4/+7