mirror of
				https://github.com/osmarks/ngircd.git
				synced 2025-10-31 14:02:59 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			353 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			353 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
|                      ngIRCd - Next Generation IRC Server
 | |
| 
 | |
|                         (c)2001-2010 Alexander Barton,
 | |
|                     alex@barton.de, http://www.barton.de/
 | |
| 
 | |
|                ngIRCd is free software and published under the
 | |
|                    terms of the GNU General Public License.
 | |
| 
 | |
|                                   -- NEWS --
 | |
| 
 | |
| 
 | |
| ngIRCd Release 16 (2010-05-02)
 | |
| 
 | |
|   ngIRCd 16~rc2 (2010-04-25)
 | |
|   - Enhace connection statistics counters: display total number of served
 | |
|     connections on daemon shutdown and when a new client connects using
 | |
|     the new numeric RPL_STATSCONN (250).
 | |
| 
 | |
|   ngIRCd 16~rc1 (2010-03-25)
 | |
|   - Implement WEBIRC command used by some Web-IRC frontends. The password
 | |
|     required to secure this command must be configured using the new
 | |
|     "WebircPassword" variable in the ngircd.conf file.
 | |
|   - Remove limit on max number of configured irc operators.
 | |
|   - A new channel mode "secure connections only" (+z) has been implemented:
 | |
|     Only clients using a SSL encrypted connection to the server are allowed
 | |
|     to join such a channel.
 | |
|     But please note three things: a) already joined clients are not checked
 | |
|     when setting this mode, b) IRC operators are always allowed to join
 | |
|     every channel, and c) remote clients using a server not supporting this
 | |
|     mode are not checked either and therefore always allowed to join.
 | |
| 
 | |
| ngIRCd Release 15 (2009-11-07)
 | |
| 
 | |
|   ngIRCd 15~rc1 (2009-10-15)
 | |
|   - Do not add default listening port (6667) if SSL ports were specified, so
 | |
|     ngIRCd can be configured to only accept SSL-encrypted connections now.
 | |
|   - Enable IRC operators to use the IRC command SQUIT (insted of the already
 | |
|     implemented but non-standard DISCONNECT command).
 | |
|   - New configuration option "AllowRemoteOper" (disabled by default) that
 | |
|     enables remote IRC operators to use the IRC commands SQUIT and CONNECT
 | |
|     on the local server.
 | |
|   - Enforce upper limit on maximum number of handled commands. This implements
 | |
|     a throttling scheme: an IRC client can send up to 3 commands or 256 bytes
 | |
|     per second before a one second pause is enforced.
 | |
| 
 | |
| ngIRCd Release 14.1 (2009-05-05)
 | |
| 
 | |
|   - Security: fix remotely triggerable crash in SSL/TLS code.
 | |
|   - Debian: build ngircd-full-dbg package.
 | |
|   - Allow ping timeout quit messages to show the timeout value.
 | |
| 
 | |
| ngIRCd Release 14 (2009-04-20)
 | |
| 
 | |
|   ngIRCd 14~rc1 (2009-03-29)
 | |
|   - Allow creation of persistent modeless channels.
 | |
|   - The INFO command reports the compile time now (if available).
 | |
|   - Support individual channel keys for pre-defined channels: introduce
 | |
|     new configuration variable "KeyFile" in [Channel] sections in ngircd.conf,
 | |
|     here a file can be configured for each pre-defined channel which contains
 | |
|     individual channel keys for different users.
 | |
|   - Remove limit on maximum number of predefined channels in ngircd.conf.
 | |
| 
 | |
| ngIRCd Release 13 (2008-12-25)
 | |
| 
 | |
|   ngIRCd 13~rc1 (2008-11-21):
 | |
|   - 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.
 | |
|   - Support for SSL-encrypted server-server and client-server links using
 | |
|     OpenSSL (configure: --with-openssl) or GNUTLS (configure: --with-gnutls).
 | |
|     New ngircd.conf(5) options: SSLPorts, SSLKeyFile, SSLKeyFilePassword,
 | |
|     SSLCertFile, SSLDHFile, and SSLConnect.
 | |
|   - Server local channels have been implemented, prefix "&", that are only
 | |
|     visible to users of the same server and are not visible in the network.
 | |
|     In addition ngIRCd creates a "special" channel &SERVER on startup and logs
 | |
|     all the messages to it that a user with mode +s receives.
 | |
|   - New make target "osxpkg" to build a Mac OS X installer package.
 | |
|   - New configuration option "NoIdent" to disable IDENT lookups even if the
 | |
|     daemon is compiled with IDENT support.
 | |
| 
 | |
| ngIRCd 0.12.1 (2008-07-09)
 | |
| 
 | |
