]> arthur.barton.de Git - ngircd-alex.git/blobdiff - ChangeLog
Clean up files for "ngircd-full" package, too ...
[ngircd-alex.git] / ChangeLog
index c3a2b3ce464ea745474efc781d234b1a1e54dc67..793c22ae1289ca565b32226588e95a68cb12ac51 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 
                      ngIRCd - Next Generation IRC Server
 
 
                      ngIRCd - Next Generation IRC Server
 
-                      (c)2001,2002 by Alexander Barton,
+                      (c)2001-2003 by Alexander Barton,
                     alex@barton.de, http://www.barton.de/
 
                     alex@barton.de, http://www.barton.de/
 
-                  ngIRCd ist freie Software und steht unter
-                       der GNU General Public License.
-
-                        -- ChangeLog / Aenderungen --
-
-
-ngIRCd CVS-HEAD
-
+               ngIRCd is free software and published under the
+                   terms of the GNU General Public License.
+
+                               -- ChangeLog --
+
+
+ngIRCd CVSHEAD
+
+  - Added short command line option "-t" as alternative to "--configtest".
+  - Added optional support for "IDENT" lookups on incoming connections. You
+    have to enable this function with the ./configure switch "--with-ident".
+    The default is not to do IDENT lookups.
+  - Removed "USE_" prefixes of configuration #defines.
+
+ngIRCd 0.7.6 (2003-12-05)
+
+  - Fixed abort() ("server crash") when INVITE'ing users to nonexistent
+    channels. Bug found by <hiddenx@wp.pl>.
+  - Extended version numbering of CVS versions (added date).
+  - Enhanced/fixed doc/Protocol.txt;
+
+ngIRCd 0.7.5 (2003-11-07)
+
+  - Fixed ban behavior: users which are banned from a channel can't no
+    longer send PRIVMSG's to this channel (fixes Bug #47).
+  - Fixed and enhanced the "penalty handling" of the server: commands that
+    require more resources block the client for a short time.
+  - Changed the internal time resolution to one second.
+  - New configuration variable "MaxConnectionsIP" to limit the number of
+    simultaneous connections from a single IP that the server will accept.
+    This configuration options lowers the risk of denial of service attacks
+    (DoS), the default is 5 connections per client IP.
+  - Fixed build problems under Mac OS X 10.3.
+  - Use "-pipe" when compiling with gcc, speeds things up a little :-)
+  - Added new configuration variable "Listen" to bind all listening
+    sockets of the server to a single IP address.
+  - Suppress misleading error message of diff during make run.
+  - Enhanced test-suite and made it work on GNU/Hurd.
+  - Fixed minor typo in debug output :-)
+
+ngIRCd 0.7.1 (2003-07-18)
+
+  - Included files to build Debian packages (located in "debian/").
+  - Updated config.guess and config.sub to newer upstream versions.
+  - NJOIN propagates user channel modes correctly again ... Upsa.
+  - Made Makefile more compatible with "make -j<n>".
+  - Added support for GNU/Hurd.
+  - Fixed a compiler warning related to an unnecessary assert().
+  - Enhanced VERSION command when using debug versions.
+
+ngIRCd 0.7.0 (2003-05-01)
+
+  - "ServerName" is checked better now: a dot (".") is required.
+  - The KILL command verifies and logs more parameters.
+
+  ngIRCd 0.7.0-pre2 (2003-04-27)
+  - CVS build system fixes (made autogen.sh more portable).
+  - Fixed compilation and test-suite on Solaris (tested with 2.6).
+  - New documentation file "doc/Platforms.txt" describing the status of
+    ngIRCd on the various tested platforms.
+  - Test for broken GCC on Mac OS X and disable "-pedantic" in this case.
+  - Disable "-ansi" on Cygwin: system headers are incompatible.
+  - The server tried to connect to other servers only once when DNS or
+    socket failures occurred.
+  - Fixed --configtest: There is no variable "ServerPwd", it's "Password".
+
+  ngIRCd 0.7.0-pre1 (2003-04-22)
+  - New signal handler (more secure, actions are executed outside).
+  - GCC: the compiler is now called with more warning options enabled.
+  - Replaced a lot of str[n]cpy(), str[n]cat() and sprintf() calls with the
+    more secure functions strlcpy(), strlcat() and snprintf(). On systems
+    that don't support strlcpy() and strlcat(), these functions are included
+    in the libngportab now (with prototypes in portab.h).
+  - If the server can't close a socket, it panics now. This is an error that
+    can't occur during normal operation so there is something broken.
+  - The order of log messages during disconnects is more "natural" now ;-)
+  - Cleaned up handling of server configuration structures: modifying and
+    removing servers during runtime works more reliable now.
+  - Compression code from "conn.[ch]" is now found in new "conn-zip.[ch]"
+  - Moved some connection functions from "conn.[ch]" to "conn-func.[ch]".
+  - New command CONNECT to enable and add server links. The syntax is not
+    RFC-compatible: use "CONNECT <name> <port>" to enable and connect an
+    configured server and "CONNECT <name> <port> <host> <mypwd> <peerpwd>"
+    to add a new server (ngIRCd tries to connect new servers only once!).
+  - Added DISCONNECT command ("DISCONNECT <name>") to disable servers.
+  - Restructured the documentation: Now the main language is English. The
+    german documentation has been removed (until there is a maintainer).
+  - Enhanced killing of users caused by a nickname collision.
+  - Better error detection for status code ("numerics") forwarding.
+  - Moved tool functions to own library: "libngtool".
+  - New command TRACE (you can trace only servers at the moment).
+  - New command HELP that lists all understood commands.
+  - There should no longer remain "unknown connections" (see e.g. LUSERS)
+    if an outgoing server link can't be established.
+  - Added AC_PREREQ(2.50) to configure.in for better autoconf compatibility.
+  - Conn_Close() now handles recursive calls for the same link correctly.
+  - ngIRCd can register itself with Rendezvous: to enable support pass the
+    new switch "--with-rendezvous" to configure.
+  - Added support for TCP Wrappers library: pass "--with-tcp-wrappers" to
+    configure to enable it.
+  - Changed some configure options to use "--with"/"--without" as prefix
+    instead of "--enable"/"--disable": "--without-syslog", "--without-zlib",
+    "--with-tcp-wrappers", and "--with-rendezvous".
+  - 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.
+
+ngIRCd 0.6.1, 2003-01-21
+
+  - Fixed KILL: you can't crash the server by killing yourself any more,
+    ngIRCd no longer sends a QUIT to other servers after the KILL, and you
+    can kill only valid users now.
+  - The server no longer forwards commands to ordinary users, instead it
+    answers with the correct error message ("no such server") now.
+  - WHOIS commands weren't always forwarded as requested.
+  - The server sets a correct default AWAY message now when propagating
+    between servers (bug introduced in 0.6.0).
+  - Fixed up and enhanced CHANINFO command: channel keys and user limits
+    are synchronized between servers now, too.
+  - MODE returns the key and user limit for channel members correctly now.
+  - Non-members of a channel could crash the server when trying to change
+    its modes or modes of its members.
+  - The server didn't validate weather a target user is a valid channel
+    member when changing his channel user modes which could crash ngIRCd.
+
+
+Older changes (sorry, only available in german language):
+
+ngIRCd 0.6.0, 2002-12-24
+
+  ngIRCd 0.6.0-pre2, 2002-12-23
+  - neuer Numeric 005 ("Features") beim Connect.
+  - LUSERS erweitert: nun wird die maximale Anzahl der lokalen und globalen
+    Clients, die dem Server bzw. im Netzwerk seit dem letzten (Re-)Start
+    dem Server gleichzeitig bekannt waren, angezeigt.
+
+  ngIRCd 0.6.0-pre1, 2002-12-18
   - beim Schliessen einer Verbindung zeigt der Server nun vor dem ERROR
     noch eine Statistik ueber die empfangene und gesendete Datenmenge an.
   - beim Schliessen einer Verbindung zeigt der Server nun vor dem ERROR
     noch eine Statistik ueber die empfangene und gesendete Datenmenge an.
