Commits


Version 0.7.1


Updated documentation.


Fixed compiler warning. [from HEAD]


Enhanced VERSION command when using debug builds. [from HEAD]


Made Makefile compatible with parallel builds (make -j). [from HEAD]


Updated documentation. [from HEAD]


Made configure script more portable; added test for GNU Hurd. [from HEAD].


Updated documentation.


Fixed up post installation script.


Added interpreter ...


Added Debian post installation script.


Added /etc/default/ngircd to Debian package.


Updated documentation.


Fixed minor typo.


Included debian packaging files from CVS HEAD.


Added Makefile.am for debian/-subdirectory.


Included debian/-subdirectory in build system.


Updated config.guess and config.sub.


Changed version number to "0.7-CVS" for this branch.


NJOIN propagates user channel modes correctly again. Backport from HEAD.


Version 0.7.0


New FAQ: "why should I use ngIRCd?". [from HEAD]


Fixed spelling, thanks Goetz! [from HEAD]


"ServerName" is checked better now: a dot (".") is required.


The KILL comand verifies and logs more parameters. [from HEAD]


Updated documentation.


ngIRCd 0.7.0-pre2


Added missing "Password" variable in "[Global]" section.


Updated documentation.


Fixed --configtest: There is no variable "ServerPwd", it's "Password".


Updated documentation.


Updated documentation.


The server tried to connect to other servers only once when DNS or socket failures occured. [from HEAD].


Updated documentation.


Disabling "-ansi" on Cygwin: system headers are incompatible.


Updated documentation: added i686/pc/cygwin platform.


Updated documentation.


Check for broken GCC (on Mac OS X) and disable "-pedantic" in this case. [HEAD]


Updated documentation. [from HEAD]


Updated documentation.


New documentation file "Platforms.txt". [from HEAD]


Made scripts more portable (run on SunOS 5.6 now). [from HEAD]


Updated documentation.


Added defines for SunOS (5.6). [from HEAD]


Updated documentation.


Made setting of WANT_AUTOMAKE more portable [backport from HEAD].


Updated version number to 0.7.0-pre1.


Fixed tabs to spaces.


Translated documentation from German to English.


Updated documentation.


Updated documentation.


Translated Protocol.txt to english.


Added implicit initialisation of "i" in Conf_GetServer to workaround a egcs 2.91.66 bug which claims that this valiable could be used uninitialized.


Removed unportable %z formater in strftime().


Added missing prototype for dummy_snprintf().


Added missing include for <sys/select.h>.


Fixed up some castings.


Added some defines for Linux/glibc, reverted unused test for poll(), and enhanced summary output.


Using $(prefix)/share/doc/ngircd as documentation directory again.


Updated documentation.


Fixed spelling mistake :-)


Don't forward NJOIN's for unknown nick names.


Translated success message :-)


Updated documentation.


Added WANT_AUTOMAKE=1.6 to autogen.sh.


Re-corrected test for CVS version.


Corrected path for documentation files in summary output.


Changed documentation directory to ".../share/doc/ngIRCd" (and removed the variable PACKAGE for better Debian automake-1.4 compatibility).


Changed all PACKAGE's to PACKAGE_NAME and all VERSION's to PACKAGE_VERSION.


Updated documentation.


Added documentation path to summary output.


Implemented proper "uninstall" target for documentation files.


Install documentation files in $(datadir)/doc/ngircd.


Fixed up bad test during unregistering of services.


Synchronize server connections with server configurations after reloading the configuration.


Clean up duplicate servers correctly.


New function Conn_SyncServerStruct().


Require at least GNU automake 1.6 to generate build scripts and Makefiles.


Translated documentation to english.


Updated documentation.


Enhanced (and fiexd) IRC_TRACE(): now shows operators and correct link uptimes.


New message constant RPL_TRACEOPERATOR_MSG. Changed RPL_TRACESERVER_MSG.


Updated Mac OS X project for Project Builder.


Fixed a "checking for ..." text string.


Added #include for stdarg.h when using ower own version of vsnprintf().


Removed now obsolete test for A/UX: configure does this job now.


- Updated documentation.


- Removed german documentation (no maintainer).


Updated documentation.


Fixed up and enhanced formating of manual pages.


Updated manual page.


Updated manual page.


Updated documentation.


Updated and enhanced the daemon manual page.


Fixed some spelling mistakes.


Fixed some spelling mistakes -- thanks to ispell ;-)


Updated documentation: translated headers ...


Updated documentation.


Translated & updated documentation.


Updated documentation.


New function Simple_Message(). Better error reporting to clients on connect.


Enlarged buffer for version string ;-)


Updated documentation.


Added support for TCP Wrappers; redesigned configuration result output; Changed some "--enable"/"--disable" switches to "--with"/"--without".


Added support for TCP Wrappers.


Updated documentation.


Updated documentation.


- better compatibility


- Added optional support for Rendezvous.


- New constant RENDEZVOUS_TYPE.


- New switch "--enable-rendezvous" to enable support for Rendezvous.


- Updated documentation.


- Added new source module "rendezvous".


- Updated documentation.


- Conn_Close() ignores recursive calls for the same link now.


- new link "option" constant: CONN_ISCLOSING


- Updated documentation.


- Added AC_PREREQ(2.50) to configure.in for better autoconf compatibility.


Updated documentation.


The server didn't validate wheather the "target" client of a channel user mode change is a valid channel member or not.


- Updated documentation.


- Non-members of a channel could crash the server when trying to change its modes. Fixed.


- Updated documentation.


- Client structures are removed correctly now if an outgoing connection can't be estahlished.


- New function Client_DestroyNow().


- Updated ProjectBuilder project file for Mac OS X.


- Added "HELP" command.


- Updated documentation.


- Updated documentation.


- Added support for "TRACE" command.


- Updated documentation.


- new library "libngtool", reorganized code and directory structure therefore.


- Updated documentation.


- Enhanced error detection for numerics ("status codes").


- removed needless warning/info message.


- Updated documentation.


- MODE returns the key and user limit for channel members correctly now.


- Updated documentation.


- Kill_Nick() uses an "faked internal KILL" now.


- Enhanced IRC_KILL to get along with Client==Client_ThisServer() for "fake KILLs".


- Fixed IRC_KILL: used wrong connection index.


- Enhanced CHANINFO command for channel keys and user limits.


- Enhanced (and fixed) CHANINFO command (channel keys, user limits).


- Changed semantics of Client_SetAway().


- Updated documentation.


- fixed up propagation of modes with arguments between servers.


- Updated documentation.


- Updated german documentation.


- Updated documentation.


- Restructured documentation: now the main language is english.


- Check functions only on systems that support prototypes, elder cpmpilers become confused instead!


- Fixed call of tail, should be more portable now ...


- Link portabtest agains "true" library.


- Added missing PARAMS().


- Updated configure.in to use newer semantics of AC_INIT und AM_INIT_AUTOMAKE.


- Updated documentation.


- The server sets a correct away message now when receiving a "MODE +a".


- Renamed RPL_FEATURE_MSG to RPL_ISUPPORT_MSG.


- date in version string conforms to ISO now: YYYY-MM-DD


- Updated documentation.


- Adjusted copyright banner to include 2003 :-)


- Updated documentation.


- Fixed up command forwarding: only to servers! - Forwarding of WHOIS was broken in some situations.


- Fixed up command forwarding: only to servers!


- Updated documentation.


- Changed "once"-server-config-flag into a generic flag. - Changed semantics of "NGIRCd_Passive".


- New functions Conf_EnableServer(), Conf_DisableServer() and Conf_AddServer(). - Changed "once"-server-config-flag into a generic flag.


- New command DISCONNECT.


- New commands CONNECT and DISCONNECT.


- New commands CONNECT and DISCONNECT. - Validate operator status before syntax checks.


- Fixed test if we are still connected after a KILL command.


- Updated documentation.


- Adjusted includes for new "conn-func.h" header.


- Reorganized code for new modules "conn-func.c" and "conn-func.h".


- New source module "conn-func.c" and "conn-func.h".


- Updated dokumentation.


- Renamed functions now found in "conn-zip.c".


- New source files "conn-zip.c" and "conn-zip.h".


- Cleaned up handling of server configuration structures.


- Fixed up some brackets ("[" and "]") ...


- Optimized tests for <sys/select.h> and <sys/poll.h>.


- Enhanced check for select() and poll().


- Removed needless include of <sys/select.h>.


- Added tests for <sys/poll.h> and poll().


- Fixed prefix of error messages of KILL.


- Updated documentation.


- If the server can't close a socket, it panics now. - Quite enhanced logging :-)