|   - Add option aliases -V (for --version) and -h (for --help).
 | |
|   - 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,
 | |
|     but ngircd will print a warning if they are used in the config file.
 | |
| 
 | |
| ngIRCd 0.12.0 (2008-05-13)
 | |
| 
 | |
|   ngIRCd 0.12.0-pre2 (2008-04-29)
 | |
|   - IPv6: Add config options to disable ipv4/ipv6 support.
 | |
| 
 | |
|   ngIRCd 0.12.0-pre1 (2008-04-20)
 | |
|   - Add IPv6 support.
 | |
|   - Install a LaunchDaemon script to start/stop ngIRCd on Mac OS X.
 | |
|   - Implemented IRC commands INFO, SUMMON (dummy), and USERS (dummy) and
 | |
|     enhanced test suite to check these commands. (Dana Dahlstrom)
 | |
|   - IRC_WHO now supports search patterns and will test this against user
 | |
|     nickname/servername/hostname, etc. as required by RFC 2812, Section 3.6.1.
 | |
|     (reported by Dana Dahlstrom)
 | |
|   - Implement RFC 2812 handling of "0" argument to 'JOIN': must be treated
 | |
|     as if the user had sent PART commands for all channels the user is a
 | |
|     member of. (Dana Dahlstrom)
 | |
|   - Allow NOTICEs to be sent to a channel. (Fabian Schlager)
 | |
| 
 | |
| 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 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).
 | |
|   - Added new server configuration option "Passive" for "Server" blocks to
 | |
|     disable automatic outgoing connections (similar to -p option to ngircd,
 | |
|     but only for the specified server). (Tassilo Schweyer)
 | |
|   - Added support for the WALLOPS command. Usage is restricted to IRC
 | |
|     operators.
 | |
| 
 | |
| ngIRCd 0.10.2 (2007-06-08)
 | |
| 
 | |
|   - Predefined channel configuration now allows specification of channel key
 | |
|     (mode k) and maximum user count (mode l): variables "Key" and "MaxUsers".
 | |
|   - When using the epoll() IO interface, compile in the select() interface as
 | |
|     well and fall back to it when epoll() isn't available on runtime.
 | |
|   - Added support for IO APIs "poll()" and "/dev/poll".
 | |
| 
 | |
| ngIRCd 0.10.1 (2006-12-17)
 | |
| 
 | |
|   - Allow PASS syntax defined in RFC 1459 for server links, too.
 | |
|   - New configuration option "PredefChannelsOnly": if set, clients can only
 | |
|     join predefined channels.
 | |
| 
 | |
| ngIRCd 0.10.0 (2006-10-01)
 | |
| 
 | |
|   ngIRCd 0.10.0-pre1 (2006-08-02)
 | |
|   - Enhanced DIE to accept a single parameter ("comment text") which is sent
 | |
|     to all locally connected clients before the server goes down.
 | |
|   - JOIN now supports more than one channel key at a time.
 | |
|   - Implemented numeric "333": Time and user name who set a channel topic.
 | |
|   - Channel topics are no longer limited to 127 characters: now the only limit
 | |
|     is the maximum length of an IRC command, i. e. 512 bytes (in practice, this
 | |
|     limits the topic to about 490 characters due to protocol overhead).
 | |
|   - Reverse DNS lookup code now checks the result by doing an additional
 | |
|     lookup to prevent spoofing.
 | |
|   - Added new IO layer which (optionally) supports epoll() and kqueue() in
 | |
|     addition to the select() interface.
 | |
| 
 | |
| ngIRCd 0.9.0 (2005-07-24)
 | |
| 
 | |
|   - Never run with root privileges but always switch the user ID.
 | |
|   - Make "netsplit" messages RFC compliant.
 | |
|   - Implemented the IRC function "WHOWAS".
 | |
|   - 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.
 | |
|   - 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>.
 | |
|   - 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".
 | |
| 
 | |
| ngIRCd 0.8.0 (2004-06-26)
 | |
| 
 | |
|   - Two new configuration options: "ChrootDir" and "MotdPhrase", thanks to
 | |
|     Benjamin Pineau <ben@zouh.org>. Now you can force the daemon to change
 | |
|     its root and working directory to something "safe". MotdPhrase is used
 | |
|     to define an "MOTD string" instead of a whole file, useful if the
 | |
|     "real" MOTD file would be outside the "jail".
 | |
|   - INVITE- and BAN-lists become synchronized between IRC+ servers when
 | |
|     establishing new connections, if the peer supports this as well.
 | |
|   - The type of service (TOS) of all sockets is set to "interactive" now.
 | |
|   - 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.
 | |
| 
 | |
| ngIRCd 0.7.5 (2003-07-11)
 | |