-  - Clients werden beim Connect mit NOTICEs ueber den Status der Resolver-
-    Subprozesse informiert.
-  - NOTICEs vom Server selber (z.B. Verbindungsstatistik oder s-Mode)
-    haben nun ein "Text-Prefix": "*** ".
   - der Server wartet bei einer eingehenden Verbindung nun laenger auf den
     Resolver (4 Sekunden), wenn das Ergebnis eintrifft setzt er aber den
     Login sofort fort (bisher wurde immer mind. 1 Sekunde gewartet).
   - Connection-Strukturen werden nun "pool-weise" verwaltet; der Pool wird
     bei Bedarf bis zu einem konfigurierten Limit vergroessert.
   - der Server wartet bei einer eingehenden Verbindung nun laenger auf den
     Resolver (4 Sekunden), wenn das Ergebnis eintrifft setzt er aber den
     Login sofort fort (bisher wurde immer mind. 1 Sekunde gewartet).
   - Connection-Strukturen werden nun "pool-weise" verwaltet; der Pool wird
     bei Bedarf bis zu einem konfigurierten Limit vergroessert.
-  - Mit der neuen Konfigurationsvariable "MaxConnections" (Sekion "Global")
+  - Mit der neuen Konfigurationsvariable "MaxConnections" (Sektion "Global")
     kann die maximale Anzahl gleichzeitiger Verbindungen begrenzt werden.
     Der Default ist -1, "unlimitiert".
   - der Server erkennt nun, ob bereits eine eingehende Verbindung von einem
     kann die maximale Anzahl gleichzeitiger Verbindungen begrenzt werden.
     Der Default ist -1, "unlimitiert".
   - der Server erkennt nun, ob bereits eine eingehende Verbindung von einem