- Nicer log messages ;-)


- KILL can't kill server-links any more.


- new message ERR_CANTKILLSERVER_MSG.


- Updated documentation.


- Updated documentation.


- fixed KILL: you can kill yourself now without crashing the server; QUIT isn't send to other servers after the KILL any more.


- Updated documentation.


- replaced some calls to sprintf() with snprintf() -- more secure :-)


- replaced a lot of strcpy() calls with strlcpy() which is more secure.


- replaced a lot of strcat() calls with strlcat() which is more secure.


- replaced all strncpy()'s and strncat()'s with strlcpy() and strlcat().


- include <sys/types.h>, if available.


- addes required libngircd.a library to portabcheck_LDADD.


- strlcat() and strlcpy() replacement functions.


- added prototypes for replacement functions.


- added tests for strlcpy() and strlcat().


- added tests for replacement functions.


- added strlcpy.c for strlcpy() and strlcat() replacement functions.


- definition of CONFIG_FILE and MOTD_FILE is now compatible with -Wtraditional.


- reverted last patch: now compatible with -Wtraditional of GCC 3.


- Updated documentation.


- GCC: add "-Wtraditional -Wpointer-arith -Wstrict-prototypes" to CFLAGS.


- fixed some warnings that showed up with -Wtraditional


- Updated documentation.


- Updated documentation.


- new messages: RPL_FEATURE, RPL_LOCALUSERS and RPL_NETUSERS.


- new numeric on login: RPL_FEATURE


- enhanced LUSERS reply: RPL_LOCALUSERS, RPL_NETUSERS.


- new Functions: Client_MaxUserCount(), Client_MyMaxUserCount, Adjust_Counters().


- Updated documentation.


- renamed variables to fit new signal handler. - moved call to NGIRCd_Rehash() to Conn_Handler().


- renamed variables to fit new signal handler.


- New signal handler.


- Updated documentation.


- Updated documentation.


- fixed user mode propagation over server-links (IRC operator, away, ...)


- fixed RPL_STATSCOMMANDS_MSG


- implemented subfunction "m" of STATS command.


- new function Parse_GetCommandStruct().


- new functions Conn_ResetWCounter() and Conn_WCounter().


- "STATS l" now only shows server-server-links and the own connection.


- Updated documentation.


- Validate_Config(): removed unused variable "i".


- If Conf_MaxConnections is "ulimited" (<1) it is limited to FD_SETSIZE.


- validate Conf_MaxConnections against FD_SETSIZE if available; - fixed up some log messages and enhanced configuration validation.


- new allocated connection structures will be initialized correctly now.


- Dokumentation aktualisiert.


- new constant RPL_YOURESERVICE_MSG, ERR_CHANNELISFULL_MSG, ERR_BADCHANNELKEY_MSG. - fixed ERR_PASSWDMISMATCH_MSG.


- new constant MAX_SERVICES, - added k and l modes to CHANMODES.


- Implemented channel modes k (key) and l (user limit).


- New functions Channel_[Set]Key(), Channel_[Set]MaxUsers.


- fixed some error messages and prefixes.


- fixed broken handling of modes received from other servers.


- Updated documentation.


- fixed some parsing bugs. - better logging.


- Dokumentation aktualisiert.


- modified test suite to reflect changes in MODE parser.


- new (and much more flexible!) MODE parser


- removed Conf_MaxPChannels and reverted to old behavior.


Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Conf_MaxPChannels is considered properly in channel mode changes now.


- fixed up Conf_MaxJoins test on JOIN.


- fixed up Channel_PCount() and Channel_CountForUser().


- Dokumentation aktualisiert.


- maximum channels per user limit implemented.


- new message ERR_TOOMANYCHANNELS_MSG.


- new configuration variables: MaxJoins, MaxPChannels.


- new function Channel_CountForUser().


- adjusted generation of cvs-version.h to new file header format.


- removed old ID tag


- new file header format (in english); - new file ident semantics.


- new file header format (in english).


- added missing include of stdio.h header for sprintf().


- new file header format.


- fixed up broken $Id field in new file header ...


- new file header format.


- translated file header and comments to english; - new file ident semantics.


- Dokumentation aktualisiert.


- IRC Operators can KILL users now.


- Logging von Verbindungen, die geschlossen werden/wurden verbessert.


- Logging von doppelten ID's verbessert.


- Verhalten von Conn_RecvQ() und Conn_SendQ() bei Kompression korrigiert.


- bei ISON und USERHOST fehlte im Ergebnis-String der korrekte Absender.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- STATS: Unterfunktion "L" implementiert.


- neue Befehle: Conn_StartTime(), Conn_SendQ(), Conn_RecvQ(), Conn_SendMsg(), Conn_RecvMsg(), Conn_SendBytes[Zip](), Conn_RecvBytes[Zip]().


- RPL_STATSLINKINFO_MSG ueberarbeitet, RPL_STATSLINKINFOZIP_MSG eingefuehrt.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Konfiguration wird nun besser validiert (Laenge, Zahlen).


- Tests auf ctype.h und isdigit() hinzugefuegt.


- bei STATS wurde der Target-Server aus dem falschen Argument bestimmt.


- neues Source-Modul "irc-info"; neuer Befehl STATS.


- Parser auf Befehlstabelle umgestellt.


- "Text-Prefix" fuer Server-Notices auf "" gesetzt.


- der Server verschickt keine "NOTICE AUTH"'s mehr.


- "NOTICE AUTH" und Statistiken werden im Strict-RFC-Modus nicht mehr erzeugt.


- Dokumentation aktualisiert.


- Vor dem Schliessen einer Verbindung wird versucht, den Buffer zu leeren.


- Dokumentation aktualisiert.


- SQUIT wird nicht mehr zweimal fuer einen Server verschickt.


- beim Umschalten auf Kompression wurden evtl. bereits gelesene Daten nicht entpackt, der Datenstrom war somit dann korrumpiert.


- Logging bei Prefix-Fehlern verbessert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Unterstuetzung fuer komprimierte Server-Server-Links implementiert.


- neue Funktionen: Conn_SetOption(), Conn_UnsetOption(), Conn_Options(). - wenn mit zlib-Support: Conn_InitZip().


- Test auf zlib sowie neue Option "--disable-zlib".


- Projektdatei aktualisiert (u.a. Compiler- und Linker-Flags)


- Falsche Variable korrigiert ...


- nun ueberfluessige Meldung entfernt.


- Dokumentation aktualisiert.


- neuer Befehl IRC_TIME().


- neuer IRC-Befehl "TIME".


- neue Konstante RPL_TIME_MSG.


- MOTD kann nun auch an andere Server delegiert werden.


- Dokumentation aktualisiert.


- volle Lesebuffer und Timeouts behandelt Conn_Handle() nun besser. - Handle_Buffer() liefert nun ein Ergebnis.


- Dokumentation aktualisiert.


- select() in Try_Write() hat falschen (keinen!) Timeout verwendet; - der Timeout fuer das select() in Conn_Handler() ist nun TIME_RES (=2).


- neue Konstante TIME_RES: "Zeitaufloesung" des Servers.


- Dokumentation aktualisiert ...


- Test-Suite an korrigiertest RPL_UMODEIS angepasst.


- RELOAD in REHASH umbenannt. - neue Funktion WHOWAS.


- IRC_RELOAD() in IRC_REHASH() umbenannt.


- neue Funktion IRC_WHOWAS() begonnen.


- NGIRCd_Reload() in NGIRCd_Rehash() umbenannt.


- Dokumentation aktualisiert.


- neue Meldungen: RPL_STATSLINKINFO, RPL_STATSCOMMANDS, RPL_ENDOFSTATS, RPL_WHOWASUSER, RPL_ENDOFWHOWAS und ERR_WASNOSUCHNICK.


- Dokumentation aktualisiert [RPL_UMODEIS]


- RPL_UMODEIS hat Code 221, nicht 211 ... *argl*


- Dokumentation aktualisiert [ChanMode P nur noch fuer IRC-Op's]


- Channel-Mode "P" ("persistent") kann nur noch von IRC-Ops gesetzt werden.


- Dokumentation aktualisiert [RELOAD].


- neue Funktion NGIRCd_Reload().


- Listen-Sockets werden ueber neue Funktion Conn_InitListeners() erzeugt. - neue Funktion NGIRCd_Reload(). - Logging bei empfangenen Signalen verbessert. - SIGHUP ruft nun NGIRCd_Reload() auf.


- neue Funktion IRC_RELOAD().


- neue Funktionen Conn_InitListeners() und Conn_ExitListeners().


- bessere Log-Meldungen.


- Channel_InitPredefined() prueft nun, ob ein Channel bereits existiert.


- neuer Befehl IRC_RELOAD().


- Befehle sortiert, - neuer Befehl RELOAD.


- Logging vom Resolver und Connection-Statistiken verbessert.


- Dokumentation aktualisiert.


- angenommene Socketes werden nun korrekt auf "non-blocking" gestellt; - beim Senden und Empfangen wird EAGAIN ("Blockierung") nun abgefangen.


- Dokumentation aktualisiert.


- Fehler-Ausgaben verbessert (Prefix-Fehler).


- Dokumentation aktualisiert [asyncrone Server-Passwoerter].


- Server identifizieren sich nun mit asyncronen Passwoertern.


- Rechtschreibfehler korrigiert ;-)


