summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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-19Add the <maxlist> tag and switch ListModeBase to always use it.Peter Powell
The old method of doing this was: 1. Extremely inconsistently used. Some list modes used <banlist> and some used their own config tag. 2. Not documented in the slightest. There was a small reference to <maxbans> for the ban mode but nothing else. 3. In some cases conflicting with other config tags. The chanfilter module defined a <chanfilter> tag for general config whilst also using it for the max list settings. The new <maxlist> tag avoids these issues entirely.
2018-12-19Make more modules rehash atomically (#1535)linuxdaemon
Have each module validate the values it loads before setting them, so any errors don't result in partial application of the configs
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-17Alphabetically sort the modes in MAXLIST tokens.Peter Powell
This isn't strictly necessary but we do it for other modes in 005 so lets do it for MAXLIST too.
2018-12-16Fix ParamModeBase::OnUnset() not being virtual.Peter Powell
Closes #1536.
2018-12-15Fix a typo in core_user.Peter Powell
2018-12-13Update the cloaks of connected users when their IP address changes.Peter Powell
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 not rejecting invalid durations in DCCALLOW.Peter Powell
2018-12-12Reject setting modes which are null or not registered.Peter Powell
2018-12-12Fix a crash when the core_oper module is not loaded.Peter Powell
2018-12-10Fix overly escaping MOTDs if they are in more than one connect class.Peter Powell
2018-12-09Move some config parser-internal types out of the public header.Peter Powell
2018-12-09Use consistent numerics when a mode already exists or doesn't exist.Peter Powell
2018-12-09Use ERR_BANLISTFULL in the chanfilter and exemptchanops modules.Peter Powell
2018-12-09Fix a numeric collision with UnrealIRCd's help numerics.Peter Powell
We were not using these correctly and the ircd-ratbox numerics are more widely supported so using those is better.
2018-12-09Allow users on an accept list to bypass the +R user mode.Peter Powell
As implemented in ircd-seven and possibly other servers.
2018-12-09Allow modules to check if a user is on a callerid accept list.Peter Powell
2018-12-09Raise the default max number of ACCEPT entries from 16 to 30.Peter Powell
2018-12-04Add an option for changing the allowed server clock drift.Peter Powell
2018-12-01Fix detecting secure clients connecting through HAProxy/WEBIRC.Peter Powell
2018-11-24Use the default if an invalid duration is found in getDuration.Peter Powell
2018-11-24Move IsValidDuration into the core.Peter Powell
2018-11-24Fix some incorrect conditions in the showfile module.Peter Powell
Thanks to @genius3000 for pointing this out.
2018-11-24Improve the description of the maphide module.Peter Powell
2018-11-24Improve the output of the showfile module.Peter Powell
- Omit the starting numeric if a zero numeric is specified. - Omit the ending numeric if a zero numeric is specified or if the end message is empty.
2018-11-21Kill users that fail a WEBIRC auth instead of penalising them.Peter Powell
This behaviour is specified in the IRCv3 WebIRC specification.
2018-11-21Only try to parse the WebIRC IP if the user matches a host.Peter Powell
2018-11-21m_filter: Add a warn action for notifying opers while still allowing the ↵Robby
message through. Thanks to @H7-25 (Simos) for the idea.
2018-11-21m_blockcolor: Check for colors the same way InspIRCd::StripColor() does.Robby
2018-11-20Add missing special character for reversing color.Robby
2018-11-19Add support for multiple cloak configurations.Peter Powell
The first will be used for cloaking and the rest will be used for checking bans.
2018-11-18Fix single backslashes in the MOTD erroneously being removed.Peter Powell
2018-11-16Fix sending DNSBL error snotices when a user isn't DNSBLed.Peter Powell
2018-11-16Fix an inverted condition in the cgiirc module.Peter Powell
2018-11-15Fix the OnSendWhoLine event being completely broken with WHOX.Peter Powell
2018-11-12m_filter: add Z-Line supportMichael Hazell
2018-11-11Fix the syntax description for the WHO command.Peter Powell
Thanks to @KoraggKnightWolf for reporting this.
2018-11-07Merge tag 'v2.0.27' into master.Peter Powell
2018-11-05Release v2.0.27Peter Powell
2018-11-04Implement support for WEBIRC attributes.Peter Powell
2018-11-04Fix exposing the ban reason when an xline is found in the bancache.Peter Powell
2018-11-03WebSocket: send messages as text by default.Peter Powell
This requires all messages to be UTF-8. If you are using a UTF-8 incompatible text encoding then you can disable this by setting <websocket:sendastext> to false.
2018-10-31WebSocket: use one WebSocket message per IRC message.Peter Powell
This makes more sense for WebSocket clients than CR+LF termination as the protocol already understands the concept of messages.
2018-10-28Also synchronise the prefix rank between servers.Peter Powell
2018-10-27Remove deprecated config checker and make <die> actually useful.Peter Powell
- Remove the deprecated config tag checker. This checker is neither exhaustive nor is it particularly accurate. Instead the new docs site will contain a page detailing the breaking changes between releases. - Remove the insulting <die> tags in inspircd.conf.example and add some descriptive ones in files that it is critical for the user to edit correctly. - Show the message from the <die> tag so the user actually knows what they did wrong.
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.