@@ -31,22 +157,53 @@ ngIRCd CVS-HEAD
     ausgehende Verbindung zu diesem auufzubauen. Dadurch kann nun auf beiden
     Servern in der Konfiguration ein Port fuer den Connect konfiguriert
     werden (beide Server versuchen sich dann gegenseitig zu connectieren).
     ausgehende Verbindung zu diesem auufzubauen. Dadurch kann nun auf beiden
     Servern in der Konfiguration ein Port fuer den Connect konfiguriert
     werden (beide Server versuchen sich dann gegenseitig zu connectieren).
-  - in den Konfigurationsvariablen ServerUID und ServerGID kann nun nicht
-    nur die numerische ID, sondern auch der Name des Users bzw. der Gruppe
-    verwendet werden. Beim Start des Daemons wird nun beides angezeigt.
-  - Fehler-Handling von connect() gefixed: der Server kann sich nun auch   
-    unter A/UX wieder zu anderen verbinden.
   - Test-Suite und Dokumentation an A/UX angepasst.
   - unter HP-UX definiert das configure-Script nun _XOPEN_SOURCE_EXTENDED.
   - Server identifizieren sich nun mit asyncronen Passwoertern, d.h. das
     Passwort, welches A an B schickt, kann ein anderes sein als das, welches
     B als Antwort an A sendet. In der Konfig.-Datei, Abschnitt "Server",
     wurde "Password" dazu durch "MyPassword" und "PeerPassword" ersetzt.
   - Test-Suite und Dokumentation an A/UX angepasst.
   - unter HP-UX definiert das configure-Script nun _XOPEN_SOURCE_EXTENDED.
   - Server identifizieren sich nun mit asyncronen Passwoertern, d.h. das
     Passwort, welches A an B schickt, kann ein anderes sein als das, welches
     B als Antwort an A sendet. In der Konfig.-Datei, Abschnitt "Server",
     wurde "Password" dazu durch "MyPassword" und "PeerPassword" ersetzt.