- anstelle von "ListenPorts" wird nun korrekt "Ports" ausgegeben.


- corrected a permission problem (Sean Reifschneider).


- ProjectBuilder-Projektdatei aktualisiert.


- doc/en/sample-ngircd.conf in Makefile-System ergaenzt.


- Dokumentation aktualisiert.


- unter HP-UX wird nun _XOPEN_SOURCE_EXTENDED definiert. Fuer den gcc unter 11.11 ist dies erforderlich.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Dokumentation fuer A/UX ueberarbeitet.


- Dokumentation aktualisiert.


- Fehler-Handling von connect() gefixed: der Server kann sich nun auch unter A/UX wieder zu anderen verbinden.


- Test-Suite an A/UX angepasst.


- Dokumentation aktualisiert.


- User und Gruppe werden nun sowohl numerisch als auch namentlich angezeigt.


- Dokumentation aktualisiert bzw. begonnen.


- Dokumentation aktualisiert.


- in ServerUID und ServerGID kann nun jeweils auch der Name (und nicht nur die numerische ID) verwendet werden.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- IRC_Server() ruft nun Conn_SetServer() zur Server-Registrierung auf.


- Neue Funktion Conn_SetServer(). - Einige assert()'s aufgeraumt.


- neue Funktion Conn_SetServer().


- Dokumentation aktualisiert.


- Code-Formatierung korrigiert (da waren Tabs wo keine hin gehoerten).


- falsche Konstante korrigiert ... *argl*!


- Server und "normale" Clients werden wieder korrekt unterschieden.


- Semantik der Conn_xxxFlag()-Funktionen geaendert.


- Dokumentation aktualisiert: neue Variable MaxConnections.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Connection-Strukturen werden nun "pool-weise" verwaltet; der Pool wird bei Bedarf bis zu einem konfigurierten Limit vergroessert. - neue Funktionen Conn_First(), Conn_Next(), Conn_ClearFlags(), Conn_Flag() und Conn_SetFlag().


- Modul an neues Connection-Handling angepasst.


- neue Konfigurationsvariable "MaxConnections".


- neue Konfigurationsvariable "Conf_MaxConnections".


Neue Funktionen: Conn_First(), Conn_Next(), Conn_ClearFlags(), Conn_SetFlag() und Conn_Flag().


MAX_CONNECTIONS durch CONNECTION_POOL ersetzt.


- GCC-Option "-ansi" hat sich leider nicht bewaehrt ... wieder entfernt.


- beim GCC wird nun die "-ansi"-Option gesetzt.


- Verbindungsstatistik ein wenig klarer formuliert.


- AdminEMail ist nun auch korrekt gesetzt.


- Anpassungen bzw. Fixes fuer "strict RFC"-Mode.


- ausgehende Verbindungen mit ID 0 konnten nicht aufgebaut werden ... :-/ - einige Debug-Ausgaben erweitert.


- Dokumentation aktualisiert.


- Segfault unter hoher Netzaktivitaet behoben: in Conn_Close() wird die Connection-Struktur nun frueher als "ungueltig" markiert. - besseres Error-Logging.


- RPL_YOURHOST_MSG nochmals leicht geaendert ...


- Dokumentation aktualisiert.


- RPL_YOURHOST_MSG ist nun ircII-kompatibel :-)


- in der Uebersicht werden die Pfad-Defines nicht mehr in CFLAGS angezeigt.


- Es wird nun laenger auf Resolver-Ergebnisse gewartet, der Login aber sofort fortgesetzt, so ein Ergebnis eintrifft.


- neue Funktion Conn_ResetPenalty().


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- "schneller Server-Reconnect" wird nun nur dann ausgefuehrt, wenn die Verbindung zuvor "lange genug" aufgebaut war (z.B. also nicht mehr, wenn der Peer sofort beim Connect ein fatales ERROR liefert).


- double in DOUBLE geaendert (ist in portab.h nun definiert).


- neue Datentypen LONG, ULONG und DOUBLE.


- verwendete Datentypen aufgeraumt: beispielsweise INT32 ist nun oft ein LONG.


- Dokumentation aktualisiert.


- fehlenden Return-Wert ergaenzt (ich Dubel).


- Client wird nun via NOTICEs ueber Resolver-Status informiert.


- NOTICE liefert nun nie(!) einen Fehler, auch nicht, wenn Client noch nicht registriert.


- neue Konstante NOTICE_TXTPREFIX.


- Server-NOTICEs haben nun ein "Text-Prefix".


- Connection-Statistik implementiert. - Server-NOTICEs haben nun ein "Text-Prefix".


- "make distcheck" lief seit der Aenderung gestern nicht mehr durch. Fixed.


- bei CVS-Versionen wird nun das Datum der letzten CVS-Aenderung angezeigt, Versionsnummer entsprechend angepasst.


- Dokumentation aktualisiert.


- der Puffer fuer das Prefix war zu klein.


- Dokumentation aktualisiert.


- "format-string-bugs", die zum Abbruch des Servers fuehrten, behoben.


- kleinere "code cleanups".


- Dokumentation aktualisiert.


- buffer overflow behoben.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Syntax von RPL_MYINFO_MSG korrigiert (liefert nun vier Parameter).


- RPM "Spec-File" in Source-Tree aufgenommen.


- Dokumentation aktualisiert.


- neues Verzeichnis "contrib" angelegt.


- fehlerhaften "Socket-Test-Patch" korrigiert.


- Dokumentation aktualisiert.


- Conn_Write() prueft nun, ob der Socket noch offen ist, ehe Daten gesendet werden.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- per Default werden nun nur noch 5 Sessions parallel gestartet.


- in RPL_YOURHOST_MSG wurde ein fehlerhafter Versionsstring geliefert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- getpid.sh wird nun auf bei "make distcheck" gefunden.


- Dokumentation aktualisiert.


- das Test-Binary wurde nicht immer kopiert.


- auch unter Cygwin wird ngircd-TEST bei "make clean" nun entfernt.


- das ngIRCd-Binary fuer die Tests wird nun kopiert, nicht mehr verlinkt.


- Dokumentation aktualisiert.


- Die PID des Test-Servers wird nun mit dem Script "getpid.sh" ermittelt.


- die ermittelte PID des ngIRCd wird besser validiert (leer?).


- Dokumentation aktualisiert.


- Fehler bei Validierung von "AdminInfo2" behoben.


- Versionsnummer fuer CVS-HEAD wieder auf "CurrentCVS" gesetzt.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Parameter fuer ps werden in anderer (besserer) Reihenfolge getestet.


- Dokumentation aktualisiert.


- Versionsnummer auf 0.5.0-pre2 angehoben.


- katastrophalen Fix fuer Return-Wert korrigiert ... ARGL!


- es wird nun auch auf "sys/select.h" geprueft. U.a. fuer AIX notwendig. - Versionsnummer auf 0.5.0-pre1 angehoben.


- Dokumentation aktualisiert.


- ProjectBuilder-Projektdatei aktualisiert.


- Dokumentation aktualisiert.


- "CC-Speed.txt" aus Distribution entfernt.


- ueberholt, wird in Zukunft auf der Webseite verfuegbar sein.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- CLIENTS-Konstante unter IRIX vermindet.


- es wird nun getestet, mit welchen Parametern "ps" aufgerufen werden muss.


- neue Konstanten: RPL_ADMINME_MSG, RPL_ADMINLOC1_MSG, RPL_ADMINLOC2_MSG, RPL_ADMINEMAIL_MSG.


- Auf Systemen, die "sys/select.h" kennen (z.B. AIX 3.2.5) wird dieses nun includiert.


- neuer Befehl: ADMIN


- IRC_WriteStrServersPrefix() lieferte einen Return-Wert, obwohl als VOID deklariert.


- LIST kann nun auch an andere Server geforwarded werden.


- neuer Befehl IRC_ADMIN().


- Admin-Info eingebaut (Variablen "AdminInfo1", "AdminInfo2" und "AdminEMail").


