From 5b333085283e1999cb215e619eb77f3817d244bd Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sat, 4 Jan 2003 13:07:54 +0000 Subject: [PATCH] - Restructured documentation: now the main language is english. --- configure.in | 4 +- doc/CVS.txt | 8 +- doc/FAQ.txt | 8 +- doc/Makefile.am | 4 +- doc/Protocol.txt | 8 +- doc/README-AUX.txt | 8 +- doc/README-BeOS.txt | 8 +- doc/RFC.txt | 8 +- doc/de/CVS.txt | 64 ++++++++++++ doc/de/FAQ.txt | 61 +++++++++++ doc/de/INSTALL | 156 ++++++++++++++++++++++++++++ doc/{en => de}/Makefile.am | 5 +- doc/de/Protocol.txt | 109 ++++++++++++++++++++ doc/de/README | 99 ++++++++++++++++++ doc/de/README-AUX.txt | 68 +++++++++++++ doc/de/README-BeOS.txt | 47 +++++++++ doc/de/RFC.txt | 32 ++++++ doc/de/sample-ngircd.conf | 159 +++++++++++++++++++++++++++++ doc/en/INSTALL | 139 ------------------------- doc/en/README | 101 ------------------- doc/en/sample-ngircd.conf | 138 ------------------------- doc/sample-ngircd.conf | 202 ++++++++++++++++--------------------- 22 files changed, 932 insertions(+), 504 deletions(-) create mode 100644 doc/de/CVS.txt create mode 100644 doc/de/FAQ.txt create mode 100644 doc/de/INSTALL rename doc/{en => de}/Makefile.am (77%) create mode 100644 doc/de/Protocol.txt create mode 100644 doc/de/README create mode 100644 doc/de/README-AUX.txt create mode 100644 doc/de/README-BeOS.txt create mode 100644 doc/de/RFC.txt create mode 100644 doc/de/sample-ngircd.conf delete mode 100644 doc/en/INSTALL delete mode 100644 doc/en/README delete mode 100644 doc/en/sample-ngircd.conf diff --git a/configure.in b/configure.in index 4b7f75ed..a82df087 100644 --- a/configure.in +++ b/configure.in @@ -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: configure.in,v 1.76 2003/01/03 19:07:09 alex Exp $ +# $Id: configure.in,v 1.77 2003/01/04 13:07:54 alex Exp $ # # -- Initialisierung -- @@ -219,7 +219,7 @@ CFLAGS="$the_CFLAGS $add_CFLAGS -DSYSCONFDIR='\"\$(sysconfdir)\"'" AC_OUTPUT([ \ Makefile \ doc/Makefile \ - doc/en/Makefile \ + doc/de/Makefile \ MacOSX/Makefile \ MacOSX/ngircd.pbproj/Makefile \ src/Makefile \ diff --git a/doc/CVS.txt b/doc/CVS.txt index 6845d8d9..9a8abebb 100644 --- a/doc/CVS.txt +++ b/doc/CVS.txt @@ -10,6 +10,12 @@ -- CVS.txt -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + Die Sourcen des ngIRCd werden mit dem "Concurrent Versions System" (CVS) verwaltet. Somit koennen ohne Probleme mehrere Leute gleichzeitig die Sourcen bearbeitet. @@ -61,4 +67,4 @@ mit Alex Barton, in Verbindung setzen. -- -$Id: CVS.txt,v 1.5 2002/02/15 15:15:22 alex Exp $ +$Id: CVS.txt,v 1.6 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/FAQ.txt b/doc/FAQ.txt index 94e0a2e8..02905372 100644 --- a/doc/FAQ.txt +++ b/doc/FAQ.txt @@ -10,6 +10,12 @@ -- FAQ: Frequently Asked Questions -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + I. Allgemein ~~~~~~~~~~~~ Q: Kann der ngIRCd im Netz zusammen mit "normalen" Servern betrieben werden? @@ -58,4 +64,4 @@ A: Am besten traegst du ihn in das Bug-Tracking-System des ngIRCd ein: -- -$Id: FAQ.txt,v 1.2 2002/02/19 20:05:02 alex Exp $ +$Id: FAQ.txt,v 1.3 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/Makefile.am b/doc/Makefile.am index 2960e404..e9790284 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -9,10 +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.10 2002/09/16 10:35:06 alex Exp $ +# $Id: Makefile.am,v 1.11 2003/01/04 13:07:54 alex Exp $ # -SUBDIRS = en +SUBDIRS = de EXTRA_DIST = CVS.txt FAQ.txt Protocol.txt README-AUX.txt \ README-BeOS.txt RFC.txt sample-ngircd.conf diff --git a/doc/Protocol.txt b/doc/Protocol.txt index 14882f29..380509da 100644 --- a/doc/Protocol.txt +++ b/doc/Protocol.txt @@ -10,6 +10,12 @@ -- Protocol.txt -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + I. Kompatibilitaet ~~~~~~~~~~~~~~~~~~ @@ -106,4 +112,4 @@ erzeugt. -- -$Id: Protocol.txt,v 1.5 2002/09/04 00:06:19 alex Exp $ +$Id: Protocol.txt,v 1.6 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/README-AUX.txt b/doc/README-AUX.txt index 14cca4b8..21b4fed1 100644 --- a/doc/README-AUX.txt +++ b/doc/README-AUX.txt @@ -10,6 +10,12 @@ -- README-AUX.txt -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + Seit Version 0.2.2-pre gehoert Apple A/UX zu den offiziell unterstuetzten Plattformen. Er ist im vollen Funktionsumfang nutzbar. @@ -65,4 +71,4 @@ Noch ein paar Hinweise, wenn es doch (noch) nicht klappt: -- -$Id: README-AUX.txt,v 1.4 2002/11/11 00:59:11 alex Exp $ +$Id: README-AUX.txt,v 1.5 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/README-BeOS.txt b/doc/README-BeOS.txt index ad593c89..4299ca4c 100644 --- a/doc/README-BeOS.txt +++ b/doc/README-BeOS.txt @@ -10,6 +10,12 @@ -- README-BeOS.txt -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + BeOS gehoert im Moment (noch?) nicht zu den offiziell unterstuetzten Plat- formen: der ngIRCd enthaelt zwar bereits einige Anpassungen an BeOS und compiliert auch, jedoch bricht er bei jedem Connect-Versuch eines Clients @@ -44,4 +50,4 @@ mir in Verbindung setzen (alex@barton.de), ich maile gerne meine Patches zu. Fuer eine Aenderung im CVS ist es aber meiner Meinung nach noch zu frueh ... -- -$Id: README-BeOS.txt,v 1.3 2002/05/19 13:10:26 alex Exp $ +$Id: README-BeOS.txt,v 1.4 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/RFC.txt b/doc/RFC.txt index f646384e..26899f1c 100644 --- a/doc/RFC.txt +++ b/doc/RFC.txt @@ -10,6 +10,12 @@ -- RFC.txt -- + +-----------------------------------------------------------------------+ + | This text is only available in german at the moment, but this should | + | change until the release of ngIRCd 0.7.0, so feel free to contribute! | + +-----------------------------------------------------------------------+ + + Das IRC-Protokoll ist in diesen RFC's (Request For Comments) dokumentiert: 1459 Oikarinen, J. & D. Reed, "Internet Relay Chat Protocol", @@ -29,4 +35,4 @@ Das IRC-Protokoll ist in diesen RFC's (Request For Comments) dokumentiert: -- -$Id: RFC.txt,v 1.4 2002/01/23 18:20:04 alex Exp $ +$Id: RFC.txt,v 1.5 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/CVS.txt b/doc/de/CVS.txt new file mode 100644 index 00000000..42eee2e3 --- /dev/null +++ b/doc/de/CVS.txt @@ -0,0 +1,64 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- CVS.txt -- + + +Die Sourcen des ngIRCd werden mit dem "Concurrent Versions System" (CVS) +verwaltet. Somit koennen ohne Probleme mehrere Leute gleichzeitig die Sourcen +bearbeitet. + + +I. Anonymer "Nur-Lesen"-Zugang +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Anonymer Zugriff auf die CVS-Repository von ngIRCd ist im "nur-lesen"-Modus +moeglich. Dazu sind folgende Schritte noetig: + +Beim CVS-Server anmelden + + $ cvs -d:pserver:anonymous@arthur.ath.cx:/usr/local/CVS/ngircd login + +Als Benutzername wird "anonymous" mit einem leeren Passwort verwendet. +Nun ein "Check-Out" der Quellcodes durchfuehren: + + $ cvs -d:pserver:anonymous@arthur.ath.cx:/usr/local/CVS/ngircd checkout ngircd + +Dadurch wird im aktuellen Verzeichnis der neue Ordner "ngircd" mit allen +Quell-Dateien des ngIRCd erzeugt. + +Dieses ist der "Arbeitsordner", alle CVS-Befehle werden in Zukunft aus +diesem Ordner bzw. einem Unterordner davon ausgefuehrt. + +Wichtig: wenn ngIRCd "frisch" aus dem CVS compiliert werden soll, so +existiert das configure-Script noch nicht. Dieses muss zunaechst mit dem +Script "autogen.sh" erzeugt werden. Letzteres setzt ein installiertes GNU +automake und GNU autoconf voraus! + +CVS-Tree aktualisieren: + + $ cvs update + +Dieser Befehl aktualisiert alle Dateien im aktuellen Verzeichnis sowie allen +Unterverzeichnissen. + + $ cvs update + +So kann eine einzelne Datei aktualisiert werden (auch dann, wenn sie lokal +z.B. geloescht wurde -- praktisch, um eigene "Experimente" rueckgaengig zu +machen ;-)) + + +III. Schreibzugriff +~~~~~~~~~~~~~~~~~~~ +Wer Schreibzugriff auf die CVS-Repository wuenscht, der moege sich bitte +mit Alex Barton, in Verbindung setzen. + + +-- +$Id: CVS.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/FAQ.txt b/doc/de/FAQ.txt new file mode 100644 index 00000000..48d3c155 --- /dev/null +++ b/doc/de/FAQ.txt @@ -0,0 +1,61 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- FAQ: Frequently Asked Questions -- + + +I. Allgemein +~~~~~~~~~~~~ +Q: Kann der ngIRCd im Netz zusammen mit "normalen" Servern betrieben werden? +A: Ja. ngIRCd ist zum Original kompatibel, getestet wird dies zur Zeit mit + der Version 2.10.3p3 des ircd. + +Q: Gibt es eine Homepage mit Informationen und Downloads? +A: Ja. Die URL ist . + + +II. Compilieren +~~~~~~~~~~~~~~~ +Q: Ich habe die Sourcen von ngIRCd ueber CVS installiert. Nun kann ich + ./configure nicht ausfuehren, da es nicht existiert!? +A: Bei Builds direkt aus dem CVS-Tree muss das configure-Script zunaechst + durch GNU autoconf sowie die Makefile.in's durch GNU automake generiert + werden. Um dies zu vereinfachen existiert das Script "./autogen.sh". + GNU automake und GNU autoconf werden -- im Gegensatz zu Builds aus den + Sourcen eines .tar.gz-Archivs -- hierbei benoetigt! + +Q: ./autogen.sh bricht mit der Meldung "autoheader: command not found" ab. +A: GNU autoconf ist nicht installiert, wird jedoch bei Builds direkt aus + dem CVS-Tree benoetigt. + +Q: ./autogen.sh bricht mit der Meldung "autoconf: Undefined macros: + AC_FUNC_MALLOC" bzw. "AC_CONFIG_SRCDIR" ab. +A: Auf dem System ist eine zu alte Version von GNU autoconf installiert. + Ein Update auf z.B. Version 2.52 loest dieses Problem (eine installiete + alte Version sollte ggf. zunaechst entfernt werden, bei RPM-Paketen z.B. + mit dem Befehl "rpm -e autoconf"). + + +III. Bugs!? +~~~~~~~~~~~ +Q: Gibt es eine Liste der bekannten Bugs bzw. Feature-Wuensche? +A: Ja. Es existiert ein Bug-Tracking-System fuer den ngIRCd (Bugzilla): + URL: . Dort koennen Bugs ge- + meldet und Feature-Wunsche kundgetan werden. Bekannte Bugs koennen in + der Datenbank gesucht und aufgelistet werden. + Einen Account zum Suchen und Melden von Bugs bzw. Feature-Wuenschen + kannst du dir dort selber anlegen. + +Q: Was mache ich, wenn ich einen Bug gefunden habe? +A: Am besten traegst du ihn in das Bug-Tracking-System des ngIRCd ein: + URL: + + +-- +$Id: FAQ.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/INSTALL b/doc/de/INSTALL new file mode 100644 index 00000000..9d214cc7 --- /dev/null +++ b/doc/de/INSTALL @@ -0,0 +1,156 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- INSTALL / Installation -- + + Ilja Osthoff, + + +0. Update von frueheren Versionen +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Unterschiede zu Version 0.5.x + +- Ab Version 0.6.0 werden asyncrone Passwoerter zur Identifikation anderer + Server, die Variable "Password" in [Server]-Abschnitten wird nicht mehr + unterstuetzt. Passwoerter fuer Server-Server-Links werden nun mit den + Variablen "MyPassword" und "PeerPassword" angegeben. + +- Neue Konfigurationsvariablen, Sektion [Global]: MaxConnections, MaxJoins + (vgl. auch Beispiel-Konfiguration "doc/sample-ngircd.conf"!) + + +I. Standard-Installation +~~~~~~~~~~~~~~~~~~~~~~~~ + +ngIRCd ist fuer UNIXoide-Systeme konzipiert worden, das bedeutet, dass die +Installation auf einem modernen UNIX-aehnlichen System kein Problem dar- +stellen sollte. Das System muss nur von GNU automake und GNU autoconf +("configure") unterstuetzt werden. + +Die Standard-Installation sieht so aus: + + 1) tar xzf ngircd-.tar.gz + 2) cd ngircd- + 3) ./autogen.sh [nur erforderlich, wenn ueber CVS bezogen] + 4) ./configure + 5) make + 6) make install + + +zu 3): "autogen.sh" + +Der erste Schritt, autogen.sh, ist nur notwendig, wenn das configure-Script +noch nicht vorhanden ist. Dies ist nie bei offiziellen ("stabilen") Versionen +in tar.gz-Archiven der Fall, jedoch immer, wenn der Source-Code ueber CVS +bezogen wurde. + +Dieser Absatz ist also eigentlich ausschliesslich fuer Entwickler interessant. + +autogen.sh erzeugt die fuer das configure-Script notwendigen Makefile.in's +sowie das configure-Script selber und weitere fuer den make-Lauf erforderliche +Dateien. Dazu wird sowohl GNU automake als auch GNU autoconf (in aktuellen +Versionen!) benoetigt. + +(nochmal: "Endanwender" mussen diesen Schritt i.d.R. nicht ausfuehren!) + + +zu 4): "./configure" + +Mit dem configure-Script wird ngIRCd, wie GNU Software meistens, an das +lokale System angepasst und die erforderlichen Makefile's erzeugt. + +Im Optimalfall sollte configure alle benoetigten Libraries, Header etc. selber +erkennen und entsprechend reagieren. Sollte dies einmal nicht der Fall sein, +so zeigt "./configure --help" moegliche Optionen. + + +zu 5): "make" + +Der make-Befehl bearbeitet die vom configure-Script erzeugten Makefile's und +uebersetzt den ngIRCd. + + +zu 6): "make install" + +Mit "make install" wird der Server und ggf. eine Beispiels-Konfiguration +im System installiert; hierzu sind in der Regel root-Rechte erforderlich. +Eine bereits vorhandene Konfigurationsdatei wird nie ueberschrieben. + +Folgende Dateien werden installiert: + +- /usr/local/sbin/ngircd: ausfuehrbarer Server +- /usr/local/etc/ngircd.conf: Beispiel-Konfiguration, wenn nicht vorhanden + + +II. Nuetzliche make-Targets +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Die vom configure-Script erzeugten Makefile's enthalten immer die folgenden +nuetzlichen Targets: + + - clean: alle Erzeugnisse des Compilers/Linkers loeschen. + Naechster Schritt: -> make + + - distclean: zusaetzliche alle Makefile's loeschen. + Naechster Schritt: -> ./configure + + - maintainer-clean: alle automat. erzeugten Dateien loeschen. + Naechster Schritt: -> ./autogen.sh + + + +III. Konfigurationsdatei ngircd.conf +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In der Konfigurationsdatei werden Kommentare durch "#" oder durch ";" +eingeleitet. Dieses dient nur der besseren Lesbarkeit. + +Die Datei ist in drei Abschnitte unterteilt: [Global], [Operator] und +[Server]. Im [Global]-Teil werden die grundlegenden Einstellungen vor- +genommen, z.B. der Server-Name und die Ports, auf denen er Verbindungen +annehmen soll. In [Operator]-Abschnitten werden Server-Operatoren fest- +gelegt und unter [Server] werden die Einstellungen fuer die Verbindung +mit anderen Servern konfiguriert. + +Die Bedeutung der einzelnen Variablen ist in der Beispiel-Konfiguration +"doc/sample-ngircd.conf" erklaert, die bei "make install" auch als +"ngircd.conf" in /usr/local/etc installiert wird, wenn dort noch keine +Konfigurationsdatei vorhanden ist. + + +IV. Kommandozeilen-Optionen +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Folgende Parameter koennen dem ngIRCd u.a. uebergeben werden: + +-f, --config + Der Daemon wird angewiesen, statt der Standard-Konfigurationsdatei + /usr/local/etc/ngircd.conf die Datei einzulesen. + +-n, --nodaemon + ngIRCd soll im Fordergrund laufen; alle Meldungen werden zusaetzlich + zum Syslog auch auf der Konsole ausgegeben. + +-p, --passive + Verbindungen zu anderen Servern (wie in der Konfigurationsdatei in + [Server]-Abschnitten definiert) werden nicht automatisch hergestellt. + +--configtest + Die Konfigurationsdatei wird eingelesen, ueberprueft und so aus- + gegeben, wie sie vom ngIRCd interpretiert wurde. Danach beendet + sich der Server wieder. + +Mit dem Parameter "--help" werden alle unterstuetzten Parameter angezeigt, +mit "--version" die Versionsnummer. Bei beiden Parametern beendet sich der +Server nach der Ausgabe wieder. + + +-- +$Id: INSTALL,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/en/Makefile.am b/doc/de/Makefile.am similarity index 77% rename from doc/en/Makefile.am rename to doc/de/Makefile.am index 8f9215a9..a2d4b06d 100644 --- a/doc/en/Makefile.am +++ b/doc/de/Makefile.am @@ -9,10 +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.2 2002/11/18 14:06:29 alex Exp $ +# $Id: Makefile.am,v 1.1 2003/01/04 13:07:54 alex Exp $ # -EXTRA_DIST = INSTALL README sample-ngircd.conf +EXTRA_DIST = INSTALL README sample-ngircd.conf CVS.txt FAQ.txt Protocol.txt \ + README-AUX.txt README-BeOS.txt RFC.txt maintainer-clean-local: rm -f Makefile Makefile.in diff --git a/doc/de/Protocol.txt b/doc/de/Protocol.txt new file mode 100644 index 00000000..baefaa0f --- /dev/null +++ b/doc/de/Protocol.txt @@ -0,0 +1,109 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- Protocol.txt -- + + +I. Kompatibilitaet +~~~~~~~~~~~~~~~~~~ + +Der ngIRCd haelt sich an das IRC-Protokoll Version 2.10, wie es in den RFCs +1459 und 2810-2813 beschrieben ist. Diese (und ggf. weitere fuer den ngIRCd +relevante) RFCs sind in RFC.txt aufgefuehrt. + +Leider verhaelt sich aber schon der "Originalserver" nicht immer genau so, +wie es in den RFCs beschrieben ist. Da der ngIRCd aber ein Ersatz fuer +eben diesen Server sein soll, werden diese Abweichungen in der Regel vom +ngIRCd emuliert um die Kompatibilitaet zu wahren. + +Sollte dieses Verhalten nicht erwuenscht sein, so kann mit der configure- +Option "--enable-strict-rfc" der ngIRCd so compiliert werden, dass er sich +strikt an die entsprechenden RFCs haelt. + +ACHTUNG: an einem so compilierten Server koennen sich andere Server und +Clients, die sich nicht genau an das Protokoll halten, u.U. nicht mehr +anmelden oder alle Funktionen nutzen! In der Regel ist diese Option daher +nicht erwuenscht. + + +II. Das IRC+-Protokoll +~~~~~~~~~~~~~~~~~~~~~~ + +Der ngIRCd unterstuetzt als Erweiterung zum IRC-Protokoll wie es in den RFCs +2810-2813 beschrieben ist, das IRC+-Protokoll. Dieses Protokoll ist dabei +kompatibel zum IRC-Protokoll und wird nur verwendet, wenn der ngIRCd fest- +stellt, dass ein connectierter Server ebenfalls dieses erweiterte Protokoll +unterstuetzt. + +Die Protokoll- und Server-Erkennung wird mit dem "PASS"-Befehl durchgefuehrt +(vgl. RFC 2813, Sektion 4.1.1): + + +II.1 neuen Server-Link registrieren + + Befehl: PASS + Parameter: [] + Fuer: mit dieser Syntax nur Server + + enthaelt das Passwort fur den neu aufzubauenden Server-Link, +so wie es in der Konfigurationsdatei definiert wurde. + + setzt sich aus zwei Teilen zusammen und ist mindestens 4, maximal +14 Zeichen lang: die ersten vier Bytes enthalten die Versionsnummer des +unterstuetzten IRC-Protokolls, wobei die ersten zwei Bytes die Major-, die +letzten beiden die Minor-Revision angeben. Der String "0210" steht also +fuer Protokollversion 2.10. +Die folgenden (optionalen!) 10 Bytes enthalten eine von der jeweiligen +Implementation abhaengige Versionsnummer. Server, die das IRC+-Protokoll +unterstuetzen, liefern hier "-IRC+". + + setzt sich ebenfalls aus zwei Bestandteilen zusammen und ist +maximal 100 Bytes lang. Getrennt werden die beiden Teile mit dem Zeichen +"|". Der erste Teil enthaelt den Namen der Implementation, der ngIRCd +liefert hier z.B. "ngIRCd", der Originalserver "IRC". Anhand dieser "ID" +kann zwischen Serverimplementationen unterschieden werden. Der zweite Teil +(nach dem "|") ist implementationsabhaengig und wird nur ausgewertet, +wenn die Gegenseite das IRC+-Protokoll unterstuetzt. In diesem Fall wird +folgende Syntax erwartet: "[:]". + + ist hier eine ASCII-Klartext-Darstellung der Versionsnummer, + zeigt die vom Server unterstuetzten Erweiterungen an (und +kann die leere Menge sein). + +Mit dem optionalen Parameter werden Server-Optionen uebermittelt, +wie sie in RFC 2813, Sektion 4.1.1 definiert sind. + +Folgende sind zur Zeit definiert: + +- o: IRC-Operatoren duerfen auch dann Channel- und Channel-User-Modes + aendern, wenn sie kein Channel-Operator im betroffenen Channel sind. + +- C: der Server unterstuetzt den CHANINFO-Befehl. + + +II.2 Channel-Modes, persistente Channel und Topic austauschen + + Befehl: CHANINFO + Parameter: + [] + Fuer: Server + +Mit CHANINFO Informiert ein Server den anderen ueber einen Channel: dessen +Modes und dessen Topic. ist optional. + +Existiert auf dem Server, der das CHANINFO empfaengt, der Channel bereits, +so uebernimmt er die Werte jeweils nur dann, wenn er selber noch keine +Modes bzw. kein Topic definiert hat. Ansonsten wird der jeweilige Parameter +ignoriert. + +Existiert der Channel noch nicht, so wird er mit den entsprechenden Angaben +erzeugt. + + +-- +$Id: Protocol.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/README b/doc/de/README new file mode 100644 index 00000000..b119b144 --- /dev/null +++ b/doc/de/README @@ -0,0 +1,99 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- README / Liesmich -- + + Ilja Osthoff, + + +I. Einfuehrung +~~~~~~~~~~~~~~ + +ngIRCd ist ein Open-Source-Server fuer den Internet Relay Chat (IRC), der +unter der GNU General Public License (http://www.gnu.org/licenses/gpl.html) +entwickelt wird. ngIRCd steht fuer "next generation IRC daemon", er ist von +Grund auf neu geschrieben, also nicht wie die meisten anderen IRCd's vom +Urvater, dem Daemon des IRCNet abgeleitet. + + +II. Status +~~~~~~~~~~~ + +Zur Zeit befindet sich der ngIRCd noch in Entwicklung, manche Features sind +noch nicht implementiert, andere nur teilweise. + +Bisher (mehr oder wenig vollstaendig) implementierte IRC-Befehle: + +ADMIN, AWAY, CHANINFO, CONNECT, DIE, ERROR, INVITE, ISON, JOIN, KICK, KILL, +LINKS, LIST, LUSERS, MODE, MOTD, NAMES, NICK, NJOIN, NOTICE, OPER, PART, +PASS, PING, PONG, PRIVMSG, QUIT, RESTART, SERVER, SQUIT, TIME, TOPIC, +USERHOST, USER, VERSION, WHO, WHOIS. + + +III. Features (oder: warum gerade ngIRCd?) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- keine Probleme mit Servern, deren IP-Adresse dynamisch ist, +- einfache, uebersichtliche Konfigurationsdatei, +- frei verfuegbarer C-Quellcode. +- ngIRCd wird aktiv weiterentwickelt. +- unterstuetzte Plattformen (getestete Version): AIX (3.2.5), A/UX (3.0.1), + FreeBSD/i386 (4.5), HP-UX (10.20), IRIX (6.5), Linux (2.x), Mac OS X (10.x), + NetBSD (1.5.2/i386, 1.5.3/m68k), Solaris (2.5.1, 2.6), Windows mit Cygwin. + + +IV. Dokumentation +~~~~~~~~~~~~~~~~~ + +Im Paket enthalten ist u.a.: + +- README: das Dokument, das Du gerade liest :-) +- INSTALL: Hinweise zur Installation des ngIRCd +- NEWS: sagt der Name schon :-) +- ChangeLog: die komplette History des ngIRCd +- doc/FAQ.txt: haeufige Fragen und Antworten zum ngIRCd +- doc/CVS.txt: Hinweise zum CVS-System +- doc/RFC.txt: Infos ueber die RFC's +- doc/sample-ngircd.conf: Beispiel-Konfigurationsdatei +- doc/README-AUX.txt: Installationshinweise fuer A/UX +- doc/README-BeOS.txt: dito fuer BeOS + +- doc/en/: englischsprachige Dokumentation + + +V. Bezugsquellen +~~~~~~~~~~~~~~~~ + +Die Homepage des ngIRCd ist: ; dort +findest du immer die neusten Informationen ueber den ngIRCd und die aktuellen +freigegebenen ("stabilen") Releases. + +Falls du dich fuer die aktuellen Entwicklungs-Versionen (die jedoch nicht +immer "stabil" sind) interessierst, dann lese bitte den Punkt "CVS" auf der +Homepage und die Datei "doc/CVS.txt", die die Verwendung des "Concurrent +Versioning System" (CVS) beschreibt. + + +VI. Bugs +~~~~~~~~ + +Wenn du im ngIRCd Bugs finden solltest (so was soll ja auch vorkommen :-), +dann lege bitte einen Bug-Report ueber diese URL an: + + + +Dort kannst du dich auch ueber bekannte Fehler informieren. + +Falls du noch Anregungen, Kritik, Patches etc. pp. zum ngIRCd hast, dann +bitte einfach eine Mail an oder +schreiben. + + +-- +$Id: README,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/README-AUX.txt b/doc/de/README-AUX.txt new file mode 100644 index 00000000..2f23eadf --- /dev/null +++ b/doc/de/README-AUX.txt @@ -0,0 +1,68 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- README-AUX.txt -- + + +Seit Version 0.2.2-pre gehoert Apple A/UX zu den offiziell unterstuetzten +Plattformen. Er ist im vollen Funktionsumfang nutzbar. + +Ab Version 0.5.0 compiliert zudem der ngIRCd mit dem nativen A/UX-Compiler, +d.h. GNU C wird nicht mehr zwingend vorausgesetzt. + +Folgende Software wird jedoch benoetigt: + + - GNU sed + Bezugsquellen: + http://www.rezepte-im-web.de/appleux/sed-3.02.tar.gz + ftp://arthur.ath.cx/pub/AUX/Software/Tools/sed-3.02.tar.gz + + A/UX beinhaltet ein /bin/sed, dieses unterstuetzt jedoch leider nicht + alle Funktionen, die GNU automake/autoconf nutzen. + Achtung: bitte bei der Installation von GNU sed sicherstellen, dass + immer dieses und nie das von A/UX verwendet wird (also $PATH entsprechend + anpassen bzw. die A/UX-Version komplett ersetzen)! + + - libUTIL.a + Bezugsquellen: + http://ftp.mayn.de/pub/apple/apple_unix/Sys_stuff/libUTIL-2.1.tar.gz + ftp://arthur.ath.cx/pub/AUX/Software/Libraries/libUTIL-2.1.tar.gz + + Diese Library beinhaltet Systemfunktionen, die auf UNIXoiden Systemen + gaengig, unter A/UX jedoch leider nicht verfuegbar sind. Dazu gehoert + u.a. memmove(), strerror() und strdup(). + +Nachdem diese Pakete entsprechend installiert sind, reicht ein ganz normales +"./configure" und "make" aus, um den ngIRCd unter A/UX zu compilieren. + + +Noch ein paar Hinweise, wenn es doch (noch) nicht klappt: + + - auf dem System muss entweder ein install vorhanden sein, welches so + "broken" ist, dass configure das eigene Shell-Skript waehlt, oder eben + eines, welches funktioniert. Leider ist mindestens ein Binary im Um- + lauf, welches Probleme verursacht. Das Binary aus folgenden GNU + fileutils funktioniert hier aber z.B.: + ftp://arthur.ath.cx/pub/UNIX/AUX/Software/Tools/fileutils-4.0.tar.gz + + - das sich im Umlauf befindende vorcompilierte Binary der alten Bash sollte + unbedingt ausserhalb von /bin (z.B. unter /usr/local/bin) installiert + werden. Ansonsten waehlt es das configure-Script als Shell aus, leider + funktioniert das aber nicht. + + - da die /bin/sh von A/UX recht limitiert ist, kann sie u.a. nicht zum + Erzeugen des "config.status"-Scripts verwendet werden. + Abhilfe: /bin/sh umbenennen (z.B. in "/bin/sh.AUX") und durch einen (am + besten symbolischen) Link auf /bin/ksh ersetzen. + Dieser Schritt sollte keine Probleme nach sich ziehen und ist daher immer, + auch unabhaengig vom ngIRCd, empfehlenswert. + + +-- +$Id: README-AUX.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/README-BeOS.txt b/doc/de/README-BeOS.txt new file mode 100644 index 00000000..e121e381 --- /dev/null +++ b/doc/de/README-BeOS.txt @@ -0,0 +1,47 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- README-BeOS.txt -- + + +BeOS gehoert im Moment (noch?) nicht zu den offiziell unterstuetzten Plat- +formen: der ngIRCd enthaelt zwar bereits einige Anpassungen an BeOS und +compiliert auch, jedoch bricht er bei jedem Connect-Versuch eines Clients +mit diesem Fehler ab: + + select(): Bad file descriptor! + +Es sieht leider so aus, als ob das select() von BeOS nicht mit File-Handles +von Pipes verschiedener Prozesse umgehen kann: sobald der Resolver asyncron +gestartet wird, also Pipe-Handles im select() vorhanden sind, fuehrt das zu +obiger Meldung. + +Theoretische "Loesung"/Workaround: +Den Resolver unter BeOS nicht verwenden, sondern mit IP-Adressen arbeiten. +Nachteil: der ngIRCd koennte sich nicht zu Servern verbinden, die dynamische +Adressen benutzen -- dazu muesste er den Namen aufloesen. Ansonsten sollte +es eigentlich zu keinen Beeintraechtigungen kommen ... + +Also: wenn es jemand implementieren will ... ;-)) + +Vielleicht mache ich es auch irgendwann mal selber. Mal sehen. + +2002-05-19: +Ich habe gerade damit ein wenig gespielt und den Source hier so geaendert, +dass unter BeOS keine Resolver-Subprozesse mehr erzeugt werden, sondern mit +den "rohen" IP-Adressen gearbeitet wird. Das funktioniert so weit auch, +allerdings verschluckt sich BeOS nun bei anderen Funktionen, so zum Beispiel +bei close(), wenn ein Socket eines Clients geschlossen werden soll!? +Sehr komisch. +Wer Interesse daran hat, das weiter zu verfolgen, der moege sich bitte mit +mir in Verbindung setzen (alex@barton.de), ich maile gerne meine Patches zu. +Fuer eine Aenderung im CVS ist es aber meiner Meinung nach noch zu frueh ... + +-- +$Id: README-BeOS.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/RFC.txt b/doc/de/RFC.txt new file mode 100644 index 00000000..8bc01efb --- /dev/null +++ b/doc/de/RFC.txt @@ -0,0 +1,32 @@ + + ngIRCd - Next Generation IRC Server + + (c)2001,2002 by Alexander Barton, + alex@barton.de, http://www.barton.de/ + + ngIRCd ist freie Software und steht unter + der GNU General Public License. + + -- RFC.txt -- + + +Das IRC-Protokoll ist in diesen RFC's (Request For Comments) dokumentiert: + + 1459 Oikarinen, J. & D. Reed, "Internet Relay Chat Protocol", + May 1993, [IRC]. + + 2810 Kalt, C., "Internet Relay Chat: Architecture", + April 2000, [IRC-ARCH]. + + 2811 Kalt, C., "Internet Relay Chat: Channel Management", + April 2000, [IRC-CHAN]. + + 2812 Kalt, C., "Internet Relay Chat: Client Protocol", + April 2000, [IRC-CLIENT]. + + 2813 Kalt, C., "Internet Relay Chat: Server Protocol", + April 2000, [IRC-SERVER]. + + +-- +$Id: RFC.txt,v 1.1 2003/01/04 13:07:54 alex Exp $ diff --git a/doc/de/sample-ngircd.conf b/doc/de/sample-ngircd.conf new file mode 100644 index 00000000..c383dacd --- /dev/null +++ b/doc/de/sample-ngircd.conf @@ -0,0 +1,159 @@ +# $Id: sample-ngircd.conf,v 1.1 2003/01/04 13:07:54 alex Exp $ + +# +# Das ist eine Beispiel-Konfiguration fuer den ngIRCd, die an die +# jeweiligen Beduerfnisse angepasst werden kann/muss. +# +# Kommentare werden mit "#" oder ";" eingeleitet. +# +# Autor: Alexander Barton, +# Erweiterungen von Ilja Osthoff, +# + +[Global] + + # + # Im [Global]-Abschnitt der Konfigurationsdatei wird der Server + # "an sich" konfiguriert. Notwendig ist nur die Variable "Name", + # Info ist in der Regel ebengalls anzupassen. Fuer alle uebrigen + # Variablen koennen oft die Defaults benutzt werden, d.h. hier + # muss die Variable nicht angegeben werden. + # + + # Servername im IRC-Netz + Name = irc.the.net + + # Info-Text des Servers. Dieser wird z.B. bei WHOIS- oder LINKS- + # Abfragen entsprechend mit ausgegeben. + Info = Server Info Text + + # Informationen ueber den Server und Administrator fuer den + # ADMIN-Befehl: + ;AdminInfo1 = Beschreibung + ;AdminInfo2 = Standort + ;AdminEMail = admin@irc.server + + # Ports, auf denen Verbindungen angenommen werden sollen. Es koennen + # mehrere Ports mit "," getrennt angegeben werden. (Default: 6667) + ;Ports = 6667, 6668, 6669 + + # Textdatei mit der "Message of the Day" (MOTD). Diese wird aus- + # gegeben, wenn sich ein User mit dem Server verbindet. + ;MotdFile = /usr/local/etc/ngircd.motd + + # User-ID, unter der der Daemon laufen soll (dazu muss der Server + # jedoch mit root-Rechten gestartet werden). Es kann der Name oder + # die numerische ID angegeben werden. + # ACHTUNG: Die Konfigurations- und MOTD-Datei muessen fuer diesen + # Benutzer lesbar sein, ansonsten schlaegt ein RESTART fehl! + ;ServerUID = ircd + + # Group-ID, zu der der Daemon wechseln soll (hierzu muss der Server + # jedoch mit root-Rechten gestartet werden). Es kann der Name oder + # die numerische ID angegeben werden. + ;ServerGID = daemon + + # Nach Sekunden verschickt der Server bei Inaktivitaet + # von einem Client diesem ein PING. + ;PingTimeout = 120 + + # Antwortet ein Client, der ein PING bekam, nicht innerhalb von + # Sekunden mit einem PONG, so wird er disconnectiert. + ;PongTimeout = 20 + + # Der Server versucht alle Sekunden, noch nicht bzw. + # nicht mehr connectierte Server-Links aufzubauen. + ;ConnectRetry = 60 + + # Sollen IRC-Operatoren immer den MODE-Befehl in Channel benutzen + # koennen, auch wenn sie kein(!) Channel-Operator sind? + ;OperCanUseMode = no + + # Maximale Anzahl von gleichzeitigen Verbindungen, die dieser + # Server annehmen darf (<=0: unlimitiert). + ;MaxConnections = -1 + + # Maximale Anzahl von Channels, in denen ein User zeitgleich + # Mitglied sein kann (<=0: unlimitiert). + ;MaxJoins = 10 + +[Operator] + + # + # Mit einem [Operator]-Block wird der Name und das Passwort eines + # IRC-Operators konfiguriert. Es darf mehrere [Operator]-Bloecke + # geben (fuer jeden Operator einen). + # + + # ID des IRC-Operators (muss nicht mit dem Nick identisch sein). + ;Name = TheOper + + # Passwort des IRC-Operators + ;Password = ThePwd + +[Server] + + # + # In [Server]-Bloecken werden Server konfiguriert, zu denen sich + # dieser ngIRCd verbinden soll bzw. von denen Verbindungen angekommen + # werden duerfen. + # Es koennen mehrere Server konfiguriert werden, d.h. [Server]- + # Bloecke koennen mehrfach vorkommen. + # Wenn man fuer einen Server einen Port angegeben hat, dann versucht + # sich der ngIRCd mit der Gegenseite zu verbinden. Hat man keinen + # Port konfiguriert, dann wartet der ngIRCd darauf, dass sich die + # Gegenseite mit ihm verbindet. + # + # Server-Gruppen: + # Der ngIRCd unterstuetzt "Server-Gruppen": das bedeutet, man kann + # jedem Server, mit dem man sich verbinden will, einer Gruppe zu- + # ordnen. Wenn der ngIRCd sich dann mit einem Server aus der Gruppe + # verbinden will und keine Antwort erhaelt, dann wird der naechste + # Server aus der Gruppe versucht. + # Achtung: Gruppen werden nur beachtet, wenn man einen Port fur + # die Gegenseite angegeben hat! + # + + # IRC-Name des Servers + ;Name = irc2.the.net + + # DNS-Hostname des Servers + ;Host = connect-to-host.the.net + + # Port, zu dem dieser Server eine Verbindung herstellen soll. Wird + # kein Port angegeben, so wird auf eine Verbindung der Gegenseite + # gewartet. + ;Port = 6666 + + # Eigenes Passwort fuer diese Verbindung. Dieses Passwort muss auf + # dem anderen Server als "PeerPassword" konfiguriert werden. + ;MyPassword = MySecret + + # Passwort des Peer-Servers fuer diese Verbindung. Dieses Passwort + # muss auf dem anderen Server als "MyPassword" konfiguriert sein. + ;PeerPassword = PeerSecret + + # Gruppe, zu der dieser Server gehoert (optional). + ;Group = 123 + +[Channel] + + # + # Mit [Channel]-Bloecken werden "persistente Channels" definiert, + # die nach dem Start des Servers automatisch erzeugt werden und auch + # dann erhalten bleiben, wenn keine User mehr im Channel sind. Es + # koennen mehrere solcher Bloecke hier konfiguriert werden. + # Gekennzeichnet werden solche Channels mit dem Mode "P", der ganz + # normal gesetzt und geloescht werden kann. + # + + # Name des Channels + ;Name = #TheName + + # Topic, das gesetzt werden soll + ;Topic = Ein tolles Topic + + # Channel-Modes + ;Modes = tn + +# -eof- diff --git a/doc/en/INSTALL b/doc/en/INSTALL deleted file mode 100644 index 40704b8b..00000000 --- a/doc/en/INSTALL +++ /dev/null @@ -1,139 +0,0 @@ - - ngIRCd - Next Generation IRC Server - - (c)2001,2002 by Alexander Barton, - alex@barton.de, http://www.barton.de/ - - ngIRCd ist freie Software und steht unter - der GNU General Public License. - - -- INSTALL -- - - - -0. Upgrade Information -~~~~~~~~~~~~~~~~~~~~~~ - -Differences to version 0.5.x - -- Starting with version 0.6.0, other servers are identified using asyncronous - passwords: therefore the variable "Password" in [Server]-sections has been - replaced by "MyPassword" and "PeerPassword". - -- New configuration variables, section [Global]: MaxConnections, MaxJoins - (see example configuration file "doc/en/sample-ngircd.conf"!). - - -I. Standard-Installation -~~~~~~~~~~~~~~~~~~~~~~~~ - -ngIRCd is developed for UNIX-like systems, which means, that the installation -on a modern UNIX-like system should be no problem. The only thing is, that -the system should be supported by GNU automake and GNU autoconf ("configure"). - -The normal installation is like that: - - 1) tar xzf ngircd-.tar.gz - 2) cd ngircd- - 3) ./autogen.sh [only necessary when using CVS] - 4) ./configure - 5) make - 6) make install - -3): "autogen.sh" - -The first step, autogen.sh, is only necessary if the configure-script isn't -already generated. This never happens in official ("stable") releases in -tar.gz-archieves, but when using the CVS system. - -The next is therefore only interesting for developpers. - -autogen.sh produces the makefile.in's, which are necessary for the configure -script it self, and some more files for make. For this step, there must be -GNU automake and GNU autoconf (in recent versions). - -(again: "end users" do not need this step!) - -to 4): "./configure" - -The configure-script is used to detect local system dependancies. - -In the perfect case, configure should recognize all needed libraries, header -and so on. If this shouldn't work, "./configure --help" shows more options. - -to 5): "make" - -The make command uses the Makefiles produced by configure and compiles the -ngIRCd daemon. - -to 6): "make install" - -Use "make install" to install the server and a sample configuration file on -the local system. For this step, root privileges are necessary. If there is -already an older configuration file present, it won't be overwritten. - -This are the files that are installed: - -- /usr/local/sbin/ngircd: exectable server -- /usr/local/etc/ngircd.conf: sample configuration, if not there - - -II. Useful make-targets -~~~~~~~~~~~~~~~~~~~~~~~ - -The Makefile produced by the configure-script contain always these useful -targets: - - - clean: delete every product from the compiler/linker - next step: -> make - - - distclean: plus erase all generated Makefiles - next step: -> ./configure - - - maintainer-clean: erease all automatic generated files - next step: -> ./autogen.sh - - -III. Sample configuration file ngircd.conf -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -In the sample configuration file, there are comments beginning with "#" OR -";" -- this is only for the better understanding of the code. - -The file is seperated in three blocks: [Global], [Operator], [Server]. In -the [Gobal] part, there is the main configuration, like the server-name -and the ports, on which the server should be listening. In the [Operator] -section, the server-operators are defined and [Server] is the section, -where the server-links are configured. - -The meaning of the variables in the configuration file is explained in the -"doc/sample-ngircd.conf", which is also the sample configuration file in -/usr/local/etc after running "make install" (if you don't already have one). - - -IV. Command line options -~~~~~~~~~~~~~~~~~~~~~~~~ - -These parameters could be passed to the ngIRCd: - --f, --config - The daemon uses the file as configuration file rather than - the standard configuration /usr/local/etc/ngircd.conf. - --n, --nodaemon - ngIRCd should be running as a foreground process. - --p, --passive - Server-links won't be automatically established. - ---configtest - Reads, validates and dumps the configuration file as interpreted - by the server. Then exits. - -Use "--help" to see a short help text describing all available parameters -the server understands, with "--version" the ngIRCd shows its version -number. In both cases the server exits after the output. - - --- -$Id: INSTALL,v 1.3 2002/12/18 12:19:07 alex Exp $ diff --git a/doc/en/README b/doc/en/README deleted file mode 100644 index 4fd9bf68..00000000 --- a/doc/en/README +++ /dev/null @@ -1,101 +0,0 @@ - ngIRCd - Next Generation IRC Server - - (c)2001,2002 by Alexander Barton, - alex@barton.de, http://www.barton.de/ - - ngIRCd is free software and published under the - terms of the GNU General Public License. - - -- README -- - - Ilja Osthoff, - - -I. Introduction -~~~~~~~~~~~~~~~ - -ngIRCd is an Open-Source server for the Internet Realy Chat (IRC), which -is developped and published under the terms of the GNU General Public -Licence (URL: http://www.gnu.org/licenses/gpl.html). ngIRCd means "next -generation IRC daemon", it's written from scratch and not deduced from the -"grandfather of IRC daemons", the daemon of the IRCNet. - - - -II. Status -~~~~~~~~~~~ - -At present, the ngIRCd is under active development, some features are not -implemented, some only partly. - -Till today (more or less complete) implemented IRC-commands: - -ADMIN, AWAY, CHANINFO, CONNECT, DIE, ERROR, INVITE, ISON, JOIN, KICK, KILL, -LINKS, LIST, LUSERS, MODE, MOTD, NAMES, NICK, NJOIN, NOTICE, OPER, PART, -PASS, PING, PONG, PRIVMSG, QUIT, RESTART, SERVER, SQUIT, TIME, TOPIC, -USERHOST, USER, VERSION, WHO, WHOIS. - - -III. Features (or: why use ngIRCd?) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -- no problems with servers which have dynamic ip-adresses -- simple, easy understandable configuration file, -- freely published C-Sourcecode, -- ngIRCd will be developed on in the future. -- supported platforms (tested versions): AIX (3.2.5), A/UX (3.0.1), FreeBSD - (4.5), HP-UX (10.20), IRIX (6.5), Linux (2.x), Mac OS X (10.x), NetBSD - (1.5.2/i386, 1.5.3/m68k), Solaris (2.5.1, 2.6), and Windows with Cygwin. - - -IV. Documentation -~~~~~~~~~~~~~~~~~ - -English documentation: - -- doc/en/README: the file that you are reading :-) -- doc/en/INSTALL: hints for the installation of the ngIRCd - -German documentation: - -- README: readme text in german -- INSTALL: german installation instructions -- NEWS: what do you think? :-) -- Changelog: the complete history of the ngIRCd -- doc/FAQ.txt: frequently asked questions and answers -- doc/CVS.txt: hints for the CVS-system -- doc/RFC.txt: information about the RFC's -- doc/sample-ngircd.conf: sample configuration file -- doc/README-AUX.txt: installation hints for A/UX -- doc/README-BeOS.txt: the same for BeOS - - -V. Download -~~~~~~~~~~~ - -The homepage of the ngIRCd is: ; you -will find the newest information about the ngIRCd and the most recent -("stable") releases there. - -If you are interested in the newest developper-versions (which are not -always stable), then please read the section "CVS" on the homepage and -the file "doc/CVS.txt" which describes the use of CVS, the "Concurrent -Versioning System". - - -VI. Bugs -~~~~~~~~ - -If you find bugs in the ngIRCd (which might be there :-), please report -them at the following URL: - - - -There you can read about kown bugs, too. - -If you have critics, patches or something else, please feel yourself free -to post a mail to: or - - --- -$Id: README,v 1.7 2002/11/24 18:48:59 alex Exp $ diff --git a/doc/en/sample-ngircd.conf b/doc/en/sample-ngircd.conf deleted file mode 100644 index 477423e8..00000000 --- a/doc/en/sample-ngircd.conf +++ /dev/null @@ -1,138 +0,0 @@ -# $Id: sample-ngircd.conf,v 1.4 2002/12/18 12:19:07 alex Exp $ - -# -# This is a sample configuration for the ngIRCd, which must adept to the -# local preferences and needs. -# -# Comments are started with "#" or ";". -# -# Author: Alexander Barton, -# Translation by Ilja Osthoff, -# - -[Global] - - # In the [global] section of this file, there is the place of the - # main server configuration. Needed is only the variable "Name", - # Info you can adjust, if you like to. For all the others variables, - # you can use the defaults, this means you can leave it by default. - - # Server name in the IRC-network - Name = irc.the.net - - # Info-text of the server. This will be shown i.e. by a WHOIS- or - # LINKS-request. - Info = Server Info Text - - # Information about the server and administrator in the ADMIN-request - ;AdminInfo1 = Description - ;AdminInfo2 = Location - ;AdminEMail = admin@irc.server - - # Ports, on which the server will listen. There may be more than - # one port, separated with ";". (Default: 6667) - ;Ports = 6667, 6668, 66694 - - # Textfile with the "message of the day" (MOTD). This will be shown - # on a user connection with the server. - ;MotdFile = /usr/local/etc/ngircd.motd - - # User-ID, under which the server is started (for that the server - # must be started with root-rights). You can use the name of the - # user or the numerical ID. - # ATTENTION: the configuration and the MOTD file must be readable - # by this user, otherwise RESTART won't work! - ;ServerUID = 65534 - - # Group-ID, under which the server is running (for that the server - # must be started with root-rights). You can use the name of the - # group or the numerical ID. - ;ServerGID = 65534 - - # After seconds, the server will send a ping after - # inactivity of this client. - ;PingTimeout = 120 - - # If there is an answer of a client, to which the ping was sended, - # not after seconds, it will be disconnected. - ;PongTimeout = 20 - - # The server tries every seconds, not yet connected - # or not anymore connected servers to connect. - ;ConnectRetry = 60 - - # Should IRC-operators be allowed to use the MODE command even if - # they are not(!) channel-operators? - ;OperCanUseMode = no - - # Maximum number of simultanous connection the server is allowed - # to accept (<=0: unlimited): - ;MaxConnections = -1 - - # Maximum number of channels a user can be member of (<=0: no limit): - ;MaxJoins = 10 - -[Operator] - # In this [operator]-section, there will be the configuration of - # the name and password of an IRC operator. There may be more than - # one operator-block (for each operator one). - - # ID of the operator (may be different of the nick) - ;Name = TheOper - - # Password of the operator - ;Password = ThePwd - -[Server] - # In this [Server] section, there is the configuration of the - # servers, which are allowed to connect to your own server. - # There may be more than one server-block. - # If you configured a port for the connection, then the ngIRCd - # tries to connect to this port. If not, it waits for the other - # server. - # - # Server-groups: - # The ngIRCd allows "server-groups": that means, that you can assign - # server-groups for every server, to which you want the ngIRCd to - # connect to. If one server of a server-group won't answer, the - # ngIRCd tries the next one of this group. - # ATTENTION: Server-groups will only work if you defined a port! - - # IRC-name of the server - ;Name = irc2.the.net - - # Hostname of the server - ;Host = connect-to-host.the.net - - # Port of the server, to which the ngIRCd should connect. If you - # assign no port, the ngIRCd waits for an answer of that server. - ;Port = 6666 - - # Own password for the connection. This password has to be configured - # as "PeerPassword" on the other server. - ;MyPassword = MySecret - - # Foreign password for this connection. This password has to be - # configured as "MyPassword" on the other server. - ;PeerPassword = PeerSecret - - # Group of that server (optional) - ;Group = 123 - -[Channel] - # In the [Channel] there can be defined "persistent channels". This - # means, that the server creates the channel and even if all users - # left this channel, it will persist. There may be more than one - # block. Signed with the mode "P", which can be set or unset, like - # normal modes. - - # Name of the channel - ;Name = #TheName - - # Topic for the channel - ;Topic = a great topic - - # Channel-modes - ;Modes = tn - -# -eof- diff --git a/doc/sample-ngircd.conf b/doc/sample-ngircd.conf index 6a7c3715..ce6a162c 100644 --- a/doc/sample-ngircd.conf +++ b/doc/sample-ngircd.conf @@ -1,164 +1,138 @@ -# $Id: sample-ngircd.conf,v 1.17 2002/12/18 12:19:07 alex Exp $ +# $Id: sample-ngircd.conf,v 1.18 2003/01/04 13:07:54 alex Exp $ # -# Das ist eine Beispiel-Konfiguration fuer den ngIRCd, die an die -# jeweiligen Beduerfnisse angepasst werden kann/muss. +# This is a sample configuration for the ngIRCd, which must adept to the +# local preferences and needs. # -# Kommentare werden mit "#" oder ";" eingeleitet. +# Comments are started with "#" or ";". # -# +-----------------------------------------------------------------------+ -# | Please note: English translations of some of the german documentation | -# | files can be found in the directory "doc/en" -- please have a look! | -# +-----------------------------------------------------------------------+ -# -# Autor: Alexander Barton, -# Erweiterungen von Ilja Osthoff, +# Author: Alexander Barton, +# Initial translation by Ilja Osthoff, # [Global] - # - # Im [Global]-Abschnitt der Konfigurationsdatei wird der Server - # "an sich" konfiguriert. Notwendig ist nur die Variable "Name", - # Info ist in der Regel ebengalls anzupassen. Fuer alle uebrigen - # Variablen koennen oft die Defaults benutzt werden, d.h. hier - # muss die Variable nicht angegeben werden. - # - - # Servername im IRC-Netz + # In the [global] section of this file, there is the place of the + # main server configuration. Needed is only the variable "Name", + # Info you can adjust, if you like to. For all the others variables, + # you can use the defaults, this means you can leave it by default. + + # Server name in the IRC-network Name = irc.the.net - - # Info-Text des Servers. Dieser wird z.B. bei WHOIS- oder LINKS- - # Abfragen entsprechend mit ausgegeben. + + # Info-text of the server. This will be shown i.e. by a WHOIS- or + # LINKS-request. Info = Server Info Text - # Informationen ueber den Server und Administrator fuer den - # ADMIN-Befehl: - ;AdminInfo1 = Beschreibung - ;AdminInfo2 = Standort + # Information about the server and administrator in the ADMIN-request + ;AdminInfo1 = Description + ;AdminInfo2 = Location ;AdminEMail = admin@irc.server - - # Ports, auf denen Verbindungen angenommen werden sollen. Es koennen - # mehrere Ports mit "," getrennt angegeben werden. (Default: 6667) - ;Ports = 6667, 6668, 6669 - - # Textdatei mit der "Message of the Day" (MOTD). Diese wird aus- - # gegeben, wenn sich ein User mit dem Server verbindet. + + # Ports, on which the server will listen. There may be more than + # one port, separated with ";". (Default: 6667) + ;Ports = 6667, 6668, 66694 + + # Textfile with the "message of the day" (MOTD). This will be shown + # on a user connection with the server. ;MotdFile = /usr/local/etc/ngircd.motd - # User-ID, unter der der Daemon laufen soll (dazu muss der Server - # jedoch mit root-Rechten gestartet werden). Es kann der Name oder - # die numerische ID angegeben werden. - # ACHTUNG: Die Konfigurations- und MOTD-Datei muessen fuer diesen - # Benutzer lesbar sein, ansonsten schlaegt ein RESTART fehl! - ;ServerUID = ircd + # User-ID, under which the server is started (for that the server + # must be started with root-rights). You can use the name of the + # user or the numerical ID. + # ATTENTION: the configuration and the MOTD file must be readable + # by this user, otherwise RESTART won't work! + ;ServerUID = 65534 - # Group-ID, zu der der Daemon wechseln soll (hierzu muss der Server - # jedoch mit root-Rechten gestartet werden). Es kann der Name oder - # die numerische ID angegeben werden. - ;ServerGID = daemon + # Group-ID, under which the server is running (for that the server + # must be started with root-rights). You can use the name of the + # group or the numerical ID. + ;ServerGID = 65534 - # Nach Sekunden verschickt der Server bei Inaktivitaet - # von einem Client diesem ein PING. + # After seconds, the server will send a ping after + # inactivity of this client. ;PingTimeout = 120 - # Antwortet ein Client, der ein PING bekam, nicht innerhalb von - # Sekunden mit einem PONG, so wird er disconnectiert. + # If there is an answer of a client, to which the ping was sended, + # not after seconds, it will be disconnected. ;PongTimeout = 20 - # Der Server versucht alle Sekunden, noch nicht bzw. - # nicht mehr connectierte Server-Links aufzubauen. + # The server tries every seconds, not yet connected + # or not anymore connected servers to connect. ;ConnectRetry = 60 - - # Sollen IRC-Operatoren immer den MODE-Befehl in Channel benutzen - # koennen, auch wenn sie kein(!) Channel-Operator sind? + + # Should IRC-operators be allowed to use the MODE command even if + # they are not(!) channel-operators? ;OperCanUseMode = no - # Maximale Anzahl von gleichzeitigen Verbindungen, die dieser - # Server annehmen darf (<=0: unlimitiert). + # Maximum number of simultanous connection the server is allowed + # to accept (<=0: unlimited): ;MaxConnections = -1 - # Maximale Anzahl von Channels, in denen ein User zeitgleich - # Mitglied sein kann (<=0: unlimitiert). + # Maximum number of channels a user can be member of (<=0: no limit): ;MaxJoins = 10 [Operator] - - # - # Mit einem [Operator]-Block wird der Name und das Passwort eines - # IRC-Operators konfiguriert. Es darf mehrere [Operator]-Bloecke - # geben (fuer jeden Operator einen). - # - - # ID des IRC-Operators (muss nicht mit dem Nick identisch sein). + # In this [operator]-section, there will be the configuration of + # the name and password of an IRC operator. There may be more than + # one operator-block (for each operator one). + + # ID of the operator (may be different of the nick) ;Name = TheOper - # Passwort des IRC-Operators + # Password of the operator ;Password = ThePwd [Server] - - # - # In [Server]-Bloecken werden Server konfiguriert, zu denen sich - # dieser ngIRCd verbinden soll bzw. von denen Verbindungen angekommen - # werden duerfen. - # Es koennen mehrere Server konfiguriert werden, d.h. [Server]- - # Bloecke koennen mehrfach vorkommen. - # Wenn man fuer einen Server einen Port angegeben hat, dann versucht - # sich der ngIRCd mit der Gegenseite zu verbinden. Hat man keinen - # Port konfiguriert, dann wartet der ngIRCd darauf, dass sich die - # Gegenseite mit ihm verbindet. - # - # Server-Gruppen: - # Der ngIRCd unterstuetzt "Server-Gruppen": das bedeutet, man kann - # jedem Server, mit dem man sich verbinden will, einer Gruppe zu- - # ordnen. Wenn der ngIRCd sich dann mit einem Server aus der Gruppe - # verbinden will und keine Antwort erhaelt, dann wird der naechste - # Server aus der Gruppe versucht. - # Achtung: Gruppen werden nur beachtet, wenn man einen Port fur - # die Gegenseite angegeben hat! + # In this [Server] section, there is the configuration of the + # servers, which are allowed to connect to your own server. + # There may be more than one server-block. + # If you configured a port for the connection, then the ngIRCd + # tries to connect to this port. If not, it waits for the other + # server. # - - # IRC-Name des Servers + # Server-groups: + # The ngIRCd allows "server-groups": that means, that you can assign + # server-groups for every server, to which you want the ngIRCd to + # connect to. If one server of a server-group won't answer, the + # ngIRCd tries the next one of this group. + # ATTENTION: Server-groups will only work if you defined a port! + + # IRC-name of the server ;Name = irc2.the.net - - # DNS-Hostname des Servers + + # Hostname of the server ;Host = connect-to-host.the.net - # Port, zu dem dieser Server eine Verbindung herstellen soll. Wird - # kein Port angegeben, so wird auf eine Verbindung der Gegenseite - # gewartet. + # Port of the server, to which the ngIRCd should connect. If you + # assign no port, the ngIRCd waits for an answer of that server. ;Port = 6666 - # Eigenes Passwort fuer diese Verbindung. Dieses Passwort muss auf - # dem anderen Server als "PeerPassword" konfiguriert werden. + # Own password for the connection. This password has to be configured + # as "PeerPassword" on the other server. ;MyPassword = MySecret - # Passwort des Peer-Servers fuer diese Verbindung. Dieses Passwort - # muss auf dem anderen Server als "MyPassword" konfiguriert sein. + # Foreign password for this connection. This password has to be + # configured as "MyPassword" on the other server. ;PeerPassword = PeerSecret - - # Gruppe, zu der dieser Server gehoert (optional). + + # Group of that server (optional) ;Group = 123 [Channel] - - # - # Mit [Channel]-Bloecken werden "persistente Channels" definiert, - # die nach dem Start des Servers automatisch erzeugt werden und auch - # dann erhalten bleiben, wenn keine User mehr im Channel sind. Es - # koennen mehrere solcher Bloecke hier konfiguriert werden. - # Gekennzeichnet werden solche Channels mit dem Mode "P", der ganz - # normal gesetzt und geloescht werden kann. - # - - # Name des Channels + # In the [Channel] there can be defined "persistent channels". This + # means, that the server creates the channel and even if all users + # left this channel, it will persist. There may be more than one + # block. Signed with the mode "P", which can be set or unset, like + # normal modes. + + # Name of the channel ;Name = #TheName - # Topic, das gesetzt werden soll - ;Topic = Ein tolles Topic - - # Channel-Modes + # Topic for the channel + ;Topic = a great topic + + # Channel-modes ;Modes = tn # -eof- -- 2.39.2