+  - Der Server kann nun zur Laufzeit die Konfiguration neu einlesen: dies
+    macht er nach dem Befehl REHASH oder wenn ein HUP-Signal empfangen wird.
+  - Channel-Mode "P" ("persistent") kann nur noch von IRC-Operatoren gesetzt
+    werden. Grund: User koennen den Server sonst leicht "Channel-Flooden".
+  - MOTD kann nun an andere Server geforwarded werden.
+  - IRC-Befehl "TIME" implementiert.
+  - Server-Server-Links koennen nun komprimiert werden, dazu wird die zlib
+    (www.zlib.org) benoetigt. Unterstuetzt die Gegenseite die Komprimierung
+    nicht, wird automatisch unkomprimiert kommuniziert. Das Verfahren ist
+    kompatibel mit dem Original-ircd 2.10.3, d.h. beide Server koennen
+    miteinander ueber komprimiert Links kommunizieren.
+  - Handling der Schreibpuffer umgestellt: Server sollte schneller arbeiten.
+  - Prefix-Fehler werden besser protokolliert (mit verursachendem Befehl).
+  - SQUIT wird nicht mehr doppelt an andere Server weitergeleitet.
+  - Der Server versucht nun vor dem Schliessen einer Verbindung Daten, die
+    noch im Schreibpuffer stehen, zu senden.
+  - Source in weiteres Modul "irc-info" aufgespalten.
+  - Konfigurationsvariablen werden besser validiert: Laengen, Zahlen, ...
+  - neuen Befehl STATS begonnen: bisher unterstuetzt wird "l" und "m".
+  - bei ISON und USERHOST fehlte im Ergebnis-String der korrekte Absender.
+  - IRC Operatoren koennen nun mit KILL User toeten. Achtung: ein Grund muss
+    zwingend als zweiter Parameter angegeben werden!
+  - neue Konfigurations-Variable "MaxJoins": Hiermit kann die maximale Zahl
+    der Channels, in denen ein User Mitglied sein kann, begrent werden.
+  - neuer, deutlich flexiblerer Parser fuer den MODE Befehl.
+  - neue Channel-Modes l (User-Limit) und k (Channel-Key) implementiert.
+
+ngIRCd 0.5.4, 24.11.2002
+
+  - Fehler-Handling von connect() gefixed: der Server kann sich nun auch   
+    unter A/UX wieder zu anderen verbinden.
+  - in den Konfigurationsvariablen ServerUID und ServerGID kann nun nicht
+    nur die numerische ID, sondern auch der Name des Users bzw. der Gruppe
+    verwendet werden. Beim Start des Daemons wird nun beides angezeigt.
   - Besseres Logging von Prefix-Fehlern.
   - angenommene Sockets werden nun korrekt auf "non-blocking" konfiguriert,
     beim Senden und Empfangen werden Blockierungen besser abgefangen.
   - Besseres Logging von Prefix-Fehlern.
   - angenommene Sockets werden nun korrekt auf "non-blocking" konfiguriert,
     beim Senden und Empfangen werden Blockierungen besser abgefangen.
-  - Der Server kann nun zur Laufzeit die Konfiguration neu einlesen: dies
-    macht er nach dem Befehl RELOAD oder wenn ein HUP-Signal empfangen wird.
+  - RPL_UMODEIS hat Code 221, nicht 211 ... *argl*
+  - select() in Try_Write() hat falschen (keinen!) Timeout verwendet;
+    die "Zeit-Aufloesung" des Servers sind zudem nun 2 Sekunden (TIME_RES).
+    Insgesamt sollte die Reaktionszeit des Server nun besser sein.
 
 ngIRCd 0.5.3, 08.11.2002
 
 
 ngIRCd 0.5.3, 08.11.2002
 
@@ -335,4 +492,4 @@ ngIRCd 0.0.1, 31.12.2001
 
 
 -- 
 
 
 -- 
-$Id: ChangeLog,v 1.124 2002/11/22 18:01:59 alex Exp $
+$Id: ChangeLog,v 1.221 2003/12/29 14:53:26 alex Exp $