- Admin-Info eingebaut (Variablen "AdminInfo1", "AdminInfo2" und "AdminEMail"); - Bug bei zu langem Operator-Name behoben.


- unter Darwin werden nur noch 20 Clients parallel gestartet.


- ps wird nun (hoffentlich portabler) jeweils mit "ax" aufgerufen.


- ${srcdir} wird nun beachtet.


- PID des Test-Servers wird besser ermittelt.


- Test-Server wird in aktuelles Verzeichnis als "ngircd-TEST" verlinkt. - die PID des Test-ngIRCd wird besser ermittelt.


- $(srcdir) wird nun beachtet; fehlenden "\" ergaenzt; Dateien ergaenzt.


- Dokumentation aktualisiert.


- EXTRA_DIST ergaenzt, clean-Target erweitert. - neues Script "stress-server.sh" integriert.


- laeuft der ngIRCd im Vordergrund, so wird syslog nicht mehr benutzt.


- Tests erweitert.


- nun ist auch ein Test-Operator konfiguriert.


- Test-Suite fuer den ngIRCd begonnen.


- Testprogramm ueberarbeitet, macht nun selber keine Ausgaben mehr.


- Anpassungen an neue Test-Suite (Ausgabeformat).


- ngIRCd "Test-Suite" in Build-System aufgenommen.


- Server-Versionsausgabe ueberarbeitet.


- Parameter von List_Add{Invited|Banned}() erweitert. - neue Funktion Already_Registered(). - doppelte Ban- und Invite-Eintraege werden nun vermieden.


- Parameter von List_Add{Invited|Banned}() erweitert.


- auch Nicht-ChanOps konnten Ban- und Invite-Lists veraendern.


- Bans/Invites: andere Server wurden nicht informiert. - neue Funktion Send_ListChange().


- Dokumentation aktualisiert.


- neu: Lists_AddInvited(), Lists_DelInvited(), Lists_ShowInvites, Lists_AddBanned(), Lists_DelBanned(), Lists_ShowBanned und Lists_MakeMask().


- neu: Check_List(), Check_List(), Lists_AddInvited(), Lists_DelInvited(), Lists_ShowInvites, Lists_AddBanned(), Lists_DelBanned(), Lists_ShowBanned und Lists_MakeMask(). - einige Bug-Fixes, bessere Debug-Meldungen.


- den BAN-Befehl gibt es gar nicht ;-)


- ein INVITE wird auch dann gespeichert (obwohl der Channel nicht +i ist), wenn der Client gebanned ist. - den BAN-Befehl gibt es gar nicht ;-)


- Invite- und Ban-Lists (MODE +I, MODE +b) implementiert.


- ein "banned client" darf in einen Channel, wenn er "invited" ist.


- Penalty-Delays gelten nun auch für Schreibvorgaenge. - Conn_Handler() besser strukturiert ...


- "Timing" mal wieder geaendert: sollte schon 1 Sekunde sein, sonst kommen z.B. die PING-Timeouts falsch.


- "Timing" von Conn_Handler() geaendert: der Daemon sollte nun noch weniger CPU-Zeit brauchen :-)


- "check-version" an neuen Versionsstring angepasst.


- Dokumentation aktualisiert.


- Konfigurations-Uebersicht am Ende des configure-Lauf. - neue Option "--disable-ircplus".


- IRC+-Protokoll ist nun abschaltbar. - neue Konstante PROTOIRC.


- IRC+-Protokoll ist nun abschaltbar.


- IRC+-Protokoll ist nun abschaltbar; Versionsstring angepasst.


- nun wird autoconf 2.50 als Minimum vorausgesetzt.


- Dokumentation aktualisiert.


- Protokollbeschreibung fuer IRC+-Protokoll angepasst.


- Dokumentation aktualisiert.


- New_Chan() in Channel_Create() umbenannt; entsprechende Anpassungen. - Neue Funktion Channel_SetModes().


- neuen Befehl CHANINFO implementiert: IRC_CHANINFO().


- neue Funktion IRC_WriteStrServersPrefixFlag().


- CHANINFO wird auf Server-Links gesendet, wenn unterstuetzt.


- neuen Befehl CONNECT begonnen zu implementieren.


- neue Befehle CHANINFO und CONNECT.


- neue Konstante IRCPLUSFLAGS.


- IRC+-Protokoll-Flags erweitert.


- Das IRC+-Protokoll wird nun richtig erkannt ...


- Anpassungen/Umstellung auf IRC+-Protokoll.


- Dokumentation aktualisiert.


- Flags von connecteten Servern werden nun gespeichert.


- CLIENT-Struktur um Flags erweitert. - neue Funktionen Client_SetFlags() und Client_Flags().


- neue Konstante CLIENT_FLAGS_LEN.


- Ausgaben auf der Console werden nun "geflushed".


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Server-Flag "o" ("OperCanUseMode") implementiert.


- neue Datei "Protocol.txt" hinzugefuegt.


- Dokumentation des vom ngIRCd verwendeten Protokolls begonnen.


- Logmeldungen fuer Server- und Protokollversionen verbessert.


- Dokumentation aktualisiert.


- Konstante PASSSERVERADD durch Variable NGIRCd_ProtoID ersetzt.


- Version (Server und Protokoll) von connectierten Servern wird nun ausgewertet.


- PASS-Befehl auf NGIRCd_ProtoID umgestellt.


- neue Variable: NGIRCd_ProtoID (Protokoll- und Server-ID fuer "PASS"-Befehl)


- NGIRCd_ProtoID (Protokoll- und Server-ID) wird erzeugt.


- vorkonfigurierte Channel: Fehlerhaften Test "kein Null-Name" korrigiert.


- Dokumentation aktualisiert


- neue Konfigurationsoption "OperCanUseMode" (Sektion "Global"): ist sie aktiv, koennen IRC-Operatoren immer Channel-Modes setzen.


- an Clients wurden Modes mit fuehrendem ":" geliefert. Das ist zwar RFC- konform (IMO), macht aber leider grosse(!!) Probleme :-/


- Hmpf. "Verfruehtes" CVS-Update einiger Source-Files zurueckgenommen ...


- Bei einem JOIN in einen persistenten Channel werden nun evtl. zu setzende User-Modes korrekt in den Channel gemeldet.


- neue Funktion Conn_SetPenalty() zum Setzen von sog. "Penalty Zeiten"; wird bisher nur beim Connect verwendet (eine Sekunde).


- Prefixe werden nur noch bei reg. Verbindungen validiert, ansonsten ignoriert.


- Semantik der Validate_XXX()-Funktionen verbessert, - Validate_Prefix() mit "Leben" erfuellt ;-)


- Dokumentation aktualisiert.


- NJOIN wurde "zerhackt" an andere Server weitergegeben.


- KILL konnte keine Remote-Clients toeten; zudem besseres Logging.


- bei INVITE wurde im Antwort-Status-Code das falsche Prefix verschickt.


- "portability header" werden nun bei Lint-Laeufen gefunden.


- Lists_AddInvited() kann nun einen Fehler liefern.


- Channel-Modes "b" und "I" in CHANMODES aufgenommen.


- neue Konstanten fuer Invite- und Banlists: RPL_xxxLIST_MSG, RPL_ENDOFxxx_MSG - neue Message ERR_UNKNOWNMODE_MSG.


- Dokumentation aktualisiert.


- Projektdatei fuer den ProjectBuilder unter Mac OS X aktualisiert.


- Dokumentation aktualisiert.


- Tests auf regex.h und regcomp() entfernt: werde nun doch nicht benoetigt.


- neues Modul match.c/match.h hinzugefuegt.


- IRC_LIST ruft nun Match() auf und beherrscht somit nun Patterns.


- neues #define: REGISTER


- neues Modul "match" begonnen.


- Reihenfolge der Tests geaendert. Ist "huebscher" :-)


- Mac OS X ProjectBuilder-Projektdatei aktualisiert.


- Dokumentation aktualisiert.


- IRC_INVITE() validierte das Ziel eines INVITES nicht korrekt.


- auch bei IRC_NOTICE() wurde das Ziel nicht korrekt validiert.


- Dokumentation aktualisiert.


- Code-Stelle in IRC_JOIN "klarer" gemacht :-)


- bessere Fehlermeldung, wenn malloc() fehl schlaegt.


- wurde bei PRIVMSG als Ziel ein Server angegeben, so beendete sich der ngircd mit einem assert().


- Dokumentation aktualisiert.


- Bessere Logging, wenn malloc() fehl schlaegt.


