UnrealIRCd 4.2.4.1 Release Notes
=================================

This version, 4.2.4.1, fixes an issue with Debian 10. On Debian 10 the
list of permitted SSL/TLS protocols was ignored (set::ssl::protocols).
Other than that, set::ssl::outdated-protocols and set::ssl::outdated-ciphers
are now configurable (rarely needed, though).

Below are the release notes of previous release, 4.2.4.

==[ 4.2.4 release notes ]==
This release fixes a crash issue if UnrealIRCd is configured to use utf8 or
chinese character sets in set::allowed-nickchars.  This is not the default.
We don't expect many users to run their IRCd with this enabled, as the utf8
support was tagged as experimental and the chinese/gbk implementation is
incomplete.

In addition to the bug fix from above, this release also contains a number
of other fixes and enhancements.  In particular there were some Windows
fixes and the reputation and connthrottle modules are now working better.

Enhancements:
* Improve server linking error messages
* Enhance WHOX to WHO auto-conversion for "WHO +s serv.er.name"

Major issues fixed:
* A crash issue if using utf8 or chinese in set::allowed-nickchars.
* The Windows version only accepted very few clients.
* The Windows version should warn and not error if using old-style regex.
* The Windows version did not save the reputation database.

Minor issues fixed:
* The 'connthrottle' module incorrectly allowed 0 unknown users in when
  it was throttling, rather than the set rate.
* The 'reputation' module did not show scores for remote users in /WHOIS,
  only after 5 minutes had passed.
* Some users may have experienced a "Registration Timeout" error when
  connecting. This happened because their ident server accepted the TCP/IP
  connection but after that failed to respond to the ident request. We
  have now lowered set::ident::read-timeout to 15 seconds to fix this.
* If successfully logged in using SASL then avoid an "You are already
  logged in" error message that could happen due to PASS forwarding.
  The message was harmless, but annoying in some setups.

Module coders / Developers:
* If you are debugging or developing modules then we encourage you to
  use AddressSanitizer. This does come at a 10x performance slowdown
  and can consume a lot more memory, but it is very useful in tracing
  common C mistakes such as out of bounds read/writes, double frees,
  and so on. You will see exactly where a mistake was made.
  To use this, in the last ./Config question you answer: --enable-asan

IRC protocol:
* No changes

Other changes:
* Various HELPOP updates

Future versions:
* We intend to change the default plaintext oper policy from 'warn' to 'deny'
  in the summer of 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