| 
 | |
|   - 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.
 | |
|   - Added new configuration variable "Listen" to bind all listening
 | |
|     sockets of the server to a single IP address.
 | |
|        
 | |
| ngIRCd 0.7.1 (2003-07-18)
 | |
| 
 | |
|   - Added support for GNU/Hurd.
 | |
| 
 | |
| ngIRCd 0.7.0 (2003-05-01)
 | |
| 
 | |
|   - 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.
 | |
|   - New command TRACE (you can trace only servers at the moment).
 | |
|   - New command HELP that lists all understood commands.
 | |
|   - 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".
 | |
|   - Enhanced manual pages ngircd(8) and ngircd.conf(5).
 | |
|   - Documentation is now installed in $(datadir)/doc/ngircd.
 | |
| 
 | |
| 
 | |
| Older news (sorry, only available in german language):
 | |
| 
 | |
| ngIRCd 0.6.0, 2002-12-24
 | |
| 
 | |
|   - beim Schliessen einer Verbindung zeigt der Server nun vor dem ERROR
 | |
|     noch eine Statistik ueber die empfangene und gesendete Datenmenge an.
 | |
|   - 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")
 | |
|     kann die maximale Anzahl gleichzeitiger Verbindungen begrenzt werden.
 | |
|     Der Default ist -1, "unlimitiert".
 | |
|   - der Server erkennt nun, ob bereits eine eingehende Verbindung von einem
 | |
|     Peer-Server besteht und versucht dann nicht mehr, selber eine eigene
 | |
|     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).
 | |
|   - 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.
 | |
|   - 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.
 | |
|   - neue Konfigurations-Variable "MaxJoins": Hiermit kann die maximale Zahl
 | |
|     der Channels, in denen ein User Mitglied sein kann, begrent werden.
 | |
|   - neue Channel-Modes l (User-Limit) und k (Channel-Key) implementiert.
 | |
| 
 | |
| ngIRCd 0.5.0, 20.09.2002
 | |
| 
 | |
|   - AIX (3.2.5), HP-UX (10.20), IRIX (6.5), NetBSD (1.5.3/m68k) und Solaris
 | |
|     (2.5.1, 2.6) gehoeren nun auch zu den unterstuetzten Platformen.
 | |
|   - Unter A/UX (und evtl. weiteren Systemen) kompiliert der ngIRCd nun mit
 | |
|     dem "nativen" (ggf. pre-ANSI) Compiler.
 | |
|   - "persistente Channels" (Mode 'P') implementiert: diese koennen in der
 | |
|     Konfigurationsdatei definiert werden (Sektion "Channel", vgl. Beispiel-
 | |
|     Konfiguration "sample-ngircd.conf") und bleiben auch dann bestehen,
 | |
|     wenn kein User mehr im Channel ist.
 | |
|   - neue IRC-Befehle: KICK, INVITE, ADMIN, CHANINFO; LIST wurde erweitert.
 | |
|     Mit dem neuen Befehl CHANINFO syncronisieren Server, die das IRC+-
 | |
|     Protokoll unterstuetzen, Channel-Modes und Topics. Fuer den ADMIN-Befehl
 | |
|     gibt es neue Konfigurationsoptionen (Sektion "Global"): "AdminInfo1",
 | |
|     "AdminInfo2" und "AdminEMail".
 | |
|   - Invite- und Ban-Lists implementiert.
 | |
|   - neue Konfigurationsoption "OperCanUseMode" (Sektion "Global"):
 | |
|     ist sie aktiv, koennen IRC-Operatoren immer Channel-Modes setzen.
 | |
|   - "Test-Suite" begonnen: mit "make check" wird sie durchlaufen.
 | |
| 
 | |
| ngIRCd 0.4.2, 29.04.2002
 | |
| 
 | |
|   - IRC-Funktion LIST implementiert; bisher werden allerdings noch keine
 | |
|     Regular Expressions (bis auf "*") unterstuetzt.
 | |
| 
 | |
| ngIRCd 0.4.0, 01.04.2002
 | |
| 
 | |
|   - WHO implementiert (bisher ohne komplette Unterstuetzung von Masks).
 | |
|   - stderr wird nun in eine Datei umgelenkt (/ngircd-<PID>.err).
 | |
|     Laeuft der Server nicht im Debug-Modus, so wird diese bei Programm-
 | |
|     ende geloescht. Sollte der Server abstuerzen, finden sich hier evtl.
 | |
|     zusaetzliche Informationen.
 | |
|   - Server-Gruppen implementiert: es wird immer nur zu einem Server in
 | |
|     einer Gruppe eine Verbindung aufgebaut, klappt es beim ersten Server
 | |
|     nicht, so wird der naechste probiert.
 | |