- Flag "OnlyOnce" bei Lists_AddInvited() ergaenzt. - Neue Funktion Lists_DeleteChannel().


- Invite-Lists weiter implementiert. - Flag "OnlyOnce" bei Lists_AddInvited() ergaenzt. - Neue Funktion Lists_DeleteChannel().


- Flag "OnlyOnce" bei Lists_AddInvited() ergaenzt.


- Besseres Logging, wenn malloc() fehl schlaegt. - Ban- und Invite-Lists werden korrekt aufgeraeumt.


- der INCLUDE-Pfad wird nun anders gesetzt; loest Probleme mit ansi2knr.


- besseres Logging beim Restart des Servers.


- Pre-defined Channels werden spaeter erzeugt.


- Neue Funktion Channel_InitPredefined().


- Log-Meldungen bezueglich Server-Restart verbessert.


- Syntax von Conn_Handler() geaendert: kein Timeout mehr. - Log-Meldungen bezueglich Server-Restart verbessert. - Timeout von select() auf eine Sekunde erhoeht.


- Syntax von Conn_Handler() geaendert: kein Timeout mehr.


- die "umask" des Servers wird nun auf 077 gesetzt; - Hauptschleife geaendert.


- IRC_INVITE() implementiert.


- neue Funktion Lists_AddInvited().


- neue Konstanten ERR_INVITEONLYCHAN_MSG und ERR_BANNEDFROMCHAN_MSG.


- nicht unterstuetzte Channel-Modes entfernt.


- JOIN: Invite- und Ban-Lists werden nun beachtet.


- neue Konstanten RPL_INVITING_MSG und ERR_USERONCHANNEL_MSG.


- QUIT wurde mir falschem Prefix verschickt.


- Dokumentation aktualisiert.


- neue Konstante ERR_USERNOTINCHANNEL_MSG definiert.


- IRC_KICK() implementiert.


- fehlerhaften Fehlercode in IRC_TOPIC() gefixed.


- Channel_RemoveClient() heisst nun Channel_Quit().


- neue Funktionen Channel_Kick() und Channel_Quit(); - Channel_RemoveClient() ist entfallen.


- neue Funktionen Channel_Kick() und Channel_Quit(); - Channel_RemoveClient() ist entfallen. - Remove_Client() ueberarbeitet: nun mit Unterstuetzung fuer PART, QUIT und KICK.


- Konstanten aufgeraeumt, unnoetige entfernt.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Projektdatei aktualisiert.


- Weitere Anpassungen an pre-ANSI-Compiler.


- Dokumentation aktualisiert.


- fehlerhafter Test auf "regex.h" korrigiert.


- Anpassungen an pre-ANSI-Compiler, - Includes aufgeraumt: Header includieren keine anderen mehr.


- neue Module "lists", "irc-op" und "resolve" aufgenommen.


- Channel-Mode "i" in Feature-Konstante aufgenommen,


- Tests auf regex.h,varargs.h und regcomp geaendert.


- Anpassungen an pre-ANSI-Compiler.


- Anpassungen an pre-ANSI-Compiler.


- Aenderungen fuer pre-ANSI-Compiler.


- neue Module "irc-op", "lists" und "resolve" integriert.


- neues Modul "resolve" begonnen.


- neues Modul "lists" begonnen.


- neues Modul "irc-op" begonnen.


- Test auf malloc.h geaendert: der Header ist nun optional.


- Dokumentation aktualisiert.


- bei "--configtest" werden keine leeren Bloecke mehr ausgegeben.


- Test auf stdint.h korrigiert: der Header ist optional.


- alten CVS-ID-Tag entfernt; ansi2knr.c ist direkt von automake uebernommen.


- ansi2knr zum CVS-Tree hinzugefuegt.


- einige Tests ergaenzt bzw. aktualisiert.


- "ansi2knr" zur "DeANSIfikation" als automake-Option gesetzt.


- Test, ob Compiler Funktions-Prototypen versteht, hinzugefuegt.


- persistente und vordefinierte Channels implementiert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- bessere Reaktionen, wenn DNS-Abfragen fehlschlagen.


- Definition von "signed" wieder entfernt: mehr Schaden als Nutzen :-/


- Dummy fuer inet_aton() entfernt. "signed" wird bei Bedarf definiert.


- Code aufgeraeumt, Tests auf C99-vsnprintf() entfernt (fuer ngIRCd unnoetig).


- inet_aton() wird nur noch verwendet, wenn vorhanden; ansonsten inet_addr().


- vsnprintf.h und splint.h zu Projektdatei hinzugefuegt.


- POSIX Regular Expressions werden nun vorausgesetzt, - Test auf snprintf und vsnprintf geaendert.


- Dokumentation aktualisiert.


- die libngportab wurde "zu frueh" zum ngIRCd gelinkt ...


- neue Library "ngportab" begonnen: diese bildet Funktionen nach, die auf dem Ziel-System nicht vorhanden sind -- wie z.B. vsnprintf().


- ngircd wird nun gegen die libngportab gelinkt, die evtl. benoetigte und nicht auf dem System vorhandene Funktionen nachbildet.


- Test auf ctype.h ergaenzt, Test auf vsnprintf() geaendert.


- Dokumentation aktualisiert.


- h_error wird nur noch ausgewertet, wenn vorhanden.


- Dokumentation aktualisiert.


- der Sniffer (--sniffer) aktiviert nun automatisch den Debug-Modus mit.


- Makefile.am in doc/en wird nun auch erzeugt :-)


- Dokumentation aktualisiert.


- Dokumentation aktualisiert (u.a. englische Versionen)


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Test auf POSIX Regular-Expression-Funktionen eingebaut.


- Dokumentation aktualisiert.


- neue Funktion Channel_MemberCount() implementiert.


- Neue Funktion IRC_LIST() begonnen zu implementieren.


- Neue IRC-Funktion LIST implementiert.


- zwei neue Konstanten definiert: RPL_LIST_MSG und RPL_LISTEND_MSG.


- Dokumentation aktualisiert.


- IRC_QUIT(): der QUIT-Befehl wird nun auch von unreg. Clients akzeptiert.


- Count_MyServers() zaehlt nun wieder richtig, LUSERS sollte nun wieder die korrekte Anzahl eigener Server-Links anzeigen.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- Format-String fuer Log-Meldung bei Nick-Aenderungen lokaler Clients war corrupt, der Server stuerzte so in der Regel ab :-(


- Dokumentation aktualisiert.


- Es wird nicht mehr anhand der Parameter-Anzahl, sondern des Token erkannt, ob es sich beim SERVER-Befehl um ein- oder ausgehende Verbindungen handelt und somit die eigenen PASS- und SERVER-Befehle gesendet werden muessen.


- neue Konstante TOKEN_OUTBOUND.


- ausgehende, sich im Aufbau befindende Server-Links werden nun mit einem speziellen Token (TOKEN_OUTBOUND) versehen, damit der Server sie spaeter als solche wieder erkennen kann.


- MAX_OPERATORS und MAX_SERVERS auf je 16 angehoben :-)


- stdlib.h wird nun includiert.


- string.h wird nun includiert.


- das "new line" am Ende der Datei fehlte ...


- Manual-Pages wurden bei "clean" nach wie vor geloescht ... Upsa!


- die Manual-Pages fehlten in Distributions-Archiven.


- Formatierung des Author-Abschnitt korrigiert.


- Zeilenumbruch korrigiert.


- Manual-Page enthaelt nun auch korrekte URLs.


- Manual Page aktualisiert.


- nroff/groff werden doch nicht benoetigt, Test wieder entfernt.


- Manual-Pages unter neuen Namen begonnen.


- Manual-Pages heissen nun anders und werden auch nicht mehr "bereits uebersetzt" installiert.


- Dokumentation aktualisiert.


- Dokumentation aus branch-0-4-x uebernommen.


- URL der Homepage zu Versionstext hinzugefueht (aus branch-0-4-x).


- Dokumentation aktualisiert (uebernommen aus branch-0-4-x).


Manualpage verbessert.


- Manual-Page aktualisiert.


- nun wird groff oder nroff verwendet. Pfade angepasst.


- Manual-Pages begonnen und in Source-Tree eingebunden.


- Dokumentation aktualisiert.


- die Versionsnummer des HEAD-Branch im CVS ist nun einfach nur noch "CVS".


- im Debug-Modus wird nun der Name der "Error-Datei" ausgegeben.


- Kommandozeilen-Option "-f" wurde falsch geparsed.


- unter A/UX wird nun _POSIX_SOURCE definiert.


- Test auf ngircd.conf in -f geaendert: das test von A/UX kennt kein -e.


- falschen Patch rueckgaengig gemacht ...


