From ca33cbda05902b0009058d369f88c0a7a43b1bbe Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Tue, 12 Mar 2002 14:37:51 +0000 Subject: [PATCH] - externe portab-Header werden nicht mehr benoetigt/benutzt, dadurch einige Aenderungen an diversen Source-Dateien und Headern. - Dateien enthalten keine CVS-History mehr. --- MacOSX/Makefile.am | 13 +-- MacOSX/ngircd.pbproj/Makefile.am | 10 +- Makefile.am | 21 +--- autogen.sh | 9 +- configure.in | 139 +---------------------- doc/Makefile.am | 21 +--- src/Makefile.am | 11 +- src/ngircd/Makefile.am | 54 +-------- src/ngircd/channel.c | 70 +----------- src/ngircd/channel.h | 49 +-------- src/ngircd/client.c | 158 +------------------------- src/ngircd/client.h | 88 ++------------- src/ngircd/conf.c | 62 +---------- src/ngircd/conf.h | 40 +------ src/ngircd/conn.c | 183 +------------------------------ src/ngircd/conn.h | 41 +------ src/ngircd/defines.h | 56 +--------- src/ngircd/global.h | 71 ------------ src/ngircd/irc-channel.c | 15 +-- src/ngircd/irc-channel.h | 7 +- src/ngircd/irc-login.c | 33 +----- src/ngircd/irc-login.h | 9 +- src/ngircd/irc-mode.c | 17 +-- src/ngircd/irc-mode.h | 7 +- src/ngircd/irc-oper.c | 12 +- src/ngircd/irc-oper.h | 7 +- src/ngircd/irc-server.c | 25 +---- src/ngircd/irc-server.h | 7 +- src/ngircd/irc-write.c | 16 +-- src/ngircd/irc-write.h | 7 +- src/ngircd/irc.c | 67 +---------- src/ngircd/irc.h | 24 +--- src/ngircd/log.c | 75 +------------ src/ngircd/log.h | 26 +---- src/ngircd/messages.h | 111 +------------------ src/ngircd/ngircd.c | 117 +------------------- src/ngircd/ngircd.h | 35 +----- src/ngircd/parse.c | 108 +----------------- src/ngircd/parse.h | 20 +--- src/ngircd/tool.c | 31 +----- src/ngircd/tool.h | 20 +--- 41 files changed, 109 insertions(+), 1783 deletions(-) delete mode 100644 src/ngircd/global.h diff --git a/MacOSX/Makefile.am b/MacOSX/Makefile.am index 42c4ce30..a0ec99c4 100644 --- a/MacOSX/Makefile.am +++ b/MacOSX/Makefile.am @@ -9,18 +9,7 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.3 2002/01/02 02:40:15 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.3 2002/01/02 02:40:15 alex -# - Copyright-Texte ergaenzt und aktualisiert, -# - fehlende Dateien in Projekt aufgenommen. -# -# Revision 1.2 2001/12/31 16:02:12 alex -# - Projektdateien von Mac OS X werden nun auch in die Distribution aufgenommen. -# -# Revision 1.1 2001/12/12 17:21:58 alex -# - Projektdatei fuer den Mac OS X Project Builder erstellt. +# $Id: Makefile.am,v 1.4 2002/03/12 14:37:51 alex Exp $ # SUBDIRS = ngircd.pbproj diff --git a/MacOSX/ngircd.pbproj/Makefile.am b/MacOSX/ngircd.pbproj/Makefile.am index 2436b121..6082d2a2 100644 --- a/MacOSX/ngircd.pbproj/Makefile.am +++ b/MacOSX/ngircd.pbproj/Makefile.am @@ -9,15 +9,7 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.2 2002/01/02 02:40:15 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.2 2002/01/02 02:40:15 alex -# - Copyright-Texte ergaenzt und aktualisiert, -# - fehlende Dateien in Projekt aufgenommen. -# -# Revision 1.1 2001/12/31 16:02:12 alex -# - Projektdateien von Mac OS X werden nun auch in die Distribution aufgenommen. +# $Id: Makefile.am,v 1.3 2002/03/12 14:37:51 alex Exp $ # EXTRA_DIST = project.pbxproj diff --git a/Makefile.am b/Makefile.am index d46435b1..27a7d552 100644 --- a/Makefile.am +++ b/Makefile.am @@ -9,26 +9,7 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.6 2002/03/10 15:40:26 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.6 2002/03/10 15:40:26 alex -# - Anpassungen an neues GNU automake/autoconf: acconfig.h entfaellt nun. -# -# Revision 1.5 2002/01/02 02:52:09 alex -# - Copyright-Texte angepasst ;-) -# -# Revision 1.4 2001/12/31 02:20:20 alex -# - Unterverzeichnis "doc" aufgenommen. -# -# Revision 1.3 2001/12/30 19:24:28 alex -# - acconfig.h in die "noinst_HEADERS" aufgenommen. -# -# Revision 1.2 2001/12/12 17:21:58 alex -# - Projektdatei fuer den Mac OS X Project Builder erstellt. -# -# Revision 1.1.1.1 2001/12/11 21:53:04 alex -# Imported sources to CVS. +# $Id: Makefile.am,v 1.7 2002/03/12 14:37:51 alex Exp $ # AUTOMAKE_OPTIONS = gnu diff --git a/autogen.sh b/autogen.sh index f2f4f313..f82f3d68 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,13 +1,6 @@ #!/bin/sh # -# $Id: autogen.sh,v 1.2 2001/12/12 01:58:17 alex Exp $ -# -# $Log: autogen.sh,v $ -# Revision 1.2 2001/12/12 01:58:17 alex -# - fuer fehlende Dateien werden nun "nur noch" symbolische Links erzeugt. -# -# Revision 1.1.1.1 2001/12/11 21:53:04 alex -# Imported sources to CVS. +# $Id: autogen.sh,v 1.3 2002/03/12 14:37:51 alex Exp $ # if [ -f configure ]; then diff --git a/configure.in b/configure.in index f18744a3..b77c4676 100644 --- a/configure.in +++ b/configure.in @@ -9,121 +9,14 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: configure.in,v 1.35 2002/03/10 17:03:18 alex Exp $ -# -# $Log: configure.in,v $ -# Revision 1.35 2002/03/10 17:03:18 alex -# - es werden nun die Konstanten SYSCONFDIR und LOCALSTATEDIR definiert. -# -# Revision 1.34 2002/03/10 15:40:26 alex -# - Anpassungen an neues GNU automake/autoconf: acconfig.h entfaellt nun. -# -# Revision 1.33 2002/03/02 03:57:56 alex -# - Versionsnummer auf 0.3.0-CVS angehoben. -# -# Revision 1.32 2002/03/02 03:36:14 alex -# - Version 0.3.0 -# -# Revision 1.31 2002/02/25 11:45:28 alex -# - es wird auf sigaction() geprueft (u.a. fuer A/UX, welches das nicht kennt). -# -# Revision 1.30 2002/02/25 11:41:43 alex -# - es werden ein paar Funktionen mehr getestet: u.a. vsnprintf() und setsockopt(). -# - libUTIL wird eingebunden, so vorhanden (unter A/UX notwendig!) -# -# Revision 1.29 2002/02/19 02:11:26 alex -# - auf die "libbe" wird nur noch getestet, wenn syslog ueberhaupt verwendet wird. -# -# Revision 1.28 2002/02/17 22:17:33 alex -# - Versionsnummer im CVS auf 0.2.2-pre angehoben ... -# -# Revision 1.27 2002/02/17 21:50:38 alex -# - Version 0.2.1. -# -# Revision 1.26 2002/02/17 18:47:26 alex -# - Tests auf netdb.h, stdlib.h, sys/wait.h, gethostbyaddr, gethostbyname, -# strftime und die "libbe" unter BeOS (fuer syslog) ergaenzt. -# -# Revision 1.25 2002/02/15 14:57:21 alex -# - Version auf 0.2.1-pre im CVS angehoben ... -# -# Revision 1.24 2002/02/15 14:35:55 alex -# - Version 0.2.0 -# -# Revision 1.23 2002/01/29 01:07:15 alex -# - Version auf 0.1.1-pre im CVS angehoben. -# -# Revision 1.22 2002/01/29 00:24:17 alex -# - Version 0.1.0 -# -# Revision 1.21 2002/01/16 23:06:16 alex -# - Version auf 0.0.4-pre im CVS angehoben. -# -# Revision 1.20 2002/01/16 22:55:45 alex -# - Version 0.0.3 -# -# Revision 1.19 2002/01/06 16:21:09 alex -# - CVS-Version auf "0.0.3-pre" angehoben. -# -# Revision 1.18 2002/01/06 16:09:37 alex -# - Version 0.0.2 -# -# Revision 1.17 2002/01/05 15:53:20 alex -# - Test auf Header "arpa/inet.h" und Funktion inet_aton() hinzugefuegt (BeOS). -# -# Revision 1.16 2002/01/02 13:41:36 alex -# - CFLAGS wird nur noch gesetzt, wenn der GCC verwendet wird. -# -# Revision 1.15 2002/01/02 02:52:09 alex -# - Copyright-Texte angepasst ;-) -# -# Revision 1.14 2001/12/31 16:11:13 alex -# - CVS-Version auf "0.0.2-pre" angehoben. -# -# Revision 1.13 2001/12/31 16:02:30 alex -# - Version 0.0.1 -# -# Revision 1.12 2001/12/31 02:21:00 alex -# - "doc"-Unterverzeichnis aufgenommen. -# -# Revision 1.11 2001/12/29 03:04:06 alex -# - neue configure-Option "--enable-strict-rfc". -# -# Revision 1.10 2001/12/27 16:25:36 alex -# - neue configure-Option "--with-portab=DIR". -# -# Revision 1.9 2001/12/27 02:08:38 alex -# - da fehlte an zwei Stellen ein AC_MSG_ERROR ... ups! -# -# Revision 1.8 2001/12/27 01:44:49 alex -# - die Verwendung von syslog kann nun abgeschaltet werden. -# -# Revision 1.7 2001/12/27 00:37:07 alex -# - Erkennung der "portab header" geaendert, CFLAGS werden nun anders gesetzt. -# -# Revision 1.6 2001/12/25 22:01:47 alex -# - neue configure-Option "--enable-sniffer". -# -# Revision 1.5 2001/12/21 23:54:26 alex -# - zusaetzliche Debug-Ausgaben koennen eingeschaltet werden. -# -# Revision 1.4 2001/12/12 17:21:58 alex -# - Projektdatei fuer den Mac OS X Project Builder erstellt. -# -# Revision 1.3 2001/12/12 01:58:53 alex -# - Test auf socklen_t verbessert. -# -# Revision 1.2 2001/12/11 22:04:21 alex -# - Test auf stdint.h (HAVE_STDINT_H) hinzugefuegt. -# -# Revision 1.1.1.1 2001/12/11 21:53:04 alex -# Imported sources to CVS. +# $Id: configure.in,v 1.36 2002/03/12 14:37:51 alex Exp $ # # -- Initialisierung -- AC_INIT -AC_CONFIG_SRCDIR(src/ngircd/ngircd.c) +AC_CANONICAL_TARGET +AC_CONFIG_SRCDIR(src/config.h.in) AM_INIT_AUTOMAKE(ngircd,0.3.0-CVS) AM_CONFIG_HEADER(src/config.h) @@ -154,31 +47,6 @@ AC_HEADER_STDC AC_HEADER_TIME -AC_ARG_WITH(portab, - [ --with-portab=DIR search the "portab headers" in DIR], - [ if test "x$withval" != "xno"; then - CFLAGS="$CFLAGS -I${withval}" - if test -f ${withval}/portab.h; then - AC_MSG_RESULT([searching "portab headers" in ${withval}...]) - else - AC_MSG_ERROR([${withval}/portab.h not found!]) - fi - else - AC_MSG_ERROR([Can't disable Alex \"portability headers\"!]) - fi - ], - [ AC_CHECK_HEADER(portab.h,[ - AC_CHECK_HEADER(imp.h,,AC_MSG_ERROR([Alex \"portability headers\" (portab.h an friends) not found!])) - AC_CHECK_HEADER(exp.h,,AC_MSG_ERROR([Alex \"portability headers\" (portab.h an friends) not found!])) - ],[ - AC_CHECK_HEADER(/usr/local/include/portab.h,,AC_MSG_ERROR([Alex \"portability headers\" (portab.h an friends) not found!])) - AC_CHECK_HEADER(/usr/local/include/imp.h,,AC_MSG_ERROR([Alex \"portability headers\" (portab.h an friends) not found!])) - AC_CHECK_HEADER(/usr/local/include/exp.h,,AC_MSG_ERROR([Alex \"portability headers\" (portab.h an friends) not found!])) - CFLAGS="$CFLAGS -I/usr/local/include" - ]) - ] -) - AC_CHECK_HEADERS(arpa/inet.h) AC_CHECK_HEADERS([ \ @@ -285,6 +153,7 @@ AC_OUTPUT([ \ MacOSX/Makefile \ MacOSX/ngircd.pbproj/Makefile \ src/Makefile \ + src/portab/Makefile \ src/ngircd/Makefile \ ]) diff --git a/doc/Makefile.am b/doc/Makefile.am index d9bbc495..5039d402 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -9,24 +9,7 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.5 2002/03/10 17:05:23 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.5 2002/03/10 17:05:23 alex -# - die Beispiel-Konfigurationsdatei wird als ngircd.conf installiert, -# wenn noch keine "echte" Konfigurationsdatei vorhanden ist. -# -# Revision 1.4 2002/02/25 14:10:38 alex -# - die neuen Texte werden nun auch in Archive ("make dist") aufgenommen ;-) -# -# Revision 1.3 2002/01/02 02:40:31 alex -# - Copyright-Text ergaenzt. -# -# Revision 1.2 2001/12/31 02:45:24 alex -# - nun werden alle generierten Dateien bei "maintainer-clean" geloescht. -# -# Revision 1.1 2001/12/31 02:22:29 alex -# - Makefile.am fuer das "doc"-Verzeichnis begonnen. +# $Id: Makefile.am,v 1.6 2002/03/12 14:37:51 alex Exp $ # EXTRA_DIST = CC-Speed.txt CVS.txt FAQ.txt README-AUX.txt README-BeOS.txt \ @@ -38,7 +21,7 @@ maintainer-clean-local: install-data-hook: $(mkinstalldirs) $(DESTDIR)$(sysconfdir) if [ ! -e $(DESTDIR)$(sysconfdir)/ngircd.conf ]; then \ - $(INSTALL) -m 600 -c sample-ngircd.conf $(DESTDIR)$(sysconfdir)/ngircd.conf; \ + $(INSTALL) -m 600 -c $(srcdir)/sample-ngircd.conf $(DESTDIR)$(sysconfdir)/ngircd.conf; \ fi # -eof- diff --git a/src/Makefile.am b/src/Makefile.am index 7c9e58b0..6eef208a 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -9,17 +9,10 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.2 2002/01/02 02:41:11 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.2 2002/01/02 02:41:11 alex -# - fehlenden Copyright-Text ergaenzt. -# -# Revision 1.1.1.1 2001/12/11 21:53:04 alex -# Imported sources to CVS. +# $Id: Makefile.am,v 1.3 2002/03/12 14:37:51 alex Exp $ # -SUBDIRS = ngircd +SUBDIRS = portab ngircd maintainer-clean-local: rm -f Makefile Makefile.in config.h config.h.in stamp-h.in diff --git a/src/ngircd/Makefile.am b/src/ngircd/Makefile.am index 75dc1e8b..23627272 100644 --- a/src/ngircd/Makefile.am +++ b/src/ngircd/Makefile.am @@ -9,57 +9,11 @@ # Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste # der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. # -# $Id: Makefile.am,v 1.15 2002/03/10 17:06:27 alex Exp $ -# -# $Log: Makefile.am,v $ -# Revision 1.15 2002/03/10 17:06:27 alex -# - das "localstatedir" wird fur "ngircd.err" angelegt. -# -# Revision 1.14 2002/03/03 17:15:11 alex -# - Source in weitere Module fuer IRC-Befehle aufgesplitted. -# -# Revision 1.13 2002/02/27 23:22:09 alex -# - einige Header umgestellt, neue Source-Dateien irc-xxx.c -# -# Revision 1.12 2002/02/21 18:47:49 alex -# - die Rechte der check-Scripts wurde nicht gesetzt. -# -# Revision 1.11 2002/02/21 17:25:16 alex -# - "check"-Target für "make check" und "make distcheck" begonnen ... -# -# Revision 1.10 2002/01/02 02:43:50 alex -# - Copyright-Text ergaenzt bzw. aktualisiert. -# -# Revision 1.9 2001/12/31 02:18:51 alex -# - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), -# - neuen Header "defines.h" mit (fast) allen Konstanten. -# - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. -# -# Revision 1.8 2001/12/30 19:25:03 alex -# - in "noinst_HEADERS" waren einige Dateien als .c anstelle .h aufgefuehrt. -# -# Revision 1.7 2001/12/27 00:37:07 alex -# - Erkennung der "portab header" geaendert, CFLAGS werden nun anders gesetzt. -# -# Revision 1.6 2001/12/23 21:53:54 alex -# - Header messages.h eingefuegt. -# -# Revision 1.5 2001/12/21 22:25:30 alex -# - neues Modul "parse" eingebunden. -# -# Revision 1.4 2001/12/14 08:14:03 alex -# - neue Module (irc, client, channel) aufgenommen. -# -# Revision 1.3 2001/12/13 02:03:33 alex -# - beim Compilieren werden nun Informationen fuer den Debugger erzeugt. -# -# Revision 1.2 2001/12/12 17:20:02 alex -# - neue Sourcefiles und Header ergaenzt. -# -# Revision 1.1.1.1 2001/12/11 21:53:04 alex -# - Imported sources to CVS. +# $Id: Makefile.am,v 1.16 2002/03/12 14:37:51 alex Exp $ # +AM_CFLAGS = -I$(srcdir)/../portab + sbin_PROGRAMS = ngircd ngircd_SOURCES = ngircd.c channel.c client.c conf.c conn.c irc.c \ @@ -69,7 +23,7 @@ ngircd_SOURCES = ngircd.c channel.c client.c conf.c conn.c irc.c \ noinst_HEADERS = ngircd.h channel.h client.h conf.h conn.h irc.h \ irc-channel.h irc-login.h irc-mode.h irc-oper.h irc-server.h \ irc-write.h log.h parse.h tool.h \ - global.h messages.h defines.h + messages.h defines.h clean-local: rm -f check-version check-help diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index 982d8335..139e9b18 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -9,80 +9,18 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: channel.c,v 1.18 2002/03/03 17:17:01 alex Exp $ + * $Id: channel.c,v 1.19 2002/03/12 14:37:52 alex Exp $ * * channel.c: Management der Channels - * - * $Log: channel.c,v $ - * Revision 1.18 2002/03/03 17:17:01 alex - * - strncpy() und vsnprintf() kopieren nun etwas "optimierter" (1 Byte weniger) :-) - * - * Revision 1.17 2002/03/02 01:35:50 alex - * - Channel- und Nicknames werden nun ordentlich validiert. - * - * Revision 1.16 2002/02/27 23:23:53 alex - * - Includes fuer einige Header bereinigt. - * - * Revision 1.15 2002/02/27 20:32:10 alex - * - neue Funktionen Channel_Topic() und Channel_SetTopic(). - * - * Revision 1.14 2002/02/27 15:21:21 alex - * - neue Funktion Channel_IsMemberOf() implementiert. - * - * Revision 1.13 2002/02/11 01:00:12 alex - * - neue Funktionen Channel_ModeAdd(), Channel_ModeDel(), Channel_UserModes(), - * Channel_UserModeAdd(), Channel_UserModeDel(). - * - Modes in CL2CHAN-Struktur werden nun korrekt initialisiert. - * - * Revision 1.12 2002/02/06 16:48:48 alex - * - neue Funktion Channel_Modes() und Channel_IsValidName(). - * - Channel-Namen werden (besser) validiert. - * - * Revision 1.11 2002/01/29 00:11:10 alex - * - neue Funktionen Channel_FirstChannelOf() und Channel_NextChannelOf(). - * - * Revision 1.10 2002/01/28 01:16:15 alex - * - neue Funktionen Channel_Name(), Channel_First() und Channel_Next(). - * - * Revision 1.9 2002/01/27 22:47:11 alex - * - PART wird nicht mehr an den Server verschickt, von dem es empfangen wurde. - * - * Revision 1.8 2002/01/27 21:56:54 alex - * - weitere Anpassungen an Chennals, v.a. ueber Server-Links. - * - * Revision 1.7 2002/01/27 17:14:33 alex - * - diverse Aenderungen fuer Channels ueber mehrere Server. - * - * Revision 1.6 2002/01/26 18:41:55 alex - * - CHANNEL- und CL2CHAN-Strukturen in Header verlegt, - * - einige neue Funktionen (Channel_GetChannel(), Channel_FirstMember(), ...) - * - * Revision 1.5 2002/01/21 00:12:29 alex - * - begonnen, Channels zu implementieren :-) - * - * Revision 1.4 2002/01/16 22:09:07 alex - * - neue Funktion Channel_Count(). - * - * Revision 1.3 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.2 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.1 2001/12/14 08:13:43 alex - * - neues Modul begonnen :-) */ #define __channel_c__ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -92,7 +30,7 @@ #include "log.h" #include "messages.h" -#include +#include "exp.h" #include "channel.h" diff --git a/src/ngircd/channel.h b/src/ngircd/channel.h index 22189c43..983283cb 100644 --- a/src/ngircd/channel.h +++ b/src/ngircd/channel.h @@ -9,54 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: channel.h,v 1.13 2002/02/27 20:32:10 alex Exp $ + * $Id: channel.h,v 1.14 2002/03/12 14:37:52 alex Exp $ * * channel.h: Management der Channels (Header) - * - * $Log: channel.h,v $ - * Revision 1.13 2002/02/27 20:32:10 alex - * - neue Funktionen Channel_Topic() und Channel_SetTopic(). - * - * Revision 1.12 2002/02/27 15:21:21 alex - * - neue Funktion Channel_IsMemberOf() implementiert. - * - * Revision 1.11 2002/02/11 01:00:22 alex - * - neue Funktionen Channel_ModeAdd(), Channel_ModeDel(), Channel_UserModes(), - * Channel_UserModeAdd(), Channel_UserModeDel(). - * - * Revision 1.10 2002/02/06 16:49:10 alex - * - neue Funktionen Channel_Modes() und Channel_IsValidName(). - * - * Revision 1.9 2002/01/29 00:11:19 alex - * - neue Funktionen Channel_FirstChannelOf() und Channel_NextChannelOf(). - * - * Revision 1.8 2002/01/28 01:16:15 alex - * - neue Funktionen Channel_Name(), Channel_First() und Channel_Next(). - * - * Revision 1.7 2002/01/26 18:41:55 alex - * - CHANNEL- und CL2CHAN-Strukturen in Header verlegt, - * - einige neue Funktionen (Channel_GetChannel(), Channel_FirstMember(), ...) - * - * Revision 1.6 2002/01/21 00:11:59 alex - * - Definition der CHANNEL-Struktur aus Header entfernt, - * - neue Funktionen Channel_Join(), Channel_Part() und Channel_RemoveClient(). - * - * Revision 1.5 2002/01/16 22:09:07 alex - * - neue Funktion Channel_Count(). - * - * Revision 1.4 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.3 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.2 2001/12/23 21:54:30 alex - * - Konstanten um Prefix "CHANNEL_" erweitert. - * - * Revision 1.1 2001/12/14 08:13:43 alex - * - neues Modul begonnen :-) */ @@ -68,6 +23,8 @@ #ifdef __channel_c__ +#include "defines.h" + typedef struct _CHANNEL { struct _CHANNEL *next; diff --git a/src/ngircd/client.c b/src/ngircd/client.c index 6bbbd26f..bb0e87ef 100644 --- a/src/ngircd/client.c +++ b/src/ngircd/client.c @@ -9,7 +9,7 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: client.c,v 1.47 2002/03/11 22:04:10 alex Exp $ + * $Id: client.c,v 1.48 2002/03/12 14:37:52 alex Exp $ * * client.c: Management aller Clients * @@ -19,165 +19,15 @@ * Ueber welchen IRC-Server die Verbindung nun tatsaechlich in das Netzwerk her- * gestellt wurde, muss der jeweiligen Struktur entnommen werden. Ist es dieser * Server gewesen, so existiert eine entsprechende CONNECTION-Struktur. - * - * $Log: client.c,v $ - * Revision 1.47 2002/03/11 22:04:10 alex - * - Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken? - * - * Revision 1.46 2002/03/10 22:03:20 alex - * - Netz-Splits werden nun als soche ausgegeben. - * - * Revision 1.45 2002/03/10 17:15:20 alex - * - der Bindestrich ("-") ist nun auch in Nicknames erlaubt. - * - * Revision 1.44 2002/03/06 14:30:43 alex - * - ein paar assert()-Tests ergaenzt. - * - * Revision 1.43 2002/03/04 01:04:46 alex - * - neuen Clients mit Mode "a" wird nun auch der Default-Away-Text gesetzt. - * - * Revision 1.42 2002/03/03 17:17:01 alex - * - strncpy() und vsnprintf() kopieren nun etwas "optimierter" (1 Byte weniger) :-) - * - * Revision 1.41 2002/03/02 01:35:50 alex - * - Channel- und Nicknames werden nun ordentlich validiert. - * - * Revision 1.40 2002/02/27 23:23:53 alex - * - Includes fuer einige Header bereinigt. - * - * Revision 1.39 2002/02/27 18:22:09 alex - * - neue Funktion Client_SetAway() und Client_Away() implementiert. - * - * Revision 1.38 2002/02/27 14:47:53 alex - * - Logging beim Abmelden von Clients (erneut) geaendert: nun ist's aber gut ;-) - * - * Revision 1.37 2002/02/17 19:02:49 alex - * - Client_CheckNick() und Client_CheckID() lieferten u.U. falsche Ergebnisse. - * - * Revision 1.36 2002/02/06 16:49:41 alex - * - neue Funktion Client_IsValidNick(), Nicknames werden besser validiert. - * - * Revision 1.35 2002/01/29 00:14:49 alex - * - neue Funktion Client_TopServer(), Client_NewXXX() angepasst. - * - * Revision 1.34 2002/01/27 22:07:36 alex - * - Client_GetFromID() besser dokumentiert, kleinere Aenderungen. - * - * Revision 1.33 2002/01/27 21:56:54 alex - * - weitere Anpassungen an Chennals, v.a. ueber Server-Links. - * - * Revision 1.32 2002/01/27 18:27:12 alex - * - Client_GetFromID() kommt nun auch mit Host-Masken zurecht. - * - * Revision 1.31 2002/01/21 00:08:50 alex - * - wird ein Client entfernt, so wird er auch aus allen Channels geloescht. - * - * Revision 1.30 2002/01/18 15:32:01 alex - * - bei Client_SetModes() wurde das NULL-Byte falsch gesetzt. Opsa. - * - * Revision 1.29 2002/01/16 22:10:35 alex - * - neue Funktionen Client_xxxCount(). - * - * Revision 1.28 2002/01/11 23:50:40 alex - * - Hop-Count fuer den Server selber (0) wird korrekt initialisiert. - * - * Revision 1.27 2002/01/09 01:08:08 alex - * - wird ein Server abgemeldet, so wird anderen Server ein SQUIT geschickt. - * - * Revision 1.26 2002/01/07 23:42:12 alex - * - 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. - * - * Revision 1.25 2002/01/07 15:31:00 alex - * - Bei Log-Meldungen ueber Clients wird nun immer die "Client Mask" verwendet. - * - * Revision 1.24 2002/01/06 15:18:14 alex - * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser. - * - * Revision 1.23 2002/01/05 23:26:05 alex - * - Vorbereitungen fuer Ident-Abfragen in Client-Strukturen. - * - * Revision 1.22 2002/01/05 20:08:17 alex - * - neue Funktion Client_NextHop(). - * - * Revision 1.21 2002/01/05 19:15:03 alex - * - Fehlerpruefung bei select() in der "Hauptschleife" korrigiert. - * - * Revision 1.20 2002/01/04 17:57:08 alex - * - Client_Destroy() an Server-Links angepasst. - * - * Revision 1.19 2002/01/04 01:21:22 alex - * - Client-Strukturen koennen von anderen Modulen nun nur noch ueber die - * enstprechenden (zum Teil neuen) Funktionen angesprochen werden. - * - * Revision 1.18 2002/01/03 02:28:06 alex - * - neue Funktion Client_CheckID(), diverse Aenderungen fuer Server-Links. - * - * Revision 1.17 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.16 2002/01/01 18:25:44 alex - * - #include's fuer stdlib.h ergaenzt. - * - * Revision 1.15 2001/12/31 15:33:13 alex - * - neuer Befehl NAMES, kleinere Bugfixes. - * - Bug bei PING behoben: war zu restriktiv implementiert :-) - * - * Revision 1.14 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.13 2001/12/30 19:26:11 alex - * - Unterstuetzung fuer die Konfigurationsdatei eingebaut. - * - * Revision 1.12 2001/12/29 20:18:18 alex - * - neue Funktion Client_SetHostname(). - * - * Revision 1.11 2001/12/29 03:10:47 alex - * - Client-Modes implementiert; Loglevel mal wieder angepasst. - * - * Revision 1.10 2001/12/27 19:13:47 alex - * - neue Funktion Client_Search(), besseres Logging. - * - * Revision 1.9 2001/12/27 17:15:29 alex - * - der eigene Hostname wird nun komplet (als FQDN) ermittelt. - * - * Revision 1.8 2001/12/27 16:54:51 alex - * - neue Funktion Client_GetID(), liefert die "Client ID". - * - * Revision 1.7 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.6 2001/12/26 03:19:16 alex - * - neue Funktion Client_Nick(). - * - * Revision 1.5 2001/12/25 22:04:26 alex - * - Aenderungen an den Debug- und Logging-Funktionen. - * - * Revision 1.4 2001/12/25 19:21:26 alex - * - Client-Typ ("Status") besser unterteilt, My_Clients ist zudem nun global. - * - * Revision 1.3 2001/12/24 01:31:14 alex - * - einige assert()'s eingestraeut. - * - * Revision 1.2 2001/12/23 22:04:37 alex - * - einige neue Funktionen, - * - CLIENT-Struktur erweitert. - * - * Revision 1.1 2001/12/14 08:13:43 alex - * - neues Modul begonnen :-) */ #define __client_c__ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -185,7 +35,7 @@ #include #include -#include +#include "exp.h" #include "client.h" #include diff --git a/src/ngircd/client.h b/src/ngircd/client.h index 68f827c0..996be8dc 100644 --- a/src/ngircd/client.h +++ b/src/ngircd/client.h @@ -9,89 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: client.h,v 1.24 2002/03/11 22:04:10 alex Exp $ + * $Id: client.h,v 1.25 2002/03/12 14:37:52 alex Exp $ * * client.h: Konfiguration des ngircd (Header) - * - * $Log: client.h,v $ - * Revision 1.24 2002/03/11 22:04:10 alex - * - Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken? - * - * Revision 1.23 2002/02/27 18:22:09 alex - * - neue Funktion Client_SetAway() und Client_Away() implementiert. - * - * Revision 1.22 2002/02/06 16:49:56 alex - * - neue Funktion Client_IsValidNick(). - * - * Revision 1.21 2002/01/29 00:14:49 alex - * - neue Funktion Client_TopServer(), Client_NewXXX() angepasst. - * - * Revision 1.20 2002/01/21 00:06:49 alex - * - Channel-Pointer aus Client-Struktur entfernt. Wird nun dynamisch verwaltet :-) - * - * Revision 1.19 2002/01/16 22:10:35 alex - * - neue Funktionen Client_xxxCount(). - * - * Revision 1.18 2002/01/07 23:42:12 alex - * - 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. - * - * Revision 1.17 2002/01/06 15:18:14 alex - * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser. - * - * Revision 1.16 2002/01/05 23:26:05 alex - * - Vorbereitungen fuer Ident-Abfragen in Client-Strukturen. - * - * Revision 1.15 2002/01/05 20:08:17 alex - * - neue Funktion Client_NextHop(). - * - * Revision 1.14 2002/01/04 01:21:22 alex - * - Client-Strukturen koennen von anderen Modulen nun nur noch ueber die - * enstprechenden (zum Teil neuen) Funktionen angesprochen werden. - * - * Revision 1.13 2002/01/03 02:28:06 alex - * - neue Funktion Client_CheckID(), diverse Aenderungen fuer Server-Links. - * - * Revision 1.12 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.11 2001/12/31 15:33:13 alex - * - neuer Befehl NAMES, kleinere Bugfixes. - * - Bug bei PING behoben: war zu restriktiv implementiert :-) - * - * Revision 1.10 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.9 2001/12/29 20:18:18 alex - * - neue Funktion Client_SetHostname(). - * - * Revision 1.8 2001/12/29 03:10:47 alex - * - Client-Modes implementiert; Loglevel mal wieder angepasst. - * - * Revision 1.7 2001/12/27 19:13:47 alex - * - neue Funktion Client_Search(), besseres Logging. - * - * Revision 1.6 2001/12/27 16:54:51 alex - * - neue Funktion Client_GetID(), liefert die "Client ID". - * - * Revision 1.5 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.4 2001/12/26 03:19:16 alex - * - neue Funktion Client_Nick(). - * - * Revision 1.3 2001/12/25 19:21:26 alex - * - Client-Typ ("Status") besser unterteilt, My_Clients ist zudem nun global. - * - * Revision 1.2 2001/12/23 22:03:47 alex - * - einige neue Funktionen, - * - Konstanten um "CLIENT_"-Prefix erweitert. - * - * Revision 1.1 2001/12/14 08:13:43 alex - * - neues Modul begonnen :-) */ @@ -116,6 +36,9 @@ typedef enum #ifdef __client_c__ + +#include "defines.h" + typedef struct _CLIENT { CHAR id[CLIENT_ID_LEN]; /* Nick (User) bzw. ID (Server) */ @@ -133,8 +56,11 @@ typedef struct _CLIENT BOOLEAN oper_by_me; /* IRC-Operator-Status durch diesen Server? */ CHAR away[CLIENT_AWAY_LEN]; /* AWAY-Text, wenn Mode 'a' gesetzt */ } CLIENT; + #else + typedef POINTER CLIENT; + #endif diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c index 6abad003..a99fee2b 100644 --- a/src/ngircd/conf.c +++ b/src/ngircd/conf.c @@ -9,68 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: conf.c,v 1.17 2002/03/10 18:47:02 alex Exp $ + * $Id: conf.c,v 1.18 2002/03/12 14:37:52 alex Exp $ * * conf.h: Konfiguration des ngircd - * - * $Log: conf.c,v $ - * Revision 1.17 2002/03/10 18:47:02 alex - * *** empty log message *** - * - * Revision 1.16 2002/03/10 17:50:48 alex - * - Server-Gruppen implementiert. - * - * Revision 1.15 2002/03/06 15:35:19 alex - * - Dateinamen und Pfad sind nun in Konstanten definiert. - * - * Revision 1.14 2002/03/03 17:17:01 alex - * - strncpy() und vsnprintf() kopieren nun etwas "optimierter" (1 Byte weniger) :-) - * - * Revision 1.13 2002/01/18 15:51:44 alex - * - Server-Verbinungen werden beim Start erst nach kurzer Pause aufgebaut. - * - * Revision 1.12 2002/01/05 23:26:24 alex - * - Fehlermeldungen korrigiert. - * - * Revision 1.11 2002/01/05 16:51:49 alex - * - Bug bei Remote-Server-Namen entfernt: diese wurden falsch gekuerzt. - * - * Revision 1.10 2002/01/03 02:27:20 alex - * - das Server-Passwort kann nun konfiguriert werden. - * - * Revision 1.9 2002/01/02 02:49:15 alex - * - Konfigurationsdatei "Samba like" umgestellt. - * - es koennen nun mehrere Server und Oprtatoren konfiguriert werden. - * - * Revision 1.7 2002/01/01 18:25:44 alex - * - #include's fuer stdlib.h ergaenzt. - * - * Revision 1.6 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.5 2001/12/30 19:26:11 alex - * - Unterstuetzung fuer die Konfigurationsdatei eingebaut. - * - * Revision 1.4 2001/12/26 22:48:53 alex - * - MOTD-Datei ist nun konfigurierbar und wird gelesen. - * - * Revision 1.3 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.2 2001/12/26 03:19:57 alex - * - erste Konfigurations-Variablen definiert: PING/PONG-Timeout. - * - * Revision 1.1 2001/12/12 17:18:20 alex - * - Modul fuer Server-Konfiguration begonnen. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -78,10 +25,11 @@ #include #include "client.h" +#include "defines.h" #include "log.h" #include "tool.h" -#include +#include "exp.h" #include "conf.h" diff --git a/src/ngircd/conf.h b/src/ngircd/conf.h index a54ec2f6..989dd742 100644 --- a/src/ngircd/conf.h +++ b/src/ngircd/conf.h @@ -9,46 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: conf.h,v 1.12 2002/03/10 18:47:02 alex Exp $ + * $Id: conf.h,v 1.13 2002/03/12 14:37:52 alex Exp $ * * conf.h: Konfiguration des ngircd (Header) - * - * $Log: conf.h,v $ - * Revision 1.12 2002/03/10 18:47:02 alex - * *** empty log message *** - * - * Revision 1.11 2002/03/10 17:50:48 alex - * - Server-Gruppen implementiert. - * - * Revision 1.10 2002/02/27 23:23:53 alex - * - Includes fuer einige Header bereinigt. - * - * Revision 1.9 2002/01/03 02:27:20 alex - * - das Server-Passwort kann nun konfiguriert werden. - * - * Revision 1.8 2002/01/02 02:49:16 alex - * - Konfigurationsdatei "Samba like" umgestellt. - * - es koennen nun mehrere Server und Oprtatoren konfiguriert werden. - * - * Revision 1.6 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.5 2001/12/30 19:26:11 alex - * - Unterstuetzung fuer die Konfigurationsdatei eingebaut. - * - * Revision 1.4 2001/12/26 22:48:53 alex - * - MOTD-Datei ist nun konfigurierbar und wird gelesen. - * - * Revision 1.3 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.2 2001/12/26 03:19:57 alex - * - erste Konfigurations-Variablen definiert: PING/PONG-Timeout. - * - * Revision 1.1 2001/12/12 17:18:20 alex - * - Modul fuer Server-Konfiguration begonnen. */ @@ -58,6 +21,7 @@ #include #include "conn.h" +#include "defines.h" typedef struct _Conf_Oper diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c index 7dede709..e7a75669 100644 --- a/src/ngircd/conn.c +++ b/src/ngircd/conn.c @@ -9,190 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: conn.c,v 1.51 2002/03/11 22:04:10 alex Exp $ + * $Id: conn.c,v 1.52 2002/03/12 14:37:52 alex Exp $ * * connect.h: Verwaltung aller Netz-Verbindungen ("connections") - * - * $Log: conn.c,v $ - * Revision 1.51 2002/03/11 22:04:10 alex - * - Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken? - * - * Revision 1.50 2002/03/11 00:04:48 alex - * - ein sofortiger Re-Connect wird nur dann versucht, wenn die Vernindung - * "lange genug" bereits bestanden hatte. - * - * Revision 1.49 2002/03/10 18:47:02 alex - * *** empty log message *** - * - * Revision 1.48 2002/03/10 17:50:48 alex - * - Server-Gruppen implementiert. - * - * Revision 1.47 2002/03/04 23:16:23 alex - * - Logging geaendert: detaillierter im Syslog, "allgemeiner" fuer Clients. - * - * Revision 1.46 2002/03/02 03:32:08 alex - * - Aenderung des Idle-Verhalten revidiert: das war ein Schnellschuss :-/ - * - * Revision 1.45 2002/03/02 02:44:01 alex - * - Timeouts ausgehender Verbindungen werden besser erkannt (z.B. unter Cygwin). - * - Idle-Time der Hauptschleife [Conn_Handle()] erhoeht: weniger Last. - * - * Revision 1.44 2002/03/02 00:43:31 alex - * - bei abgebrochene ausgehende Server-Verbindungen wird der naechste Ver- - * bindungsversuch in RECONNECT_DELAY Sekunden (3) unternommen und nicht - * mehr "ConnectRetry" Sekunden gewartet. - * - * Revision 1.43 2002/03/02 00:29:11 alex - * - der Wert der Konfigurations-Variable "ConnectRetry" wird besser beachtet. - * - * Revision 1.42 2002/03/02 00:23:32 alex - * - ausgehende Verbindungen werden nun asyncron connectiert und blockieren - * nicht mehr den Server. Dadurch waren einige Aenderungen noetig. - * - diverse Log-Meldungen ueberarbeitet. - * - * Revision 1.41 2002/02/27 14:47:04 alex - * - Logging bei Timeout von Verbindungen geaendert. - * - * Revision 1.40 2002/02/27 02:26:23 alex - * - an Conn_Close() werden zwei weitere Fehlermeldungen zum Forwarden uebergeben. - * - * Revision 1.39 2002/02/23 00:03:54 alex - * - Ergebnistyp von Conn_GetIdle() und Conn_LastPing() auf "time_t" geaendert. - * - * Revision 1.38 2002/02/19 20:34:31 alex - * - Bei ausgehenden Verbindungen wird der Ziel-Port ins Log geschrieben. - * - * Revision 1.37 2002/02/19 20:05:37 alex - * - "Passive-Mode" implementiert: kein Auto-Conect zu anderen Servern. - * - * Revision 1.36 2002/02/11 01:00:50 alex - * - neue Funktion Conn_LastPing(). - * - * Revision 1.35 2002/01/18 11:12:11 alex - * - der Sniffer wird nun nur noch aktiviert, wenn auf Kommandozeile angegeben. - * - * Revision 1.34 2002/01/07 15:29:52 alex - * - PASSSERVERADD definiert, wird beim PASS-Befehl an Server verwendet. - * - * Revision 1.33 2002/01/06 15:18:14 alex - * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser. - * - * Revision 1.32 2002/01/05 23:25:25 alex - * - Vorbereitungen fuer Ident-Abfragen bei neuen Client-Strukturen. - * - * Revision 1.31 2002/01/05 19:15:03 alex - * - Fehlerpruefung bei select() in der "Hauptschleife" korrigiert. - * - * Revision 1.30 2002/01/05 15:56:23 alex - * - "arpa/inet.h" wird nur noch includiert, wenn vorhanden. - * - Ein Fehler bei select() fuerht nun zum Abbruch von ngIRCd. - * - NO_ADDRESS durch NO_DATA ersetzt: ist wohl portabler. - * - * Revision 1.29 2002/01/04 01:36:40 alex - * - Loglevel ein wenig angepasst. - * - * Revision 1.28 2002/01/04 01:20:23 alex - * - Client-Strukruren werden nur noch ueber Funktionen angesprochen. - * - * Revision 1.27 2002/01/03 02:25:36 alex - * - diverse Aenderungen und Umsetellungen fuer Server-Links. - * - * Revision 1.26 2002/01/02 02:50:47 alex - * - Asyncroner Resolver Hostname->IP. - * - Server-Links begonnen zu implementieren. Die Verbindung wird aufgebaut, - * jedoch noch keine SERVER-Befehle verschickt. - * - Diverse Bug-Fixes und kleinere Erweiterungen. - * - * Revision 1.24 2002/01/01 18:25:44 alex - * - #include's fuer stdlib.h ergaenzt. - * - * Revision 1.23 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.22 2001/12/30 19:26:11 alex - * - Unterstuetzung fuer die Konfigurationsdatei eingebaut. - * - * Revision 1.21 2001/12/29 22:33:36 alex - * - bessere Dokumentation des Modules bzw. der Funktionen. - * - * Revision 1.20 2001/12/29 22:09:43 alex - * - kleinere Aenderungen ("clean-ups") bei Logging (Resolver). - * - * Revision 1.19 2001/12/29 21:53:57 alex - * - Da hatte ich mich wohl ein wenig verrannt; jetzt sollte der Resolver - * aber tatsaechlich funktionieren. - * - * Revision 1.18 2001/12/29 20:17:25 alex - * - asyncronen Resolver (IP->Name) implementiert, dadurch div. Aenderungen. - * - * Revision 1.17 2001/12/29 03:06:16 alex - * - Loglevel (nochmal) angepasst. - * - * Revision 1.16 2001/12/27 19:32:44 alex - * - bei "Null-Requests" wird nichts mehr geloggt. Uberfluessig, da normal. - * - * Revision 1.15 2001/12/27 16:35:04 alex - * - vergessene Variable bei Ping-Timeout-Logmeldung ergaenzt. Opsa. - * - * Revision 1.14 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.13 2001/12/26 03:36:57 alex - * - Verbindungen mit Lesefehlern werden nun korrekt terminiert. - * - * Revision 1.12 2001/12/26 03:20:53 alex - * - PING/PONG-Timeout implementiert. - * - * Revision 1.11 2001/12/25 23:15:16 alex - * - buffer werden nun periodisch geprueft, keine haengenden Clients mehr. - * - * Revision 1.10 2001/12/25 22:03:47 alex - * - Conn_Close() eingefuehrt: war die lokale Funktion Close_Connection(). - * - * Revision 1.9 2001/12/24 01:32:33 alex - * - in Conn_WriteStr() wurde das CR+LF nicht angehaengt! - * - Fehler-Ausgaben vereinheitlicht. - * - * Revision 1.8 2001/12/23 22:02:54 alex - * - Conn_WriteStr() nimmt nun variable Parameter, - * - diverse kleinere Aenderungen. - * - * Revision 1.7 2001/12/21 22:24:25 alex - * - kleinere Aenderungen an den Log-Meldungen, - * - Parse_Request() wird aufgerufen. - * - * Revision 1.6 2001/12/15 00:11:55 alex - * - Lese- und Schreib-Puffer implementiert. - * - einige neue (Unter-)Funktionen eingefuehrt. - * - diverse weitere kleinere Aenderungen. - * - * Revision 1.5 2001/12/14 08:16:47 alex - * - Begonnen, Client-spezifische Lesepuffer zu implementieren. - * - Umstellung auf Datentyp "CONN_ID". - * - * Revision 1.4 2001/12/13 02:04:16 alex - * - boesen "Speicherschiesser" in Log() gefixt. - * - * Revision 1.3 2001/12/13 01:33:09 alex - * - Conn_Handler() unterstuetzt nun einen Timeout. - * - fuer Verbindungen werden keine FILE-Handles mehr benutzt. - * - kleinere "Code Cleanups" ;-) - * - * Revision 1.2 2001/12/12 23:32:02 alex - * - diverse Erweiterungen und Verbesserungen (u.a. sind nun mehrere - * Verbindungen und Listen-Sockets moeglich). - * - * Revision 1.1 2001/12/12 17:18:38 alex - * - Modul zur Verwaltung aller Netzwerk-Verbindungen begonnen. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -225,7 +50,7 @@ #include "parse.h" #include "tool.h" -#include +#include "exp.h" #include "conn.h" diff --git a/src/ngircd/conn.h b/src/ngircd/conn.h index 3facb922..0b138963 100644 --- a/src/ngircd/conn.h +++ b/src/ngircd/conn.h @@ -9,48 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: conn.h,v 1.12 2002/02/23 00:03:54 alex Exp $ + * $Id: conn.h,v 1.13 2002/03/12 14:37:52 alex Exp $ * * conn.h: Verwaltung aller Netz-Verbindungen ("connections") (Header) - * - * $Log: conn.h,v $ - * Revision 1.12 2002/02/23 00:03:54 alex - * - Ergebnistyp von Conn_GetIdle() und Conn_LastPing() auf "time_t" geaendert. - * - * Revision 1.11 2002/02/11 01:00:50 alex - * - neue Funktion Conn_LastPing(). - * - * Revision 1.10 2002/01/06 15:18:15 alex - * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser. - * - * Revision 1.9 2002/01/02 02:44:36 alex - * - neue Defines fuer max. Anzahl Server und Operatoren. - * - * Revision 1.8 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.7 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.6 2001/12/25 22:03:47 alex - * - Conn_Close() eingefuehrt: war die lokale Funktion Close_Connection(). - * - * Revision 1.5 2001/12/23 21:57:48 alex - * - Conn_WriteStr() unterstuetzt nun variable Parameter. - * - * Revision 1.4 2001/12/15 00:08:27 alex - * - neue globale Funktionen: Conn_Write() und Conn_WriteStr(). - * - * Revision 1.3 2001/12/14 08:15:45 alex - * - CONN_ID wird definiert. - * - * Revision 1.2 2001/12/13 01:33:32 alex - * - Conn_Handler() unterstuetzt nun einen Timeout (in Sekunden). - * - * Revision 1.1 2001/12/12 17:18:38 alex - * - Modul zur Verwaltung aller Netzwerk-Verbindungen begonnen. */ diff --git a/src/ngircd/defines.h b/src/ngircd/defines.h index 084027ab..1e98090a 100644 --- a/src/ngircd/defines.h +++ b/src/ngircd/defines.h @@ -9,63 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: defines.h,v 1.16 2002/03/10 17:07:41 alex Exp $ + * $Id: defines.h,v 1.17 2002/03/12 14:37:52 alex Exp $ * * defines.h: (globale) Konstanten - * - * $Log: defines.h,v $ - * Revision 1.16 2002/03/10 17:07:41 alex - * - die Pfade der Konfigurationsdatei, des MOTD und das Error-Files werden - * nun aus den Vorgaben von configure ermittelt. - * - * Revision 1.15 2002/03/06 15:35:19 alex - * - Dateinamen und Pfad sind nun in Konstanten definiert. - * - * Revision 1.14 2002/03/04 01:05:10 alex - * - neue Konstante DEFAULT_AWAY_MSG fuer die Default-Away-Meldung. - * - * Revision 1.13 2002/03/02 00:43:31 alex - * - bei abgebrochene ausgehende Server-Verbindungen wird der naechste Ver- - * bindungsversuch in RECONNECT_DELAY Sekunden (3) unternommen und nicht - * mehr "ConnectRetry" Sekunden gewartet. - * - * Revision 1.12 2002/02/27 23:24:58 alex - * - CONNECTED und DISCONNECTED fuer die irc-xxx-Module wird nun hier definiert. - * - * Revision 1.11 2002/02/27 20:32:34 alex - * - neue Konstante: CHANNEL_TOPIC_LEN - * - * Revision 1.10 2002/02/27 18:22:45 alex - * - Mode "a" (away) in USERMODES aufgenommen. - * - * Revision 1.9 2002/02/13 23:04:27 alex - * - CHANMODES um Operator (o) und Voiced User (v) ergaenzt. - * - * Revision 1.8 2002/02/13 17:45:57 alex - * - unterstuetzte User- und Channel-Modes stehen nun in Konstanten. - * - * Revision 1.7 2002/01/22 17:15:39 alex - * - die Fehlermeldung "interrupted system call" sollte nicht mehr auftreten. - * - * Revision 1.6 2002/01/21 00:03:16 alex - * - neue Konstante CHANNEL_MODE_LEN. - * - * Revision 1.5 2002/01/18 15:51:44 alex - * - Server-Verbinungen werden beim Start erst nach kurzer Pause aufgebaut. - * - * Revision 1.4 2002/01/07 15:29:53 alex - * - PASSSERVERADD definiert, wird beim PASS-Befehl an Server verwendet. - * - * Revision 1.3 2002/01/03 02:24:00 alex - * - Protokollversion und Suffix definiert. - * - * Revision 1.2 2002/01/02 02:44:36 alex - * - neue Defines fuer max. Anzahl Server und Operatoren. - * - * Revision 1.1 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. */ #ifndef __defines_h__ diff --git a/src/ngircd/global.h b/src/ngircd/global.h deleted file mode 100644 index d82dfbfb..00000000 --- a/src/ngircd/global.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de) - * - * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen - * der GNU General Public License (GPL), wie von der Free Software Foundation - * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2 - * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version. - * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste - * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. - * - * $Id: global.h,v 1.8 2002/03/06 14:30:22 alex Exp $ - * - * global.h: Globaler Header, wir in jedes(!) Modul eingebunden. - * - * $Log: global.h,v $ - * Revision 1.8 2002/03/06 14:30:22 alex - * - kleinere Umstellungen. - * - * Revision 1.7 2002/02/25 11:42:15 alex - * - unter A/UX wird _POSIX_SOURCE definiert: fuer Systemheader notwendig. - * - * Revision 1.6 2002/01/05 15:55:11 alex - * - Wrapper fuer inet_aton(): liefert immer Fehler. - * - * Revision 1.5 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.4 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.3 2001/12/14 08:14:34 alex - * - NONE als -1 definiert. Macht den Source lesbarer ;-) - * - * Revision 1.2 2001/12/12 01:58:53 alex - * - Test auf socklen_t verbessert. - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * Imported sources to CVS. - */ - - -#ifndef __global_h__ -#define __global_h__ - - -#include "config.h" - - -#ifndef HAVE_socklen_t -#define socklen_t int /* u.a. fuer Mac OS X */ -#endif - -#ifndef HAVE_INET_ATON -#define inet_aton( opt, bind ) 0 /* Dummy fuer inet_aton() */ -#endif - -#if OS_UNIX_AUX -#define _POSIX_SOURCE /* muss unter A/UX definiert sein */ -#endif - - -#include "defines.h" - - -#endif - - -/* -eof- */ diff --git a/src/ngircd/irc-channel.c b/src/ngircd/irc-channel.c index 1a1fd931..041073b5 100644 --- a/src/ngircd/irc-channel.c +++ b/src/ngircd/irc-channel.c @@ -9,30 +9,25 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-channel.c,v 1.1 2002/03/03 17:15:11 alex Exp $ + * $Id: irc-channel.c,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-channel.c: IRC-Channel-Befehle - * - * $Log: irc-channel.c,v $ - * Revision 1.1 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include +#include "defines.h" #include "irc.h" #include "irc-write.h" #include "log.h" #include "messages.h" -#include +#include "exp.h" #include "irc-channel.h" diff --git a/src/ngircd/irc-channel.h b/src/ngircd/irc-channel.h index 3796d560..81828595 100644 --- a/src/ngircd/irc-channel.h +++ b/src/ngircd/irc-channel.h @@ -9,14 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-channel.h,v 1.1 2002/03/03 17:15:11 alex Exp $ + * $Id: irc-channel.h,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-channel.h: IRC-Channel-Befehle (Header) - * - * $Log: irc-channel.h,v $ - * Revision 1.1 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * */ diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c index ecf5146d..5333570f 100644 --- a/src/ngircd/irc-login.c +++ b/src/ngircd/irc-login.c @@ -9,40 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-login.c,v 1.7 2002/03/11 22:07:46 alex Exp $ + * $Id: irc-login.c,v 1.8 2002/03/12 14:37:52 alex Exp $ * * irc-login.c: Anmeldung und Abmeldung im IRC - * - * $Log: irc-login.c,v $ - * Revision 1.7 2002/03/11 22:07:46 alex - * - SQUIT, QUIT: Loglevel bei unbekannten Clients wieder auf WARNING erhoeht. - * - * Revision 1.6 2002/03/11 22:04:10 alex - * - Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken? - * - * Revision 1.5 2002/03/11 17:33:40 alex - * - Log-Level von SQUIT und QUIT bei unbekannten Clients auf DEBUG herabgesetzt. - * - * Revision 1.4 2002/03/10 22:40:22 alex - * - IRC_PING() ist, wenn nicht im "strict RFC"-Mode, toleranter und akzptiert - * beliebig viele Parameter: z.B. BitchX sendet soetwas. - * - * Revision 1.3 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * - * Revision 1.2 2002/03/02 00:49:11 alex - * - Bei der USER-Registrierung wird NICK nicht mehr sofort geforwarded, - * sondern erst dann, wenn auch ein gueltiges USER empfangen wurde. - * - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -55,7 +30,7 @@ #include "log.h" #include "messages.h" -#include +#include "exp.h" #include "irc-login.h" diff --git a/src/ngircd/irc-login.h b/src/ngircd/irc-login.h index 17a7c533..8577d021 100644 --- a/src/ngircd/irc-login.h +++ b/src/ngircd/irc-login.h @@ -9,16 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-login.h,v 1.2 2002/03/03 17:15:11 alex Exp $ + * $Id: irc-login.h,v 1.3 2002/03/12 14:37:52 alex Exp $ * * irc-login.h: Anmeldung und Abmeldung im IRC (Header) - * - * $Log: irc-login.h,v $ - * Revision 1.2 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. */ diff --git a/src/ngircd/irc-mode.c b/src/ngircd/irc-mode.c index 0b2ea10c..652c994a 100644 --- a/src/ngircd/irc-mode.c +++ b/src/ngircd/irc-mode.c @@ -9,32 +9,25 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-mode.c,v 1.2 2002/03/04 01:06:24 alex Exp $ + * $Id: irc-mode.c,v 1.3 2002/03/12 14:37:52 alex Exp $ * * irc-mode.c: IRC-Befehle zur Mode-Aenderung (MODE, AWAY, ...) - * - * $Log: irc-mode.c,v $ - * Revision 1.2 2002/03/04 01:06:24 alex - * - der AWAY-Mode wurde nicht ueber mehrere Server-Links weitergegeben. - * - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include "channel.h" +#include "defines.h" #include "irc-write.h" #include "log.h" #include "messages.h" -#include +#include "exp.h" #include "irc-mode.h" diff --git a/src/ngircd/irc-mode.h b/src/ngircd/irc-mode.h index cef76b30..c3b30b30 100644 --- a/src/ngircd/irc-mode.h +++ b/src/ngircd/irc-mode.h @@ -9,14 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-mode.h,v 1.1 2002/02/27 23:26:21 alex Exp $ + * $Id: irc-mode.h,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-mode.h: IRC-Befehle zur Mode-Aenderung (MODE, AWAY, ...) (Header) - * - * $Log: irc-mode.h,v $ - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. - * */ diff --git a/src/ngircd/irc-oper.c b/src/ngircd/irc-oper.c index d71bcaaf..b390d080 100644 --- a/src/ngircd/irc-oper.c +++ b/src/ngircd/irc-oper.c @@ -9,21 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-oper.c,v 1.1 2002/03/03 17:15:11 alex Exp $ + * $Id: irc-oper.c,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-oper.c: IRC-Operator-Befehle - * - * $Log: irc-oper.c,v $ - * Revision 1.1 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include "ngircd.h" diff --git a/src/ngircd/irc-oper.h b/src/ngircd/irc-oper.h index c9e27a16..9c8f2dab 100644 --- a/src/ngircd/irc-oper.h +++ b/src/ngircd/irc-oper.h @@ -9,14 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-oper.h,v 1.1 2002/03/03 17:15:11 alex Exp $ + * $Id: irc-oper.h,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-oper.h: IRC-Operator-Befehle (Header) - * - * $Log: irc-oper.h,v $ - * Revision 1.1 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * */ diff --git a/src/ngircd/irc-server.c b/src/ngircd/irc-server.c index eed8b96f..db577208 100644 --- a/src/ngircd/irc-server.c +++ b/src/ngircd/irc-server.c @@ -9,32 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-server.c,v 1.5 2002/03/11 22:06:32 alex Exp $ + * $Id: irc-server.c,v 1.6 2002/03/12 14:37:52 alex Exp $ * * irc-server.c: IRC-Befehle fuer Server-Links - * - * $Log: irc-server.c,v $ - * Revision 1.5 2002/03/11 22:06:32 alex - * - SQUIT, QUIT: Loglevel bei unbekannten Clients wieder auf WARNING erhoeht. - * - * Revision 1.4 2002/03/11 22:04:10 alex - * - Client_Destroy() hat neuen Paramter: QUITs fuer Clients verschicken? - * - * Revision 1.3 2002/03/11 17:33:40 alex - * - Log-Level von SQUIT und QUIT bei unbekannten Clients auf DEBUG herabgesetzt. - * - * Revision 1.2 2002/03/06 15:50:14 alex - * - kleine Code-Umstellungen. - * - * Revision 1.1 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -45,7 +28,7 @@ #include "log.h" #include "messages.h" -#include +#include "exp.h" #include "irc-server.h" diff --git a/src/ngircd/irc-server.h b/src/ngircd/irc-server.h index f6d66696..5edbcb79 100644 --- a/src/ngircd/irc-server.h +++ b/src/ngircd/irc-server.h @@ -9,14 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-server.h,v 1.1 2002/03/03 17:15:12 alex Exp $ + * $Id: irc-server.h,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-server.h: IRC-Befehle fuer Server-Links (Header) - * - * $Log: irc-server.h,v $ - * Revision 1.1 2002/03/03 17:15:12 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * */ diff --git a/src/ngircd/irc-write.c b/src/ngircd/irc-write.c index e72cec9b..1292e43c 100644 --- a/src/ngircd/irc-write.c +++ b/src/ngircd/irc-write.c @@ -9,26 +9,22 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-write.c,v 1.1 2002/02/27 23:26:21 alex Exp $ + * $Id: irc-write.c,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-write.c: IRC-Texte und Befehle ueber Netzwerk versenden - * - * $Log: irc-write.c,v $ - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. - * */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include -#include +#include "defines.h" + +#include "exp.h" #include "irc-write.h" diff --git a/src/ngircd/irc-write.h b/src/ngircd/irc-write.h index 087d12e3..116a621c 100644 --- a/src/ngircd/irc-write.h +++ b/src/ngircd/irc-write.h @@ -9,14 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc-write.h,v 1.1 2002/02/27 23:26:21 alex Exp $ + * $Id: irc-write.h,v 1.2 2002/03/12 14:37:52 alex Exp $ * * irc-write.h: IRC-Texte und Befehle ueber Netzwerk versenden (Header) - * - * $Log: irc-write.h,v $ - * Revision 1.1 2002/02/27 23:26:21 alex - * - Modul aus irc.c bzw. irc.h ausgegliedert. - * */ diff --git a/src/ngircd/irc.c b/src/ngircd/irc.c index cc6b2b82..c22b867b 100644 --- a/src/ngircd/irc.c +++ b/src/ngircd/irc.c @@ -9,74 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc.c,v 1.87 2002/03/10 18:16:51 alex Exp $ + * $Id: irc.c,v 1.88 2002/03/12 14:37:52 alex Exp $ * * irc.c: IRC-Befehle - * - * $Log: irc.c,v $ - * Revision 1.87 2002/03/10 18:16:51 alex - * - bei WHO, WHOIS und NAMES wird nun nur noch der Status "Operator" oder - * "voiced" geliefert -- nicht mehr beides. - * - * Revision 1.86 2002/03/04 01:43:20 alex - * - der WHO-Befehl (ohne Argumente) gat teilweise Channel-Names vergessen. - * - * Revision 1.85 2002/03/03 19:44:30 alex - * - WHO implementiert (bisher ohne Unterstuetzung von Masks) - * - * Revision 1.84 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * - * Revision 1.83 2002/02/28 00:48:26 alex - * - Forwarding von TOPIC an andere Server gefixed. Hoffentlich ;-) - * - * Revision 1.82 2002/02/27 23:26:36 alex - * - einige Funktionen in irc-xxx-Module ausgegliedert. - * - * Revision 1.81 2002/02/27 20:55:44 alex - * - Channel-Topics werden nun auch korrekt von anderen Server angenommen. - * - * Revision 1.80 2002/02/27 20:33:13 alex - * - Channel-Topics implementiert. - * - * Revision 1.79 2002/02/27 18:57:21 alex - * - PRIVMSG zeugt nun bei Texten an User an, wenn diese "away" sind. - * - * Revision 1.78 2002/02/27 18:23:45 alex - * - IRC-Befehl "AWAY" implementert. - * - * Revision 1.77 2002/02/27 17:05:41 alex - * - PRIVMSG beachtet nun die Channel-Modes "n" und "m". - * - * Revision 1.76 2002/02/27 16:04:14 alex - * - Bug bei belegtem Nickname bei User-Registrierung (NICK-Befehl) behoben. - * - * Revision 1.75 2002/02/27 15:23:27 alex - * - NAMES beachtet nun das "invisible" Flag ("i") von Usern. - * - * Revision 1.74 2002/02/27 03:44:53 alex - * - gerade eben in SQUIT eingefuehrten Bug behoben: entfernte Server werden nun - * nur noch geloescht, die Verbindung, von der SQUIT kam, bleibt wieder offen. - * - * Revision 1.73 2002/02/27 03:08:05 alex - * - Log-Meldungen bei SQUIT erneut ueberarbeitet ... - * - * Revision 1.72 2002/02/27 02:26:58 alex - * - SQUIT wird auf jeden Fall geforwarded, zudem besseres Logging. - * - * Revision 1.71 2002/02/27 00:50:05 alex - * - einige unnoetige Client_NextHop()-Aufrufe entfernt. - * - NAMES korrigiert und komplett implementiert. - * - * Revision 1.70 2002/02/26 22:06:40 alex - * - Nick-Aenderungen werden nun wieder korrekt ins Logfile geschrieben. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -93,7 +34,7 @@ #include "messages.h" #include "tool.h" -#include +#include "exp.h" #include "irc.h" diff --git a/src/ngircd/irc.h b/src/ngircd/irc.h index 0fde819c..90e0326a 100644 --- a/src/ngircd/irc.h +++ b/src/ngircd/irc.h @@ -9,31 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: irc.h,v 1.29 2002/03/03 19:44:30 alex Exp $ + * $Id: irc.h,v 1.30 2002/03/12 14:37:52 alex Exp $ * * irc.h: IRC-Befehle (Header) - * - * $Log: irc.h,v $ - * Revision 1.29 2002/03/03 19:44:30 alex - * - WHO implementiert (bisher ohne Unterstuetzung von Masks) - * - * Revision 1.28 2002/03/03 17:15:11 alex - * - Source in weitere Module fuer IRC-Befehle aufgesplitted. - * - * Revision 1.27 2002/02/27 23:26:36 alex - * - einige Funktionen in irc-xxx-Module ausgegliedert. - * - * Revision 1.26 2002/02/27 20:33:13 alex - * - Channel-Topics implementiert. - * - * Revision 1.25 2002/02/27 18:23:46 alex - * - IRC-Befehl "AWAY" implementert. - * - * Revision 1.24 2002/02/23 21:39:48 alex - * - IRC-Befehl KILL sowie Kills bei Nick Collsisions implementiert. - * - * Revision 1.23 2002/02/17 23:38:58 alex - * - neuer IRC-Befehl VERSION implementiert: IRC_VERSION(). */ diff --git a/src/ngircd/log.c b/src/ngircd/log.c index 540ef2fa..394817b0 100644 --- a/src/ngircd/log.c +++ b/src/ngircd/log.c @@ -9,83 +9,18 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: log.c,v 1.20 2002/03/06 15:36:04 alex Exp $ + * $Id: log.c,v 1.21 2002/03/12 14:37:52 alex Exp $ * * log.c: Logging-Funktionen - * - * $Log: log.c,v $ - * Revision 1.20 2002/03/06 15:36:04 alex - * - stderr wird nun in eine Datei umgelenkt (ngircd.err). Wenn der Server - * nicht im Debug-Modus laeuft, so wird diese bei Programmende geloescht. - * - * Revision 1.19 2002/03/03 17:17:01 alex - * - strncpy() und vsnprintf() kopieren nun etwas "optimierter" (1 Byte weniger) :-) - * - * Revision 1.18 2002/02/19 20:07:13 alex - * - direkt nach dem Start werden die aktiven "Modes" ins Log geschrieben. - * - * Revision 1.17 2002/01/11 14:45:37 alex - * - Anpassungen an neue Kommandozeilen-Optionen "--debug" und "--nodaemon". - * - * Revision 1.16 2002/01/05 15:54:40 alex - * - syslog() etc. wurde verwendet, auch wenn USE_SYSLOG nicht definiert war. - * - * Revision 1.15 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.14 2002/01/01 18:01:43 alex - * - Architektur und Betriebssystem in Start-Meldung aufgenommen. - * - * Revision 1.13 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.12 2001/12/29 20:16:31 alex - * - Log-Funktionen fuer Resolver-Sub-Prozess implementiert. - * - * Revision 1.11 2001/12/29 03:08:49 alex - * - neue configure-Option "--enable-strict-rfc". - * - * Revision 1.10 2001/12/27 01:44:49 alex - * - die Verwendung von syslog kann nun abgeschaltet werden. - * - * Revision 1.9 2001/12/26 03:22:16 alex - * - string.h wird nun includiert. - * - * Revision 1.8 2001/12/25 23:13:00 alex - * - Versionsstring bei Programmstart verbessert. - * - * Revision 1.7 2001/12/25 22:04:26 alex - * - Aenderungen an den Debug- und Logging-Funktionen. - * - * Revision 1.6 2001/12/25 19:20:39 alex - * - es wird nun die Facility LOG_LOCAL5 zum Loggen verwendet. - * - * Revision 1.5 2001/12/15 00:07:56 alex - * - Log-Level der Start- und Stop-Meldungen angehoben. - * - * Revision 1.4 2001/12/13 02:04:16 alex - * - boesen "Speicherschiesser" in Log() gefixt. - * - * Revision 1.3 2001/12/12 23:31:24 alex - * - Zum Loggen wird nun auch syslog verwendet. - * - * Revision 1.2 2001/12/12 17:19:12 alex - * - in Log-Meldungen wird nun auch der Level der Meldung ausgegeben. - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ #define MAX_LOG_MSG_LEN 256 -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -98,10 +33,10 @@ #include #endif -#include "global.h" #include "ngircd.h" +#include "defines.h" -#include +#include "exp.h" #include "log.h" diff --git a/src/ngircd/log.h b/src/ngircd/log.h index 4729dd80..6177cad8 100644 --- a/src/ngircd/log.h +++ b/src/ngircd/log.h @@ -9,33 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: log.h,v 1.7 2002/01/02 02:42:58 alex Exp $ + * $Id: log.h,v 1.8 2002/03/12 14:37:52 alex Exp $ * * log.h: Logging-Funktionen (Header) - * - * $Log: log.h,v $ - * Revision 1.7 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.6 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.5 2001/12/29 20:16:31 alex - * - Log-Funktionen fuer Resolver-Sub-Prozess implementiert. - * - * Revision 1.4 2001/12/27 01:44:49 alex - * - die Verwendung von syslog kann nun abgeschaltet werden. - * - * Revision 1.3 2001/12/12 23:31:24 alex - * - Zum Loggen wird nun auch syslog verwendet. - * - * Revision 1.2 2001/12/12 17:19:29 alex - * - LOG_ERR heisst nun LOG_ERROR. - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ diff --git a/src/ngircd/messages.h b/src/ngircd/messages.h index c008e033..bcd799ca 100644 --- a/src/ngircd/messages.h +++ b/src/ngircd/messages.h @@ -9,118 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: messages.h,v 1.34 2002/03/03 19:41:46 alex Exp $ + * $Id: messages.h,v 1.35 2002/03/12 14:37:52 alex Exp $ * * irc.h: IRC-Befehle (Header) - * - * $Log: messages.h,v $ - * Revision 1.34 2002/03/03 19:41:46 alex - * - neue Konstanten RPL_ENDOFWHO_MSG und RPL_WHOREPLY_MSG definiert. - * - * Revision 1.33 2002/02/27 20:33:01 alex - * - neue Text-Konstante: ERR_NOTONCHANNEL_MSG - * - * Revision 1.32 2002/02/27 18:23:24 alex - * - neue Text-Konstanten RPL_UNAWAY_MSG und RPL_NOWAWAY_MSG. - * - * Revision 1.31 2002/02/27 17:05:13 alex - * - neue Text-Konstante ERR_CANNOTSENDTOCHAN_MSG eingefuehrt. - * - * Revision 1.30 2002/02/17 23:39:24 alex - * - Konstanten sortiert, neue Konstante RPL_VERSION und RPL_VERSION_MSG. - * - * Revision 1.29 2002/02/17 17:42:53 alex - * - neue Text-Konstante ERR_UMODEUNKNOWNFLAG2_MSG. - * - * Revision 1.28 2002/02/13 23:04:50 alex - * - RPL_MYINFO_MSG korrigiert. - * - * Revision 1.27 2002/02/13 17:45:57 alex - * - unterstuetzte User- und Channel-Modes stehen nun in Konstanten. - * - * Revision 1.26 2002/02/11 23:33:12 alex - * - neue Message ERR_CHANOPRIVSNEEDED_MSG definiert. - * - * Revision 1.25 2002/02/11 15:48:39 alex - * - neue Nachricht RPL_CHANNELMODEIS definiert. - * - * Revision 1.24 2002/02/06 16:51:39 alex - * - neue Text-Konstante RPL_UMODEISCHAN_MSG. - * - * Revision 1.23 2002/01/29 00:14:05 alex - * - RPL_WHOISCHANNELS_MSG korrigiert. - * - * Revision 1.22 2002/01/28 13:06:19 alex - * - RPL_NAMREPLY_MSG an tatsaechliche Implementierung angepasst ;-) - * - * Revision 1.21 2002/01/27 17:13:37 alex - * - neue Defines fuer RPL_TOPIC und RPL_NOTOPIC. - * - * Revision 1.20 2002/01/21 00:02:34 alex - * - ERR_NOSUCHCHANNEL hinzugefuegt. - * - * Revision 1.19 2002/01/16 22:09:52 alex - * - RPL_LUSERME_MSG erweitert, kleinere Aenderungen. - * - * Revision 1.18 2002/01/11 23:50:55 alex - * - LINKS implementiert, LUSERS begonnen. - * - * Revision 1.17 2002/01/05 23:23:44 alex - * - neue Nachricht ERR_NOSUCHSERVER_MSG definiert. - * - * Revision 1.16 2002/01/03 02:24:21 alex - * - neue Message ERR_NOTREGISTEREDSERVER_MSG. - * - * Revision 1.15 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.14 2001/12/31 16:00:57 alex - * - "o" zu den unterstuetzten Modes hinzugefuegt. - * - * Revision 1.13 2001/12/31 15:33:13 alex - * - neuer Befehl NAMES, kleinere Bugfixes. - * - Bug bei PING behoben: war zu restriktiv implementiert :-) - * - * Revision 1.12 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.11 2001/12/30 19:25:39 alex - * - RPL_MYINFO_MSG um unterstuetzte User-Modes ergaengz. - * - * Revision 1.10 2001/12/30 11:42:00 alex - * - der Server meldet nun eine ordentliche "Start-Zeit". - * - * Revision 1.9 2001/12/29 03:06:56 alex - * - Texte ergaenzt, einige Bugs behoben (Leerzeichen falsch gesetzt, z.B.) - * - * Revision 1.8 2001/12/27 19:17:26 alex - * - neue Befehle PRIVMSG, NOTICE, PING. - * - * Revision 1.7 2001/12/27 16:56:06 alex - * - RPL_WELCOME an Client_GetID() angepasst. - * - * Revision 1.6 2001/12/26 22:48:53 alex - * - MOTD-Datei ist nun konfigurierbar und wird gelesen. - * - * Revision 1.5 2001/12/26 03:51:13 alex - * - in ERR_NOTREGISTERED_MSG fehlte ein "%s" - jetzt steht auch hier der Nick. - * - * Revision 1.4 2001/12/26 03:22:40 alex - * - Format der Meldungen ueberarbeitet: fast immer ist nun der Nick enthalten. - * - * Revision 1.3 2001/12/25 19:20:11 alex - * - neue Message: ERR_NICKNAMEINUSE[_MSG]. - * - * Revision 1.2 2001/12/24 01:30:46 alex - * - einige Messages korrigiert, andere ergaenzt (u.a. fuer MOTD). - * - * Revision 1.1 2001/12/23 21:53:32 alex - * - Ich habe diesen Header begonnen. - * - * Revision 1.1 2001/12/14 08:13:43 alex - * - neues Modul begonnen :-) */ diff --git a/src/ngircd/ngircd.c b/src/ngircd/ngircd.c index 113cecab..b78bed3a 100644 --- a/src/ngircd/ngircd.c +++ b/src/ngircd/ngircd.c @@ -9,120 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: ngircd.c,v 1.31 2002/03/10 17:50:48 alex Exp $ + * $Id: ngircd.c,v 1.32 2002/03/12 14:37:52 alex Exp $ * * ngircd.c: Hier beginnt alles ;-) - * - * $Log: ngircd.c,v $ - * Revision 1.31 2002/03/10 17:50:48 alex - * - Handling von "--version" und "--help" nochmal geaendert ... - * - * Revision 1.30 2002/03/10 17:45:41 alex - * - bei "ngircd --version" werden nun die eincompilierten Pfade angezeigt. - * - * Revision 1.29 2002/03/06 15:36:04 alex - * - stderr wird nun in eine Datei umgelenkt (ngircd.err). Wenn der Server - * nicht im Debug-Modus laeuft, so wird diese bei Programmende geloescht. - * - * Revision 1.28 2002/02/27 23:24:29 alex - * - ueberfluessige Init- und Exit-Funktionen entfernt. - * - * Revision 1.27 2002/02/25 11:42:47 alex - * - wenn ein System sigaction() nicht kennt, so wird nun signal() verwendet. - * - * Revision 1.26 2002/02/23 19:06:47 alex - * - fuer SIGCHLD wird nun auch SA_NOCLDWAIT gesetzt, wenn vorhanden. - * - * Revision 1.25 2002/02/19 20:30:47 alex - * - SA_RESTART wird fuer Signale nur noch gesetzt, wenn es definiert ist. - * - * Revision 1.24 2002/02/19 20:08:24 alex - * - "Passive-Mode" implementiert: kein Auto-Conect zu anderen Servern. - * - NGIRCd_DebugLevel wird (fuer VERSION-Befehl) ermittelt. - * - * Revision 1.23 2002/02/17 23:40:21 alex - * - neue Funktion NGIRCd_VersionAddition(). NGIRCd_Version() aufgespaltet. - * - * Revision 1.22 2002/01/22 17:15:39 alex - * - die Fehlermeldung "interrupted system call" sollte nicht mehr auftreten. - * - * Revision 1.21 2002/01/21 00:02:11 alex - * - Hilfetexte korrigiert und ergaenzt (Sniffer). - * - * Revision 1.20 2002/01/18 11:12:11 alex - * - der Sniffer wird nun nur noch aktiviert, wenn auf Kommandozeile angegeben. - * - * Revision 1.19 2002/01/12 00:17:28 alex - * - ngIRCd wandelt sich nun selber in einen Daemon (Hintergrundprozess) um. - * - * Revision 1.18 2002/01/11 14:45:18 alex - * - Kommandozeilen-Parser implementiert: Debug- und No-Daemon-Modus, Hilfe. - * - * Revision 1.17 2002/01/02 02:51:16 alex - * - Signal-Handler fuer SIGCHLD: so sollten Zombies nicht mehr vorkommen. - * - * Revision 1.15 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.14 2001/12/30 19:26:12 alex - * - Unterstuetzung fuer die Konfigurationsdatei eingebaut. - * - * Revision 1.13 2001/12/30 11:42:00 alex - * - der Server meldet nun eine ordentliche "Start-Zeit". - * - * Revision 1.12 2001/12/29 03:07:36 alex - * - einige Loglevel geaendert. - * - * Revision 1.11 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.10 2001/12/24 01:34:38 alex - * - Signal-Handler aufgeraeumt; u.a. SIGPIPE wird nun korrekt ignoriert. - * - * Revision 1.9 2001/12/21 22:24:50 alex - * - neues Modul "parse" wird initialisiert und abgemeldet. - * - * Revision 1.8 2001/12/14 08:15:26 alex - * - neue Module (irc, client, channel) werden an- und abgemeldet. - * - zweiter Listen-Socket wird zu Testzwecken konfiguriert. - * - * Revision 1.7 2001/12/13 01:31:46 alex - * - Conn_Handler() wird nun mit einem Timeout aufgerufen. - * - * Revision 1.6 2001/12/12 23:30:42 alex - * - Log-Meldungen an syslog angepasst. - * - NGIRCd_Quit ist nun das Flag zum Beenden des ngircd. - * - * Revision 1.5 2001/12/12 17:21:21 alex - * - mehr Unterfunktionen eingebaut, Modul besser strukturiert & dokumentiert. - * - Anpassungen an neue Module. - * - * Revision 1.4 2001/12/12 01:58:53 alex - * - Test auf socklen_t verbessert. - * - * Revision 1.3 2001/12/12 01:40:39 alex - * - ein paar mehr Kommentare; Variablennamen verstaendlicher gemacht. - * - fehlenden Header ergaenz. - * - SIGINT und SIGQUIT werden nun ebenfalls behandelt. - * - * Revision 1.2 2001/12/11 22:04:21 alex - * - Test auf stdint.h (HAVE_STDINT_H) hinzugefuegt. - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ -#define PORTAB_CHECK_TYPES /* Prueffunktion einbinden, s.u. */ - - -#include -#include "global.h" - -#include +#include "portab.h" +#include "imp.h" #include #include #include @@ -137,11 +32,12 @@ #include "client.h" #include "conf.h" #include "conn.h" +#include "defines.h" #include "irc.h" #include "log.h" #include "parse.h" -#include +#include "exp.h" #include "ngircd.h" @@ -159,9 +55,6 @@ GLOBAL INT main( INT argc, CONST CHAR *argv[] ) BOOLEAN ok; INT pid, i, n; - /* Datentypen der portab-Library ueberpruefen */ - portab_check_types( ); - NGIRCd_Restart = FALSE; NGIRCd_Quit = FALSE; NGIRCd_NoDaemon = FALSE; diff --git a/src/ngircd/ngircd.h b/src/ngircd/ngircd.h index c4378446..046a84be 100644 --- a/src/ngircd/ngircd.h +++ b/src/ngircd/ngircd.h @@ -9,42 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: ngircd.h,v 1.10 2002/02/19 20:07:48 alex Exp $ + * $Id: ngircd.h,v 1.11 2002/03/12 14:37:52 alex Exp $ * * ngircd.h: Prototypen aus dem "Haupt-Modul" - * - * $Log: ngircd.h,v $ - * Revision 1.10 2002/02/19 20:07:48 alex - * - Neue Variablen NGIRCd_DebugVersion und NGIRCd_Passive. - * - * Revision 1.9 2002/02/17 23:40:32 alex - * - Neue Funktion NGIRCd_VersionAddition(). - * - * Revision 1.8 2002/01/18 11:12:11 alex - * - der Sniffer wird nun nur noch aktiviert, wenn auf Kommandozeile angegeben. - * - * Revision 1.7 2002/01/11 14:45:18 alex - * - Kommandozeilen-Parser implementiert: Debug- und No-Daemon-Modus, Hilfe. - * - * Revision 1.6 2002/01/02 02:44:37 alex - * - neue Defines fuer max. Anzahl Server und Operatoren. - * - * Revision 1.5 2001/12/31 03:06:03 alex - * - das #include fuer time.h hat noch gefehlt. - * - * Revision 1.4 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.3 2001/12/30 11:42:00 alex - * - der Server meldet nun eine ordentliche "Start-Zeit". - * - * Revision 1.2 2001/12/12 23:30:01 alex - * - NGIRCd_Quit ist nun das globale Flag zum Beenden des ngircd. - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ diff --git a/src/ngircd/parse.c b/src/ngircd/parse.c index 44b853e0..636a867f 100644 --- a/src/ngircd/parse.c +++ b/src/ngircd/parse.c @@ -9,114 +9,15 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: parse.c,v 1.29 2002/03/03 17:17:38 alex Exp $ + * $Id: parse.c,v 1.30 2002/03/12 14:37:52 alex Exp $ * * parse.c: Parsen der Client-Anfragen - * - * $Log: parse.c,v $ - * Revision 1.29 2002/03/03 17:17:38 alex - * - Sourcen auf weitere Module fuer IRC-Befehle aufgesplitted. - * - IRC-Befehl WHO implementiert. - * - * Revision 1.28 2002/02/27 23:25:31 alex - * - Anpassungen an Aufteilung von irc.d, Init- und Exit-Funktionen entfernt. - * - * Revision 1.27 2002/02/27 20:33:13 alex - * - Channel-Topics implementiert. - * - * Revision 1.26 2002/02/27 18:23:46 alex - * - IRC-Befehl "AWAY" implementert. - * - * Revision 1.25 2002/02/26 20:52:15 alex - * - Fehler bei Fehlermeldung wg. unbekanntem Prefix behoben. - * - * Revision 1.24 2002/02/23 21:39:48 alex - * - IRC-Befehl KILL sowie Kills bei Nick Collsisions implementiert. - * - * Revision 1.23 2002/02/17 23:38:58 alex - * - neuer IRC-Befehl VERSION implementiert: IRC_VERSION(). - * - * Revision 1.22 2002/01/21 00:01:37 alex - * - neue Befehle JOIN und PART. - * - * Revision 1.21 2002/01/18 11:12:11 alex - * - der Sniffer wird nun nur noch aktiviert, wenn auf Kommandozeile angegeben. - * - * Revision 1.20 2002/01/11 23:50:55 alex - * - LINKS implementiert, LUSERS begonnen. - * - * Revision 1.19 2002/01/09 01:08:42 alex - * - Parses handhabt Leerzeichen zw. Parametern nun etwas "lockerer". - * - * Revision 1.18 2002/01/07 15:29:11 alex - * - Status-Codes an den Server selber werden ignoriert, besseres Logging. - * - * Revision 1.17 2002/01/06 17:41:44 alex - * - die Fehlermeldung "unbekannter Befehl" hatte ein falsches Format. - * - * Revision 1.16 2002/01/05 23:23:20 alex - * - generisches Forwarding von Zahlen-Statuscodes implementiert. - * - * Revision 1.15 2002/01/05 01:42:08 alex - * - an Server werden keine ERRORS mehr wegen unbekannter Befehle geschickt. - * - * Revision 1.14 2002/01/04 17:56:45 alex - * - neuer Befehl SQUIT. - * - * Revision 1.13 2002/01/04 01:20:02 alex - * - Client-Strukruren werden nur noch ueber Funktionen angesprochen. - * - * Revision 1.12 2002/01/03 02:24:49 alex - * - neue Befehle NJOIN und SERVER begonnen. - * - * Revision 1.11 2002/01/02 02:43:22 alex - * - Copyright-Texte aktualisiert. - * - neuer Befehl ERROR. - * - * Revision 1.10 2001/12/31 15:33:13 alex - * - neuer Befehl NAMES, kleinere Bugfixes. - * - Bug bei PING behoben: war zu restriktiv implementiert :-) - * - * Revision 1.9 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.8 2001/12/29 03:08:19 alex - * - Fuehrende und folgende Leerzeichen etc. in Requests werden geloescht. - * - Logmeldungen (mal wieder) ein wenig angepasst. - * - * Revision 1.7 2001/12/27 19:13:21 alex - * - neue Befehle NOTICE und PRIVMSG. - * - Debug-Logging ein wenig reduziert. - * - * Revision 1.6 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.5 2001/12/26 03:23:03 alex - * - PING/PONG-Befehle implementiert. - * - * Revision 1.4 2001/12/25 22:04:26 alex - * - Aenderungen an den Debug- und Logging-Funktionen. - * - * Revision 1.3 2001/12/25 19:18:36 alex - * - Gross- und Kleinschreibung der IRC-Befehle wird ignoriert. - * - bessere Debug-Ausgaben. - * - * Revision 1.2 2001/12/23 21:56:47 alex - * - bessere Debug-Ausgaben, - * - Bug im Parameter-Parser behoben (bei "langem" Parameter) - * - erste IRC-Befehle werden erkannt :-) - * - * Revision 1.1 2001/12/21 23:53:16 alex - * - Modul zum Parsen von Client-Requests begonnen. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include @@ -125,6 +26,7 @@ #include "ngircd.h" #include "client.h" #include "conn.h" +#include "defines.h" #include "irc.h" #include "irc-channel.h" #include "irc-login.h" @@ -136,7 +38,7 @@ #include "messages.h" #include "tool.h" -#include +#include "exp.h" #include "parse.h" diff --git a/src/ngircd/parse.h b/src/ngircd/parse.h index 791842e1..7810adb8 100644 --- a/src/ngircd/parse.h +++ b/src/ngircd/parse.h @@ -9,27 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: parse.h,v 1.5 2002/02/27 23:24:29 alex Exp $ + * $Id: parse.h,v 1.6 2002/03/12 14:37:52 alex Exp $ * * parse.h: Parsen der Client-Anfragen (Header) - * - * $Log: parse.h,v $ - * Revision 1.5 2002/02/27 23:24:29 alex - * - ueberfluessige Init- und Exit-Funktionen entfernt. - * - * Revision 1.4 2002/01/02 02:43:50 alex - * - Copyright-Text ergaenzt bzw. aktualisiert. - * - * Revision 1.3 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.2 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.1 2001/12/21 23:53:16 alex - * - Modul zum Parsen von Client-Requests begonnen. */ diff --git a/src/ngircd/tool.c b/src/ngircd/tool.c index 4de0e1fd..c801ccfd 100644 --- a/src/ngircd/tool.c +++ b/src/ngircd/tool.c @@ -9,43 +9,20 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: tool.c,v 1.6 2002/01/02 02:42:58 alex Exp $ + * $Id: tool.c,v 1.7 2002/03/12 14:37:52 alex Exp $ * * tool.c: Hilfsfunktionen, ggf. Platformabhaengig - * - * $Log: tool.c,v $ - * Revision 1.6 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.5 2001/12/31 02:44:36 alex - * - ngt_TrimStr() hatte noch einen boesen Bug: evtl. wurde ueber den Start - * des Strings nach vorne(!) hinaus gelesen. Hopsa! - * - * Revision 1.4 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.3 2001/12/29 03:05:34 alex - * - Funktionsnamen etwas konsequenter umbenannt :-) - * - * Revision 1.2 2001/12/12 17:20:33 alex - * - Tool-Funktionen haben nun das Praefix "ngt_". - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ -#include -#include "global.h" +#include "portab.h" -#include +#include "imp.h" #include #include #include -#include +#include "exp.h" #include "tool.h" diff --git a/src/ngircd/tool.h b/src/ngircd/tool.h index 01a88a22..3fab3a68 100644 --- a/src/ngircd/tool.h +++ b/src/ngircd/tool.h @@ -9,27 +9,9 @@ * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS. * - * $Id: tool.h,v 1.5 2002/01/02 02:42:58 alex Exp $ + * $Id: tool.h,v 1.6 2002/03/12 14:37:52 alex Exp $ * * log.h: Hilfsfunktionen (Header) - * - * $Log: tool.h,v $ - * Revision 1.5 2002/01/02 02:42:58 alex - * - Copyright-Texte aktualisiert. - * - * Revision 1.4 2001/12/31 02:18:51 alex - * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART), - * - neuen Header "defines.h" mit (fast) allen Konstanten. - * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes. - * - * Revision 1.3 2001/12/26 14:45:37 alex - * - "Code Cleanups". - * - * Revision 1.2 2001/12/12 17:20:33 alex - * - Tool-Funktionen haben nun das Praefix "ngt_". - * - * Revision 1.1.1.1 2001/12/11 21:53:04 alex - * - Imported sources to CVS. */ -- 2.39.2