|   - Clients und Channels werden nicht mehr ueber ihren Namen, sondern
 | |
|     einen Hash-Wert gesucht: sollte deutlich schneller sein.
 | |
|   - neuer Kommandozeilen-Parameter "--configtest": die Konfiguration wird
 | |
|     gelesen und die dann verwendeten Werte angezeigt.
 | |
|   - Client-Mode "s" (Server Notices) implementiert.
 | |
|   - mit dem neuen Kommandozeilen-Parameter "--config"/"-f" kann eine
 | |
|     alternative Konfigurationsdatei angegeben werden.
 | |
|   - nach dem Start kann der ngIRCd, wenn er mit root-Rechten laeuft,
 | |
|     zu einer anderen User-ID und Group-ID wechseln.
 | |
| 
 | |
| ngIRCd 0.3.0, 02.03.2002
 | |
| 
 | |
|   - bekommt der Server ein HUP-Signal, so startet er neu -- genau so, wie
 | |
|     er auf den IRC-Befehl RESTART reagiert.
 | |
|   - neuer Kommandozeilen-Schalter "--passive" (-p): wird er angegeben, so
 | |
|     verbindet sich der ngIRCd nicht mehr automatisch zu anderen Servern.
 | |
|     Zum Debuggen manchmal ganz praktisch :-)
 | |
|   - neue Befehle VERSION und KILL implementiert. NAMES korrigiert.
 | |
|   - Anpassungen an A/UX: gehoert nun auch zu den unterstuetzten Platformen.
 | |
|   - AWAY (und der User-Mode 'a') ist nun implementiert.
 | |
|   - der ngIRCd unterstuetzt nun Channel-Topics (TOPIC-Befehl).
 | |
|   - Channel- und Nicknames werden nun ordentlich validiert.
 | |
| 
 | |
| ngIRCd 0.2.0, 15.02.2002
 | |
| 
 | |
|   - Begonnen Channel-Modes und User-Channel-Modes zu implementieren: der
 | |
|     Server versteht an User-Modes o und v, beachtet letzteres allerdings
 | |
|     noch nirgends. Bekannte (aber nicht beachtete!) Channel-Modes sind
 | |
|     bisher a, m, n, p, q, s und t. Diese Modes werden von Usern ange-
 | |
|     nommen, von anderen Servern werden auch unbekannte Modes uebernommen.
 | |
|   - Nach dem Connect eines Users werden LUSERS-Informationen angezeigt.
 | |
| 
 | |
| ngIRCd 0.1.0, 29.01.2002
 | |
| 
 | |
|   - Channels implementiert, bisher jedoch noch ohne Channel-Modes, d.h.
 | |
|     es gibt keine Channel-Ops, kein Topic, kein "topic lock" etc. pp.
 | |
|     Chatten in Channels ist aber natuerlich moeglich ;-)
 | |
|     Dadurch zum Teil groessere Aenderungen an bisherigen Funktionen.
 | |
|   - neue Befehle fuer Channles: JOIN, PART und NJOIN.
 | |
|   - FAQ.txt in doc/ begonnen.
 | |
| 
 | |
| ngIRCd 0.0.3, 16.01.2002
 | |
| 
 | |
|   - Server-Links vollstaendig implementiert: der ngIRCd kann nun auch
 | |
|     "Sub-Server" haben, also sowohl als Leaf-Node als auch Hub in einem
 | |
|     IRC-Netzwerk arbeiten.
 | |
|   - WHOIS wird nun immer an den "Original-Server" weitergeleitet.
 | |
|   - Parser handhabt Leerzeichen zw. Parametern nun etwas "lockerer".
 | |
|   - Kommandozeilen-Parser: Debug- und No-Daemon-Modus, Hilfe.
 | |
|   - ngIRCd wandelt sich nun in einen Daemon (Hintergrundprozess) um.
 | |
|   - neue Befehle: LUSERS, LINKS.
 | |
| 
 | |
| ngIRCd 0.0.2, 06.01.2002
 | |
| 
 | |
|   - neuer Aufbau der Konfigurationsdatei,
 | |
|   - mehrere IRC-Operatoren koennen konfiguriert werden,
 | |
|   - Server-Links teilweise implementiert. Bisher kann der ngIRCd jedoch
 | |
|     nur "leafed server" sein, d.h. keine "Client-Server" haben.
 | |
| 
 | |
| ngIRCd 0.0.1, 31.12.2001
 | |
| 
 | |
|   - erste oeffentliche Version von ngIRCd als "public preview" :-)
 | |
| 
 | |
| 
 | |
| -- 
 | |
| $Id: NEWS,v 1.88 2008/02/26 22:05:42 fw Exp $
 | 