- in das "Error-File" werden wieder "kritische" Meldungen geschrieben.


- wenn kein ListenPort definiert ist, so wird nun 6667 als Default verwendet.


- Dokumentation aktualisiert.


- in das Error-Log wurde eine nicht-initialisierte Start-Zeit geschrieben.


- Dokumentation aktualisiert.


- Error-Log wird nach User-Wechsel mit Log_InitErrorfile() initialisiert. - Einige Tippfehler korrigiert ...


- Error-Log wird nach User-Wechsel initialisiert: Log_InitErrorfile().


- neue Konfigurations-Variablen ServerUID und ServerGID.


- der Daemon kann nun seine UID und GID wechseln.


- Handling des "Error-File" (stderr) geaendert.


- ERROR_DIR auf "/tmp" geaendert: dort darf i.d.R. jeder schreiben.


- Conn_NewListener() erwartet den Port nun als "unsigned int".


- Conf_ListenPorts[] ist nun unsigned. - Neue Konfigurations-Variablen Conf_UID und Conf_GID.


- das "localstatedir" wird nicht mehr erzeugt, da nicht mehr benoetigt.


- LOCALSTATEDIR wird nicht mehr benoetigt.


- das Error-File wird nun komplett durch das Log-Modul verwaltet, der Dateiname enthaelt nun die PID: so koennen mehrere Instanzen laufen.


- ERROR_FILE wurde durch ERROR_DIR ersetzt.


- neuer Kommandozeilen-Parameter "--config"/"-f".


- Dokumentation aktualisiert.


- Hmpf. NOTICE von Server Notices wurde ohne Absender verschickt :-/


- Server Notices (User-Mode "s") implementiert.


- einige Log-Meldungen werden nun auch als Server Notice verschickt.


- Dokumentation aktualisiert.


- Dokumentation aktualisiert.


- neuer Kommandozeilen-Parameter "--configtest": gibt die verwendete Server- Konfiguration aus. Diesbezuegliche Ausgaben bei "--help" sind entfallen.


- NGIRCd_ConfFile definiert.


- MAX_LOG_MSG_LEN ist nun global in defines.h definiert.


- neues #define: MAX_LOG_MSG_LEN.


- neue Funktion Conf_Test() zum Testen der Konfiguration. - Conf_File ist entfallen, ist nun NGIRCd_ConfFile.


- Kommentar korrekt eingerueckt. Wow ;-)


- Ping-Timeouts geben als Debug-Meldung den konfigurierten Timeout mit aus.


- lint-Target in Haupt-Makefile aufgenommen.


- SPLint in Makefiles als Target "lint" eingebunden.


- neuer Header splint.h fuer Code-Check mit SPLint.


- einige Anpassungen nach Code-Check mit SPLint ;-)


- ChangeLog aktualisiert.


- neue Konstante fuer "Server Messages" (User-Mode "s").


- bei Get_Prefix() fehlte das "LOCAL".


- alle Client_GetFromID() durch Client_Search() ersetzt. - neuer Mode "s": Server Messages.


- alle Client_GetFromID() durch Client_Search() ersetzt.


- alle Client_GetFromID() durch Client_Search() ersetzt. - IRC_PRIVMSG() ruft nun intern Channel_Write() auf.


- Client_GetFromID() ist entfallen: Client_Search() benutzen! - Client-Struktur um Hash-Wert ueber ID/Nick ergaenzt.


- Client_SetID() berechnet Hash-Wert ueber ID/Nick. - Client_GetFromID() heisst nun Client_Search(), zudem wird via Hash gesucht. - Client_CheckNick() sucht nicht mehr selber. - altes Client_Search() ist entfallen (s.o.).


- Channel-Struktur um Hash-Wert ueber Namen ergaenzt. - Neue Funktion Channel_Write().


- New_Chan() berechnet Hash-Werte ueber den Namen. - Channel_Search() verwendet nun Hash-Werte. - Neue Funktion Channel_Write().


- portabtest als neues Target im ProjectBuilder eingefuehrt.


- Default PONG-Timeout auf 20 Sekunden verdoppelt.


- Dateien umsortiert.


- Hast wird immer ueber in Kleinbuchstaben gewandelten String berechnet.


- neue Funktion ngt_LowerStr().


- README aktualisiert.


- Meldungen im Error-File werden nun mit Zeitangabe versehen.


- Nick-Aenderungen: Log-Eintrag nur noch im Debug-Modus bzw. fuer lokale User.


- portabtest wird nur noch compiliert, wenn benoetigt (z.B. "make check")


- API fuer Hash() definiert.


- Implementation einer Hash-Funktion begonnen.


- einige assert()-Pruefungen in Conn_WriteStr() ergaenzt.


- A/UX kennt O_NONBLOCK nicht? Oder in einem anderen Header? ...?


- Test, ob bereits ein Server einer Gruppe aktiv ist, korrigiert.


- Netz-Split-Nachricht war so falsch. Nun ist sie korrekt aber nicht schoen.


- Projektdatei an neue Quellcode-Struktur angepasst.


- Versions-String um "Vendor" erweitert.


- Informationen um "Vendor" ergaenzt.


- Beispiel-Konfiguration besser dokumentiert (Kommentar-Zeichen).


- Dokumentation aktualisiert.


- der System-Typ wird nun wieder korrekt ermittelt und verwendet.


- config.sub und congfig.guess zu ngIRCd-Distribution hinzugefuegt.


- externe portab-Header werden nicht mehr benoetigt/benutzt, dadurch einige Aenderungen an diversen Source-Dateien und Headern. - Dateien enthalten keine CVS-History mehr.


- externe portab-Header werden nicht mehr benoetigt. Notwendige Teile sind nun im ngIRCd-Source-Tree enthalten.


- Datei ist faelschlicherweise in das CVS "geschliddert" ... ,-)


- SQUIT, QUIT: Loglevel bei unbekannten Clients wieder auf WARNING erhoeht.


- Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken?


- Log-Level von SQUIT und QUIT bei unbekannten Clients auf DEBUG herabgesetzt....


- Log-Level von SQUIT und QUIT bei unbekannten Clients auf DEBUG herabgesetzt.


- ein sofortiger Re-Connect wird nur dann versucht, wenn die Vernindung "lange genug" bereits bestanden hatte.


- ChangeLog aktualisiert.


- IRC_PING() ist, wenn nicht im "strict RFC"-Mode, toleranter und akzptiert beliebig viele Parameter: z.B. BitchX sendet soetwas.


- Netz-Splits werden nun als soche ausgegeben.


*** empty log message ***


- Dokumentation aktualisiert.


- Beispiel-Konfigurationsdatei besser dokumentiert und erweitert.


- bei WHO, WHOIS und NAMES wird nun nur noch der Status "Operator" oder "voiced" geliefert -- nicht mehr beides.


- ChangeLog aktualisiert.


- Handling von "--version" und "--help" nochmal geaendert ...


- ChangeLog aktualisiert.


- bei "ngircd --version" werden nun die eincompilierten Pfade angezeigt.


- Dokumentation aktualisiert.


- der Bindestrich ("-") ist nun auch in Nicknames erlaubt.


- die Pfade der Konfigurationsdatei, des MOTD und das Error-Files werden nun aus den Vorgaben von configure ermittelt.


- das "localstatedir" wird fur "ngircd.err" angelegt.


- die Beispiel-Konfigurationsdatei wird als ngircd.conf installiert, wenn noch keine "echte" Konfigurationsdatei vorhanden ist.


- es werden nun die Konstanten SYSCONFDIR und LOCALSTATEDIR definiert.


- Anpassungen an neues GNU automake/autoconf: acconfig.h entfaellt nun.


- kleine Code-Umstellungen.


- Dokumentation aktualisiert.


- stderr wird nun in eine Datei umgelenkt (ngircd.err). Wenn der Server nicht im Debug-Modus laeuft, so wird diese bei Programmende geloescht.


- Dateinamen und Pfad sind nun in Konstanten definiert.


- ein paar assert()-Tests ergaenzt.


- kleinere Umstellungen.


- Logging geaendert: detaillierter im Syslog, "allgemeiner" fuer Clients.


- der WHO-Befehl (ohne Argumente) gat teilweise Channel-Names vergessen.


- der AWAY-Mode wurde nicht ueber mehrere Server-Links weitergegeben.


- ChangeLog aktualisiert.


- neue Konstante DEFAULT_AWAY_MSG fuer die Default-Away-Meldung.


- neuen Clients mit Mode "a" wird nun auch der Default-Away-Text gesetzt.


- WHO implementiert (bisher ohne Unterstuetzung von Masks)


- Aktualisierungen.


