]> arthur.barton.de Git - ngircd-alex.git/blobdiff - ChangeLog
ngIRCd Release 21.1
[ngircd-alex.git] / ChangeLog
index 9fe53c7a1c0d1a4fcefb695e0c8f25fe45be1211..a732af96edb278564a3d6da219b72a46d99c6af5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
                      ngIRCd - Next Generation IRC Server
                            http://ngircd.barton.de/
 
-               (c)2001-2013 Alexander Barton and Contributors.
+               (c)2001-2014 Alexander Barton and Contributors.
                ngIRCd is free software and published under the
                    terms of the GNU General Public License.
 
                                -- ChangeLog --
 
 
-ngIRCd 21
-
+ngIRCd 21.1 (2014-03-25)
+
+  - Don't ignore but use the server password when PAM is compiled in but
+    disabled. Thanks to Roy Sindre Norangshol <roy.sindre@norangshol.no>!
+  - doc/Platforms.txt: Update from master branch.
+  - Really kill connections that send "spoofed prefixes" on non-server links.
+    This fixes commit 6cbe1308 which only killed the connection when the
+    spoofed prefix itself belonged to a non-server client.
+  - CHARCONV command: Fix handling conversion errors, don't overwrite already
+    converted text!
+  - doc/Services.txt: Update information for Anope 2.x.
+  - Correctly use cloaked IRC masks on "INVITE nickname": The cloaked IRC mask
+    of a user is his visible mask, so the daemon has to use it for generating
+    the "one time" entries for the invite list of the given channel, and not
+    the "real" mask which will never match while the target client is "+x", and
+    even worse, will disclose the real mask on "MODE #channel +I" commands :-/
+    Bug reported by Cahata on #ngircd, thanks!
+  - configure: Only link "contrib/Debian" if it exists. This isn't the case on
+    "VPATH builds", for example.
+  - Use $(MKDIR_P) instead of $(mkinstalldirs) in Makefile's and test for
+    "mkdir -p" using AC_PROG_MKDIR_P in "configure".
+  - Fix configure script and "make check" for TCP Wrappers (problems spotted on
+    OpenBSD): add missing #include's and static variables, and add libwrap at
+    the end of the configure run because if libwrap becomes added earlier,
+    other tests may fail.
+  - configure: add support for the LDFLAGS_END and LIBS_END variables to add
+    linker flags and libraries at the end of the configure run (CFLAGS_END has
+    been implemented already).
+  - platformtest.sh and Makefile.am: Don't use "test -e", it isn't portable.
+  - Update Copyright notices for 2014 :-)
+  - Fix permanent {G|K}LINES (with a timeout of 0 seconds).
+  - WEBIRC: Don't set the hostname received by the WEBIRC command when DNS
+    lookups are disabled, but use the IP address instead.
+    Reported by Toni Spets <toni.spets@iki.fi>, thanks!
+  - Check for working getaddrinfo() function: At least AIX 4.3.3 and 5.1 have a
+    broken implementation of getaddrinfo() which doesn't handle "0" as numeric
+    service correctly. This patch adds a configure check for this case and
+    changes all calling functions to only use getaddrinfo() if it "works".
+    See <http://www.stacken.kth.se/lists/heimdal-discuss/2004-05/msg00059.html>
+  - Only use the unsetenv() function when it is available (AIX 4.3 doesn't
+    support it, for example).
+  - Make sure that the source code is still compatible with the "ansi2knr" tool
+    and builds using non-ANSI K&R C compilers. Tested with Apple C on A/UX.
+  - Fix building ngIRCd without support for ZLIB compression.  Reported by
+    "der_baer" on #ngircd, thanks!
+
+ngIRCd 21 (2013-10-30)
+
+  - ./contrib/Debian/ngircd.init: Make sure no stale PID file is left over
+    when (re-)starting ngIRCd.
+  - Change ./contrib/platformtest.sh and update ./doc/Platforms.txt to
+    allow user names up to 8 characters.
+  - Call arc4random_stir() in forked subprocesses, when available. This
+    is required by FreeBSD <10 and current NetBSD at least to correctly
+    initialize the "arc4" random number generator on these platforms.
+  - Update our own Debian package configuration and fix the default path
+    of the "HelpFile" of the "full" package variants.
+
+  ngIRCd 21~rc2 (2013-10-20)
+  - Report the correct configuration file name on configuration errors,
+    support longer configuration lines, and warn when lines are truncated.
+  - Use arc4random() function to generate "random" numbers, when available.
+  - platformtest.sh: Detect clang compiler, and clean up GIT source tree
+    before building (when possible).
+  - Update (date of) manual pages.
+  - Update "Upgrade Information" in INSTALL file, add more systems to
+    doc/Platforms.txt, and fix spelling in NEWS and ChangeLog files =:)
+  - Fix remaining compiler warnings on OpenBSD.
+
+  ngIRCd 21~rc1 (2013-10-05)
+  - Actually KILL clients on GLINE/KLINE. (Closes bug #156)
+  - Adjust log messages for invalid and spoofed prefixes, which cleans up
+    logging of commands related to already KILL'ed clients. And don't
+    forward KILL commands for (already) unknown clients any more to prevent
+    unnecessary duplicates.
+  - Add support to show all user links using the "STATS L" (uppercase)
+    command (restricted to IRC Operators).
+  - Fixed blocking of server reconnects in some error configurations.
+  - Don't ignore SSL-related errors during startup any more: abort startup
+    when SSL is requested by the configuration but can't be initialized and
+    don't continue only listening on plain text communication ports.
+    (Closes bug #163)
+  - Implement configurable SSL cipher list selection for GnuTLS and OpenSSL
+    using the new configuration option "CipherList". In addition, this
+    changes the defaults to more secure values: "HIGH:!aNULL:@STRENGTH" for
+    OpenSSL, and "SECURE128" for GnuTLS.
+  - Fix "TRACE": Correctly return ERR_NEEDMOREPARAMS(461) (which basically
+    is "syntax error") when there are too many parameters.
+  - Clean up lots of permission and parameter checks in functions handling
+    IRC commands; and more consistently add penalty times on errors.
+  - Fix error numeric of WHOIS when no nick name has been provided:
+    as per RFC it should be ERR_NONICKNAMEGIVEN(431).
+  - Only log "IDENT ... no result" messages when an IDENT looked took place
+    and didn't return any data, not when IDENT has been disabled.
+  - Show connection flag "s" (SSL) in RPL_TRACE{LINK|SERVER} messages: now
+    you can check if a server-to-server link is SSL-encrypted or not using
+    the IRC "TRACE" command.
+  - Correctly discard supplementary groups on server startup.
+  - Save client IP address text for "WebIRC" users and correctly display
+    it on WHOIS, for example. (Closes bug #159)
+  - Implement the new configuration option "DefaultUserModes" which lists
+    user modes that become automatically set on new local clients right
+    after login. Please note that only modes can be set that the client
+    could set on itself, so you can't set "a" (away) or "o" (IRC Op),
+    for example! User modes "i" (invisible) or "x" (cloaked) etc. are
+    "interesting", though. (Closes bug #160)
+  - Add support for the new METADATA "account" property, which allows
+    services to automatically identify users after netsplits and across
+    service restarts.
   - Enforce "penalty times" on error conditions more consistently and in
     more places. Now most error codes sent back from the IRC server to the
     client should result in a 2 second "penalty".
@@ -20,7 +127,7 @@ ngIRCd 21
     If set to the empty string, local clients can't create new channels at
     all, which equals the old "PredefChannelsOnly = yes" setting.
     This change deprecates the "PredefChannelsOnly" variable, too, but it is
-    still supported and translated to the apropriate "AllowedChannelTypes"
+    still supported and translated to the appropriate "AllowedChannelTypes"
     setting. When the old "PredefChannelsOnly" variable is processed, a
     warning message is logged. (Closes bug #152)
   - Add support for "client certificate fingerprinting". When a client
@@ -43,11 +150,12 @@ ngIRCd 21
     into this directory. (Closes bug #157)
   - Fix use-after-free in the Lists_CheckReason() function, which is used
     to check if a client is a member of a particular ban/invite/... list.
-  - Xcode: fix detection of host OS, vendor, and CPU type.
+  - Xcode: fix detection of host OS, vendor, and CPU type, and update
+    project settings for Xcode 5.
   - OS X PackageMaker: use relative path names in project files and package
     with correct file permissions (requires root privileges on "make").
   - Add Travis-CI configuration file (".travis.yml") to project.
-  - Look for possible cloaked Masks in Lists. Users with +x usermode can
+  - Look for possible cloaked Masks in Lists. Users with +x user mode can
     be banned with their cloaked hostname now.
   - Don't read SSL client data before DNS resolver is finished which could
     have resulted in discarding the resolved client hostname and IDENT
@@ -85,7 +193,7 @@ ngIRCd 21
     InspIRCd, for example -- but as usual, other numerics are in use, too,
     like 613 in UltimateIRCd ...
     Please note that neither the Operator (+o) not the "bot status" (+B)
-    of an IRC service id displayed in the output.
+    of an IRC service is displayed in the output.
   - Exit message: use singular & plural :-)
   - autogen.sh: Check for autoconf/automake wrapper scripts
   - Add missing punctuation marks in log messages, adjust some severity
@@ -102,6 +210,13 @@ ngIRCd 21
     and then is used to output individual help texts to specific topics.
     Please see the file ./doc/Commands.txt for details.
 
+ngIRCd 20.3 (2013-08-23)
+
+  - Security: Fix a denial of service bug (server crash) which could happen
+    when the configuration option "NoticeAuth" is enabled (which is NOT the
+    default) and ngIRCd failed to send the "notice auth" messages to new
+    clients connecting to the server (CVE-2013-5580).
+
 ngIRCd 20.2 (2013-02-15)
 
   - Security: Fix a denial of service bug in the function handling KICK