summaryrefslogtreecommitdiff
path: root/src/command_parse.cpp
AgeCommit message (Collapse)Author
2018-10-26Fix a bunch of harmless compiler warnings on recent GCC releases.Peter Powell
2018-09-11Amend OnPostCommand to specify whether the command is loopcalled.Peter Powell
This restores previous behaviour which was lost when the original line parameter was removed.
2018-08-13Implement IRCv3 message tag support.Peter Powell
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-10Move message parsing to ProcessBuffer and fix edge cases in it.Peter Powell
2018-08-10Split irc::tokenparser::GetToken into GetMiddle and GetTrailing.Peter Powell
This simplifies the logic of irc::tokenparser considerably and removes all of the magic index guessing that was used previously.
2018-08-10Remove the original line parameter of On{Pre,Post}Command.Peter Powell
In the brave new world of message tags and alternate wire formats this is no longer something that is appropriate to expose. In reality it was only ever used by m_alias which now reconstitutes the command name and parameters into a RFC 1459-style message for whatever it needs to do.
2018-07-26Use CommandBase::Params instead of std::vector<std::string>.Peter Powell
This is presently a typedef but will soon be replaced with a class that encapsulates both tags and parameters.
2017-11-17Fix a ton of -Wsign-conversion warnings.Peter Powell
2017-10-28Hide User#host and User#dhost and use accessors to modify them.Peter Powell
This removes the need to invalidate the cache after changing a user's hostname.
2017-09-06Move RPL_SYNTAX to 650 to prevent a collision with RPL_TEXT.Peter Powell
Also move the command name to a parameter so that it is more easily parseable by software.
2016-08-22Replace irc::string usage in CommandParser::LoopCall() with ↵Attila Molnar
irc::insensitive_swo set
2016-03-23Don't prepend ":<nick>" to raw input logAttila Molnar
2016-02-25Convert WriteNumeric() calls to pass the parameters of the numeric as method ↵Attila Molnar
parameters
2015-11-23Implement Command::RegisterService()Attila Molnar
2015-04-20Merge insp20Attila Molnar
2015-01-24Move implementation of Command and CommandBase functions into a source fileAttila Molnar
2015-01-21Fix numeric ERR_NOTREGISTERED not containing the user's nickAttila Molnar
2015-01-12Always penalize clients executing a command which fails before running the ↵Attila Molnar
handler, even if the command has 0 penalty
2014-12-15Change type of some associative containers to their flat versions, including ↵Attila Molnar
Extensible storage
2014-06-28Use TimingSafeCompare() to compare passwords and password hashes (non-hmac only)Attila Molnar
Issue #882
2014-06-13Change allocation of InspIRCd::Parser to be physically part of the object ↵Attila Molnar
containing it
2014-06-13Remove global Commandtable typedefAttila 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-04-07Merge insp20Attila Molnar
2014-04-04Fix snotice about disabled command usage being sent to the wrong snomaskAttila Molnar
2014-01-26Add ProtocolInterface::BroadcastEncap() and infrastructure for manually ↵Attila Molnar
forwarding ENCAPs
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.
2014-01-09Stop null checking pointers that are always validAttila Molnar
2013-11-12Use WriteNumeric() everywhere we send numerics and include the user's nick ↵Adam
automatically
2013-08-31Improve support for rarely used compilers, EKOPath in this case.ChrisTX
2013-08-18Create the CommandBase class from Commandattilamolnar
The Handle() method is not part of CommandBase, making it possible to provide a different Handle() in each class derived from CommandBase
2013-08-04Change the syntax of FOREACH macros to be less dumb.Adam
2013-06-18Remove dead code from the InspIRCd and CommandParser classes and typedefs.hattilamolnar
Removed functions: InspIRCd: - Restart() - unused - DoSocketTimeouts() - no implementation exists - AddCommand() - useless wrapper around ModuleManager::AddService() CommandParser: - IsValidCommand() - unused - ProcessParameters() - no implementation exists
2013-06-13Remove TR_END, remove TRANSLATEx() from commands that do not need itattilamolnar
2013-06-13Rewrite CommandParser::TranslateUIDs()attilamolnar
2013-06-12Run the OnPostCommand hook from LoopCall()attilamolnar
2013-06-12CommandParser::LoopCall() changesattilamolnar
- Change function to be static, return a bool - Do not filter duplicates when there are 2 lists (JOIN) - Remove validation of 'extra' parameter, caller must pass either a valid index or -1
2013-06-12Change command name parameter of OnPostCommand to be a Command*attilamolnar
2013-06-06Merge insp20attilamolnar
2013-06-01Remove #define MAXPARAMETERS and "MAXPARA" 005 tokenattilamolnar
2013-06-01CommandParser::ProcessCommand() and ProcessBuffer() cleanupattilamolnar
- Change return types to void - Use a pointer to the command handler instead of an iterator
2013-06-01Improve command parser logic when there are more params than Command::max_paramsattilamolnar
2013-06-01Remove (non-functional) total_bytes counter from Commandattilamolnar
2013-05-16Remove unused variables, avoid copies where possible, check empty() instead ↵attilamolnar
of size() == 0 Most of these were detected by cppcheck
2013-05-16Allow spaces (and more) in oper typesattilamolnar
The spaces are converted to '_' characters in OPERTYPE for 2.0 servers Issue #533 suggested by @ankitkv
2013-04-12Add LOG_ prefix to the log level enum values.Peter Powell
2013-04-10Replace IS_AWAY() and IS_OPER() macros with User::IsAway() and User::IsOper()attilamolnar
2012-12-15Add a flag to Command that controls whether an empty last parameter is ↵attilamolnar
allowed or not
2012-11-28Change empty string assignments to .clear() or remove them entirelyattilamolnar
Part 2 of ba5c0db795824c3fc1ad48ce332d7bdc440cb77f
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-