summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
AgeCommit message (Collapse)Author
2019-01-24Remove trailing whitespace from various source files.Peter Powell
2019-01-24Add the reason to xline removal notices. (#1545)Matt Schatz
Show the reason in manual xline removal SNOTICEs, just like expiry SNOTICEs do. This modifies XLineManager::DelLine() to require another string reference passed to it. Requested by @Robby-.
2019-01-24Add translation for casemapping between 2.0/3.0 (#1544)linuxdaemon
If the casemapping is set to ascii, advertise the m_ascii module to 2.0 to allow use of the m_ascii extras module for 2.0
2019-01-23Fix away broadcast logic (#1561)linuxdaemon
2019-01-22Rename OnClientProtocolProcessTag to OnProcessTag.Peter Powell
2019-01-19Fix sending the entire VERSION output as a single parameter.Peter Powell
Closes #1560.
2019-01-09Improve X-line text consistency.Matt Schatz
- Change any "-Line", ":Line", or "*line" to "-line" throughout the X-line code, comments, and documentation. - Add periods to the end of some notices. - Correct a typo in the Q-line code comments. - Update the filter module documentation (shun addition). Co-authored-by: Robby <robby@chatbelgie.be>
2019-01-03Improve the spanningtree "unknown command" error message.Peter Powell
2019-01-02Fix a crash when trying to use ROUTE_TYPE_MESSAGE with no message.Peter Powell
2019-01-02Fix message tags not being broadcast across the network.Peter Powell
2019-01-02Strip message tags when talking with 1202 protocol servers.Peter Powell
2019-01-02Remove spanningtree check for lines sent without a source.Peter Powell
We don't send any of these anymore.
2018-12-20Fix thinking that 1202 protocol servers have not finished bursting.Peter Powell
A server introduction is only a burst if all of the parent servers of it are not bursting. Fixes #1527.
2018-12-17Fix not propagating rehashes properly across the network.Peter Powell
The REHASH command is not routed like a normal command. When a rehash that needs to be forwarded is received the local server forwards it indirectly by calling the local REHASH handler which then calls the OnPreRehash hook. This results in the OnPreRehash hook being called whilst loopCall is true. The bug which this check was added to fix seems to no longer be present so no alternate fix for that seems necessary. Closes #1537.
2018-12-13Store durations as unsigned long not long in XLine and m_filter.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-12-12Fix a crash when the core_oper module is not loaded.Peter Powell
2018-10-28Also synchronise the prefix rank between servers.Peter Powell
2018-10-27Fix a shadowing warning in the spanningtree module.Peter Powell
2018-10-27Improve CAPAB negotiation in the spanningtree module.Peter Powell
- Remove the CHANMODES, USERMODES, and PREFIX tokens in the 1205 protocol. These have entirely been superceded by the CHANMODES and USERMODES CAPAB commands. - Only compare the 1202 PREFIX tokens if the remote server did not send CAPAB CHANMODES. This replicates the existing behaviour used for the CHANMODES token. - Fix checking whether the remote server has an appropriate case mapping. If it is not sent we assume it is the same as the local server as always. This should prevent issues with people using services packages that do not send this token yet. - Fix checking if the user modes are mismatched and then promptly overwriting the error message with mismatched channel modes. - Fix servers not being able to tell whether a mode on the remote server is a prefixless prefix mode. Requires the 1205 protocol. - Fix servers that receive CAPAB CHANMODES or CAPAB USERMODES not checking the type of those modes. Requires the 1205 protocol.
2018-10-01Move <security:hidesplits> to the spanningtree module.Peter Powell
2018-10-01Fix the chanhistory module being inconsistent across servers.Peter Powell
Closes #331.
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-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-10Parse CAPAB CAPABILITIES and FJOIN messages with spacesepstream.Peter Powell
Special tokenisation rules are not necessary here.
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-08-07Remove the 'debug' snotice character.Peter Powell
2018-08-05Make the FJOIN timestamp message easier for users to understand.Peter Powell
2018-07-30Rename User::fullname to realname and make it private.Peter Powell
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-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-24Make more config stuff case insensitive.Peter Powell
2018-07-24Fix building on Windows.Peter Powell
2018-07-18Initial support for listening on UNIX socket endpoints.Peter Powell
2018-07-18Add the family() member to the sockaddrs union.Peter Powell
2018-07-03Use !empty() instead of 'size() > 0' when checking parameter count.B00mX0r
2018-04-17Convert some usages of ato[il] to use ConvToNum.Peter Powell
2018-04-16Add ConfigTag::getUInt for reading unsigned config values.Peter Powell
2018-04-16Remove the default value in ConfigTag::get{Duration,Float,Int}.Peter Powell
2018-04-11Change ServerInfo::gecos to descriptiongenius3000
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-12-19Show server versions in /MAP for opersB00mX0r
This resolves #1203
2017-12-03Move OnSync{Channel,Network,User} to ServerEventListener.Peter Powell
2017-12-03Rename the spanningtree module header to server.Peter Powell
In the future we will have server linking modules that are not the spanningtree module.
2017-11-21Add the override keyword in places that it is missing.Peter Powell
GCCs warnings for this are much better than Clangs.