Module: ngircd.git
Branch: master
Commit: 175f0af979bfdb6dfde1535dd7de6a452cf98e32
URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=175f0af9…
Author: Alexander Barton <alex(a)barton.de>
Date: Mon Jan 5 12:58:37 2009 +0100
Clean up channel allocation table on shutdown/restart.
Silly bug: the condition of a while() loop in the Channel_Exit() function
used the wrong variable and therefore got never executed ...
This bug is in the code since the beginning (see commit bb19cfda in 2002);
shame on me!
---
src/ngircd/channel.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c
index ba5e725..9a59712 100644
--- a/src/ngircd/channel.c
+++ b/src/ngircd/channel.c
@@ -1,6 +1,6 @@
/*
* ngIRCd -- The Next Generation IRC Daemon
- * Copyright (c)2001-2008 by Alexander Barton (alex(a)barton.de)
+ * Copyright (c)2001-2009 Alexander Barton (alex(a)barton.de)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -174,10 +174,9 @@ Channel_Exit( void )
/* Free Channel allocation table */
cl2chan = My_Cl2Chan;
- while( c )
- {
+ while (cl2chan) {
cl2chan_next = cl2chan->next;
- free( cl2chan );
+ free(cl2chan);
cl2chan = cl2chan_next;
}
} /* Channel_Exit */
Module: ngircd.git
Branch: master
Commit: fd9266df78e32104af3fa72eb5528b5615a2030e
URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=fd9266df…
Author: Alexander Barton <alex(a)barton.de>
Date: Thu Jan 1 17:56:42 2009 +0100
Fix spelling in some documents.
---
ChangeLog | 18 +++++++++---------
NEWS | 10 +++++-----
doc/README-AUX.txt | 4 ++--
doc/README-BeOS.txt | 2 +-
doc/Zeroconf.txt | 2 +-
doc/sample-ngircd.conf | 6 +++---
man/ngircd.conf.5.tmpl | 4 ++--
7 files changed, 23 insertions(+), 23 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 8d730bf..6e1fcc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -16,8 +16,8 @@ ngIRCd Release 13 (2008-12-25)
- Make the test suite work on OpenSolaris.
ngIRCd 13~rc1 (2008-11-21):
- - New version numer scheme :-)
- - Initial support for IRC services, using a RFC1459 styel interface,
+ - New version number scheme :-)
+ - Initial support for IRC services, using a RFC1459 style interface,
tested with IRCServices (http://www.ircservices.za.net/) version 5.1.13.
For this to work, ngIRCd now supports server-server links conforming
to RFC 1459. New ngircd.conf(5) option: ServiceMask.
@@ -49,7 +49,7 @@ ngIRCd 0.12.1 (2008-07-09)
- Update ngIRCd manual pages
- Add option aliases -V (for --version) and -h (for --help).
- Fix 'no-ipv6' compile error.
- - Make Listen parameter a comma-seperated list of addresses. This also
+ - Make Listen parameter a comma-separated list of addresses. This also
obsoletes ListenIPv4 and ListenIPv6 options. If Listen is unset, it
is treated as Listen="::,0.0.0.0".
Note: ListenIPv4 and ListenIPv6 options are still recognized,
@@ -59,11 +59,11 @@ ngIRCd 0.12.0 (2008-05-13)
- Fix Bug: 85: "WHO #SecretChannel" that user is not a member of now returns
proper RPL_ENDOFWHO_MSG instead of nothing. (Ali Shemiran)
- - Fix complie on FreeBSD 5.4 and AIX.
- - If bind() fails, also print ip address and not just the port number.
+ - Fix compile on FreeBSD 5.4 and AIX.
+ - If bind() fails, also print IP address and not just the port number.
ngIRCd 0.12.0-pre2 (2008-04-29)
- - IPv6: Add config options to disabe ipv4/ipv6 support.
+ - IPv6: Add config options to disable ipv4/ipv6 support.
- Don't include doc/CVS.txt in distribution archive, use doc/GIT.txt now!
- Documentation: get rid of some more references to CVS, switch to GIT.
- Get rid of cvs-version.* and CVSDATE definition.
@@ -106,11 +106,11 @@ ngIRCd 0.11.0 (2008-01-15)
- Use dotted-decimal IP address if hostname is >= 64.
- Add support for /STAT u (server uptime) command.
- New [Server] configuration Option "Bind" allows to specify
- the source ip adress to use when connecting to remote server.
+ the source IP address to use when connecting to remote server.
- New configuration option "MaxNickLength" to specify the allowed maximum
length of user nick names. Note: must be unique in an IRC network!
- Enhanced the IRC+ protocol to support an enhanced "server handshake" and
- enable server to recognice numeric 005 (ISUPPORT) and 376 (ENDOFMOTD).
+ enable server to recognize numeric 005 (ISUPPORT) and 376 (ENDOFMOTD).
See doc/Protocol.txt for details.
- Re-added doc/SSL.txt to distribution -- got lost somewhere!?
- Fixes the wrong logging output when nested servers are introduced
@@ -439,7 +439,7 @@ ngIRCd 0.7.0 (2003-05-01)
- Better error reporting to clients on connect.
- Enhanced manual pages ngircd(8) and ngircd.conf(5).
- Documentation is now installed in $(datadir)/doc/ngircd.
- - Enhanced hanling of NJOIN in case of nick collisions.
+ - Enhanced handling of NJOIN in case of nick collisions.
ngIRCd 0.6.1, 2003-01-21
diff --git a/NEWS b/NEWS
index 92a6b35..869b1d6 100644
--- a/NEWS
+++ b/NEWS
@@ -13,8 +13,8 @@
ngIRCd Release 13 (2008-12-25)
ngIRCd 13~rc1 (2008-11-21):
- - New version numer scheme :-)
- - Initial support for IRC services, using a RFC1459 styel interface,
+ - New version number scheme :-)
+ - Initial support for IRC services, using a RFC1459 style interface,
tested with IRCServices (http://www.ircservices.za.net/) version 5.1.13.
For this to work, ngIRCd now supports server-server links conforming
to RFC 1459. New ngircd.conf(5) option: ServiceMask.
@@ -33,7 +33,7 @@ ngIRCd Release 13 (2008-12-25)
ngIRCd 0.12.1 (2008-07-09)
- Add option aliases -V (for --version) and -h (for --help).
- - Make Listen parameter a comma-seperated list of addresses. This also
+ - Make Listen parameter a comma-separated list of addresses. This also
obsoletes ListenIPv4 and ListenIPv6 options. If Listen is unset, it
is treated as Listen="::,0.0.0.0".
Note: ListenIPv4 and ListenIPv6 options are still recognized,
@@ -42,7 +42,7 @@ ngIRCd 0.12.1 (2008-07-09)
ngIRCd 0.12.0 (2008-05-13)
ngIRCd 0.12.0-pre2 (2008-04-29)
- - IPv6: Add config options to disabe ipv4/ipv6 support.
+ - IPv6: Add config options to disable ipv4/ipv6 support.
ngIRCd 0.12.0-pre1 (2008-04-20)
- Add IPv6 support.
@@ -61,7 +61,7 @@ ngIRCd 0.11.0 (2008-01-15)
- Add support for /STAT u (server uptime) command.
- New [Server] configuration Option "Bind" allows to specify
- the source ip adress to use when connecting to remote server.
+ the source IP address to use when connecting to remote server.
- New configuration option "MaxNickLength" to specify the allowed maximum
length of user nick names. Note: must be unique in an IRC network!
- Numeric 317: implemented "signon time" (displayed in WHOIS result).
diff --git a/doc/README-AUX.txt b/doc/README-AUX.txt
index 68eea21..b524294 100644
--- a/doc/README-AUX.txt
+++ b/doc/README-AUX.txt
@@ -37,7 +37,7 @@ The following software packages are needed:
ftp://arthur.barton.de/pub/unix/aux/libraries/libUTIL-2.1.tar.gz
This library contains functions that are common on other UNIX
- systems but not on A/UX e.g. memmove(), strerror() und strdup().
+ systems but not on A/UX e.g. memmove(), strerror() and strdup().
After installation of these packages just do a "./configure" and "make" to
@@ -60,7 +60,7 @@ A few hints in case of errors:
the 'config.status' script. Better rename /bin/sh to /bin/sh.AUX and
replace it by a symbolic link to /bin/ksh (ln -s /bin/ksh /bin/sh as
root).
- These procedure should'nt cause you into problems and is recommended
+ These procedure shouldn't cause you into problems and is recommended
even if you don't use ngIRCd.
--
diff --git a/doc/README-BeOS.txt b/doc/README-BeOS.txt
index ea3816d..9e8df38 100644
--- a/doc/README-BeOS.txt
+++ b/doc/README-BeOS.txt
@@ -24,7 +24,7 @@ mit diesem Fehler ab:
select(): Bad file descriptor!
Es sieht leider so aus, als ob das select() von BeOS nicht mit File-Handles
-von Pipes verschiedener Prozesse umgehen kann: sobald der Resolver asyncron
+von Pipes verschiedener Prozesse umgehen kann: sobald der Resolver asynchron
gestartet wird, also Pipe-Handles im select() vorhanden sind, fuehrt das zu
obiger Meldung.
diff --git a/doc/Zeroconf.txt b/doc/Zeroconf.txt
index 04a3232..1208922 100644
--- a/doc/Zeroconf.txt
+++ b/doc/Zeroconf.txt
@@ -20,7 +20,7 @@ To use this features you can use one of two APIs:
of the newer Avahi[5] library.
When calling the configure script using the "--with-zeroconf" switch the
-avalable API will be autodetected and the required additional libraries will
+available API will be autodetected and the required additional libraries will
be linked to the ngircd binary as required.
ngIRCd then registers a DNS-SD service for each port it is listening on using
diff --git a/doc/sample-ngircd.conf b/doc/sample-ngircd.conf
index 041542e..526e880 100644
--- a/doc/sample-ngircd.conf
+++ b/doc/sample-ngircd.conf
@@ -56,7 +56,7 @@
# Diffie-Hellman parameters
;SSLDHFile = /usr/local/etc/ngircd/ssl/dhparams.pem
- # comma seperated list of IP addresses on which the server should
+ # comma separated list of IP addresses on which the server should
# listen. Default values are:
# "0.0.0.0" or (if compiled with IPv6 support) "::,0.0.0.0"
# so the server listens on all IP addresses of the system by default.
@@ -212,13 +212,13 @@
# Connect to the remote server using TLS/SSL (Default: false)
;SSLConnect = yes
- # Define a (case insensitive) mask matching nick names that sould be
+ # Define a (case insensitive) mask matching nick names that should be
# treated as IRC services when introduced via this remote server.
# REGULAR SERVERS DON'T NEED this parameter, so leave it empty
# (which is the default).
# When you are connecting IRC services which mask as a IRC server
# and which use "virtual users" to communicate with, for example
- # "NickServ" amd "ChanServ", you should set this parameter to
+ # "NickServ" and "ChanServ", you should set this parameter to
# something like "*Serv".
;ServiceMask = *Serv
diff --git a/man/ngircd.conf.5.tmpl b/man/ngircd.conf.5.tmpl
index d456bb4..b8aa7bd 100644
--- a/man/ngircd.conf.5.tmpl
+++ b/man/ngircd.conf.5.tmpl
@@ -102,7 +102,7 @@ Cipher Suites will not be available.
.TP
\fBListen\fR
A comma separated list of IP address on which the server should listen.
-If unset, the defaults value is "0.0.0.0" or, if nIRCcd was compiled
+If unset, the defaults value is "0.0.0.0" or, if ngIRCd was compiled
with IPv6 support, "::,0.0.0.0". So the server listens on all configured
IP addresses and interfaces by default.
.TP
@@ -112,7 +112,7 @@ to all users connecting to the server.
.TP
\fBMotdPhrase\fR
A simple Phrase (<256 chars) if you don't want to use a MOTD file.
-If this variabke is set, no \fBMotdFile\fR will be read at all which can be
+If this variable is set, no \fBMotdFile\fR will be read at all which can be
handy if the daemon should run inside a chroot directory.
.TP
\fBServerUID\fR
Module: ngircd.git
Branch: master
Commit: 0e4e22a7a671d1e8efbc44bffd80062191f75c38
URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=0e4e22a7…
Author: Alexander Barton <alex(a)barton.de>
Date: Tue Dec 30 19:23:03 2008 +0100
Allow pre-defined server local channels ("&").
---
src/ngircd/conf.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c
index c82ac2b..fc12cd9 100644
--- a/src/ngircd/conf.c
+++ b/src/ngircd/conf.c
@@ -1,6 +1,6 @@
/*
* ngIRCd -- The Next Generation IRC Daemon
- * Copyright (c)2001,2002 Alexander Barton (alex(a)barton.de)
+ * Copyright (c)2001-2008 Alexander Barton (alex(a)barton.de)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -1168,11 +1168,10 @@ Handle_Channelname(struct Conf_Channel *new_chan, const char *name)
size_t size = sizeof(new_chan->name);
char *dest = new_chan->name;
- /*
- * channels must begin with &, +, or '#', if it is
+ /* Channels names must begin with "&" or "#", if it is
* missing, add a '#'. This is only here for user convenience.
*/
- if (*name && *name != '#') {
+ if (*name && *name != '#' && *name != '&') {
*dest = '#';
--size;
++dest;
Module: ngircd.git
Branch: master
Commit: 9d20397470e579e603897dc4e3a80538e278491f
URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=9d203974…
Author: Alexander Barton <alex(a)barton.de>
Date: Tue Dec 30 19:20:09 2008 +0100
Spell check and enhance ngIRCd manual pages.
---
man/ngircd.8.tmpl | 5 ++-
man/ngircd.conf.5.tmpl | 77 +++++++++++++++++++++++++----------------------
2 files changed, 44 insertions(+), 38 deletions(-)
diff --git a/man/ngircd.8.tmpl b/man/ngircd.8.tmpl
index 2fc7a9b..bd5b67d 100644
--- a/man/ngircd.8.tmpl
+++ b/man/ngircd.8.tmpl
@@ -64,15 +64,16 @@ The system wide default configuration file.
.RS
Default "message of the day" (MOTD).
.RE
+.SH HINTS
+It's wise to use "ngircd \-\-configtest" to validate the configuration file
+after changing it.
.SH AUTHOR
Alexander Barton,
.UR mailto:alex@barton.de
-alex(a)barton.de
.UE
.br
Homepage:
.UR http://ngircd.barton.de/
-http://ngircd.barton.de/
.UE
.SH "SEE ALSO"
.BR ngircd.conf (5),
diff --git a/man/ngircd.conf.5.tmpl b/man/ngircd.conf.5.tmpl
index 616a358..d456bb4 100644
--- a/man/ngircd.conf.5.tmpl
+++ b/man/ngircd.conf.5.tmpl
@@ -12,6 +12,9 @@ is the configuration file of the
.BR ngircd (8)
Internet Relay Chat (IRC) daemon which you should adept to your local
preferences and needs.
+.PP
+Most variables can be modified while the ngIRCd daemon is already running:
+It will reload its configuration when a HUP signal is received.
.SH "FILE FORMAT"
The file consists of sections and parameters. A section begins with the name
of the section in square brackets and continues until the next section
@@ -58,7 +61,9 @@ section is used to define the server main configuration, like the server
name and the ports on which the server should be listening.
.TP
\fBName\fR
-Server name in the IRC network, must contain at least one dot (".").
+Server name in the IRC network. This is an individual name of the IRC
+server, it is not related to the DNS host name. It must be unique in the
+IRC network and must contain at least one dot (".") character.
.TP
\fBInfo\fR
Info text of the server. This will be shown by WHOIS and LINKS requests for
@@ -70,11 +75,12 @@ command.
.TP
\fBPorts\fR
Ports on which the server should listen. There may be more than one port,
-separated with ','. Default: 6667.
+separated with commas (","). Default: 6667.
.TP
\fBSSLPorts\fR
-Same as \fBPorts\fR , except that ngircd will expect incoming connections
-to be SSL/TLS encrypted. Default: None
+Same as \fBPorts\fR , except that ngIRCd will expect incoming connections
+to be SSL/TLS encrypted. Common port numbers for SSL-encrypted IRC are 6669
+and 6697. Default: none.
.TP
\fBSSLKeyFile\fR
Filename of SSL Server Key to be used for SSL connections. This is required for
@@ -84,20 +90,20 @@ SSL/TLS support.
(OpenSSL only:) Password to decrypt private key.
.TP
\fBSSLCertFile\fR
-Certificate of the private key
+Certificate file of the private key.
.TP
\fBSSLDHFile\fR
Name of the Diffie-Hellman Parameter file. Can be created with gnutls
"certtool \-\-generate-dh-params" or "openssl dhparam".
-If this file is not present, it will be generated on startup when ngircd
-was compiled with gnutls support (this may take some time). If ngircd
+If this file is not present, it will be generated on startup when ngIRCd
+was compiled with gnutls support (this may take some time). If ngIRCd
was compiled with OpenSSL, then (Ephemeral)-Diffie-Hellman Key Exchanges and several
Cipher Suites will not be available.
.TP
\fBListen\fR
-A comma seperated list of IP address on which the server should listen.
-If unset, the defaults value is "0.0.0.0", or, if ngircd was compiled
-with IPv6 support, "::,0.0.0.0", so the server listens on all configured
+A comma separated list of IP address on which the server should listen.
+If unset, the defaults value is "0.0.0.0" or, if nIRCcd was compiled
+with IPv6 support, "::,0.0.0.0". So the server listens on all configured
IP addresses and interfaces by default.
.TP
\fBMotdFile\fR
@@ -106,8 +112,8 @@ to all users connecting to the server.
.TP
\fBMotdPhrase\fR
A simple Phrase (<256 chars) if you don't want to use a MOTD file.
-If it is set no MotdFile will be read at all which can be handy if the
-daemon should run inside a chroot directory.
+If this variabke is set, no \fBMotdFile\fR will be read at all which can be
+handy if the daemon should run inside a chroot directory.
.TP
\fBServerUID\fR
User ID under which the server should run; you can use the name of the user
@@ -168,35 +174,35 @@ Should IRC Operators be allowed to use the MODE command even if they are
not(!) channel-operators? Default: no.
.TP
\fBOperServerMode\fR
-If OperCanUseMode is enabled, this may lead the compatibility problems with
+If \fBOperCanUseMode\fR is enabled, this may lead the compatibility problems with
Servers that run the ircd-irc2 Software. This Option "masks" mode requests
by non-chanops as if they were coming from the server. Default: no.
.TP
\fBPredefChannelsOnly\fR
If enabled, no new channels can be created. Useful if
you do not want to have channels other than those defined in
-the config file.
-Default: No.
+[Channel] sections in the configuration file.
+Default: no.
.TP
\fBNoDNS\fR
-If set to true, ngircd will not make DNS lookups when clients connect.
-If you configure ngircd to connect to other servers, ngircd may still
+If set to true, ngIRCd will not make DNS lookups when clients connect.
+If you configure the daemon to connect to other servers, ngIRCd may still
perform a DNS lookup if required.
-Default: false.
+Default: no.
.TP
\fBNoIdent\fR
-If ngircd is compiled with IDENT support this can be used to disable IDENT
+If ngIRCd is compiled with IDENT support this can be used to disable IDENT
lookups at run time.
-Default: false.
+Default: no.
.TP
\fBConnectIPv4\fR
-Set this to no if you do not want ngircd to connect to other irc servers using ipv4.
-This allows use of ngircd in ipv6-only setups.
-Default: Yes.
+Set this to no if you do not want ngIRCd to connect to other IRC servers using
+IPv4. This allows usage of ngIRCd in IPv6-only setups.
+Default: yes.
.TP
\fBConnectIPv6\fR
-Set this to no if you do not want ngircd to connect to other irc servers using ipv6.
-Default: Yes.
+Set this to no if you do not want ngIRCd to connect to other irc servers using IPv6.
+Default: yes.
.TP
\fBMaxConnections\fR
Maximum number of simultaneous in- and outbound connections the server is
@@ -217,7 +223,7 @@ note that all servers in an IRC network MUST use the same maximum nick name
length!
.TP
\fBSSLConnect\fR
-Connect to the remote server using TLS/SSL (Default: false)
+Connect to the remote server using TLS/SSL. Default: false.
.SH [OPERATOR]
.I [Operator]
sections are used to define IRC Operators. There may be more than one
@@ -258,21 +264,21 @@ IRC name of the remote server.
Internet host name (or IP address) of the peer.
.TP
\fBBind\fR
-IP address to use as source IP for the outgoing connection. Default ist
+IP address to use as source IP for the outgoing connection. Default is
to let the operating system decide.
.TP
\fBPort\fR
Port of the remote server to which ngIRCd should connect (active).
If no port is assigned to a configured server, the daemon only waits for
-incoming connections (passive).
+incoming connections (passive, default).
.TP
\fBMyPassword\fR
Own password for this connection. This password has to be configured as
-"PeerPassword" on the other server. Must not have ':' as first character.
+\fBPeerPassword\fR on the other server. Must not have ':' as first character.
.TP
\fBPeerPassword\fR
Foreign password for this connection. This password has to be configured as
-"MyPassword" on the other server.
+\fBMyPassword\fR on the other server.
.TP
\fBGroup\fR
Group of this server (optional).
@@ -282,13 +288,13 @@ Disable automatic connection even if port value is specified. Default: false.
You can use the IRC Operator command CONNECT later on to create the link.
.TP
\fBServiceMask\fR
-Define a (case insensitive) mask matching nick names that sould be treated as
+Define a (case insensitive) mask matching nick names that should be treated as
IRC services when introduced via this remote server. REGULAR SERVERS DON'T NEED
this parameter, so leave it empty (which is the default).
.PP
.RS
When you are connecting IRC services which mask as a IRC server and which use
-"virtual users" to communicate with, for example "NickServ" amd "ChanServ",
+"virtual users" to communicate with, for example "NickServ" and "ChanServ",
you should set this parameter to something like "*Serv".
.SH [CHANNEL]
Pre-defined channels can be configured in
@@ -304,7 +310,7 @@ There may be more than one
block.
.TP
\fBName\fR
-Name of the channel, including channel prefix ("#").
+Name of the channel, including channel prefix ("#" or "&").
.TP
\fBTopic\fR
Topic for this channel.
@@ -316,7 +322,8 @@ Initial channel modes.
Sets initial channel key (only relevant if mode k is set).
.TP
\fBMaxUsers\fR
-Set maximum user limit for this channel (only relevant if mode l is set).
+Set maximum user limit for this channel (only relevant if channel mode "l"
+is set).
.SH HINTS
It's wise to use "ngircd \-\-configtest" to validate the configuration file
after changing it. See
@@ -325,12 +332,10 @@ for details.
.SH AUTHOR
Alexander Barton,
.UR mailto:alex@barton.de
-alex(a)barton.de
.UE
.br
Homepage:
.UR http://ngircd.barton.de/
-http://ngircd.barton.de/
.UE
.SH "SEE ALSO"
.BR ngircd (8)