summaryrefslogtreecommitdiff
path: root/include/inspircd.h
AgeCommit message (Collapse)Author
2018-08-13Implement IRCv3 message tag support.Peter Powell
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-07-26Replace irc::stringjoiner with a generic stdalgo::string::join.Peter Powell
This can also be used with different types of collection containing values which are not a string.
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.
2018-07-18Initial support for listening on UNIX socket endpoints.Peter Powell
2018-07-10Add InspIRCd::IsHost for checking the validity of hostnames.Peter Powell
2018-04-16Add range checking to ConfigTag::getFloat.Peter Powell
2018-04-08Include modules/whois.h directly from files that use it.Peter Powell
2018-04-08Move OnStats from the core to a cross-module event.Peter Powell
Some core code still exists in the XLine system but this will be replaced when the XLine system is replaced later.
2018-01-14Fix some minor Doxygen errors.Peter Powell
2018-01-06Rework message handling.Peter Powell
- Move all message-related types to their own header to make moving them to a cross-module events easier. - Rename OnUserMessage to OnUserPostMessage. - Rename OnText to OnUserMessage. - Replace the dest, target_type, and status parameters with the MessageTarget class. - Replace the text, exempt_list, and msgtype parameters with the MessageDetails struct. - Add echooriginal and originaltext to the MessageDetails struct to allow spam filtering to not be broken by cap echo-message.
2018-01-03Make InspIRCd::Format return std::string instead of const char*.Peter Powell
Using the latter is problematic as if you don't copy the return value before calling Format again your formatted message will be overwritten by something else. This bug was observed in m_callerid where InspIRCd::Format was being used for formatting two arguments the latter of which was being overwritten with the former. We could have preserved the return type and just copied the string but then callers would have had to deallocate the string once they have finished with it which is an undesirabable burden to put on callers.
2017-12-23Get rid of InspIRCd::QuickExit.Peter Powell
This is just a thin wrapper around exit(). I don't think we really need it. While we are changing this code the setgroup/setuser code should be using EXIT_STATUS_CONFIG too.
2017-11-25Convert the remaining things away from the caller/handler API.Peter Powell
2017-11-25Convert GenRandom to std::function.Peter Powell
2017-11-25Convert IsChannel to std::function.Peter Powell
2017-11-25Convert IsIdent to std::function.Peter Powell
2017-11-25Convert IsNick to std::function.Peter Powell
2017-11-21Add the override keyword in places that it is missing.Peter Powell
GCCs warnings for this are much better than Clangs.
2017-11-17Fix a ton of -Wsign-conversion warnings.Peter Powell
2017-09-11Move operquit out of the core and into core_user.Peter Powell
2017-08-26Fix a bunch of Doxygen warnings.Peter Powell
2017-03-20Move the OnCheckExemption hook out of the core.Peter Powell
2016-08-17Merge insp20Attila Molnar
2016-06-17Don't exit on rehash if the pid file cannot be writtenAttila Molnar
2016-02-25Introduce Stats::Context, pass it to the OnStats hook and switch all code to itAttila Molnar
2016-02-25Add Numeric::NumericAttila Molnar
2016-02-25Move implementation of ConvTo*() and related functions into convto.hAttila Molnar
2016-02-25Include stdint.h from inspircd.hAttila Molnar
2015-12-30Add Numeric::BuilderAttila Molnar
2015-12-08Strip all control codes except \001 in InspIRCd::StripColor()Attila Molnar
Fixes issue #1100 reported by @uecasm
2015-05-17Move InspIRCd::SendError() to cmd_dieAttila Molnar
Fix multiple ERROR messages being sent to unregistered users by removing the "Exiting with status..." message
2015-04-28Move OnWhois* events to core_whois, add Whois::ContextAttila Molnar
Remove InspIRCd::SendWhoisLine()
2014-12-15Add flat_[multi]{map,set} containersAttila Molnar
2014-09-27Add the insp::aligned_storage templateAttila Molnar
2014-08-04Remove InspIRCd::BindSocket()Attila Molnar
2014-07-14Move ISupportManager class declaration to isupportmanager.h from inspircd.hAttila Molnar
2014-06-28Add InspIRCd::TimingSafeCompare() function that compares strings in a ↵Attila Molnar
timing-safe way
2014-06-25Add parameter to InspIRCd::TimeString for UTC time formats.Peter Powell
Missing doc added by @attilamolnar
2014-06-25Add formatting to InspIRCd::TimeString; switch all code to use it.Peter Powell
m_httpd also now uses the correct timestamp format. Windows-specific fixes by @attilamolnar, original PR #849
2014-06-24Change allocation of InspIRCd::Users to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-06-24Change allocation of InspIRCd::SNO to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-06-24Change allocation of InspIRCd::Modules to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-06-24Change allocation of InspIRCd::Logs to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-06-24Change allocation of InspIRCd::Modes to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-06-24Add the fakederef classAttila Molnar
2014-06-14Remove unused #define ERROR -1Attila Molnar
2014-06-13Make the default ProtocolInterface instance part of class InspIRCdAttila Molnar
The protocol module no longer has to delete it on load and construct it on unload, only assign a new value to ServerInstance->PI
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