Hello World!
We got no bug and/or regression reports for ngIRCd 0.9.0-pre1, so here it is: ngIRCd 0.9.0!
There have been no changes to the source code of the daemon since the pre-release and only minor changes (read "enhancements") to the build system have been applied. Therefore 0.9.0 should perform just as well as 0.9.0-pre1 -- Have fun!
ngIRCd 0.9.0 can be downloaded from the following places:
ftp://ftp.berlios.de/pub/ngircd/ngircd-0.9.0.tar.gz ftp://ngircd.barton.de/pub/ngircd/ngircd-0.9.0.tar.gz
And soon it should be available via HTTP from this site:
http://download.berlios.de/ngircd/ngircd-0.9.0.tar.gz
The GnuPG signature and a patch from 0.8.3 is available and can be downloaded from here:
ftp://ngircd.barton.de/pub/ngircd/
The 0.9.x branch has been tagged as "branch-0-9-x" in CVS, and this release is tagged as "rel-0-9-0".
Changes since ngIRCd 0.8.3 are:
- Fixed maximum length of user names, now allow up to 9 characters. - Cut off oversized IRC messages that should be sent to the network instead of shuttding down the (wrong) connection. - Don't generate error messages for unknown commands received before the client is registered with the server (like the original ircd). - Never run with root privileges but always switch the user ID. - Make "netsplit" messages RFC compliant. - Fix handling of QUIT Messages: send only one message, even if the client is member of multiple channels. - Don't exit server if closing of a socket fails; instead ignore it and pray that this will be "the right thing" ... - Implemented the IRC function "WHOWAS". - Don't enable assert() calls when not ./configure'd with --enable-debug. - Fixed ./configure test for TCP Wrappers: now it runs on Apple Mac OS X as well. - Enhanced configure script: now you can pass an (optional) search path to all --with-XXX parameters, e. g. "--with-ident=/opt/ident". - Removed typedefs for the native C datatypes. Use stdbool.h / inttypes.h if available. - New configuration option "OperServerMode" to enable a workaround needed when running an network with ircd2 servers and "OperCanUseMode" enabled to prevent the ircd2 daemon to drop mode changes of IRC operators. Patch by Florian Westphal, westphal@foo.fh-furtwangen.de. - Implemented support for "secret channels" (channel mode "s"). - New configuration option "Mask" for [Operator] sections to limit OPER commands to users with a specific IRC mask. Patch from Florian Westphal. - Write "error file" (/tmp/ngircd-XXX.err) only if compiled with debug code ("--enable-debug") and running as daemon process. - Don't create version information string each time a client connects but instead on server startup. By Florian Westphal. - New configuration variable "PidFile", section "[Global]": if defined, the server writes its process ID (PID) to this file. Default: off. Idea of Florian Westphal, westphal@foo.fh-furtwangen.de>. - Code cleanups from Florian, westphal@foo.fh-furtwangen.de. - Raised the maximum length of passwords to 20 characters. - Fixed a memory leak when resizing the connection pool and realloc() failed. Now we don't fall back to malloc(), which should be sane anyway. Patch from Florian Westphal, westphal@foo.fh-furtwangen.de. - Added support for the Howl (http://www.porchdogsoft.com/products/ howl/) Rendezvous API, in addition to the API of Apple (Mac OS X). The available API will be autodetected when you call "./configure --with-rendezvous". - Made ngIRCd compile on HP/UX 10.20 with native HP pre-ANSI C compiler and most probably other older C compilers on other systems. - When the daemon should switch to another user ID (ServerID is defined in the configuration file) and is not running in a chroot environment, it changes its working directory to the home directory of this user. This should enable the system to write proper core files when not running with root privileges ...
Regards Alex