Also, an important note to anyone using 3rd party modules: They are a great way to extend UnrealIRCd's functionality. However, a (small) mistake in a module can easily cause UnrealIRCd to crash. Currently more than 95% of the crashes reported to us are due to faulty 3rd party modules and not due to any bug in UnrealIRCd itself. Third party modules are modules coded by authors other than the UnrealIRCd team. We do not investigate such bug reports. These bugs are caused by and should be resolved by the module author(s). Keep this in mind if your server crashes: try unloading all (recently) installed 3rd party modules and see if the crash issue disappears. Also, be sure to check for updates of 3rd party modules, your crash issue may very well be fixed already.
Improvements:
- New user mode +Z: Only allow SSL/TLS users to private message you.
- Ability to hide all channels in /LIST that you cannot join due to deny channel blocks: set { hide-list { deny-channel }; };
- The optional 'nocodes' module makes +S/+c also block/strip bold, underline and italic text. (The latter is new)
- Add support for 'mask' in allow channel { } and deny channel { } and add some support for negative 'mask'. Probably not very useful on most networks with services, since bans/AKICK do the same, but you can now do like this:
deny channel { channel "#help*"; };
allow channel { channel "#help-nolan"; mask !192.168.*; };
allow channel { channel "#help-lan"; mask 192.168.*; };
- Crash issue if a module using ModData was unloading (not reloading)
- Vhosts were not always correctly synched across servers.
- The maximum number of clients that a server could accept was decreased by one on every linking attempt if it was both: 1) an outgoing SSL/TLS linking attempt; AND 2) the error was "Connection refused".
- Adjustments to channel mode +f were not always effective.
- If you have a vhost set and wish to remove it and change to a cloaked host you can now safely use '/MODE yournick -t'. This feature was rarely used so far and it previously had a bug which caused it to still expose the real host/IP to others. This has been resolved.
- Channel mode +D (delayjoin): when people are de-oped we now part 'hidden' users to avoid a client desynch.
- Bump lag for remote MOTD requests to avoid flooding.
- More than 95% of the crashes reported to us are due to 3rd party modules (and thus not bugs in our code). We now ask users to unload any recently installed 3rd party modules first, see if the crash issue persists, and only then submit a crash report to us.
- UnrealIRCd will now refuse to run as root. https://www.unrealircd.org/docs/Do_not_run_as_root
- Added two functions to search for user modes:
Code: Select all
has_user_mode(acptr, 'i') // returns 1 / 0 find_user_mode('i') // returns the user mode (as 'long')