Hi,
another quite unusual hack but maybe usefull for some of you:
Adding these two lines to conn.c after line 1313:
if(Channel_FirstChannelOf(c) == NULL && Conn_GetIdle(Client_Conn(c)) > 60)
Conn_Close( i, NULL, "Not on a channel timeout", true );
will auto-close connections to people who hang around on your server but
don't chat on any of the channels. (I just can't stand them) It gives them
60 seconds to join a channel or switch between them.
Yours, Jens.
--
Many an ancient lord's last words had been, 'You can't kill me because I've
got magic aaargh.'
(Terry Pratchett - Interesting Times)
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(a)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(a)foo.fh-furtwangen.de>.
- Code cleanups from Florian, <westphal(a)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(a)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
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Hi all!
A new pre-release version of ngIRCd, version 0.9.0-pre1, is available
for testing and can be downloaded from:
<ftp://Arthur.Ath.CX/pub/Users/alex/ngircd/ngircd-0.9.0-pre1.tar.gz>
The GnuPG signature and a patch from 0.7.7 is available and can be
downloaded from here:
<ftp://Arthur.Ath.CX/pub/Users/alex/ngircd/>
Please test & report any bug you find to this list. Thanks! :-))
The 0.9.x branch has been tagged as "branch-0-9-x" in CVS, this pre-
release is tagged as "rel-0-9-0-pre1".
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 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(a)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(a)foo.fh-furtwangen.de>.
- Code cleanups from Florian Westphal, <westphal(a)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(a)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
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de