UnrealIRCd 4.2.2-dev Release Notes ================================= This is work in progress... Enhancements: * With "TOPIC #chan" and "MODE #chan +b" (and +e/+I) you can see who set the topic and bans/exempt/invex. The default is to only show the nick of the person who set the item. This can be changed (not the default) by setting: set { topic-setter nick-user-host; }; set { ban-setter nick-user-host; }; * The 'set by' and 'set at' information for +beI lists are now synchronized when servers link. In the past these bans, exempts and invite exceptions would show up as being set by serv.er.name rather than the actual nick. If you want the OLD behavior you can use set { ban-setter-sync no; }; * The default maximum topic length has been increased from 307 to 360. * You can now set more custom limits. The default settings are shown below: set { topic-length 360; /* maximum: 360 */ away-length 307; /* maximum: 360 */ quit-length 307; /* maximum: 395 */ kick-length 307; /* maximum: 360 */ }; * The message sent to users upon *LINE can now be adjusted completely via set::reject-message::kline and set::reject-message::gline. See https://www.unrealircd.org/docs/Set_block#set::reject-message * New set::anti-flood::max-concurrent-conversations which configures the maximum number of conversations a user can have with other users at the same time. Until now this was hardcoded at limiting /MSG and /INVITE to 20 different users in a 15 second period. The new default is 10 users, which serves as a protection measure against spambots. See https://www.unrealircd.org/docs/Set_block#maxcc for more details. * New set::max-targets-per-command which configures the maximum number of targets accepted for a command, eg /MSG nick1,nick2,nick3,nick4 hi. Also changed the following defaults (previously hardcoded): * PRIVMSG from 20 to 4 targets, to counter /amsg spam * NOTICE from 20 to 1 target, to counter /anotice spam * KICK from 1 to 4 targets, to make it easier for channel operators to quickly kick a large amount of spambots See https://www.unrealircd.org/docs/Set_block#set::max-targets-per-command * Added INVITE and KNOCK flood protection (command rate limiting): * set::anti-flood::invite-flood now defaults to 4 per 60 seconds (previously the effective limit was 1 invite per 6 seconds). * set::anti-flood::knock-flood now defaults to 4 per 120 seconds. * New set::outdated-tls-policy which describes what to do with clients that use outdated SSL/TLS protocols (eg: TLSv1.0) and ciphers. The default settings are to warn in all cases: users connecting, opers /OPER'ing up and servers linking in. The user will see a message telling them to upgrade their IRC client. This should help with migrating such users, since in the future, say one or two years from now, we would want to change the default to only allow TSLv1.2+ with ciphers that provide Forward Secrecy. Instead of rejecting clients without any error message, this provides a way to warn them and give them some time to upgrade their outdated IRC client. https://www.unrealircd.org/docs/Set_block#set::outdated-tls-policy Major issues fixed: * None? Minor issues fixed: * The advertised "link-security" was incorrectly downgraded from level 2 to 1 if spkifp was used as an authentication method. * In case of a crash, the "./unrealircd backtrace" script was not working correctly in non-English environments, leading to less accurate bug reports. Changed: * The noctcp user mode (+T) will now only block CTCP's and not CTCP REPLIES. Also, IRCOps can bypass user mode +T restrictions. * UnrealIRCd will warn if your ulines { } are matching UnrealIRCd servers. Deprecated: * None? Removed: * The option to show the topic setter as nick!user@host was previously a config option --with-topicisnuhost and a macro TOPIC_NICK_IS_NUHOST. These are removed, use set::topic-setter "nick-user-host" instead. Module coders / IRC protocol: * New hook HOOKTYPE_WELCOME (aClient *acptr, int after_numeric): allows you to send a message at very specific places during the initial welcome https://www.unrealircd.org/docs/Dev:Hook_API#HOOKTYPE_WELCOME * New Isupport functions: IsupportSet, IsupportSetFmt and IsupportDelByName. * New "SJSBY" in PROTOCTL, which is used in SJOIN to synch. extra data: https://www.unrealircd.org/docs/Server_protocol:SJOIN_command (at the end) * A new 005 token has been added: QUITLEN. Works similar to KICKLEN. Future versions: * We intend to change the default plaintext oper policy from 'warn' to 'deny' in the year 2019. This will deny /OPER when used from a non-SSL connection. For security, IRC Operators should really use SSL/TLS! ==[ CHANGES IN OLDER RELEASES ]== For changes in previous UnrealIRCd releases see doc/RELEASE-NOTES.old or https://raw.githubusercontent.com/unrealircd/unrealircd/unreal42/doc/RELEASE-NOTES.old