summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/main.h
AgeCommit message (Collapse)Author
2019-06-22Fix msgid inconsistencies with TAGMSGlinuxdaemon
Also fixes accidentally copying incoming tags on TAGMSG when sending to other users
2019-05-14Add an enumeration for known protocol versions.Peter Powell
2019-05-14Replace ModuleSpanningTree::TimeToStr with InspIRCd::DurationStr.Peter Powell
2019-05-02Merge branch 'insp20' into insp3.Peter Powell
2019-04-26Update documentation links.Peter Powell
2019-03-14Generate the ssl_cert metadata before bursting a connecting user.Peter Powell
2019-01-02Fix message tags not being broadcast across the network.Peter Powell
2018-12-12Fix conversion issues by replacing ConvToInt with ConvToNum<T>.Peter Powell
The former was a thin wrapper around atol and brought with it all of the weird parsing logic of atol which is almost never what is actually wanted. It also almost never returned the numeric type which is actually wanted which can cause weird issues when casting.
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-12Convert AWAY to use cross-module events and clean up slightly.Peter Powell
OnSetAway has been replaced with four events. OnUserPreAway and OnUserPreBack can be used to deny an away state change and/or change the away message of a local user. OnUserAway and OnUserBack allow modules to be notified that a user's away state has changed.
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-30Replace most usages of "name" with "real" or "real name".Peter Powell
2018-07-30Replace most usages of "GECOS" with "real" or "real name".Peter Powell
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-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-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.
2017-11-12Merge tag 'v2.0.25' into master.Peter Powell
2017-10-15Update wiki links to use HTTPS and point to the correct pages.Peter Powell
When we release 3.0 these links will break as they will point to the pages for 3.0 rather than 2.0.
2017-07-12Add CXX11_OVERRIDE to overridden members that lack it.Peter Powell
This fixes a ton of warnings when building on compilers that default to C++11 or newer.
2016-09-02m_spanningtree Refuse topic changes that would result in desyncAttila Molnar
This is a workaround until the protocol is updated
2016-03-01m_spanningtree Remove ModuleSpanningTree::RemoteMessage()Attila Molnar
This method is no longer used, replacement is User::WriteRemoteNotice()
2016-02-25Introduce Stats::Context, pass it to the OnStats hook and switch all code to itAttila Molnar
2015-12-06m_spanningtree Change allocation of ModuleSpanningTree::commands to be ↵Attila Molnar
physically part of the object containing it
2015-12-06Add minimum channel rank and exception list parameters to the OnUserInvite hookAttila Molnar
2015-02-11Convert the spanningtree events to use the new cross-module event systemAttila Molnar
2015-01-25m_spanningtree Rewrite PING logic to use TimersAttila Molnar
2014-10-13m_spanningtree Rebuild serverlist and sidlist when receiving a specific RequestAttila Molnar
Issue #923
2014-09-03m_spanningtree Send MODE/FMODE from the OnMode hookAttila Molnar
If the MODE_LOCALONLY flag is set the mode change is not propagated
2014-07-28m_spanningtree Remove the now needless SplitInProgress workaroundAttila Molnar
2014-07-20m_spanningtree Remove the MAP ISUPPORT tokenAttila Molnar
No other servers send this token and sending it has little to no benefit
2014-06-14m_spanningtree Remove declaration for nonexistent function: OnLine()Attila Molnar
2014-06-13m_spanningtree Change allocation of the specialized ProtocolInterface to be ↵Attila Molnar
physically part of ModuleSpanningTree
2014-06-11m_spanningtree Assign an id to new MembershipsAttila Molnar
2014-03-03m_spanningtree Remove remains of the KeepNickTS workaroundAttila Molnar
2014-01-21Merge insp20Attila Molnar
2014-01-05Move server description field from TreeServer into Server; remove ↵Attila Molnar
OnGetServerDescription hook
2014-01-05Improve UserManager::QuitUser() and related codeAttila Molnar
- Make operreason optional; NULL means same as quitreason - Remove User::quietquit, it is now handled internally in spanningtree - Send snotice about quitting remote users from spanningtree
2013-12-15m_spanningtree Fix nick TS desync on SVSNICKAttila Molnar
Don't accept invalid timestamps
2013-09-13Pass an interface to the OnSync hooksattilamolnar
Remove Module::ProtoSendMetaData()
2013-09-12Send ListModeBase modes implicitly on channel syncattilamolnar
Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel()
2013-09-10m_spanningtree Move c2s commands out of SpanningTreeCommands to auto ↵attilamolnar
register them
2013-08-30Replace OnRehash() with ReadConfig() that is called on boot, on module load ↵attilamolnar
and on rehash This eliminates the need for calling OnRehash() in init()
2013-08-19Remove cmd_map from the coreattilamolnar
2013-08-19m_spanningtree Minor cleanup of functionsattilamolnar
2013-08-18m_spanningtree Move all server-to-server command handlers into handler classesattilamolnar
These commands are not registered in or called by the core. When looking for the handler of a command a new command table is searched first which contains all server-to-server commands. If a handler cannot be found in there, the core command table is consulted.
2013-08-17m_spanningtree Remove SpanningTreeUtilities* fields and parametersattilamolnar
2013-06-13Introduce ModeProcessFlags, can be passed to ModeParser::Process() to ↵attilamolnar
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.)
2013-06-12Get rid of the OnRemoteKill hook, make use of GetRouting() and TR_CUSTOM to ↵attilamolnar
route KILLs
2013-06-12Change command name parameter of OnPostCommand to be a Command*attilamolnar