X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=ChangeLog;h=9256ff41d7302c876a47aec0546d84750dea549f;hb=5f494ec5fe7f22ef198f98c2e752237e91363e4f;hp=75adf7011dbc750190aa1d873d94a5a079678ac1;hpb=b003d469f18c843725de4f6f46b7ca0714e0a984;p=ngircd-alex.git diff --git a/ChangeLog b/ChangeLog index 75adf701..9256ff41 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,15 +2,131 @@ ngIRCd - Next Generation IRC Server http://ngircd.barton.de/ - (c)2001-2020 Alexander Barton and Contributors. + (c)2001-2024 Alexander Barton and Contributors. ngIRCd is free software and published under the terms of the GNU General Public License. -- ChangeLog -- -ngIRCd 26 - - ngIRCd 26~rc2 +ngIRCd 27 + + - autogen.sh: Prefere automake 1.11 over other releases because this is the + last release supporting "de-ANSI-fication" using the included ansi2knr tool. + And becuase we _want_ to support old K&R platforms, we try hard to use this + release of automake when available to generate our build system. + Note: This is only relevant for you if you are building from Git sources. + - Autodetect support for IPv6 by default: Until now, IPv6 support was disabled + by default, which seems a bit outdated in 2024. Note: You still can pass + "--enable-ipv6"/"--disable-ipv6" to the ./configure script to forcefully + activate or deactivate IPv6 support. + - Update config.guess and config.sub to recent versions + - Remove the unmaintained contrib/MacOSX/ folder: this includes the Xcode + project as well as the outdated macOS "Package Maker" configuration. The + sample launchd(8) configuration properties list file was moved to + "contrib/de.barton.ngircd.plist" and kept. + - Fix Channel Admins being able to to set Channel Owner status! "Sarah" + reported this back in April 2021 and proposed a patch, thanks a lot! + - Test suite: Update for OpenSSL 3.x, some command outputs changed. + - Fix showing the "Ident" option in "--configtest" output which was never + shown because of a coding error. Whoops! + - Change GnuTLS "slot handling" messages to debug level: Those messages are + about an internal implementation detail, not relevant for an administrator + of ngIRCd. + - Enlarge buffer for log messages: For example, SSL/TLS certificate + information can easily get longer than 256 characters. So enlarge the log + buffer to 1 KB. + - Respect "SSLConnect" option for incoming connections and do not accept + incoming plain-text ("non SSL") server connections for servers configured + with "SSLConnect" enabled. This change prevents an authenticated + client-server being able to force the server-server to send its password + on a plain-text connection when SSL/TLS was intended. + - Add "hopm.service" to "Wants" and "Before" dependencies in the sample + systemd unit file (Hopm is the successor of Bopm). + - Return ERR_NOTEXTTOSEND on empty PRIVMSG content, which matches the + behaviour of other servers. + - Add a new option "Autojoin" to [Channel] blocks: When it is set, ngIRCd + automatically joins all local users to this channel on connect. Note: The + users must have permissions to access the channel, otherwise joining them + will fail! + Thanks Ivan Agarkov for the initial patch! + - Hide +i users on "WHOIS ": Let's behave like most(?) other IRC + daemons (at least ircd2.11) and hide all +i users when WHOIS is used with a + pattern. Otherwise privacy of this users is not guaranteed and the +i mode + a bit useless ... + Reported by Cahata on #ngircd, thanks! + - Update the final "closing connection" message: Add some more information + like nick name, user name, host name and bring it in line with some other + implementations (at least ircd2.11 and Hybrid). + - Fix RPL_INVITING message: All numeric replies must originate from an IRC + server, never from a client. Thanks "tommyrot" for reporting this! + Closes #307. + - Enhance some log messages, for example for errors when accepting new + connections. + - Add "+DEBUG" to the version "feature string" only when the daemon is + ./configure'd and build with "--enable-debug". + - Always report an error when a parameter is missing in a channel "MODE +k" + or "MODE +l" command, and better validate their parameters: return the new + numeric ERR_INVALIDMODEPARAM_MSG(696) on errors. + Thanks Val Lorentz for reporting it! + Closes #290. + - Allow IRC Operators to use the WHO command on any channel. + - No longer use Travis-CI, add configuration for "ngIRCd CI" GitHub Action. + - Send the NAMES list and channel topic to users "forcefully" joined to a + channel using NJOIN, like they joined on their own using JOIN, and + streamline the order of NAMES list and channel topic messages. + Closes #288. + - Fix (invalid) error messages when setting modes on local channels which + are defined in the configuration file. + - Fix handling of G-Lines/K-Lines with cloaked host names. + - Add new "-y"/"--syslog" command line option to allow logging to syslog to + be enabled/disabled separately from running on the console ("--nodaemon") + or in the background. + Thanks Katherine Peeters for the patch and pull request! + Closes #294. + - Fix a possible race condition while introducing new clients in the network. + - Update and enhance our documentation a bit (README.md, INSTALL.md), add + doc/QuickStart.md, convert some more files to Markdown (SSL.md, FAQ.md). + +ngIRCd 26.1 (2021-01-02) + + - Fix a "format string" compiler warning (detected on OpenBSD). + - No longer set "AI_ADDRCONFIG" when resolving host names, even when it + exists: with this option set, on an IPv6-only host, we prevent 127.0.0.1 + to get translated properly, even when the loopback interface has this + address configured! And as the test suite uses 127.0.0.1, it was broken + on IPv6-only hosts. + The drawback is that the resolver possibly returns more addresses now, + even of an unsupported/not connected address family; but this shouldn't + do much harm in practice, as ngIRCd iterates over all returned addresses + while trying to establish an outgoing connection. + Closes #281. + - Revert "Show allowed channel types in ISUPPORT(005) numeric only", which + was introduced in 26~rc1: This lead to some IRC clients assuming "oh, no + channel prefix characters at all, so no channels at all, so no PRIVMSG can + go to any channel" when "AllowedChannelTypes" was set to the empty string + ("") -- which is not the case when there are pre-defined channel set up or + other servers still having channels! + So "allowed channel types" != "supported channel types", and we always have + to list all supported ones in the ISUPPORT(005) numeric! + Closes #285. + - Test suite: Wait 2 seconds after reloading the daemon, which is required + because on reload, all listening ports are closed, configuration updated, + and then opened again. This lead to subsequent tests running while the + daemon isn't listening on any ports, and that's why some tests could fail. + Closes #280. + - platformtest.sh: Try to mangle CLang name more intelligently. + - Documentation: Fixed URLs of Atheme IRC services, updated all mentions + from CVS to Git, and updated Platforms.txt -- Oh, and it is 2021 now! ;-) + +ngIRCd 26 (2020-06-20) + + ngIRCd 26~rc2 (2020-06-11) + - Add AppStream metadata file (contrib/de.barton.ngircd.metainfo.xml). + - Don't send invalid CHANINFO commands when a channel has mode +k set but no + key is known to the server. This can happen with a misconfigured predefined + channel, for example, and looked like this: "CHANINFO #test +Pk 0 :" -- + note the unset key represented by the two spaces. Fix this by sending a + "*" in this case and update the CHANINFO documentation, too. - ngircd.spec: Fix names of README.md and INSTALL.md, add ".md" extension. - Update description texts in the README.md file, the RPM and Debian package files and the manual page: bring them in line with the updated homepage. @@ -263,7 +379,7 @@ ngIRCd 24 (2017-01-20) - contrib/ngindent: Fix shebang line. - Make contrib/platformtest.sh script more portable, and only show "runs=Y" when the test suite really has been passed successfully. - - Code cleanup in the NJON handler and the function killing clients as + - Code cleanup in the NJOIN handler and the function killing clients as well as the function sending messages to a "mask" (cleaner code, more fault tolerant, better code comments). - Update and enhance documentation: README file, doc/Platforms.txt,