- neue Konstanten RPL_ENDOFWHO_MSG und RPL_WHOREPLY_MSG definiert.


- Sourcen auf weitere Module fuer IRC-Befehle aufgesplitted. - IRC-Befehl WHO implementiert.


- strncpy() und vsnprintf() kopieren nun etwas "optimierter" (1 Byte weniger) :-)


- Source in weitere Module fuer IRC-Befehle aufgesplitted.


- README aktualisiert.


- Dokumentation aktualisiert.


- Versionsnummer auf 0.3.0-CVS angehoben.


- INSTALL um Hinweise auf portab.h etc. ergaenzt.


- Version 0.3.0


- Aenderung des Idle-Verhalten revidiert: das war ein Schnellschuss :-/


- Timeouts ausgehender Verbindungen werden besser erkannt (z.B. unter Cygwin). - Idle-Time der Hauptschleife [Conn_Handle()] erhoeht: weniger Last.


- Aktualisierungen.


- Channel- und Nicknames werden nun ordentlich validiert.


- Bei der USER-Registrierung wird NICK nicht mehr sofort geforwarded, sondern erst dann, wenn auch ein gueltiges USER empfangen wurde.


- bei abgebrochene ausgehende Server-Verbindungen wird der naechste Ver- bindungsversuch in RECONNECT_DELAY Sekunden (3) unternommen und nicht mehr "ConnectRetry" Sekunden gewartet.


- der Wert der Konfigurations-Variable "ConnectRetry" wird besser beachtet.


Aktualisierung.


- ChangeLog aktualisiert.


- ausgehende Verbindungen werden nun asyncron connectiert und blockieren nicht mehr den Server. Dadurch waren einige Aenderungen noetig. - diverse Log-Meldungen ueberarbeitet.


- Forwarding von TOPIC an andere Server gefixed. Hoffentlich ;-)


- einige Funktionen in irc-xxx-Module ausgegliedert.


- Modul aus irc.c bzw. irc.h ausgegliedert.


- Anpassungen an Aufteilung von irc.d, Init- und Exit-Funktionen entfernt.


- CONNECTED und DISCONNECTED fuer die irc-xxx-Module wird nun hier definiert.


- ueberfluessige Init- und Exit-Funktionen entfernt.


- Includes fuer einige Header bereinigt.


- einige Header umgestellt, neue Source-Dateien irc-xxx.c


- NEWS und ChangeLog aktualisiert.


- Channel-Topics werden nun auch korrekt von anderen Server angenommen.


- Channel-Topics implementiert.


- neue Text-Konstante: ERR_NOTONCHANNEL_MSG


- neue Konstante: CHANNEL_TOPIC_LEN


- neue Funktionen Channel_Topic() und Channel_SetTopic().


- Aktualisierungen.


- PRIVMSG zeugt nun bei Texten an User an, wenn diese "away" sind.


- IRC-Befehl "AWAY" implementert.


- neue Text-Konstanten RPL_UNAWAY_MSG und RPL_NOWAWAY_MSG.


- Mode "a" (away) in USERMODES aufgenommen.


- neue Funktion Client_SetAway() und Client_Away() implementiert.


- ChangeLog aktualisiert.


- PRIVMSG beachtet nun die Channel-Modes "n" und "m".


- neue Text-Konstante ERR_CANNOTSENDTOCHAN_MSG eingefuehrt.


- ChangeLog aktualisiert.


- Bug bei belegtem Nickname bei User-Registrierung (NICK-Befehl) behoben.


- NAMES beachtet nun das "invisible" Flag ("i") von Usern.


- neue Funktion Channel_IsMemberOf() implementiert.


- Logging beim Abmelden von Clients (erneut) geaendert: nun ist's aber gut ;-)


- Logging bei Timeout von Verbindungen geaendert.


- gerade eben in SQUIT eingefuehrten Bug behoben: entfernte Server werden nun nur noch geloescht, die Verbindung, von der SQUIT kam, bleibt wieder offen.


*** empty log message ***


- Log-Meldungen bei SQUIT erneut ueberarbeitet ...


- SQUIT wird auf jeden Fall geforwarded, zudem besseres Logging.


- an Conn_Close() werden zwei weitere Fehlermeldungen zum Forwarden uebergeben.


*** empty log message ***


- einige unnoetige Client_NextHop()-Aufrufe entfernt. - NAMES korrigiert und komplett implementiert.


- Nick-Aenderungen werden nun wieder korrekt ins Logfile geschrieben.


- VERSION wurde falsch weitergeleitet und beantwortet (Prefix nicht beachtet)


- Fehler bei Fehlermeldung wg. unbekanntem Prefix behoben.


*** empty log message ***


- an User wird nun immer ein "komplettes" Prefix verschickt.


- die neuen Texte werden nun auch in Archive ("make dist") aufgenommen ;-)


- etwas mehr Doku ;-)


*** empty log message ***


- WHOIS wird nicht mehr automatisch an den "Original-Server" weiterge- leitet: war eh nicht RFC-konform und machte Probleme mit Clients.


*** empty log message ***


- es wird auf sigaction() geprueft (u.a. fuer A/UX, welches das nicht kennt).


- wenn ein System sigaction() nicht kennt, so wird nun signal() verwendet.


- unter A/UX wird _POSIX_SOURCE definiert: fuer Systemheader notwendig.


- es werden ein paar Funktionen mehr getestet: u.a. vsnprintf() und setsockopt(). - libUTIL wird eingebunden, so vorhanden (unter A/UX notwendig!)


- IRC-Befehl KILL sowie Kills bei Nick Collsisions implementiert.


- fuer SIGCHLD wird nun auch SA_NOCLDWAIT gesetzt, wenn vorhanden.


- Ergebnistyp von Conn_GetIdle() und Conn_LastPing() auf "time_t" geaendert.


*** empty log message ***


- die Rechte der check-Scripts wurde nicht gesetzt.


- "check"-Target für "make check" und "make distcheck" begonnen ...


*** empty log message ***


- Bei ausgehenden Verbindungen wird der Ziel-Port ins Log geschrieben.


*** empty log message ***


- SA_RESTART wird fuer Signale nur noch gesetzt, wenn es definiert ist.


*** empty log message ***


*** empty log message ***


- "Passive-Mode" implementiert: kein Auto-Conect zu anderen Servern. - NGIRCd_DebugLevel wird (fuer VERSION-Befehl) ermittelt.


- Neue Variablen NGIRCd_DebugVersion und NGIRCd_Passive.


- direkt nach dem Start werden die aktiven "Modes" ins Log geschrieben.


- User-Registrierung wird nicht mehr als Nick-Aenderung protokolliert, - VERSION liefert nun doch wieder den Debug-Status im Reply.


- "Passive-Mode" implementiert: kein Auto-Conect zu anderen Servern.


- FAQ um Hinweise auf den Bugtracker ergaenzt.


- der Debug-Level wird bei VERSION nicht mehr geliefert. Grund: a) absolut unnoetig und b) Compiler-Fehler, wenn ohne Debug-Code configure'd ;-))


- auf die "libbe" wird nur noch getestet, wenn syslog ueberhaupt verwendet wird.


- Neue Funktion NGIRCd_VersionAddition().


- neue Funktion NGIRCd_VersionAddition(). NGIRCd_Version() aufgespaltet.


- Konstanten sortiert, neue Konstante RPL_VERSION und RPL_VERSION_MSG.


- neuer IRC-Befehl VERSION implementiert: IRC_VERSION().


*** empty log message ***


- Versionsnummer im CVS auf 0.2.2-pre angehoben ...


*** empty log message ***


- Version 0.2.1.


*** empty log message ***


- NICK-Aenderungen wurden dem User selber mit dem falschen Prefix geliefert.


- Client_CheckNick() und Client_CheckID() lieferten u.U. falsche Ergebnisse.


- Tests auf netdb.h, stdlib.h, sys/wait.h, gethostbyaddr, gethostbyname, strftime und die "libbe" unter BeOS (fuer syslog) ergaenzt.


*** empty log message ***


- Fehlerhafte Modes werden nun ausfuehrlicher an den Client gemeldet.


- neue Text-Konstante ERR_UMODEUNKNOWNFLAG2_MSG.


- Beispiel-Konfiguration etwas erweitert. Doku fehlt immer noch ...


- NICK-Aenderungen werden an alle Server und betroffene Clients gemeldet. - Neue Funktion IRC_WriteStrRelatedPrefix().


- NICK korrigiert.


*** empty log message ***


- CVS-Doku um anonymen Zugang ergaenzt.


- Version auf 0.2.1-pre im CVS angehoben ...


