aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
Commit message (Expand)AuthorAgeFilesLines
* Remove trailing whitespace from various source files.Gravatar Peter Powell2019-01-241-1/+1
* Add the reason to xline removal notices. (#1545)•••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-.Gravatar Matt Schatz2019-01-241-3/+4
* Add translation for casemapping between 2.0/3.0 (#1544)•••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.0Gravatar linuxdaemon2019-01-241-0/+9
* Fix away broadcast logic (#1561)Gravatar linuxdaemon2019-01-231-1/+1
* Rename OnClientProtocolProcessTag to OnProcessTag.Gravatar Peter Powell2019-01-221-1/+1
* Fix sending the entire VERSION output as a single parameter.•••Closes #1560. Gravatar Peter Powell2019-01-191-2/+6
* Improve X-line text consistency.•••- 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> Gravatar Matt Schatz2019-01-091-1/+1
* Improve the spanningtree "unknown command" error message.Gravatar Peter Powell2019-01-031-1/+1
* Fix a crash when trying to use ROUTE_TYPE_MESSAGE with no message.Gravatar Peter Powell2019-01-022-2/+7
* Fix message tags not being broadcast across the network.Gravatar Peter Powell2019-01-029-29/+107
* Strip message tags when talking with 1202 protocol servers.Gravatar Peter Powell2019-01-021-0/+6
* Remove spanningtree check for lines sent without a source.•••We don't send any of these anymore. Gravatar Peter Powell2019-01-021-6/+0
* Fix thinking that 1202 protocol servers have not finished bursting.•••A server introduction is only a burst if all of the parent servers of it are not bursting. Fixes #1527. Gravatar Peter Powell2018-12-201-3/+13
* Fix not propagating rehashes properly across the network.•••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. Gravatar Peter Powell2018-12-171-3/+0
* Store durations as unsigned long not long in XLine and m_filter.Gravatar Peter Powell2018-12-131-1/+1
* Fix conversion issues by replacing ConvToInt with ConvToNum<T>.•••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. Gravatar Peter Powell2018-12-1210-13/+13
* Fix a crash when the core_oper module is not loaded.Gravatar Peter Powell2018-12-121-1/+2
* Also synchronise the prefix rank between servers.Gravatar Peter Powell2018-10-281-3/+3
* Fix a shadowing warning in the spanningtree module.Gravatar Peter Powell2018-10-271-2/+2
* Improve CAPAB negotiation in the spanningtree module.•••- 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. Gravatar Peter Powell2018-10-272-30/+55
* Move <security:hidesplits> to the spanningtree module.Gravatar Peter Powell2018-10-013-1/+7
* Fix the chanhistory module being inconsistent across servers.•••Closes #331. Gravatar Peter Powell2018-10-011-1/+16
* Amend OnPostCommand to specify whether the command is loopcalled.•••This restores previous behaviour which was lost when the original line parameter was removed. Gravatar Peter Powell2018-09-112-2/+2
* Implement IRCv3 message tag support.•••Co-authored-by: Attila Molnar <attilamolnar@hush.com> Gravatar Peter Powell2018-08-133-5/+6
* Convert AWAY to use cross-module events and clean up slightly.•••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. Gravatar Peter Powell2018-08-124-19/+29
* Split irc::tokenparser::GetToken into GetMiddle and GetTrailing.•••This simplifies the logic of irc::tokenparser considerably and removes all of the magic index guessing that was used previously. Gravatar Peter Powell2018-08-102-9/+9
* Parse CAPAB CAPABILITIES and FJOIN messages with spacesepstream.•••Special tokenisation rules are not necessary here. Gravatar Peter Powell2018-08-102-2/+2
* Remove the original line parameter of On{Pre,Post}Command.•••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. Gravatar Peter Powell2018-08-103-4/+4
* Remove the 'debug' snotice character.Gravatar Peter Powell2018-08-072-3/+3
* Make the FJOIN timestamp message easier for users to understand.Gravatar Peter Powell2018-08-051-1/+2
* Rename User::fullname to realname and make it private.Gravatar Peter Powell2018-07-301-3/+3
* Replace most usages of "name" with "real" or "real name".Gravatar Peter Powell2018-07-303-3/+3
* Replace most usages of "GECOS" with "real" or "real name".Gravatar Peter Powell2018-07-304-6/+9
* Replace irc::stringjoiner with a generic stdalgo::string::join.•••This can also be used with different types of collection containing values which are not a string. Gravatar Peter Powell2018-07-261-1/+1
* Use CommandBase::Params instead of std::vector<std::string>.•••This is presently a typedef but will soon be replaced with a class that encapsulates both tags and parameters. Gravatar Peter Powell2018-07-2643-138/+138
* Make more config stuff case insensitive.Gravatar Peter Powell2018-07-241-1/+1
* Fix building on Windows.Gravatar Peter Powell2018-07-241-0/+2
* Initial support for listening on UNIX socket endpoints.Gravatar Peter Powell2018-07-181-1/+7
* Add the family() member to the sockaddrs union.Gravatar Peter Powell2018-07-181-1/+1
* Use !empty() instead of 'size() > 0' when checking parameter count.Gravatar B00mX0r2018-07-031-1/+1
* Convert some usages of ato[il] to use ConvToNum.Gravatar Peter Powell2018-04-171-1/+1
* Add ConfigTag::getUInt for reading unsigned config values.Gravatar Peter Powell2018-04-162-2/+2
* Remove the default value in ConfigTag::get{Duration,Float,Int}.Gravatar Peter Powell2018-04-161-7/+4
* Change ServerInfo::gecos to descriptionGravatar genius30002018-04-112-2/+2
* Move OnStats from the core to a cross-module event.•••Some core code still exists in the XLine system but this will be replaced when the XLine system is replaced later. Gravatar Peter Powell2018-04-082-2/+6
* Rework message handling.•••- 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. Gravatar Peter Powell2018-01-062-12/+12
* Show server versions in /MAP for opers•••This resolves #1203 Gravatar B00mX0r2017-12-195-1/+24
* Move OnSync{Channel,Network,User} to ServerEventListener.Gravatar Peter Powell2017-12-031-5/+4
* Rename the spanningtree module header to server.•••In the future we will have server linking modules that are not the spanningtree module. Gravatar Peter Powell2017-12-033-7/+7
* Add the override keyword in places that it is missing.•••GCCs warnings for this are much better than Clangs. Gravatar Peter Powell2017-11-213-33/+33