UnrealIRCd 6.1.6 released
Status: Beta
Brought to you by:
wildchild
From: Bram M. <sy...@un...> - 2024-06-14 06:58:46
|
(You can unsubscribe from this list here <https://sourceforge.net/projects/unreal/lists/unreal-notify/unsubscribe>) Hi everyone, Today I'm happy to announce the release of UnrealIRCd 6.1.6 stable. This is mostly a bug fix release but also comes with some enhancements. More information in the release notes below. Enhancements: <https://github.com/unrealircd/unrealircd/blob/dd2242b6a80b50e1defcc85ed1e7aee3b96972a8/doc/RELEASE-NOTES.md#enhancements> * Crule <https://www.unrealircd.org/docs/Crule> functions can now do everything that security group blocks <https://www.unrealircd.org/docs/Security-group_block> can do. In practice, this means the following functions were added in this release: o |is_tls()| returns true if the client is using SSL/TLS o |in_security_group('known-users')| returns true if the user is in the specified security group <https://www.unrealircd.org/docs/Security-group_block>. o |match_mask('*@*.example.org')| or |match_mask('*.example.org')| returns true if client matches mask. o |match_ip('192.168.*')| or with CIDR like |match_ip('192.168.0.0/16')| returns true if IP address of client matches. o |is_identified()| which returns true if the client is identified to a services account. o |is_webirc()| which returns true if the client is connected using WEBIRC. o |is_websocket()| which returns true if the client is connected using WebSockets. o |match_realname('*xyz*')| which returns true if the real name (gecos) contains xyz. o |match_account('xyz')| which returns true if the services account name is xyz. o |match_country('NL')| which returns true if GeoIP <https://www.unrealircd.org/docs/GeoIP> determined the country to be NL. o |match_certfp('abc')| which returns true if the Certificate fingerprint <https://www.unrealircd.org/docs/Certificate_fingerprint> is abc. Changes: <https://github.com/unrealircd/unrealircd/blob/dd2242b6a80b50e1defcc85ed1e7aee3b96972a8/doc/RELEASE-NOTES.md#changes> * For many years |REHASH -all| is the same as |REHASH| so we now reject the former. * The Crule <https://www.unrealircd.org/docs/Crule> function |inchannel('#xyz')| is now called |in_channel('#xyz')| to match the naming style of the other functions. The old name will keep working for the entire UnrealIRCd 6 series too. Fixes: <https://github.com/unrealircd/unrealircd/blob/dd2242b6a80b50e1defcc85ed1e7aee3b96972a8/doc/RELEASE-NOTES.md#fixes> * Crash if you first REHASH and have a parse error (failed rehash 1) and then REHASH again but have a "late" rehash error, such as a remote include failing to load (failed rehash 2). * Crash on Windows when using Crule <https://www.unrealircd.org/docs/Crule> functions, Central Spamreport <https://www.unrealircd.org/docs/Central_spamreport> or Central Spamfilter <https://www.unrealircd.org/docs/Central_Spamfilter>. * Conditional config <https://www.unrealircd.org/docs/Defines_and_conditional_config>: using @if with a variable like |@if $VAR == "something"| always evaluated to false. * A |~forward| <https://www.unrealircd.org/docs/Extended_bans#Group_2:_actions> ban did not check ban exemptions (+e), always forwarding the user. * When booting for the first time (without any cached files) the IRCd downloads GeoIP.dat. If that fails, e.g. due to lack of internet connectivity, we now show a warning and continue booting instead of it being a hard error. Note that we already dealt with this properly after the file has been cached (so after first download), see "What if your web server is down" in Remote includes <https://www.unrealircd.org/docs/Remote_includes#What_if_your_web_server_is_down>. Removed: * The |tls-and-known-users| security group <https://www.unrealircd.org/docs/Security-group_block> was confusing, in the sense that this group consisted of tls-users and of known-users (in an OR fashion, not AND). Since this group is rarely used it has now been removed altogether. If you used it in your configuration then you can still manually (re)create the security group with: |security-group tls-and-known-users { identified yes; reputation-score 25; tls yes; }| Developers and protocol: <https://github.com/unrealircd/unrealircd/blob/dd2242b6a80b50e1defcc85ed1e7aee3b96972a8/doc/RELEASE-NOTES.md#developers-and-protocol> * Modules can now provide SASL locally, see Dev:Authentication module <https://www.unrealircd.org/docs/Dev:Authentication_module>. As always, you can download UnrealIRCd from https://www.unrealircd.org/. On *NIX you can upgrade with: ./unrealircd upgrade |