- Version 0.2.0


*** empty log message ***


- Nach Connect eines Users werden LUSERS-Informationen angezeigt.


- RPL_MYINFO_MSG korrigiert.


- CHANMODES um Operator (o) und Voiced User (v) ergaenzt.


*** empty log message ***


- es werden nun Channel- und User-Modes von Usern angenommen.


- unterstuetzte User- und Channel-Modes stehen nun in Konstanten.


- via NJOIN gemeldete Benutzer wurden nicht in Channels bekannt gemacht.


- weitere Anpassungen an Channel-Modes und Channel-User-Modes.


- neue Message ERR_CHANOPRIVSNEEDED_MSG definiert.


- Die Quelle von MODE-Aenderungen wird nun korrekt weitergegeben.


- PONG an den Server selber wurde faelschlicherweise versucht zu forwarden. - Channel-Modes wurden falsch geliefert (als User-Modes).


- neue Nachricht RPL_CHANNELMODEIS definiert.


- PING und PONG werden nun auch korrekt an andere Server geforwarded. - bei MODE-Meldungen wird der letzte Parameter nicht mehr mit ":" getrennt.


- Aenderungen und Anpassungen an Channel-Modes und Channel-User-Modes: Modes werden besser geforwarded, lokale User, fuer die ein Channel angelegt wird, werden Channel-Operator, etc. pp. ... - NJOIN's von Servern werden nun korrekt an andere Server weitergeleitet.


- neue Funktion Conn_LastPing().


- neue Funktionen Channel_ModeAdd(), Channel_ModeDel(), Channel_UserModes(), Channel_UserModeAdd(), Channel_UserModeDel().


- neue Funktionen Channel_ModeAdd(), Channel_ModeDel(), Channel_UserModes(), Channel_UserModeAdd(), Channel_UserModeDel(). - Modes in CL2CHAN-Struktur werden nun korrekt initialisiert.


- Aktualisierungen ...


- neue Text-Konstante RPL_UMODEISCHAN_MSG.


- neue Funktion zur MODE-Behandlung, fuer Channel-Modes vorbereitet.


- neue Funktion Client_IsValidNick().


- neue Funktion Client_IsValidNick(), Nicknames werden besser validiert.


- neue Funktionen Channel_Modes() und Channel_IsValidName().


- neue Funktion Channel_Modes() und Channel_IsValidName(). - Channel-Namen werden (besser) validiert.


- Version auf 0.1.1-pre im CVS angehoben.


- Version 0.0.1


- README, NEWS und ChangeLog aktualisiert.


- neue Funktion Client_TopServer(), Client_NewXXX() angepasst.


- RPL_WHOISCHANNELS_MSG korrigiert.


- WHOIS zeigt nun auch die Channels an, in denen der jeweilige User Mitglied ist. - zu jedem Server wird nun der "Top-Server" gespeichert, somit funktioniert LINKS wieder korrekt.


- neue Funktionen Channel_FirstChannelOf() und Channel_NextChannelOf().


- RPL_NAMREPLY_MSG an tatsaechliche Implementierung angepasst ;-)


- nach einem JOIN wird die Liste der Mitglieder an den Client geschickt. - MODE fuer Channels wird nun komplett ignoriert (keine Fehlermeldung mehr).


- SERVER-Meldungen an neue Server sind nun in der richtigen Reihenfolge.


- connectierenden Servern werden Channels nun mit NJOIN bekannt gemacht.


- neue Funktionen Channel_Name(), Channel_First() und Channel_Next().


- ein neu connectierender Server wird nun korrekt im Netz bekannt gemacht.


- PART wird nicht mehr an den Server verschickt, von dem es empfangen wurde.


- Client_GetFromID() besser dokumentiert, kleinere Aenderungen.


- weitere Anpassungen an Chennals, v.a. ueber Server-Links.


- IRC_WriteStrServersPrefixID() und IRC_WriteStrClientPrefixID() wieder entfernt. - einige kleinere Fixes bezueglich Channels ...


- IRC_WriteStrServersPrefixID() und IRC_WriteStrClientPrefixID() wieder entfernt.


- bei NICK wurde das falsche Prefix an andere Server weitergegeben.


- Client_GetFromID() kommt nun auch mit Host-Masken zurecht.


- anderungen an den Funktions-Prototypen von IRC_WriteStrChannel() und IRC_WriteStrChannelPrefix(), - neue: IRC_WriteStrClientPrefixID() und IRC_WriteStrServersPrefixID().


- diverse Aenderungen fuer Channels ueber mehrere Server.


- neue Defines fuer RPL_TOPIC und RPL_NOTOPIC.


- neue Funktionen IRC_WriteStrChannelPrefix() und IRC_WriteStrChannel(), die IRC_Write_xxx_Related() sind dafuer entfallen. - IRC_PRIVMSG() kann nun auch mit Channels als Ziel umgehen.


- CHANNEL- und CL2CHAN-Strukturen in Header verlegt, - einige neue Funktionen (Channel_GetChannel(), Channel_FirstMember(), ...)


- CVS-ID's ergaenzt ...


- FAQ begonnen.


- die Fehlermeldung "interrupted system call" sollte nicht mehr auftreten.


- begonnen, Channels zu implementieren :-)


- Definition der CHANNEL-Struktur aus Header entfernt, - neue Funktionen Channel_Join(), Channel_Part() und Channel_RemoveClient().


- wird ein Client entfernt, so wird er auch aus allen Channels geloescht.


- Channel-Pointer aus Client-Struktur entfernt. Wird nun dynamisch verwaltet :-)


- neue Funktionen IRC_JOIN und IRC_PART begonnen, ebenso die Funktionen IRC_WriteStrRelatedPrefix und IRC_WriteStrRelatedChannelPrefix(). - diverse Aenderungen im Zusammenhang mit Channels.


- neue Funktionen IRC_JOIN, IRC_PART, IRC_WriteStrRelatedPrefix und IRC_WriteStrRelatedChannelPrefix().


- neue Konstante CHANNEL_MODE_LEN.


- ERR_NOSUCHCHANNEL hinzugefuegt.


- Hilfetexte korrigiert und ergaenzt (Sniffer).


- neue Befehle JOIN und PART.


*** empty log message ***


- Server-Verbinungen werden beim Start erst nach kurzer Pause aufgebaut.


- bei Client_SetModes() wurde das NULL-Byte falsch gesetzt. Opsa.


- die User-Modes bei einem NICK von einem Server wurden falsch uebernommen.


- der Sniffer wird nun nur noch aktiviert, wenn auf Kommandozeile angegeben.


- Version auf 0.0.4-pre im CVS angehoben.


- Version 0.0.3


*** empty log message ***


- neue Funktionen Client_xxxCount().


- IRC_LUSERS() implementiert.


- RPL_LUSERME_MSG erweitert, kleinere Aenderungen.


- neue Funktion Channel_Count().


- ngIRCd wandelt sich nun selber in einen Daemon (Hintergrundprozess) um.


- LINKS implementiert, LUSERS begonnen.


- Hop-Count fuer den Server selber (0) wird korrekt initialisiert.


- Anpassungen an neue Kommandozeilen-Optionen "--debug" und "--nodaemon".


- Kommandozeilen-Parser implementiert: Debug- und No-Daemon-Modus, Hilfe.


- WHOIS wurde faelschlicherweise an User geforwarded statt vom Server beantwortet.


- WHOIS wird im "Strict-RFC-Mode" nicht mehr automatisch geforwarded, - andere Server werden nun ueber bisherige Server und User informiert.


- Parses handhabt Leerzeichen zw. Parametern nun etwas "lockerer".


- wird ein Server abgemeldet, so wird anderen Server ein SQUIT geschickt.


- Es werden fuer alle Server eigene Token generiert, - QUIT von einem Server fuer einen User wird an andere Server geforwarded, - ebenso NICK-Befehle, die "fremde" User einfuehren.


- Loglevel von Remote-Mode-Aenderungen angepasst (nun Debug). - Im Debug-Mode werden nun auch PING's protokolliert.


- Server nimmt nun Server-Links an: PASS und SERVER entsprechend angepasst. - MODE und NICK melden nun die Aenderungen an andere Server.


- Bei Log-Meldungen ueber Clients wird nun immer die "Client Mask" verwendet.


- PASSSERVERADD definiert, wird beim PASS-Befehl an Server verwendet.


- Status-Codes an den Server selber werden ignoriert, besseres Logging.


- die Fehlermeldung "unbekannter Befehl" hatte ein falsches Format.


- Beispiel-Konfigurationsdatei aktualisiert.


- CVS-Version auf "0.0.3-pre" angehoben.