  Fido-Point-HOWTO
  Roland Rosenfeld, rroollaanndd@@ssppiinnnnaakkeerr..rrhheeiinn..ddee, 2:2450/111.13
  $Revision: 4.2 $ $Date: 1996/09/15 11:55:06 $

  Dieses File soll helfen, einen Fido-Point unter Linux zu installieren,
  wobei ifcico als Mailer und FidoGate als Gatewaysoftware verwendet
  werden.
  ______________________________________________________________________

  Table of Contents:

  1.      Aktuelle Version dieser HOWTO

  2.      Bentigte Programme

  2.1.    FidoGate

  2.2.    ifcico

  2.3.    News-Transport-Agent (NTA)

  2.3.1.  cnews

  2.3.2.  INN

  2.4.    Mail-Transport-Agent (MTA)

  2.4.1.  smail

  2.4.2.  Sendmail V8

  2.5.    newspack

  2.6.    Newsreader

  2.7.    Mailreader

  2.8.    Packer

  2.9.    TIC-Prozessor

  3.      Weitere Dokumentation

  4.      Meine Beispielkonfiguration

  5.      Zugriffsrechte

  6.      Installation von FidoGate

  7.      Die Installation von ifcico

  8.      Nodelisten-Compiler

  9.      Poll-Skript und Entpacken

  10.     Konfiguration von smail

  11.     Sendmail V8-Konfiguration

  12.     cnews-Konfiguration

  13.     INN-Konfiguration

  14.     News/Echomail lesen und schreiben

  15.     Mail/Netmail lesen und schreiben

  16.     Files requesten

  17.     Fehlersuche

  17.1.   Mail wird nicht verarbeitet

  17.2.   News werden nicht verarbeitet

  18.     Untersttzung
  ______________________________________________________________________

  11..  AAkkttuueellllee VVeerrssiioonn ddiieesseerr HHOOWWTTOO

  Falls Du eine etwas veraltete Version dieser HOWTO haben solltest,
  kannst Du Dir die immer aktuellste Version bei Guenter Mueller
  (2:2450/111 V32B, 2:2450/112 ISDN) unter dem Namen FFIIDDOOPPNNTT..GGZZ
  requesten. Weiterhin ist sie per WWW unter
  <hhttttpp::////wwwwww..rrhheeiinn..ddee//~~rroollaanndd//FFiiddooPPnntt//> und per FTP unter
  <ffttpp::////ssuunnrriissee..ccss..uunnii--bboonnnn..ddee//ppuubb//lliinnuuxx//ffiiddoo//> verfgbar.

  Eine englische bersetzung von Oliver Much ist im Fido unter dem Namen
  FFIIDDOOPPNNTTEE..GGZZ sowie im Internet unter
  <hhttttpp::////wwwwww..rrhheeiinn..ddee//~~rroollaanndd//FFiiddooPPnntt--eenn//> bzw.  <ffttpp::////ssuunnrriissee..ccss..uunnii--
  bboonnnn..ddee//ppuubb//lliinnuuxx//ffiiddoo//FFiiddooPPnntt--eenn..**> verfgbar.

  22..  BBeennttiiggttee PPrrooggrraammmmee

  22..11..  FFiiddooGGaattee

  Dies ist die Gateway-Software, welche Fido-Messages in Usenet-
  News/Mail konvertiert. Die aktuelle Release ist Version 3.9.7.

  Das Programm wird von Martin Junius (mmjj@@ffiiddoo..ddee, 2:2452/110)
  entwickelt.

  Die aktuellste Version findet man immer in  <ffttpp::////ffttpp..ccoommnneettss..rrwwtthh--
  aaaacchheenn..ddee//ppuubb//mmaaiill++nneewwss//> und gewhnlich etwas spter auch auf
  <ffttpp::////ssuunnssiittee..uunncc..eedduu//ppuubb//LLiinnuuxx//ssyysstteemm//FFiiddoo//>.  Weiterhin kann man
  das Programm auch bei Martin requesten (2:2452/110 HST, 2:2452/111
  ISDN).

  22..22..  iiffcciiccoo

  Dies ist ein Mailer hnlich Binkley-Term, der allerdings mehr Unix-
  like ist, d.h. er wartet nicht aktive (unter Dos strt das ja nicht)
  und orientiert sich auch ansonsten an uucico von UUCP. ifcico ist im
  Paket IFmail enthalten. Die aktuelle Version ist 2.8d, hat jedoch
  einen kleinen Bug, ein Bugfix folgt spter in dieser HOWTO.

  Das Programm wird von Eugene Crosser (ccrroosssseerr@@ppccccrroossss..mmsskk..ssuu,
  2:5020/230) entwickelt.

  IFmail enthlt neben ifcico auch eine eigene Gateway-Software, aber
  ich favourisiere stattdessen FidoGate und beschreibe hier auch nur die
  Konfiguration mit FidoGate.

  Die aktuellste Version wird regelmig von Eugene nach
  <ffttpp::////ttssxx--1111..mmiitt..eedduu//ppuubb//lliinnuuxx//ssoouurrcceess//uussrr..bbiinn//> und
  <ffttpp::////ssuunnssiittee..uunncc..eedduu//ppuubb//LLiinnuuxx//ssyysstteemm//FFiiddoo//> hochgeladen.

  22..33..  NNeewwss--TTrraannssppoorrtt--AAggeenntt ((NNTTAA))

  Als News-Transport-Agent kann man sowohl cnews als auch INN einsetzen.
  Um sich fr das passende Programm entscheiden zu knnen, hier einige
  Vor-/Nachteile beider Programme:

    cnews besteht zu groen Teilen aus Shell-Skripts, die sehr schlecht
     zu debuggen sind, und auch recht langsam arbeiten

    cnews kann von Natur aus kein NNTP (Online-News-Protokoll). Will
     man trotzdem NNTP verwenden (z.B. fr diverse Newsreader, die nur
     per NNTP mit dem Newssystem kommunizieren knnen), braucht man
     einen nntpd, welcher recht ungeschickt zu konfigurieren ist und
     auch nicht alle Mglichkeiten von NNTP untersttzt.

    INN ist fr NNTP ausgelegt. Daher luft auch stndig ein Dmon
     (innd), der auch dafr sorgt, da die lokal geschriebenen News-
     Artikel sofort fr alle lesbar sind. Bei cnews werden die neuen
     Artikel nur zu bestimmten Zeiten (z.B. alle 10 Minuten) ins
     Newssystem bernommen

    cnews macht Probleme, sobald auf //vvaarr//ssppooooll//nneewwss der Platz eng wird
     (weniger als 10MB frei).

  Ich persnlich habe frher mit cnews gearbeitet, aber inzwischen auf
  INN umgestellt, da mir INN insgesamt "runder" erscheint. Auerdem lie
  sich INN bei mir ohne Probleme auf Anhieb installieren, was ich von
  cnews nicht behaupten kann.

  22..33..11..  ccnneewwss

  Da bei lteren Slackware-Distributionen das cnews extrem verkrppelt
  war (die Manpages fehlten beispielsweise ganz), sollte man mindestens
  das cnews aus Slackware 2.1 verwenden.  Alternativ kann man sich, eine
  komplette Source-Distribution zu besorgen und selber compilieren. Ich
  habe hier die Performance-Release vom 20.2.93 auf
  <ffttpp::////ffttpp..uuuu..nneett//nneewwss//> verwendet. Inzwischen gibt es auch eine
  neuere Version, aber die habe ich noch nicht ausprobiert. Ich werde
  mich also hier immer auf die alte Version beziehen und dieser Teil
  meiner Dokumentation wird auch in Zukunft nicht weiterentwickelt.

  22..33..22..  IINNNN

  In der aktuellen Slackware-Distribution sind sowohl cnews als auch INN
  enthalten, so da man die freie Auswahl hat. Dieser INN sollte
  funktionieren, allerdings bevorzuge ich, meine Software selber zu
  compilieren und zu konfigurieren, daher habe ich Sourcen von
  INN-1.4sec verwendet, die man unter
  <ffttpp::////ssuunnssiittee..uunncc..eedduu//ppuubb//LLiinnuuxx//ssyysstteemm//NNeewwss//iinnnn11..44sseecc--lliinnuuxx--ssrrcc..ttggzz>
  findet.

  22..44..  MMaaiill--TTrraannssppoorrtt--AAggeenntt ((MMTTAA))

  Hier hat man im wesentlichen die Wahl zwischen smail und Sendmail V8.
  smail ist das kleinere simplere Paket, welches leider einige kleinere
  Bugs hat, whrend Sendmail V8 auf den ersten Blick sehr unangenehm zu
  konfigurieren ist. Allerdings gibt es inzwischen eine Konfiguration
  mit dem Macro-Prozessor M4, welche die Konfiguration enorm vereinfacht
  und wenn man seine anfngliche Scheu abgelegt hat, stellt man fest,
  da die Konfiguration nicht komplizierter als die von smail ist.
  Allerdings ist Sendmail um einiges mchtiger als smail.  Ich
  persnlich bin daher von smail auf Sendmail umgestiegen.

  22..44..11..  ssmmaaiill

  Ich habe zuletzt die Version 3.1.29.1 (
  <ffttpp::////ssuunnssiittee..uunncc..eedduu//ppuubb//LLiinnuuxx//ssyysstteemm//MMaaiill//ddeelliivveerryy//ssmmaaiill--
  lliinnuuxxbbiinn--33..11..2299..11..ttaarr..ggzz>) verwendet, da das alte 3.1.28.1 einen Bug
  in uuname-Driver hat (das ist allerdings nur fr den UUCP-Betrieb von
  Belang).  Die in dieser HOWTO erklrte Konfiguration setzte ich
  allerdings nicht mehr ein, da ich auf Sendmail umgestellt habe. Da
  auch Slackware inzwischen Sendmail statt smail enthlt, sollte es
  nicht zu schwierig sein, von smail wegzukommen.

  22..44..22..  SSeennddmmaaiill VV88

  Die aktuelle Version von Sendmail V8 ist 8.7.4, allerdings sollten mit
  Versionen >=8.6.9 auch keine greren Probleme auftauchen. 8.6.9 hatte
  zwar ein groes Sicherheitsloch, allerdings tritt das nur dann auf,
  wenn der Rechner per TCP/IP am Internet hngt. Die neuste Version von
  Sendmail findet man immer unter
  <ffttpp::////FFTTPP..CCSS..BBeerrkkeelleeyy..EEDDUU//uuccbb//ssrrcc//sseennddmmaaiill//>, aber auch bei Slackware
  ist Sendmail V8 inzwischen der Standard-MTA. Wichtig ist bei der
  Installation, da man auch die kompletten Konfigurationsfiles
  installiert, die sich unter dem verwirrenden Paketnamen ssmmaaiillccffgg..ttggzz
  verbergen.

  22..55..  nneewwssppaacckk

  Wenn Du cnews, INN oder smail als Sourcen installierst, solltest Du
  Dir die neuste Version von newspak besorgen. Dieses Paket enthlt die
  Anpassungen diverser Mail- und News-Programme (cnews, INN, smail,
  sendmail-IDA, tin, trn, nn, elm, uucp,...) an Linux. Leider konnte ich
  bisher noch kein newspak finden, das auch die Anpassungen von Sendmail
  V8 enthlt. Allerdings findet man selbige Anpassungen bei den
  Slackware-Sourcen im Verzeichnis nn//sseennddmmaaiill.

  22..66..  NNeewwssrreeaaddeerr

  Hier kann man einen beliebigen Newsreader verwenden, z.B. tin, nn,
  trn, xvnews, xrn, slrn, knews,... Falls man cnews einsetzt, sollte der
  Newsreader allerdings einen UUCP-Modus besitzen, d.h. nicht
  ausschlielich mit NNTP arbeiten, da man ansonsten den nntpd
  zustzlich installieren mu, was mangels Dokumentation sehr unhandlich
  ist. Ich empfehle fr den Anfang tin, da tin einfach zu bedienen ist
  und auch wenig Probleme mit der Konfiguration auftreten.

  22..77..  MMaaiillrreeaaddeerr

  Auch hier kann jeder verwenden was er will: elm, pine, mail, xmail,
  xmailtool, xfmail,...

  22..88..  PPaacckkeerr

  Manche Packer finden sich schon in den Distributionen. Falls spezielle
  Packer fehlen, kann man sich diese auf diversen Servern besorgen, die
  wie  <ffttpp::////ssuunnssiittee..uunncc..eedduu//ppuubb//LLiinnuuxx//uuttiillss//ccoommpprreessss//> ein spezielles
  Packer-Verzeichnis besitzen.

     ZZIIPP
        unzip51 entpackt auch die das neue ZIP-Format. Es gibt
        inzwischen auch ein zip, das wieder nach dem neuen Format packt.

     AARRJJ
        unarj241 entpackt ARJ-Archive, allerdings gibt es dazu unter
        Linux keinen Packer.

     LLZZHH
        lha exisitert auch als Linux-Port.

     AARRCC
        Alter, aber wichtiger Packer, denn die meisten Nodelisten sind
        mit arc gepackt. Es existiert mindestens ein Linux-Port.

     RRAARR
        unrar101 entpackt RAR-Archive, einen passenden Packer habe ich
        noch nicht gesehen.  Ich habe die Sourcen zu unrar unter
        <ffttpp::////ffttpp..kkiiaaee..ssuu//..22//uunniixx//aarrcceerrss//uunnrraarr110011..ttggzz> gefunden.

  22..99..  TTIICC--PPrroozzeessssoorr

  Es gibt einige kleinere TIC-Prozessoren, die in PERL geschrieben
  wurden. Insbesonere ist hier ttiicc001100bb..ttggzz (teilweise auch unter dem
  Namen lltt001100bb..ttggzz zu finden) von Cees de Groot (ccgg@@bbooffhh..llaakkee..ddee,
  241:10000/1512) zu nennen. Dieses Programm ist seit ifmail Version
  2.8a im Verzeichnis iiffmmaaiill//mmiisscc//ccoonnttrriibb//ttiicc enthalten.

  Neuerdings ist auch bei FidoGate ein Tick-Prozessor enthalten.

  33..  WWeeiitteerree DDookkuummeennttaattiioonn

     NNeewwss--HHOOWWTTOO
        zur Konfiguration von cnews

     MMaaiill--HHOOWWTTOO
        zur Konfiguration von mail

     NNEETT--22--HHOOWWTTOO
        zur Konfiguration des loopback-Netzes

     NNeettwwoorrkk--AAddmmiinn--GGuuiiddee
        fr die Konfiguration aller Netzwerk-Komponenten, sowie UUCP.

  Weiterhin sollte man sich auf jeden Falle die FidoGate-Dokumentation
  aus dem Verzeichnis ffiiddooggaattee//ddoocc durchlesen.

  Fr INN ist die vierteilige FAQ unverzichtbar, da sie nicht nur
  praktisch alle auftretenden Fragen beantwortet, sondern auerdem noch
  wie eine HOWTO die Installation begleitet.

  44..  MMeeiinnee BBeeiissppiieellkkoonnffiigguurraattiioonn

  Ich werde hier als Beispiel meine eigene Konfiguration fr die drei
  FTN-Netze Fido (Zone 2), Gernet (Zone 21) und Fido.de (Zone 242)
  angeben. Ich habe dabei folgende Adressen:

    2:2450/111.13 (Fido)

    21:100/64.13  (Gernet)

    242:5000/4.13 (fido.de)

  Ich polle alle drei Netze bei ein und dem selben Boss, aber bei
  verschiedenen Uplinks wrde sich an der Konfiguration auch nicht viel
  ndern. fido.de bietet dabei einen Internet-Anschlu ber das Gate von
  Martin Junius in Aachen. Ich bin aus dem Internet also als
  rroollaanndd@@pp1133..ffllookkiissttee..ffiiddoo..ddee erreichbar.  Meine Internet-Mails schicke
  ich an UUUUCCPP @@ 224422::44990000//9999.

  BBiittttee sscchhiicckktt mmiirr wweeddeerr aann ddiiee ffiiddoo..ddee-- nnoocchh aann ddiiee GGeerrnneett--AAddrreessssee
  MMaaiillss,, ddaa iicchh bbeeiiddeess iinnzzwwiisscchheenn aauuffggeeggeebbeenn hhaabbee..  TTrroottzzddeemm llaassssee iicchh
  ddaass wweeiitteerrhhiinn hhiieerr ddrriinn sstteehheenn,, ddaa eess zzuurr EErrkkllrruunngg ddeerr TTeecchhnniikk sseehhrr
  hhaannddlliicchh iisstt..

  Falls Du noch kein Internet-Gate kennst, solltest Du Dich dringend
  danach umsehen, denn FidoGate untersttzt selbiges ausgezeichnet und
  geht davon aus, da Du entweder einen UUCP-Uplink oder wenigstens
  Connection zu einem Gate hast. (sscchhiieellee--cctt..ddee, ffiiddoo..ssuubb..ddee und
  sseessoomm..nnbbgg..ddee sind meines Wissens kostenlos nutzbar, siehe dazu aber
  auch die diversen Gateway-Listen in der Echomail-Area GATEWAYS.GER
  oder der Newsgroup de.comm.gateways).

  Inzwischen habe ich fr meinen Rechner auch einen direkten Internet-
  Zugang bei rhein.de gefunden, so da mein Rechner auch als
  spinnaker.rhein.de (kurz: spi.rhein.de) im Internet erreichbar ist.
  Der Rechner rhein (er ist in der UUCP-Worldmap eingetragen, daher
  braucht er keine Domain, aber das ist inzwischen die Ausnahme)
  versorgt mich dabei mit Mail und News.  Ich werde versuchen in dieser
  HOWTO die Konfiguration mit Internet via Gate (fido.de) und via UUCP
  (rhein.de) parallel zu beschreiben, so da jeder seine Konfiguration
  wiederfinden sollte.

  Und noch eine Bitte: Auch wenn ich berall in diesem File meine
  Adressen als Beispiel verwende, solltest Du auch fr die ersten
  Versuche die Adressen und den Rechnernamen ndern, denn sonst bekomme
  ich die Antworten auf die Fragen, die Du unter meinem Namen stellst...
  55..  ZZuuggrriiffffssrreecchhttee

  Die Zugriffsrechte der einzelnen Dateien sind ein recht heikles Thema
  bei der Kombination von FidoGate, ifcico und News. Daher solltest Du
  zunchst einmal nachsehen, ob die User news und uucp bei Dir
  existieren. Bei mir sieht das in //eettcc//ppaasssswwdd wie folgt aus:

  uucp:sadfasdfasdf:5:5::/home/uucp:/bin/tcsh
  news:aasdfasdfsda:24:24::/home/news:/bin/tcsh

  Weiterhin mssen noch die Groups uucp und news existieren. Es hat sich
  als hilfreich erwiesen, den User news zustzlich in die Group uucp und
  den User uucp zustzlich in die Group news einzutragen. Aus meiner
  //eettcc//ggrroouupp:

  uucp::5:uucp,news
  news::24:news,uucp

  Weiterhin sollten mglichst alle weiteren Spool-Dateien auch fr die
  Group schreibbar sein, aber dazu spter mehr.

  66..  IInnssttaallllaattiioonn vvoonn FFiiddooGGaattee

  Ich beziehe mich hier auf Version 3.9.7, bei lteren Versionen sind
  einige der Konfigurationsmglichkeiten noch nicht vorhanden.

  Zunchst ist jetzt ffiiddooggaattee//ccoonnffiigg..hh zu editieren. Ich habe folgende
  nderungen an der Orginal-Datei vorgenommen: (das ist nicht die
  komplette Datei, sondern nur die Zeilen die ich gendert habe!)

  /* #define HOSTS_RESTRICTED */
  #define SECURE
  /* #define PASSTHRU_NETMAIL */
  /* #define PASSTHRU_ECHOMAIL */
  #define OUTDIR          "outbound"      /* Output of rfc2fido */

  #ifdef SECURE           /* Secure permissions */
  # define PACKET_MODE    0600            /* Mode for outbound packets */
  # define BSY_MODE       0664            /* Mode for BSY files */
  # define FLO_MODE       0664            /* Mode for FLO files */
  # define DATA_MODE      0660            /* Mode for ffx data files */
  # define DIR_MODE       0775            /* Mode for directories */
  # define CONF_MODE      0664            /* Mode for written config files */
  #else                   /* Open permissions */
  # define PACKET_MODE    0666            /* Mode for outbound packets */
  # define BSY_MODE       0666            /* Mode for BSY files */
  # define FLO_MODE       0666            /* Mode for FLO files */
  # define DATA_MODE      0666            /* Mode for ffx data files */
  # define DIR_MODE       0777            /* Mode for directories */
  # define CONF_MODE      0666            /* Mode for written config files */
  #endif

  Man sollte aus den Kommentaren von ccoonnffiigg..hh erkennen, was das bedeuten
  soll. Es soll keine Beschrnkung auf eingetragenen Hosts vorgenommen
  werden. Das Outbound-Directory heit bei mir aus alter Gewohnheit oouutt
  bboouunndd und nicht nur oouutt. Man kann das problemlos umbenennen, mu nur
  insgesamt konsistent bleiben. Weiterhin habe ich die Permissions noch
  auf meinen Geschmack abgendert.
  Als nchstes sind noch einige nderungen in ffiiddooggaattee//ccoonnffiigg..mmaakkee
  vorzunehmen:

  LIBDIR          = /usr/local/lib/fidogate
  SPOOLDIR        = /var/spool/fnet
  LOGDIR          = /var/log/fnet
  OUTBOUND        = /var/spool/fnet/outbound
  INBOUND         = /var/spool/fnet/inbound
  PINBOUND        = /var/spool/fnet/pinbound
  UUINBOUND       = /var/spool/fnet/uuin

  OWNER           = uucp
  GROUP           = uucp
  DEBUG           = -O2 -s -fomit-frame-pointer

  Im ffiiddooggaattee//ssrrcc//MMaakkeeffiillee unter install-dirs solltest Du noch
  $$((SSPPOOOOLLDDIIRR))//oouutt in $$((SSPPOOOOLLDDIIRR))//oouuttbboouunndd ndern.

  Damit werden die Verzeichnisse an meine Verzeichnis-Struktur angepat
  und uuuuccpp..uuuuccpp wird User von FidoGate. Spter wird auch iiffcciiccoo unter
  dem User uuuuccpp..uuuuccpp arbeiten.

  Jetzt mut Du noch einige nderungen an ffiiddooggaattee//ssrrcc//ffttnniinnppoosstt..ppll
  vornehmen:

  $RELAY    = "p13.flokiste.fido.de";
  $PROTO    = "FIDOGATE";
  $SENDMAIL = "/usr/lib/sendmail -oi -odq -oee -f%s -oMs$RELAY -oMr$PROTO -t";
  $RNEWS    = "/usr/bin/rnews";
  &do_cmd("$LIBDIR/ftninrecomb $options");

  Hier wird der Name des Gates angepat (das ist eigentlich
  unwesentlich, der Name tritt allerdings spter im Received:-Header der
  Mails auf).  Wenn Du Sendmail/smail nicht als alle 15 Minuten aufrufen
  willst und auch nicht als Daemon startest, solltest Du die Queue-
  Option (--ooddqq) von sendmail lschen, da die Mails ansonsten ewig in
  //vvaarr//ssppooooll//ssmmaaiill//iinnppuutt (bei smail) bzw.  //vvaarr//ssppooooll//mmqquueeuuee (bei Send
  mail) liegen bleiben.  Das --ooii sorgt dafr, da Mails, die eine Zeile
  mit einem Punkt und sonst nichts enthalten, nicht an dieser Stelle
  beendet werden. Seit FidoGate 3.9.5 ist das schon entsprechend einge
  baut.  Dann habe ich den Pfad von rrnneewwss noch an mein System angepat
  und letztendlich habe ich ffttnniinnrreeccoommbb eingeschaltet (im Orginal ist
  diese Zeile durch '##' auskommentiert). Diese Option hat zur Folge,
  da Mails, die gem FTS-0047 gesplittet wurden, wieder zusammengek
  lebt werden.

  Nun solltest Du als rroooott in ffiiddooggaattee//ssrrcc folgende Kommandos ausfhren
  knnen:

  make depend
  make all
  make install-dirs
  make install

  Nun wechselst Du nach ffiiddooggaattee//lliibb und startest dort

  make install

  Anschlieend stehen alle bentigten Dateien in //uussrr//llooccaall//lliibb//ffiiddoo
  ggaattee. Jetzt mut Du natrlich noch einige Anpassungen an Dein System
  vornehmen. Hier zunchst mal ein komplettes //uussrr//llooccaall//lliibb//ffiiddoo
  ggaattee//ccoonnffiigg..ccoommmmoonn, welches die globalen Konfigurationsdaten enthlt:
  ______________________________________________________________________
  #:ts=8
  #
  # /usr/local/lib/fidogate/config.common
  #
  # FIDOGATE config file common stuff,
  # included by config.gate, config.main, config.ffx
  #
  # spinnaker.rhein.de
  #
  # Format:  keyword arg ...
  #          keyword and args may be put in double quotes "..."
  #

  # Directories: lib, spool, BinkleyTerm-style outbound base dir (without
  # the .../out.xxx), BinkleyTerm-style inbound dir
  #
  # lib, spool defaults are defined in config.h
  #
  LibDir          /usr/local/lib/fidogate
  SpoolDir        /var/spool/fnet
  LogDir          /var/log/fnet
  Outbound        /var/spool/fnet
  Inbound         /var/spool/fnet/inbound

  #
  # Internet address
  #
  #Hostname       p13
  #Domain         .flokiste.fido.de
  Hostname        spinnaker
  Domain          .rhein.de
  # Optional domain name for entries in HOSTS file
  HostsDomain     .fido.de

  #
  # Zones and domains, the outbound directory is relative to the one
  # specified with `Outbound'.
  #
  #               zone    Inet domain     FTN domain      Outbound
  #               ----    -----------     ----------      --------
  Zone            default .fidonet.org    fidonet         -
  Zone            1       .fido.sub.de    fidonet         outbound.001
  Zone            2       .fido.sub.de    fidonet         outbound
  Zone            3       .fido.sub.de    fidonet         outbound.003
  Zone            4       .fido.sub.de    fidonet         outbound.004
  Zone            5       .fido.sub.de    fidonet         outbound.005
  Zone            6       .fido.sub.de    fidonet         outbound.006
  Zone            21      .ger.sub.de     gernet          gernet
  Zone            242     .fido.de        fidode          fidode
  #
  # OPTIONAL:
  #
  # MSDOS client drive to UNIX server directory translation. This allows
  # FIDOGATE running on a UNIX system and BinkleyTerm on an MSDOS PC.
  #
  #DosDrive       H:      /home
  #DosDrive       I:      /var/spool
  #DosDrive       I:      /usr/spool
  #DosDrive       P:      /u1
  #DosDrive       Q:      /u2
  ______________________________________________________________________

  Besonderes Augenmerk mchte ich dabei auf folgende Zeilen legen: Dies
  ist mein Rechnername in Internet:

  Hostname        spinnaker

  Dies ist meine Domain im Internet:

  Domain          .rhein.de

  Als ich nur ber fido.de Internet-Zugang hatte, habe ich dort pp1133 als
  Hostname und ..ffllookkiissttee..ffiiddoo..ddee als Domain verwendet.  Wenn Du keine
  Internet-Adresse hast, kannst Du notfalls auch einen beliebigen Namen
  als Hostname einsetzen und dann als Domain ..uuuuccpp einsetzen (nicht den
  Punkt vergessen). Besonders wichtig ist, da Du dann unbedingt darauf
  achtst, da Du in ccoonnffiigg..ggaattee NNooFFrroommLLiinnee definiert hast, da sonst
  Internet-Adressen generiert werden, auf die man nicht antworten kann.
  Das ist auch dann dringend anzuraten, wenn Du ber ein Gate eine
  Internet-Adresse hast. Bei fido.de werden beispielsweiese News-Artikel
  gebounced, wenn diese eine FromLine enthalten, da es sich dabei um
  potentielle Dupes handelt.

  ccoonnffiigg..mmaaiinn ist wie folgt anzupassen:

  ______________________________________________________________________
  #:ts=8
  #
  # /usr/local/lib/fidogate/config.main
  #
  # FIDOGATE config file main AKA
  #
  # spinnaker.rhein.de
  #
  # Format:  keyword arg ...
  #          keyword and args may be put in double quotes "..."
  #

  #
  # Include common stuff (%L = LIBDIR)
  #
  include         %L/config.common

  #
  # FTN addresses
  #
  Address         2:2450/111.13
  Address         21:100/64.13
  Address         242:5000/4.13

  #
  # AREAS.BBS EchoMail distribution list
  #
  AreasBBS        /usr/local/lib/fidogate/areas.bbs

  #
  # FAREAS.BBS file distribution list
  #
  FAreasBBS       /usr/local/lib/fidogate/fareas.bbs

  #
  # ftnaf: CC of reply mails
  #
  CCMail          postmaster@spinnaker.rhein.de

  #
  # OPTIONAL for tosser
  #
  # Kill empty NetMails addressed to one of our AKAs
  #
  KillEmpty

  #
  # Kill EchoMail for unknown areas
  #
  #KillUnknown

  #
  # Kill routed EchoMail
  #
  #KillRouted

  #
  # Log sender/recipient of all NetMail messages
  #
  LogNetMail

  #
  # Check ^APATH for our own address
  #
  CheckPath

  #
  # Zonegate configuration for EchoMail
  #
  #               Address to      Add to SEEN-BYs
  #               ----------      ---------------
  #ZoneGate       2:123/456       123/456 2452/110
  #ZoneGate       2:789/999       789/999 2452/110
  #ZoneGate       1:105/42        105/42 2452/110

  #
  # Add extra nodes to SEEN-BY
  #
  #               Area            Nodes
  #               ----            -----
  #AddToSeenBy    ABLED           2:24/24
  #AddToSeenBy    ABLENEWS        2:24/24
  ______________________________________________________________________

  Letztendlich mu noch das File ccoonnffiigg..ggaattee angepat werden:

  ______________________________________________________________________
  #:ts=8
  #
  # /usr/local/lib/fidogate/config.gate
  #
  # FIDOGATE config file gateway programs
  #
  # spinnaker.rhein.de
  #
  # Format:  keyword arg ...
  #          keyword and args may be put in double quotes "..."

  #
  # Include common stuff (%L = LIBDIR)
  #
  include         %L/config.common

  #
  # FTN addresses - there must be a corresponding `uplink' statement
  # for each `address' statement
  #
  #               real
  #               ----
  Address         2:2450/111.13
  Address         21:100/64.13
  Address         242:5000/4.13

  Uplink          2:2450/111
  Uplink          21:100/64
  Uplink          242:5000/4

  #
  # Default origin line for EchoMail messages
  #
  Origin          " Spinnaker - Linux-Point der FloKiste Koeln "

  #
  # Organization header for News
  #
  Organization    "Spinnaker-FTN-UseNet-Gate"

  #
  # Don't generate From: line, FSC-0035 kludges
  # MUST be set for FIDOGATE points (no real gateway)
  #
  NoFromLine

  #
  # FTN - Internet gateway. If set, Internet mail will be routed via FTN
  # and this gateway.
  #
  #Gateway                242:4900/99

  #
  # Generate `User.Name@do.main' instead of `User_Name@do.main'
  #
  #DotNames

  #
  # X-FTN header:
  #
  #     f    X-FTN-From
  #     t    X-FTN-To
  #     T    X-FTN-Tearline
  #     O    X-FTN-Origin
  #     V    X-FTN-Via
  #     D    X-FTN-Domain
  #     S    X-FTN-Seen-By
  #     P    X-FTN-Path
  #
  X-FTN           ftTOVDP

  #
  # Maximum size of FTN messages (default value)
  #
  MaxMsgSize              15000
  #MaxMsgSize             32000

  #
  # MAUS gateway support:
  #
  # If set, convert addresses for `User_Name@XY.MAUSDomain' to
  # `User Name % XY @ MAUSGate' for the Fido-MAUS gateway.
  #
  MAUSDomain              .maus.de
  MAUSGate                2:2452/101.6

  #
  # CC of bounced messages
  #
  BounceCCMail            postmaster@spinnaker.rhein.de

  #
  # Send mail from message trackers to
  #
  TrackerMail             postmaster@spinnaker.rhein.de
  ______________________________________________________________________

  Damit kommen wir gleich zur Datei hhoossttss. Das gegebene Beispiel ist
  speziell auf Martin Junius' Konfiguration angepat und lt sich sonst
  leider von niemanden sinnvoll verwenden. Du hast jetzt zunchst mal
  die Mglichkeit, die Datei zu lschen (am besten anschlieend mit
  ttoouucchh hhoossttss eine neue leere Datei anlegen), so da keine symbolischen
  Namen mehr fr Rechner verwendet werden. Jedoch sollten mindestens
  Deine eigenen Adressen darin stehen:

  ______________________________________________________________________
  # /usr/local/lib/fidogate/hosts
  #
  # Fields:
  #
  # node        FTN address
  #
  # hostname    Host name in the local domain (config: HostsDomain, Domain)
  #             or fully qualified domain name (trailing `.') or `-' for
  #             listed node without host name.
  #
  # options     -p  Generate addresses with point, e.g. `p99.hippo.fido.de'
  #             -d  Node is currently down (can't receive mail)
  #
  # node          hostname                        options
  #-----          --------                        -------
  #
  2:2450/111      flokiste                        -p
  242:5000/4      flokiste                        -p
  21:100/64       flokiste                        -p
  ______________________________________________________________________

  Alternativ kannst Du auch alle Zeilen, die nicht mit 22:: beginnen
  lschen, denn dann stehen nur noch die Fido-Adressen drin und Du hast
  keine Proble mehr.  Wenn Du Lust hast, kannst Du auch Rechner von
  anderen Domains eintragen, wie das Beispiel ttwweeeettyy..ddffvv..rrwwtthh--aaaacchheenn..ddee
  zeigt. Fr Namen mit Domain solltest Du nur den abschlieenden Punkt
  nicht vergessen. So knntest Du z.B. auch die Rechner von sscchhiieellee--
  cctt..ddee eintragen, die ja auch alle eine Fido- und eine Internet-Adresse
  haben. Wenn Du nur sscchhiieellee--cctt..ddee-Rechner eintragen willst, dann kannst
  Du im ccoonnffiigg-File HHoossttssDDoommaaiinn auch auf sscchhiieellee--cctt..ddee ndern und dann
  alle sscchhiieellee--cctt..ddee-Rechner ohne Domain in hhoossttss eintragen. Ich hoffe,
  das ist klar geworden, denn fr alle Rechner, die nicht in hhoossttss drin
  stehen, wird die Adresse in z.B. pp1133..ff111111..nn22445500..zz22..ffiiddoo..ssuubb..ddee (o..)
  gewandelt, bei den Rechnern in hhoossttss, z.B. in pp1133..ffllookkiissttee..ffiiddoo..ddee. Du
  solltest brigens mglichst bei allen Rechnern in hhoossttss das Flag --pp
  setzen, damit Adressen mit Point generiert werden. Ansonsten wird die
  Point-Nummer nmlich gelscht und dann mu der Message-Tracker des
  Nodes wieder unntige Arbeit leisten.

  Des weiteren kannst Du noch die bboouunnccee..**-Dateien auf Dein System
  anpassen, aber ich kann mich nicht entsinnen, da die bei mir schonmal
  bentigt wurden.  Auch aalliiaasseess kannst Du anpassen, brauchst Du aber
  nicht.

  Es bleibt aarreeaass, welches mindestens alle Echmail-Areas, die Du
  verwendest, enthalten sollte. Wenn mehr Areas darin stehen, strt das
  aber auch nicht. Man beachte, da die deutschen Fido-Echos (z.B.
  LLIINNUUXX..GGEERR) in ffiiddoo..ggeerr-Hiearchie (z.B. ffiiddoo..ggeerr..lliinnuuxx) konvertiert
  werden. Internationale Fido-Echos werden nach ffiiddoo..iinntt..** umbenannt.
  Die Namen der Usenet-Echos werden nur in Kleinschreibung konvertiert.
  Weiterhin sollte man sich fr jede andere Domain (Zone) eine eigene
  Hierarchie anlegen.  Bei allen Areas, die nicht zur Zone 2 gehren,
  mu weiterhin noch angegeben werden, zu welcher Zone sie gehren (zur
  Sicherheit kann man das natrlich auch fr die Areas der Zone 2
  explizit mit angeben). Es sind im brigen noch diverse andere Flags
  mglich. Hier ein Ausschnitt aus meiner aarreeaass-Datei:

  ______________________________________________________________________
  # /usr/local/lib/fidogate/areas
  #
  # Echomail area <-> News newsgroup conversion
  #
  # Options:
  #     -z ZONE            Alternate zone AKA for this area
  #     -d DISTRIBUTION    Distribution header for this newsgroups
  #     -o ORIGIN          * Origin line for this area
  #     -g                 No gated messages
  #     -l                 Only local crosspostings
  #     -x                 No crosspostings
  #     -8                 Messages with 8bit ISO-8859-1 charset
  #     -H                 Names match entire hierarchy, names are translated
  #     -!                 Don't gate area/newsgroup [hierarchy]
  #     -R LVL             ^ARFC header level
  #     -m MAXSIZE         MaxMsgSize for this area (0 = infinity)
  #
  # All fields may be quoted in "...", order is import, first area/newsgroup
  # found matches!
  #
  # Format:
  #
  # area                        newsgroup                     [-option]
  # ------------------------    --------------------------    ---------
  FLOKISTE.INTERN               fido.flokiste.intern
  FLOKISTE.STAT                 fido.flokiste.stat
  LINUX.GER                     fido.ger.linux
  SAILING                       fido.int.sailing
  CT.GER                        ger.ct                        -z 21
  CT.PROJEKTE                   ger.ct.projekte               -z 21
  CT.PRUEFSTAND                 ger.ct.pruefstand             -z 21
  CT.SUPPORT                    ger.ct.support                -z 21
  FIDO.DE                       fido.de                       -z 242
  5000.INTERNET                 fido.5000.intern              -z 242
  ALT.RELIGION.EMACS            alt.religion.emacs            -z 242
  COMP.OS.                      comp.os.                      -z 242 -H
  REC.MUSIC.                    rec.music.                    -z 242 -H
  DE.ALT.BINARIES.              de.alt.binaries.              -H -!
  DE.                           de.                           -z 242 -H
  ______________________________________________________________________

  Wie man sieht, ist es fr die Usenet-Areas, die bis auf Gro-/Klein
  schreibung unter RFC und FTN den gleichen Namen haben, mglich, auch
  ganze Hierarchien (--HH) einzubinden oder auch einzelne Sub-Hierarchien
  auszuschlieen (--!!).

  Letztendlich solltest Du mit ttoouucchh //uussrr//llooccaall//lliibb//ffiiddooggaattee//ppaasssswwdd noch
  ein leeres File anlegen, ansonsten versagt rrffcc22ffttnn nmlich seinen
  Dienst.

  77..  DDiiee IInnssttaallllaattiioonn vvoonn iiffcciiccoo

  Ich beziehe mich hier auf die aktuelle Version von ifcico, welche sich
  im Paket iiffmmaaiill--22..88dd findet.  Leider hat Version 2.8d einen Bug (alle
  vorherigen Versionen funktionierten ordnungsgem und die nchsten
  Versionen werden auch wieder in Ordnung sein), der dafr sorgt, da
  nur eine einzige AKA erkannt werden kann.  Hier ein Patch vom ifcico-
  Autor, der den Bug behebt:

  ______________________________________________________________________
  --- ifmail28d/ifcico/emsidat.c  Mon Aug 28 01:42:38 1995
  +++ ifmail/ifcico/emsidat.c     Sun Feb  4 19:37:31 1996
  @@ -32,13 +32,10 @@
          for (tmp=whoami;tmp;tmp=tmp->next)
          if (tmp->addr != primary)
          {
  +               p=xstrcat(p," ");
                  p=xstrcat(p,ascfnode(tmp->addr,0x1f));
  -               if (tmp->next)
  -                       p=xstrcat(p," ");
  -               else
  -                       p=xstrcat(p,"}");
          }
  -       p=xstrcat(p,"{");
  +       p=xstrcat(p,"}{");
          if (emsi_local_password) p=xstrcat(p,emsi_local_password);
          else if (remote)
          for (tmp=pwlist;tmp;tmp=tmp->next)
  ______________________________________________________________________

  Zunchst mu man das globale Compiler-Konfigurations-File
  iiffmmaaiill//CCOONNFFIIGG editieren. Ich fhre hier einfach mal alle bei mir
  ntigen nderungen auf:

  CONFIGFILE  = "/usr/local/lib/fnet/config"
  LOCKDIR     = "/var/lock"
  PUBDIR      = "/var/spool/uucppublic"
  BINDIR = /usr/local/lib/fnet
  OWNER = uucp

  Der eine oder andere wird weiterhin ggf. noch einige andere Pfade
  ndern wollen. So wird dabei das Debug-File in //ttmmpp angelegt und das
  Logfile in //vvaarr//lloogg//ffnneett, was allerdings nicht strt, da das Logfile
  seit ifcico 2.3 sowieso vom ssyyssllooggdd gehandelt wird (mehr dazu spter).

  Bei Slackware 3.0 wird das Lockfile leider immer noch in
  //vvaarr//ssppooooll//uuuuccpp angelegt, was zu Problem mit einem eventuell laufendem
  getty auf diesem Port fuehrt. Der Eintrag LLOOCCKKDDIIRR muss also hier auf
  //vvaarr//ssppooooll//uuuuccpp gesetzt werden.

  Jetzt sollte man noch das Verzeichnis //uussrr//llooccaall//lliibb//ffnneett anlegen
  (User uucp, Group uucp) und kann dann mit

  make depend
  make all
  make install

  die Programmdateien in //uussrr//llooccaall//lliibb//ffnneett installieren.

  Nun mu man noch das ccoonnffiigg-File von ifcico installieren. Ein Beispiel
  findet man in iiffmmaaiill//mmiisscc//ccoonnffiigg. Diese kopiert man nun nach
  //uussrr//llooccaall//lliibb//ffnneett und editiert es passend. Hier ist ein Beispiel:

  ______________________________________________________________________
  # /usr/local/lib/fnet/config
  #
  # IFmail - Configurations-File
  # von Roland Rosenfeld 07.08.94

  # Log file name. Overrides compile-time default.
  logfile         /var/log/fnet/iflog

  # Debug file name. Overrides compile-time default.
  debugfile       /var/log/fnet/ifdebug

  # Debugging verbosity level (is overidden by -x key). Default is 0.
  # Folgende Kombination generiert ein Debug-File von ertrglicher Lnge, das
  # man noch lesen kann:
  verbose                 bcdefghijklmnqrt

  # Main address:
  address         2:2450/111.13@fidonet

  # AKAs:
  address         21:100/64.13@gernet
  address         242:5000/4.13@fidode

  # Passwords: Hier koennen die Passwords direkt stehen oder man lagert sie in
  # eine externe Datei aus, welche dem User uucp gehoert und die Permissions
  # 600 hat, damit niemand die Passwords lesen kann.
  #include                /usr/local/lib/fnet/passwords
  password        2:2450/111      GEHEIM
  password        21:100/64       GEHEIM
  password        242:5000/4      GEHEIM

  # Directory for incoming packets/files:
  inbound         /var/spool/fnet/inbound
  # Directories for "listed" and "protected" sessions
  listinbound     /var/spool/fnet/inbound
  protinbound     /var/spool/fnet/inbound

  # Directory for outgoing packets (default domain and zone):
  # other zones will be like "/usr/spool/fnet/outb.003",
  # other domains will be like "/usr/spool/fnet/<domain>.<zone>"
  outbound        /var/spool/fnet/outbound

  # Directory from which the file requests are satisfied
  public          /var/spool/uucppublic

  # Directory with executables to satisfy "magic" file requests
  # if requested a file present in this directory, it will be
  # executed and stdout sent to the remote system.  If the file
  # is not executable, it is read line by line and the lines are
  # processed as if they were received file requests (recusively).
  # Execution of commands may compromize security!  You are warned.
  magic           /usr/local/lib/fnet/magic

  # Erste Nodeliste:
  # Es wird nach nl_short.xxx gesucht und die neueste Version verwendet.
  # nl_short generiere ich manuell aus der kompletten Nodeliste, da mir das
  # Compilieren der kompletten Liste zu lange dauert.
  nodelist        /var/spool/fnet/nodelist/nl_short

  # Weitere Nodelisten der anderen Zonen:
  # (Achtung: ifindex hat noch einen Bug, der zu einem Core fuehrt, falls eine
  #  Nodenummer doppelt auftritt, wie z.B. bei Verwengung von nodelist und
  #  r24classic)
  #               filename        originating address
  nodelist        gernet          21:100/64.13@gernet
  nodelist        242_list        242:5000/4.13@fidode

  # Sequencer file (used to generate unique IDs)
  sequencer       /usr/local/lib/fnet/seq

  # An dieser Stelle stehen im Beispiel-Config-File (ifmail/misc/config) noch
  # diverse Erluterungen und Optionen, die ich groesstenteils nicht verwende
  # und daher hier nicht auffuehre. Man sollte sich die Moeglichkeiten jedoch
  # dort mal ansehen.

  # Das Modem hngt an /dev/ttyS1, der FIFO ist auf 38400 gelockt (ohne FIFO
  # sollte man stattdessen auf 19200 locken).
  # Ich verwende ausdruecklich ttyS und nicht cua, da bei mir noch mgetty
  # luft. Eine genau Erklrung zu dem Thema findet sich in der Doku zu
  # mgetty+sendfax von Gert Doering.
  ModemPort       ttyS1:L38400

  # Nun die Konvertierung der Telefonnummern. Ganz habe ich das noch nicht
  # verstanden, aber folgendes sollte (mit der entsprechenden eigenen Vorwahl)
  # fuer ganz Deutschland korrekt sein. Fuer Spezialflle sollte man sich ggf.
  # nochmal ifmail/misc/config ansehen.

  PhoneTrans      49-2236-        /
  PhoneTrans      49-     /       0
  PhoneTrans      /       00

  # In ModemReset baue ich die passenden AT-Befehle fuer mein Modem ein:
  # AT Z0   = Initialisieren mit Profile 0
  # AT M3   = Lautsprecher nach dem Whlen aus
  ModemReset ATZ0\r\n\dATM3\r\n\d

  # Pulswahl:
  ModemDial       ATDP\T\r
  ModemHangup     ATZ\r
  ModemOK         OK

  # Statt einem einfachen "CONNECT" gebe ich viele Connect-Strings an, um
  # nachher im Logfile sehen zu koennen, mit welcher Geschwindigkeit connected
  # wurde.
  ModemConnect    CONNECT\s76800
  ModemConnect    CONNECT\s57600
  ModemConnect    CONNECT\s38400
  ModemConnect    CONNECT\s19200
  ModemConnect    CONNECT\s16800
  ModemConnect    CONNECT\s14400
  ModemConnect    CONNECT\s1200
  ModemConnect    CONNECT\s9600
  ModemConnect    CONNECT\s7200
  ModemConnect    CONNECT\s4800
  ModemConnect    CONNECT\s2400
  ModemConnect    CONNECT\s12000
  ModemConnect    CONNECT\r
  ModemError      BUSY
  ModemError      NO\sCARRIER
  ModemError      NO\sDIALTONE
  ModemError      NO\sANSWER
  ModemError      RING\r
  ModemError      ERROR

  # Timeouts to wait for "OK" and "CONNECT", cannot be prefixed by logical
  # expression.
  TimeoutReset    3
  TimeoutConnect  90

  # Hier stehen noch weitere Konfigurationsmoeglichkeiten fuer Inbound-Calls.
  # Da ich keine Inbound-Calls zulasse, habe ich den Teil hier auch nicht
  # aufgefuehrt, fuer weiter Infos siehe ifmail/misc/config.

  # EMSI data for this node
  # From this line on values CANNOT be prefixed with logical expression
  # For now, escaping of '}' and ']' unimplemented, try to avoid these
  # characters please!
  Name            *** Spinnaker ***
  Location        Bornheim-Widdig
  SysOp           Roland Rosenfeld
  Phone           - Unpublished -
  Speed           9600
  Flags           XA,V32B,V42B
  ______________________________________________________________________

  Um die Log-Messages von iiffcciiccoo zu bekommen, solltest Du nun noch den
  ssyyssllooggdd vernnftig konfigurieren. Hierzu mut Du //eettcc//ssyysslloogg..ccoonnff edi
  tieren. Die Messages von iiffcciiccoo erscheinen dabei als llooccaall00..** Ich habe
  zu diesem Zweck folgende Zeile eingebaut:

  local0.*                /var/log/fnet/ifmail

  (Achtung: Keine Leerzeichen, sondern ausschlielich Tabs verwenden!).

  Damit landen alle Log-Meldungen von iiffcciiccoo in //vvaarr//lloogg//ffnneett//iiffmmaaiill.
  Bei neuen Versionen von ssyyssllooggdd reicht nun ein

  killall -1 syslogd

  um, das dem Dmon das neue Config-File nahe zu bringen. Bei lteren
  Versionen mu man das Logfile zunchst anlegen und dann den Dmon
  killen und neustarten.

  Jetzt sollte man allerdings noch die Outbound-Directories in
  //vvaarr//ssppooooll//ffnneett// anlegen. Neben dem Standard oouuttbboouunndd fr Fido fehlen
  noch ffiiddooddee und ggeerrnneett fr die anderen Netze. Die Verzeichnisse sollte
  alle uuuuccpp..uuuuccpp gehren und die Permissions 777755 besitzen. iiffcciiccoo legt
  im brigen fr weitere Netze fehlende Verzeichnisse selber an,
  allerdings sollte man dann manuell die Permissions entsprechend
  berarbeiten.

  88..  NNooddeelliisstteenn--CCoommppiilleerr

  Alle im Config-File angegebenen Nodelisten sollten im Verzeichnis
  //vvaarr//ssppooooll//ffnneett//nnooddeelliisstt vorhanden sein. Dann ruft man einfach iiffiinnddeexx
  auf, welcher dann iinnddeexx..ddiirr und iinnddeexx..ppaagg erstellt, welche die
  compilierte Nodeliste enthalten.

  Leider ist iiffiinnddeexx nicht besonders schnell, daher krze ich die
  nnooddeelliisstt immer vor der Compilierung auf das, was ich (in Deutschland)
  bentige. Hierfr verwende ich folgendes Skript:

  ______________________________________________________________________
  #!/bin/sh
  #
  # /var/spool/fnet/nodelist/strip.nodelist
  #
  if [ ! $1 ]
  then
      echo Fallscher Aufruf!
      echo Start mit $0 xxx, wobei xxx die Nummer der aktuellen Nodelist ist.
      exit
  fi

  NODELIST=nodelist.$1

  if [ ! -s $NODELIST ]
  then
      echo $NODELIST ist keine korrekte Nodelist
      exit
  fi

  NLSHORT=nl_short.$1

  if [ -s $NLSHORT ]
  then
      echo $NLSHORT existiert schon und wird nach $NLSHORT.bak geschoben
      mv -f $NLSHORT $NLSHORT.bak
  fi

  head -n 2 $NODELIST >> $NLSHORT
  grep ',49-\|^Zone,' $NODELIST >> $NLSHORT

  echo Fertig.
  ______________________________________________________________________

  Dieses Skript startet man mit ssttrriipp..nnooddeelliisstt _x_x_x, wobei _x_x_x die
  aktuelle Nummer der Nodeliste ist. Aus nnooddeelliisstt.._x_x_x wird damit
  nnll__sshhoorrtt.._x_x_x generiert.

  Nun mu man natrlich auch Diffs einarbeiten knnen. Hierzu gibt es
  seit ifmail-2.6 das Programm nnllppaattcchh, welches man mit der alten
  Nodelist sowie dem aktuellen Diff als Parameter aufruft, z.B.:

          nlpatch nodelist.123 NODEDIFF.130

  auf (natrlich mit den entsprechenden Tag-Nummern). Es wird dann
  automatisch nodelist.130 generiert.

  99..  PPoollll--SSkkrriipptt uunndd EEnnttppaacckkeenn

  Zum Pollen verwende ich das Skript iiffmmaaiill//mmiisscc//ccoonnttrriibb//iiffppoollll in
  leicht abgewandelter Form:

  ______________________________________________________________________
  #!/bin/sh
  # ver 0.7r
  # ifpoll, poll my boss node or the node given as argument 1
  #
  # i start this shell script every day by crond, but you can
  # start it also by hand :) start it as the owner of ifcico.
  # rasca, berlin 1993 (Rasca Gmelch, 2:2410/305.4)
  #
  # Erweiterte Fassung von Roland Rosenfeld

  # where "ifcico" and "ifpack" reside
  FIDOPATH=/usr/local/lib/fnet

  # logfile of ifcico
  IFLOG=/var/log/fnet/ifmail
  IFDEBUG=/var/log/fnet/ifdebug

  # owner of "ifcico"
  IFCICO_OWNER=uucp

  # sysop of fido stuff
  IFCICO_SYSOP=postmaster

  # my boss node (default address to poll)
  NODE="f111.n2450.z2"

  # how often should i try to call NODE?
  MaxTry=20

  # delay between outgoing calls in seconds
  DELAY=60

  # where to log processing - file or tty/console
  INFO_TTY=/dev/tty11

  function GetConnectMessage () {
     grep 'chat got "CONNECT.*", continue' $IFLOG \
        | tail -n1 \
        | sed 's/.*chat got //;s/, continue//'
  }

  function GetNoConnectMessage () {
     grep 'chat got .*, aborting' $IFLOG \
        | tail -n1 \
        | sed 's/.*chat got //;s/, aborting//'
  }

  mv -f $IFDEBUG $IFDEBUG.old
  touch $IFDEBUG

  echo "`date \"+%b %d %T\"` ifpoll[$$]: starting" >> $INFO_TTY

  # remember me, not to run as root..
  #
  if [ `whoami` != "$IFCICO_OWNER" ]; then
          echo "*** run $0 as the owner of ifcico ***"
          echo "`date \"+%b %d %T\"` ifpoll[$$]: wrong uid (rc 2)" >> $INFO_TTY
          exit 2
  fi

  # argv[1] is the optional node to call
  #
  if [ "$1" != "" ]; then
          if [ "$1" = "-?" ] || [ "$1" = "-h" ]; then
                  echo "usage: ifpoll [node]"
                  exit 3
          else
                  NODE=$1
          fi
  fi

  # let's pack the fido stuff..
  #

  $FIDOPATH/fgpack

  # loop until ifcico could connect the node or MaxTry is encountered
  #
  i=1; errlv=1
  while let 'i <= MaxTry' && let 'errlv != 0'
  do
          echo -n "`date \"+%b %d %T\"` ifpoll[$$]: $i. try ($NODE) " \
                  >> $INFO_TTY
          #
          # start ifcico in master mode ..
          #
          $FIDOPATH/ifcico -r 1 $NODE
          errlv=$?
          if [ $errlv != "0" ]; then
                  GetNoConnectMessage >> $INFO_TTY
                  if [ $i != $MaxTry ]; then
                          sleep $DELAY
                  fi
                  let i=i+1
          else
                  GetConnectMessage >> $INFO_TTY
          fi
  done

  # if the poll was fine, unpacking..
  #
  if [ $errlv = "0" ]; then
          echo "`date \"+%b %d %T\"` ifpoll[$$]: unpacking.. " >> $INFO_TTY
          $FIDOPATH/fgunpack $INFO_TTY
          # add here some additional lines for processing tic files or
          # incoming file-lists or simular..
          grep 'chat got .*, aborting' $IFLOG | \
                  tail -n20 | \
                  elm -s "ifpoll: failed" $IFCICO_SYSOP >/dev/null
  fi

  echo "`date \"+%b %d %T\"` ifpoll[$$]: finished (rc $errlv)" >> $INFO_TTY

  # return the errorlevel of ifcico
  exit $errlv
  ______________________________________________________________________

  Dieses Skript kann ohne Parameter gestartet werden und ruft dann
  automatisch meinen Bo an, oder aber man gibt den gewnschten Node an
  (in _p_f_n_z-Notation, also z.B. iiffppoollll ff111111..nn22445500..zz22).  Natrlich mu das
  Skript an den eigenen Bedarf angepat werden (so hat nicht jeder 12
  Consolen etc.).

  Dieses Skript ruft zunchst das Pack-Skript auf:

  ______________________________________________________________________
  #!/bin/sh
  # /usr/local/lib/fnet/fgpack
  # pack-script for FidoGate (together with ifcico)
  #
  # written by Roland Rosenfeld   19.08.94
  #       roland@p13.flokiste.fido.de     (2:2450/111.13)
  #

  FNET=/var/spool/fnet
  FTNPACK=/usr/local/lib/fidogate/ftnpack

  PATH=/bin:/usr/bin:/usr/local/bin

  topack=

  for pkt in $FNET/*/????????.out $FNET/*/????????.pnt/????????.out
  do
          if [ -s $pkt ]
          then
                  topack="$topack $pkt"
          fi
  done
  $FTNPACK $topack
  ______________________________________________________________________

  Damit werden die ..oouutt-Files in ARCmail-Files zusammengepackt, damit
  sie effizienter verschickt werden knnen.

  Damit ffttnnppaacckk korrekt arbeitet, mu man in
  //uussrr//llooccaall//lliibb//ffiiddooggaattee//ppaacckkiinngg noch den Packer definieren:

  ______________________________________________________________________
  # /usr/local/lib/fidogate/packing
  #
  # FIDOGATE ftnpack config file
  #
  # Commands:
  #
  #     arc    NAME  "/PATH/PROG %s %s"
  #     prog   NAME  "/PATH/PROG %s"
  #
  #     pack   NAME  NODES
  #     rpack  NAME  TARGET NODES
  #     fpack  NAME  TARGET NODES
  #

  arc     zip     "/usr/bin/zip -gkjq %s %s"
  arc     arc     "/usr/local/bin/arc an %s %s"

  prog    gate    "/usr/local/lib/fidogate/ftn2rfc %s"

  ######## P A C K I N G #######################################################

  pack    zip     *
  ______________________________________________________________________

  Natrlich sollte man die Pfade der Packer auf die eigenen Bedrfnisse
  anpassen. Nach erfolgreichem Anruf von iiffcciiccoo wird dann das folgende
  Entpack-Skript aufgerufen:

  ______________________________________________________________________
  #!/bin/bash
  # usr/local/lib/fnet/fgunpack
  #
  # unpack-script for FidoGate (together with ifcico)
  #
  # written by Roland Rosenfeld   12.06.94
  #       roland@p13.flokiste.fido.de     (2:2450/111.13)
  #
  # corrected paths, usage of syslog, more packer, clean up, restructured
  #       martin@erde.GUN.de (Martin Seine) <2:2448/413.100>
  #

  FNET=/usr/local/lib/fnet
  FGATE=/usr/local/lib/fidogate
  IFCFG=$FNET/config
  IN=/var/spool/fnet/in

  # Facility is the log-file facility, where syslog stores the messages
  # if you're not using syslog, no need to change it
  FACILITY=local0

  # System-manager who receives notices, if there are unpacking errors
  MANAGER=postmaster

  PATH=/bin:/usr/bin:/usr/local/bin:$FGATE

  if [ $1 ]
  then
          INFO_TTY=$1
  else
          INFO_TTY=/dev/console
  fi

  WEARE=`basename $0`

  #
  # get directory-names from $IFCFG
  #
  INBOUND=`grep -i "^[    ]*inbound" $IFCFG | awk '{ print $2 }'`
  LOGFILE=`grep -i "^[    ]*logfile" $IFCFG | awk '{ print $2 }'`

  if [ ! -d $INBOUND/bad ] ; then
     if [ -e $INBOUND/bad ] ; then
          rm -Rf $INBOUND/bad
     fi
     mkdir $INBOUND/bad
  fi

  CORRECT=true

  function iflog() {
     if [ -S /dev/log ] ; then
          logger -i -p $FACILITY.info -t $WEARE $@
     else
          echo "`date \"+%y/%m/%d %T\"` $$ $WEARE:" $@ >> $LOGFILE
     fi
     echo "`date \"+%b %d %T\"` $WEARE [$$]:" $@ >> $INFO_TTY
  }

  function unpack_mail() {
     pushd $INBOUND >/dev/null
     EMPTY=true
     for f in *.mo? *.tu? *.we? *.th? *.fr? *.sa? *.su? *.pkt \
              *.MO? *.TU? *.WE? *.TH? *.FR? *.SA? *.SU? *.PKT
     do
          if [ -f $f ] ; then
                  if [ $EMPTY = true ] ; then
                          rm -rf bak.oo
                          mv -f  bak.o  bak.oo >/dev/null
                          mv -f  bak    bak.o  >/dev/null
                          mkdir  bak
                  fi
                  mv -f  $f bak/
                  ln -s -f $INBOUND/bak/$f $IN/$f
                  EMPTY=false
          fi
     done

     # now all new packets lay in $INBOUND/bak

     if [ $EMPTY = true ]
     then
          iflog No new mail found in $INBOUND
          exit
     fi

     popd >/dev/null

     pushd $IN >/dev/null
     #
     # Analyze packer with file(1) and unpack them if possible
     #
     for f in *.mo? *.tu? *.we? *.th? *.fr? *.sa? *.su?
     do
         if [ -f $f ] ; then
            arc=`file -L $f | awk '{ print $2 }'`
            case $arc in
              ARJ) unarj e $f ;;
              ARC) arc e $f ;;
              ZIP) unzip -x $f < /dev/null ;;
              LHA) lha e $f ;;
              ZOO) zoo eq $f ;;
              RAR) unrar e $f ;;
                *) iflog unknown packer \'$arc\' for $f
                   false ;;
            esac
            if [ $? -gt 0 ] ; then
                iflog couldn\'t unpack $f \(moved to $INBOUND/bad\)
                cp -f $f $INBOUND/bad
                CORRECT=false
            else
                iflog unpacked $f \($arc\)-archive
                rm -f $f
            fi
         fi
     done
     popd >/dev/null
  }

  #
  #
  # main unpack-program
  #
  #

  export FNET
  cd $FNET
  unpack_mail

  iflog starting ftn2rfc
  ftn2rfc -x ftninpost -l

  if [ $CORRECT = false ] ; then
  /usr/lib/sendmail $MANAGER <<END
  Subject: Fido-packet errors
  There occured errors while processing Fido-Packets.

  Please check the logfiles

  Your Gateway
  END
  fi

  #iflog starting Linux-TIC-Processor
  #/usr/local/lib/tic/process_tics.pl < /dev/null
  #/usr/local/lib/tic/poster.pl Daily < /dev/null
  #/usr/local/lib/tic/lister.pl < /dev/null
  ______________________________________________________________________

  Dieses Skript schiebt alle in //vvaarr//ssppooooll//ffnneett//iinnbboouunndd angekommenen
  Mails nach //vvaarr//ssppooooll//ffnneett//iinnbboouunndd//bbaakk, wobei dieses Verzeichnis
  vorher in bbaakk..oo und bbaakk..oooo verschoben wird, so da man immer die
  letzten drei Poll-Resultate vorliegen hat um mgliche Probleme auch
  nachtrglich noch beheben zu knnen.  Anschlieend werden alle ..ppkktt-
  Files nach //vvaarr//ssppooooll//ffnneett//iinn kopiert und die Archive werden dorthin
  entpackt (das Skript erkennt automatisch ZIP, ARJ, ARC und LHA).
  Hierzu mssen folgende Zeilen in //eettcc//mmaaggiicc enthalten sein (mglichst
  ganz oben, denn die Datei wird von oben nach unten durchsucht):

  ______________________________________________________________________
  # Einige Eintrge fuer das ifcico-Shell-Script
  #
  0       byte            0x1a            ARC Archive (maybe)
  0       string          PK              ZIP Archive
  2       string          -lh             LHA Archive
  0       string          ZOO             ZOO Archive
  0       short           0xea60          ARJ Archive
  ______________________________________________________________________

  Ist das geschehen, wird ffttnn22rrffcc aufgerufen, welches die Pakete nach
  Mail/News konvertiert und dann seinerseits mittels ffttnniinnppoosstt sseennddmmaaiill
  und rrnneewwss startet.

  Im Anschlu daran knnen noch weitere Tools, wie z.B. ein TIC-
  Prozessor oder ein Programm, das News fr User des eigenen Systems
  sucht, aufgerufen werden.

  1100..  KKoonnffiigguurraattiioonn vvoonn ssmmaaiill

  Wenn Du Dich fr Sendmail entschieden hast, kannst Du dieses Kapitel
  berspringen.

  Bei mir liegt smail im Verzeichnis //uussrr//llooccaall//lliibb//ssmmaaiill, wobei
  //uussrr//lliibb//ssmmaaiill ein Link darauf ist. Die Konfigurationsdateien liegen
  dabei gem Filesystem-Standard in //eettcc//ssmmaaiill, bei einigen
  Distributionen auch in //vvaarr//lliibb//ssmmaaiill, dann mu man das entsprechend
  anpassen.  Alle von mir hier beschriebenen Dateien sollten also in
  diesem Verzeichnis liegen. Die systemweite Alias-Datei liegt gem FSS
  in //eettcc//aalliiaasseess, whrend sie frher in //uussrr//lliibb//aalliiaasseess zu finden war.
  Zunchst die allgemeine Konfiguration fr die Benutzung ohne UUCP-
  Connection zum Internet:

  ______________________________________________________________________
  # /etc/smail/config
  #
  #       smail configuration for p13.flokiste.fido.de
  # (see smail(5) man page for details and other options)
  #
  -smtp_debug
  hostname=p13.flokiste.fido.de
  # more_hostnames gibt weitere Adressen an, die hier ausgewertet werden sollen
  #   flokiste.fido.de muss hier auch aufgenommen werden, da ggf. Mails an
  #   Roland Rosenfeld 2:2450/111 gehen, die dann vom ITrack meines Uplink an
  #   mich umgelenkt werden.
  #   Hostnamen mit pxxx.fxxx.nxxx.zxxx-Namen koennen hier entfallen, da die
  #   alle in /usr/local/lib/fidogate/hosts auf p13.flokiste.fido.de oder
  #   flokiste.fido.de gemappt werden sollen.
  more_hostnames=flokiste.fido.de:spinnaker:spi:p13
  -visible_name
  -smart_path
  -uucp_name
  error_copy_postmaster
  postmaster=postmaster
  ______________________________________________________________________

  Wenn Du noch einen direkten UUCP-Zugang zum Internet hast, mut Du
  folgende Zeilen hinzufgen:

  ______________________________________________________________________
  smart_path=rhein
  smart_transport=uux
  uucp_name=spinnaker.rhein.de
  ______________________________________________________________________

  UUCP-Name meines Uplinks.

  Nun mu angegeben werden, was wie geroutet werden soll:

  ______________________________________________________________________
  # /etc/smail/routers
  #
  # smail routers for p13.flokiste.fido.de

  # See smail(5) for a complete description of the contents of this
  # file.

  fido:
          driver = pathalias,
          transport = fido;
          file = /etc/smail/paths.ftn,
          proto = lsearch

  smart_host:
          transport=fido,
          driver=smarthost;
          path=p0.f4.n5000.z242.fido.de
  ______________________________________________________________________

  Hier wird also alles ber fido geroutet, wobei ppaatthhss..ffttnn (s.u.)
  angibt, wo welche FTN-Adressen eingesetzt werden sollen. Alles, was
  nicht gem ppaatthhss..ffttnn verarbeitet werden kann, wird dabei an das
  fido.de-Internet-Gate geschickt.
  Fr die Konfiguration mit UUCP wird ein anderer Smarthost (dahin wird
  alles geschickt, was nicht vorher definiert wurde) verwendet:

  ______________________________________________________________________
  smart_host:
          driver=smarthost,
          transport=uux
  ______________________________________________________________________

  ppaatthhss..ffttnn sieht nun wie folgt aus:

  ______________________________________________________________________
   # /etc/smail/paths.ftn
   #
   .fido.sub.de   p0.f111.n2450.z2.fido.sub.de!%s
   .z2            p0.f111.n2450.z2.fido.sub.de!%s
   .fido.de       p0.f111.n2450.z2.fido.sub.de!%s
   .maus.de       p0.f111.n2450.z2.fido.sub.de!%s
   #
   .ger.sub.de    f64.n100.z21.ger.sub.de!%s
   #
   .z242.fido.de  p0.f4.n5000.z242.fido.de!%s
  ______________________________________________________________________

  Letztendlich mu man noch angeben, wie die einzelnen Mails trans
  portiert werden sollen:

  ______________________________________________________________________
  # /etc/smail/transports
  #
  fido:   driver = pipe;
          group = uucp,
          cmd = "/usr/local/lib/fidogate/rfc2ftn -w Normal ${strip:user}",
          pipe_as_sender
  ______________________________________________________________________

  Da Messages aus dem Fido an den Realnamen adressiert werden, sollte
  selbiger (mit Unterstrich zwischen Vor- und Nachname) auch auf dem
  eigenen System vorhanden sein. Hierzu trgt man ihn in //eettcc//aalliiaasseess
  ein, so da die Mail an den User selbst weiter geschickt wird.  Hier
  ein Ausschnitt aus meinem Alias-File, wo die hufigsten aliases
  aufgefhrt sind, so da Mails mich praktisch immer erreichen, wenn sie
  an mich adressiert sind:

  ______________________________________________________________________
  # /etc/aliases
  #
  # This is used by smail for sendmail compatibility.
  # See also the /usr/lib/smail/lists directory for another way
  # to make mail lists.
  #
  # Note: if your /etc/smail/directors says that the aliases
  # director uses proto=dbm, you must use mkaliases to make
  # /etc/aliases.pag and /etc/aliases.dir, which are the
  # actual files used by smail.
  #
  # If you use proto=lsearch, smail will read this file.  (That's
  # much slower but it's OK if this file is small.)
  #
  support: roland
  admin: roland
  Roland_Rosenfeld: roland
  Roland.Rosenfeld: roland
  postmaster: roland
  faxadmin: roland
  usenet: roland
  sysop: roland
  rosenfeld: roland
  roro: roland
  uucp: roland
  news: roland
  ______________________________________________________________________

  Man sollte die Funktion dieser Datei allerdings zunchst mal mit einer
  lokalen Mail testen, denn einige Versionen von smail (wenn sie mit
  ungnstigen Parametern compiliert wurden) scheinen das File nur als
  dbm zu erkennen, auch wenn man llsseeaarrcchh angibt (siehe Kommentar in
  aalliiaasseess). Daher sollte man nach jeder nderung an diesem File
  mmkkaalliiaasseess aufrufen, welches aalliiaasseess..ddiirr und aalliiaasseess..ppaagg auf den
  neusten Stand bringt.

  Da viele Fehlermeldungen des Newssytems an uusseenneett, nneewwss oder uuuuccpp
  geschickt werden, sollte man diese Messages ebenfalls auf sich selber
  umleiten.

  1111..  SSeennddmmaaiill VV88--KKoonnffiigguurraattiioonn

  Wenn Du Sendmail installierst, solltest Du besonders darauf achten,
  da Du den kompletten Satz an Configurations-Files installierst,
  welcher sich bei Slackware in dem Paket ssmmaaiillccnnff..ttggzz versteckt.  Diese
  Configurations-Files finden sich in einem Verzeichnisbaum unter
  //uussrr//ssrrcc//sseennddmmaaiill//ccff. In diesem Verzeichnis sollte sich auch ein knapp
  50KB groes README befinden, da die neue Konfigurationsmethode
  beschreibt.

  Obwohl Sendmail ber ein gewhnlich gut 20KB groes Configurations-
  File (//eettcc//sseennddmmaaiill..ccff) gesteuert wird, mut man dieses File nicht
  selber schreiben (das denken nmlich die meisten Leute, die von
  Sendmail abgeschreckt werden). Vielmehr bentigt man den
  Macroprozessor M4, und ein kleines Konfigurationsfile (mc-File) in
  //uussrr//ssrrcc//sseennddmmaaiill//ccff//ccff.  M4 erzeugt dann aus dem mc-File und den
  anderen (vom User normalerweise nicht zu ndernden) Config-Files das
  sseennddmmaaiill..ccff-File.

  Zunchst einmal mu FidoGate allerdings noch bekannt gemacht werden.
  Hierzu mu das File //uussrr//ssrrcc//sseennddmmaaiill//ccff//mmaaiilleerr//ffttnn..mm44 mit folgendem
  Inhalt angelegt werden:

  ______________________________________________________________________
  PUSHDIVERT(-1)
  #
  # /usr/src/sendmail/cf/mailer/ftn.m4
  #
  # FIDOGATE FTN mailer for sendmail V8
  #
  # MAILER(smtp) and MAILER(uucp) must be included!
  #

  ifdef(`FTN_MAILER_PATH',, `define(`FTN_MAILER_PATH',
                                     /usr/local/lib/fidogate/rfc2ftn)')
  ifdef(`FTN_MAILER_ARGS',, `define(`FTN_MAILER_ARGS', `rfc2ftn -w normal $u')')
  ifdef(`FTN_MAILER_FLAGS',, `define(`FTN_MAILER_FLAGS', `')')
  ifdef(`FTN_MAX_SIZE',, `define(`FTN_MAX_SIZE', 100000)')
  POPDIVERT
  #####################################
  ###    FTN Mailer specification   ###
  #####################################

  VERSIONID(`ftn.m4 V1.5')

  ifdef(`_MAILER_smtp_',
  `# FIDOGATE mailer
  Mftn,   P=FTN_MAILER_PATH, F=CONCAT(mDFMhu, FTN_MAILER_FLAGS),
          S=52/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'),
          A=FTN_MAILER_ARGS
   ')
  ______________________________________________________________________

  Wie man sieht, ist die Konfiguration zur Verwendung von rfc2ftn nicht
  allzu aufwendig, aber was da genau passiert, braucht uns auch nicht zu
  kmmern, wir verwenden den eben definierten Mailer "ftn" jetzt
  einfach, wie die vordefinierten Mailer "smtp", "uucp" etc.

  Kommen wir also nun zur Konfiguration des mc-Files. Ich habe es
  ssppiinnnnaakkeerr..mmcc genannt, aber der Name tut nichts zur Sachen, das File
  sollte nur in //uussrr//ssrrcc//sseennddmmaaiill//ccff//ccff liegen. ssppiinnnnaakkeerr..mmcc sieht bei
  mir so aus:

  ______________________________________________________________________
  # /usr/src/sendmail/cf/cf/spinnaker.mc
  #
  # sendmail V8 configuration for spinnaker.rhein.de
  # using UUCP and FidoGate
  #
  include(`../m4/cf.m4')
  VERSIONID(`spinnaker.mc V1.16')

  OSTYPE(linux)dnl

  define(`confUSE_ERRORS_TO', `True')dnl
  define(`confCOPY_ERRORS_TO', `postmaster')dnl
  define(`confMIME_FORMAT_ERRORS', `False')dnl

  FEATURE(notsticky)dnl
  FEATURE(mailertable,hash -o /etc/sendmail/mailertable)dnl
  FEATURE(always_add_domain)dnl
  FEATURE(nodns)dnl
  FEATURE(nocanonify)dnl

  MAILER(local)dnl
  MAILER(ftn)dnl
  MAILER(smtp)dnl
  MAILER(uucp)dnl

  Cwspi spi.rhein.de
  Cwp13 p13.flokiste.fido.de
  Cwp13.f111.n2450.z2.fido.sub.de
  Cwp13.f64.n100.z21.ger.sub.de

  # define(`SMART_HOST', uucp-dom:rhein)
  define(`SMART_HOST', ftn:f4.n5000.z2.fido.de)

  LOCAL_RULE_3
  # Route fidonet.org and fido.sub.org via FTN!
  R$* < $* z2.fidonet.org > $*            $1 < $2 z2.fido.sub.de > $3
  R$* < $* fido.sub.org > $*              $1 < $2 fido.sub.de > $3
  ______________________________________________________________________

  Hier wird zunchst das Betriebssystem (Linux) definiert, anschlieend
  wird definiert, da alle MAILERDAEMON-Mails auch an postmaster
  geschickt werden, damit ich Fehler schnell finden und beheben kann.
  Anschlieend werden einige Optionen angegeben, die meine genaue Kon
  figuration angeben, die Du aber so bernehmen kannst.  Weiterhin wer
  den die Mailer "local" (fr Mails an User auf dem gleichen Rechner,
  welche mittels deliver ausgeliefert werden, das bei Slackware im Send
  mail-Paket enthalten ist), "ftn" (Fido-compatible Netze via FidoGate),
  "smtp" (Transport ber das Online-Mail-Protokoll SMTP) und "uucp"
  (Transport per UUCP) definiert. Die letzten beiden sind fr ein Sys
  tem, das nur per FidoGate am Internet hngt nicht ntig, aber der
  Mailer "ftn" basiert auf ihnen (nur so konnten wir das ftn.m4 so kurz
  halten). In den mit CCww beginnenden Zeilen werden jetzt noch diverse
  Namen fr meinen Rechner definiert.

  Mit

  ______________________________________________________________________

  define(`SMART_HOST', ftn:f4.n5000.z2.fido.de)
  ______________________________________________________________________

  wird alle Mail, die nicht schon anders transportiert wird via FidoGate
  an meinen fido.de-Uplink geschickt. Wenn Du einen UUCP-Uplink hast,
  kannst Du diese Zeile durch

  ______________________________________________________________________
  define(`SMART_HOST', uucp-dom:rhein)
  ______________________________________________________________________

  ersetzen, dabei wird alles zu meinem UUCP-Uplink rhein geschickt.

  Zum Ende von ssppiinnnnaakkeerr..mmcc habe ich noch ein besonderes Schmankerl
  eingebaut:

  ______________________________________________________________________
  LOCAL_RULE_3
  # Route fidonet.org and fido.sub.org via FTN!
  R$* < $* z2.fidonet.org > $*            $1 < $2 z2.fido.sub.de > $3
  R$* < $* fido.sub.org > $*              $1 < $2 fido.sub.de > $3
  ______________________________________________________________________

  Hier wird zz22..ffiiddoonneett..oorrgg in zz22..ffiiddoo..ssuubb..ddee und ffiiddoo..ssuubb..oorrgg in
  ffiiddoo..ssuubb..ddee umgemappt, so da alle Fido-Mails an die diversen Fido-
  Domains nach ffiiddoo..ssuubb..ddee geschickt werden, was dann per FTN (statt per
  UUCP o..) verschickt wird. Dabei sollte man darauf achten, da zwis
  chen $$** und $$11 mindestens ein TAB stehen sollte (nicht nur Blanks).

  Hierzu wird das oben definierte File //eettcc//sseennddmmaaiill//mmaaiilleerrttaabbllee
  bentigt. In diesem File werden "Ausnahmen" vom Default-Routing
  angegeben, so z.B. auch das Routing ber Fido.

  ______________________________________________________________________
   .fido.sub.de    ftn:f111.n2450.z2.fido.sub.de
   .fido.de        ftn:f111.n2450.z2.fido.sub.de
   .ger.sub.de     ftn:f64.n100.z21.ger.sub.de
   .z242.fido.de   ftn:f4.n5000.z242.fido.de
  ______________________________________________________________________

  Wie man sieht werden alle Fido-Mails per ftn transportiert. Diese
  Mailertable mu nun noch nach jeder nderung in eine Datenbank com
  piliert werden. Hierzu gibt man im Verzeichnis //eettcc//sseennddmmaaiill einfach
  folgendes Kommando ein:

  ______________________________________________________________________
  makemap hash mailertable.db < mailertable
  ______________________________________________________________________

  Sollte das die Fehlermeldung "makemap: Type hash not supported in this
  version" ausgegeben werden, hast Du vermutlich Slackware 3.0 instal
  liert, welche aus mir unerklrlichen Grnden den Typ hash nicht
  verkraftet.  Abilfe schafft das alternative Kommando

  ______________________________________________________________________
  makemap dbm mailertable < mailertable
  ______________________________________________________________________

  im selben Verzeichnis.  Jetzt mut Du allerdings auch ssppiinnnnaakkeerr..mmcc
  ndern, damit ddbbmm statt hhaasshh von sendmail erkannt wird.  Du trgst
  dort jetzt in der mailertable-Zeile folgendes ein:

  ______________________________________________________________________
  FEATURE(mailertable,dbm -o /etc/sendmail/mailertable)dnl
  ______________________________________________________________________

  Dann sollte es keine Probleme mehr geben.

  Nachdem ssppiinnnnaakkeerr..mmcc jetzt fertig editiert ist, knnen wir daraus
  sseennddmmaaiill..ccff erzeugen. Hierzu wechselt man ins Verzeichnis
  //uussrr//ssrrcc//sseennddmmaaiill//ccff//ccff und gibt dort ppmmaakkee ssppiinnnnaakkeerr..ccff ein.
  Daraufhin wird //uussrr//ssrrcc//sseennddmmaaiill//ccff//ccff//oobbjj//ssppiinnnnaakkeerr..ccff erstellt,
  welches man nach nach //eettcc//sseennddmmaaiill..ccff schiebt und schon ist die
  Konfiguration fertig. Falls pmake nicht installiert sein sollte kann
  man stattdessen auch folgendes eingeben:

  ______________________________________________________________________
  m4 spinnaker.mc > obj/spinnaker.cf
  ______________________________________________________________________

  Abschlieend mut Du noch das ein Alias-File anlegen:

  ______________________________________________________________________
  #
  # /etc/aliases
  #
  # compile with
  #       newaliases
  #
  nobody: /dev/null
  support: roland
  admin: roland
  operator: roland
  Roland_Rosenfeld: roland
  Roland.Rosenfeld: roland
  postmaster: roland
  faxadmin: roland
  usenet: roland
  sysop: roland
  rosenfel: roland
  rosenfeld: roland
  roro: roland
  uucp: roland
  news: roland
  ______________________________________________________________________

  Dieses File mu nach jeder nderung mid dem Kommando nneewwaalliiaasseess in
  eine Datenbank compiliert werden.

  Nun mu Sendmail nur noch als Daemon gestartet werden, was mithilfe
  des Kommandos

  ______________________________________________________________________
  /usr/sbin/sendmail -bd -q20m
  ______________________________________________________________________

  in //eettcc//rrcc..dd//rrcc..llooccaall geschieht. Bei vielen Systemen ist selbiges auch
  schon in //eettcc//rrcc..dd//rrcc..MM angegeben, was ebenfalls mglich ist.  Alter
  nativ kann man sendmail auch per Cron starten und den inetd auf dem
  Port lauschen lassen.  Hierzu trgt man in die Crontab des Users root
  folgendes zustzlich ein:

  ______________________________________________________________________
  */20  * * * *   /usr/sbin/sendmail -q
  ______________________________________________________________________

  und fgt in //eettcc//iinneettdd..ccoonnff die Zeile

  ______________________________________________________________________
  smtp  stream  tcp   nowait  root  /usr/sbin/tcpd  /usr/sbin/sendmail -bs
  ______________________________________________________________________

  Anschlieend das kkiillllaallll --11 iinneettdd nicht vergessen, um iinneettdd..ccoonnff neu
  einzulesen.

  Sendmail schreibt seine Logmessages per syslog. Hierzu empfiehlt es
  sich, folgenden Eintrag in //eettcc//ssyysslloogg..ccoonnff aufzunehmen:

  ______________________________________________________________________
  mail.*                      /var/log/mail
  ______________________________________________________________________

  Nicht vergessen, den ssyyssllooggdd nach dieser nderung mit kkiillllaallll --11
  behandeln, wie schon in der ``Konfiguration von ificio'' beschrieben.

  1122..  ccnneewwss--KKoonnffiigguurraattiioonn

  Wenn Du Dich fr INN entschieden hast, kannst Du dieses Kapitel
  berspringen.

  Ich werde mich hier auf die Pfadkonventionen beziehen, die das cnews
  aus Slackware 2.1 verwendet: //vvaarr//lliibb//nneewwss fr die
  Konfigurationsfiles, Logfiles und Statusfiles und //uussrr//lliibb//nneewwssbbiinn fr
  die cnews-Binaries.  In anderen Distributionen wird bzw. wurde das
  alles gemeinsam in //uussrr//lliibb//nneewwss und //uussrr//lliibb//nneewwss//bbiinn oder
  //uussrr//llooccaall//lliibb//nneewwss und //uussrr//llooccaall//lliibb//nneewwss//bbiinn plaziert.

  Ich liste hier einfach mal alle wichtigen Konfigurations-Files auf:

  Zunchst das ssyyss-File welches angibt, welche Newsgroups wohin
  exportiert werden sollen:

  ______________________________________________________________________
  # /var/lib/news/sys
  #
  # Achtung: keine ueberfluessigen Leerzeichen einfuegen, das kann zu
  #          Problemen fuehren
  #
  # ME: gibt an, welche Newsgroups auf dem eigenen System gehalten werden
  # sollen. Dabei sollte es auch moeglich sein einfach "all" zu schreiben. Das
  # ist jedoch riskant, denn falls man auch noch uucp verwendet, dann koennten
  # automatisch News-Hierarchien angelegt werden, die man nicht haben will.
  ME:alt,comp,news,gnu,de,rec,fido,ger,spinnaker,junk

  # FidoGate (alle FTN-Netze, die ueber FidoGate angesprochen werden):
  # fido.*, ger.*, de.*, comp.*, rec.*, alt.*, gnu.*
  fidogate/flokiste.fido.de:\
  fido,de,comp,rec,alt,gnu/all:Lf:
  ______________________________________________________________________

  Hierfr mu nun noch ein Outbound-Verzeichnis angelegt werden. cnews
  erwartet dieses Verzeichnis als //vvaarr//ssppooooll//nneewwss//oouutt..ggooiinngg//ffiiddooggaattee.
  Dieses Verzeichnis sollte nneewwss..nneewwss gehren und die Permissions 777755
  haben.

  Nun mu man angeben, wie die News per FidoGate verarbeitet werden
  sollen:
  ______________________________________________________________________
  # /var/lib/news/batchparms
  #
  # site          size    queue   builder muncher sender
  # ----          ----    -----   ------- ------- ------
  /default/       100000  20      batcher compcun viauux
  #
  fidogate        250000  200     batcher nocomp  viafido
  ______________________________________________________________________

  Das bedeutet, da fr fidogate das Skript vviiaaffiiddoo zum Transport ver
  wendet werden soll. Weiterhin sollen maximal 250K in ein Paket
  gesteckt werden. Falls man wenig Platz auf der Platte hat, kann man
  auch die "ssiizzee" runtersetzen (fr obiges braucht man nmlich min
  destens 10MB freien Speicher auf //ttmmpp), nur werden dann kleinere ..ppkktt-
  Files generiert.

  Bei neueren Versionen von cnews hat sich das Format dieses Files
  gendert, so da da stehen mu:

  ______________________________________________________________________
  fidogate    u     250000  200     batcher | nocomp | viafido
  ______________________________________________________________________

  Das File //uussrr//lliibb//nneewwssbbiinn//bbaattcchh//nnooccoommpp fehlt wohl bei Slackware 3.0,
  es mu mit folgendem Inhalt neu erstellt werden:

  ______________________________________________________________________
  #!/bin/sh
  # /usr/lib/newsbin/batch/nocomp
  #
  exec cat $*
  ______________________________________________________________________

  Das File vviiaaffiiddoo existiert nicht, es mu erst erstellt werden:

  ______________________________________________________________________
  #! /bin/sh
  # /usr/lib/newsbin/batch/viafido
  #
  # Submit news batch to FIDOGATE's rfc2ftn -w.
  #
  # The 'exec' cuts down the number of processes active for this simple case.

  exec /usr/local/lib/fidogate/rfc2ftn -w Normal -b -n
  ______________________________________________________________________

  Letztendlich mu noch die expire-List configuriert werden, welche
  angibt, welche Artikel wie schnell gelscht werden drfen:

  ______________________________________________________________________
  # /var/lib/news/explist
  #
  # Die History soll 30 Tage gehalten werden. Wenn Artikel ankommen, die aelter
  # als 30 Tage sind, werden die gar nicht erst angezeigt, sondern sofort
  # geloescht.
  /expired/                       x       30      -

  # Artikel werden mindestens 3, maximal 90 Tage gehalten
  /bounds/                        x       3-5-90  -

  # Alles weitere wird sequentiell von oben(!) abgearbeitet.
  junk                            x       7       -
  fido.junk                       x       7       -
  control                         x       7       -
  de.newusers.questions           x       8       -
  de.newusers                     x       90      -
  de                              x       14      -
  comp.os.linux.announce          x       90      -
  comp.os.linux                   x       8       -
  fido.2450                       x       27      -
  fido.r24                        x       10      -
  fido.ger.linux                  x       18      -
  fido.ger                        x       14      -

  # default:  9 Tage (d.h. alles, was durch obiges noch nicht getroffen wurde)
  all                             x       9       -
  ______________________________________________________________________

  Damit sollte das News-System funktionstchtig sein, allerdings mssen
  noch einige Dinge regelmig ausgefhrt werden, damit es funktioniert.

  Hierzu verwende ein paar Cron-Jobs.  Die Crontab fr den User nneewwss
  sieht dafr wie folgt aus:

  ______________________________________________________________________
  # crontab.news
  #
  SHELL=/bin/sh
  MAILTO=news
  #
  # Crontab entries for news system
  #
  15 * * * * /bin/date >  /tmp/news_cron_ok

  # Kurz vor meinen beiden Polls werden die News gesammelt und nach Fido
  # exportiert. Zusaetzlich werden sie noch stuendlich exportiert.
  27      8       * * *   /usr/local/lib/fidogate/run-batch
  27      20      * * *   /usr/local/lib/fidogate/run-batch
  13      *       * * *   /usr/local/lib/fidogate/run-batch

  # Die Artikel sollen regelmaessig fuer alle User des Systems lesbar gemacht
  # werden (danach kann man sie auch noch canceln und wenn noch kein run-batch
  # ausgefuehrt wurde, wird der gecancelte Artikel auch nicht einmal
  # exportiert): [das */5 bedeutet, dass alle 5 Miunten newsrun gestarte
  # werden soll. Fuer naehere Informationen siehe man 5 crontab]
  */5     *       * * *   /usr/lib/newsbin/input/newsrun

  # Kontrollieren.... um 21:18
  18      21      * * *   /usr/lib/newsbin/maint/newsdaily

  # Aufraeumen...
  24       8      * * *   /usr/lib/newsbin/expire/doexpire
  24       20     * * *   /usr/lib/newsbin/expire/doexpire
  ______________________________________________________________________

  Dabei ist rruunn--bbaattcchh ein kleines Shell-Script, welches zuerst nneewwssrruunn
  und dann sseennddbbaattcchheess aufruft:

  ______________________________________________________________________
  #!/bin/sh
  # /usr/local/lib/fidogate/run-batch
  #
  # Call newsrun, sendbatches
  #

  /usr/lib/newsbin/input/newsrun
  /usr/lib/newsbin/batch/sendbatches
  ______________________________________________________________________

  Bei Slackware 3.0 wird bei jedem Aufruf von sseennddbbaattcchheess die UUCP-Queue
  berprft, wobei eine Fehlermeldung ausgegeben wird, weil das System
  ffiiddooggaattee nicht als UUCP-System existiert.  Um dieses Problem zu
  beheben, mu das Script qquueeuulleenn wie folgt gendert werden:

  ______________________________________________________________________
   #!/bin/sh
   # Find size of current queue of news outbound to $1.  Taylor version.
   # =()<. ${NEWSCONFIG-@<NEWSCONFIG>@}>()=
   . ${NEWSCONFIG-/var/lib/news/config}

   PATH=$NEWSCTL/bin:$NEWSBIN:$NEWSPATH ; export PATH
   umask $NEWSUMASK

   if test "$1" = "fidogate"
   then
      echo -e "\t0"
      exit 0
   else
   uustat -s $1 -c rnews | wc -l
   fi
  ______________________________________________________________________

  Nun mssen die Newsgroups noch in das News-System eingetragen werden.
  Hierzu verwendet man das Programm //uussrr//lliibb//nneewwssbbiinn//mmaaiinntt//aaddddggrroouupp,
  welches man mit dem Namen der Newsgroup sowie dem Parameter yy aufruft,
  z.B.:

  /usr/lib/newsbin/maint/addgroup fido.ger.linux y

  Damit wird nun die Newsgroup ffiiddoo..ggeerr..lliinnuuxx (entspricht bei mir der
  Fido-Area LLIINNUUXX..GGEERR) eingerichtet. Dies mu man nun mit allen
  gewnschten Newsgroups machen.  Weiterhin sollte man auch noch die
  beiden Newsgroups ffiiddoo..jjuunnkk und jjuunnkk anlegen, welche News aufnehmen,
  die in keine andere Newsgroup einsortiert werden knnen. Wenn Fido-
  Echomail in eine Area gehrt, die in //uussrr//llooccaall//lliibb//ffiiddooggaattee//aarreeaass
  nicht aufgefhrt ist, so wandert diese in ffiiddoo..jjuunnkk. Wenn die Area in
  ffiiddooggaattee//aarreeaass eingetragen ist, aber vergessen wurde, die
  entsprechende Newsgroup mit addgroup anzulegen, dann wandert der
  Artikel nach jjuunnkk.  Man sollte diese Newsgroup als Systemverwalter
  auch subscriben, damit man fehlende Newsgroup-Eintrge bemerkt und
  eintragen kann.  Um Artikel canceln zu knnen, bentigt man brigens
  noch die Newsgroup ccoonnttrrooll, die man auch mittels aaddddggrroouupp anlegen
  sollte.

  Falls noch Permission-Probleme auftreten knnen die auch in einem Bug
  von rreellaayynneewwss begrndet sein, denn dort wird nach einem ssuu weiterhin
  die alte User-ID und Group-ID verwandt. Das lt sich aber durch
  folgenden Patch beheben:

  ______________________________________________________________________
  --- org/relaynews.c     Tue Mar 17 08:42:42 1992
  +++ relaynews.c Sun Jan 30 13:48:34 1994
  @@ -201,7 +201,7 @@
          else
                  newsuid = geteuid(), newsgid = getegid();
          if (setgid(newsgid) < 0 || setuid(newsuid) < 0 ||
  -           getgid() != newsgid || getuid() != newsuid) {
  +           getegid() != newsgid || geteuid() != newsuid) {
                  if (getenv("NEWSPERMS") != 0)
                          error("recursive loop setting ids", "");
                  /*
  ______________________________________________________________________

  1133..  IINNNN--KKoonnffiigguurraattiioonn

  Zunchst mu man INN natrlich installieren, wofr man entweder ein
  vorkonfiguriertes Binary verwenden kann, oder halt sein Binary selber
  compiliert, was anhand des Beispiel-ccoonnffiigg..ddaattaa aus dem newspak recht
  einfach mglich sein sollte. Hier habe ich gegenber dem newspak
  folgende nderungen vorgenommen (das ist nicht das gesamte ccoonnffiigg..ddaattaa
  sondern nur die Unterschiede zwischen ccoonnffiigg..ddaattaa..nneewwssppaakk und meinen
  Anpassungen):

  ______________________________________________________________________
  _EXITVAL               void
  INEWS_PATH             DONT
  INND_NICE_KIDS         DO
  INND_NICE_VALUE        10
  DEFAULT_CUTOFF         30
  HAVE_UUSTAT            DO
  _PATH_LOGFILE          /var/log/inn/log
  _PATH_MOST_LOGS        /var/log/inn
  ______________________________________________________________________

  Weiterhin habe ich die Pfade so gendert, da fr NNEEWWSSPPAAKK__NNEEWWSS__LLIIBB__DDIIRR
  //uussrr//llooccaall//lliibb//nneewwss und fr NNEEWWSSPPAAKK__SSPPOOOOLL__DDIIRR //vvaarr//ssppooooll//nneewwss verwen
  det wird.  Slackware verwendt meines Wissens //uussrr//lliibb//nneewwss, so da man
  hier ggf. einen Link anbringen sollte, oder etwas umdenken mu.

  Nach der Installation sind in //uussrr//llooccaall//lliibb//nneewwss und dessen
  Unterverzeichnissen diverse nderungen vorzunhemen. Ich werde hier zu
  konfigurierenden Files einfach nacheinander besprechen:

  Zunchst einige kleinere Files: //uussrr//llooccaall//lliibb//nneewwss//ppaasssswwdd..nnnnttpp und
  //uussrr//llooccaall//lliibb//nneewwss//nnnnttppsseenndd..ccttll sollten nur Kommentare enthalten und
  ansonsten leer sein. //uussrr//llooccaall//lliibb//nneewwss//hhoossttss..nnnnttpp enthlt nur
  folgende eine Zeile:

  ______________________________________________________________________
  ##  hosts.nntp - names and addresses that feed us news
  ##  Format
  ##      <host>:
  ##      <host>:<password>
  ##  <host> can be a name or IP address; no wildcards.  Any hosts not
  ##  listed here are handed off to nnrpd.
  spinnaker.rhein.de:
  ______________________________________________________________________

  Damit darf nur mein eigener Rechner auf meinen NNTP-Server zugreifen.

  //uussrr//llooccaall//lliibb//nneewwss//nnnnrrpp..aacccceessss sollte wie folgt aussehen:

  ______________________________________________________________________
  ##  nnrp.access - access file for on-campus NNTP sites
  ##  Format:
  ##      <host>:<perm>:<user>:<pass>:<groups>
  ##  Connecting host must be found in this file; the last match found is
  ##  used, so put defaults first.
  ##      <host>          Wildcard name or IP address
  ##      <perm>          R to read; P to post
  ##      <user>          Username for authentication before posting
  ##      <pass>          Password, for same reason
  ##      <groups>        Newsgroup patterns that can be read or not read
  ##  To disable posting put a space in the <user> and <pass> fields, since
  ##  there is no way for client to enter one.
  ##
  ## Default is no access, no way to authentication, and no groups.
  *:: -no- : -no- :!*
  ##  Foo, Incorporated, hosts have no password, can read anything.
  *:Read Post:::spinnaker*
  localhost:Read Post:::*
  spinnaker.rhein.de:Read Post:::*
  ______________________________________________________________________

  Damit darf jeder per NNRP (das ist das Protokoll, mit dem Newsreader
  mit dem Newsserver kommunizieren) auf die Newsgroups, deren Name mit
  ssppiinnnnaakkeerr beginnt lesen und auch dorthinein posten. Alle anderen News
  groups drfen sie nicht lesen und auf meinem Rechner darf jeder jede
  Newsgroup lesen und darin schreiben.

  Als nchstes ist //uussrr//llooccaall//lliibb//nneewwss//iinnnn..ccoonnff wie folgt zu
  konfigurieren:

  ______________________________________________________________________
  ##  inn.conf -- inn configuration data
  ##  Format:
  ##      <parameter>:<whitespace><value>
  ##  Used by various programs and libinn.  The following parameters are defined:
  ##      domain          Local domain, without leading period.
  ##      fromhost        What to put in the From line; default is FQDN
  ##                      of the local host.
  ##      moderatormailer Where to mail moderated postings, if not found
  ##                      in the moderators file; see moderators(5).
  ##      pathhost        What to put in the Path and Xref headers; default
  ##                      is FQDN of the local host.
  ##      organization    If $ORGANIZATION doesn't exist.  What to put in
  ##                      the Organization header if blank.
  ##      server          If $NNTPSERVER doesn't exist.  Local NNTP server
  ##                      host to connect to.
  ##
  organization:   private site, Widdig, Germany
  #server:        spinnaker.rhein.de
  server:         localhost
  ______________________________________________________________________

  Als nchstes das wichtigste File der INN-Konfiguration
  //uussrr//llooccaall//lliibb//nneewwss//nneewwssffeeeeddss, in dem festgelegt wird, welche
  Newsgroups an wen exportiert werden sollen.

  ______________________________________________________________________
  ##  newsfeeds - determine where Usenet articles get sent
  ##  Format:
  ##      site[/exclude,exclude...]\
  ##              :pattern,pattern...[/distrib,distrib...]\
  ##              :flag,flag...\
  ##              :param
  ##  Summary of flags:
  ##      <size           Article must be less then size bytes.
  ##      Aitems          Article checks -- d (must have Distribution header)
  ##                      p (don't check for site in Path header).
  ##      Bhigh/low       Internal buffer size before writing to output.
  ##      H[count]        Article must have less then count hops; default is 1.
  ##      Isize           Internal buffer size (if a file feed)
  ##      Nm              Only moderated groups that match the patterns.
  ##      Nu              Only unmoderated groups that match the patterns.
  ##      Ssize           Start spooling if more than size bytes get queued.
  ##      Ttype           Feed types -- f (file) m (funnel; param names the
  ##                      real entry) p (pipe to program) c (send to stdin
  ##                      channel of param's sub-process); x (like c, but
  ##                      handles commands on stdin).
  ##      Witems          What to write -- b (article bytesize) f (full path)
  ##                      g (first newsgroup) m (Message-ID) n (relative
  ##                      path) s (site that fed article) t (time received)
  ##                      * (names of funnel feed-in's or all sites that get
  ##                      the article) N (Newsgroups header) D (Distribution
  ##                      header) H (all headers) O (overview data) R
  ##                      (replication data).
  ##  Param field depends on T flag.  For Tf, relative paths are from the
  ##  out.going directory.  For Tp and Tc, it is a shell command to execute.
  ##  If a Tm refers to this entry (which will have its own T param) then "*"
  ##  is expanded to all the funnel sites that triggered this one.  Useful
  ##  for spawning one mail process, e.g.
  ##
  ##  This file is complicated -- see newsfeeds.5!

  # ME zeigt an, welche Newsgroups hier bestellt werden sollen:
  ME\
          :!*\
          ::

  # Alles, was per FidoGate verschickt werden soll:
  # - fido.* auer fido.junk, denn das ist eine Pseudo-Newsgroup in der
  #   nur Artikel landen, die nicht ordentlich in Fidogate eingetragen
  #   wurden,
  # - ger.*, die Gernet-Newsgroups
  # Wenn auch Internet ber Fido (z.B. mittels fido.de) reinkommt, dann
  # sind hier auch noch die entsprechenden Newsgroups (rec.*, comp.*,
  # de.*, alt.*, gnu.*,...) einzutragen.
  #
  # Alle meine Uplinks haben den gleichen Namen (ber die Datei
  # /usr/local/lib/fidogate/hosts), nmlich flokiste.fido.de, daher ist
  # dieser hier einzutragen, damit Mails, bei denen flokiste.fido.de im
  # Pfad steht, nicht mehr dorthin exportiert werden (sonst gbe es
  # Dupes).
  # Da ich Fido und Internet bei mir absolut auseinander halten mchte
  # (die was ber Fido reinkommt darf nicht ins Internet exportiert
  # werden und umgekehrt), habe ich rhein hier ebenfalls als Alias
  # eingetragen.
  fidogate/flokiste.fido.de,rhein\
          :fido.*,!fido.junk,ger.*\
          :Tf,Wnb:

  # Dies ist mein Internet (Usenet)-Feed.
  # Hier werden die Areas comp.*,de.*,rec.*,alt.*,gnu.* exportiert.
  # Damit hier nichts aus dem Fido rausgeht, steht flokiste.fido.de als
  # Alias fr rhein.
  rhein/flokiste.fido.de\
          :comp.*,de.*,rec.*,alt.*,gnu.*\
          :Tf,Wfb:
  ______________________________________________________________________

  Als nchstes ist das File //uussrr//llooccaall//lliibb//nneewwss//eexxppiirree..ccttll zu
  konfigurieren, welches angibt, wann welche Newsgroups expiren.

  ______________________________________________________________________
  ##  expire.ctl - expire control file
  ##  Format:
  ##      /remember/:<keep>
  ##      <patterns>:<modflag>:<keep>:<default>:<purge>
  ##  First line gives history retention; other lines specify expiration
  ##  for newsgroups.  Must have a "*:A:..." line which is the default.
  ##      <patterns>      wildmat-style patterns for the newsgroups
  ##      <modflag>       Pick one of M U A -- modifies pattern to be only
  ##                      moderated, unmoderated, or all groups
  ##      <keep>          Mininum number of days to keep article
  ##      <default>       Default number of days to keep the article
  ##      <purge>         Flush article after this many days
  ##  <keep>, <default>, and <purge> can be floating-point numbers or the
  ##  word "never."  Times are based on when received unless -p is used;
  ##  see expire.8

  ##  If article expires before 14 days, we still remember it for 14 days in
  ##  case we get offered it again.  Depending on what you use for the innd
  ##  -c flag and how paranoid you are about old news, you might want to
  ##  make this 28, 30, etc.
  /remember/:30

  # Alle Newsgroups fr mindestens 3, maximal 90 und normalerweise 5
  # Tage behalten (relativ zur Ankunftszeit)
  *:A:3:5:90
  *:U:3:5:90
  # Moderierte Newsgroups lnger behalten:
  *:M:5:9:90

  # Lokale Newsgroups normalerweise 90 Tage behalten:
  spinnaker.*:A:3:90:90

  # Deutsche Newsgroups 7 Tage behalten:
  de.*:A:3:7:90
  # de.comp.os.linux.* etwas lnger:
  de.comp.os.linux.*:A:3:14:90

  # Moderierte c.o.l.* lnger behalten:
  comp.os.linux.*:M:5:90:90

  # Fido etwas lnger behalten:
  fido*:A:3:9:90
  ger*:A:3:8:90

  # Junk schnell lschen:
  fido.junk:A:3:4:90

  # Und noch eine Ausnahme:
  fido.ger.linux:A:3:24:90
  ______________________________________________________________________

  Das kann man natrlich alles nach eigenem Geschmack ndern. Allerdings
  sollte man die Default-Zeiten (insbesondere fr Fido) mglichst nicht
  weiter verkrzen, da die Messages meist lange unterwegs sind und
  ansonsten gar nicht erst ins Newssystem eingestellt werden, sondern
  direkt expiren.

  Als nchstes ist das File //uussrr//llooccaall//lliibb//nneewwss//sseenndd--ffiiddooggaattee zu
  erstellen, das regelmig die zu verschickenden Fido-Echomails
  zusammenpackt. Einen Prototyp fr dieses File findet man unter
  ffiiddooggaattee//ccoonnffiigg//iinnnn//sseenndd--ffiiddooggaattee, allerdings mu man im Anfang des
  Files zwei kleinere nderungen an den Pfaden vornehmen:

  ______________________________________________________________________
   #! /bin/sh
   #:ts=8
   ##  SH script to send batches to FIDOGATE

   ##  =()<. @<_PATH_SHELLVARS>@>()=
   . /usr/local/lib/news/innshellvars

   #
   # FIDOGATE rfc2ftn
   #
   RFC2FTN="/usr/local/lib/fidogate/rfc2ftn -w Normal -b -n "
  ______________________________________________________________________

  Damit die News exportiert werden knnen, mu ein Batch-Verzeichnis fr
  sie existieren, das //vvaarr//ssppooooll//nneewwss//oouutt..ggooiinngg heit, nneewwss..nneewwss gehrt
  und die Permissions 777755 haben sollte.  Im Gegensatz zu cnews drfen in
  diesem Verzeichnis keine Unterverzeichnisse fr die einzelnen
  Newsfeeds angelegt werden, denn INN verwendet nur ein File je Feed,
  welches er selber anlegt. Wer aber von cnews auf INN umsteigt, sollte
  die bestehenden Verzeichnisse lschen.

  Da INN mit einem Dmon arbeitet, der immer luft, mu dieser beim
  Booten gestartet werden. Hierzu fgt man am Ende von //eettcc//rrcc..dd//rrcc..MM
  vor dem Aufruf von rrcc..llooccaall folgendes ein:

  ______________________________________________________________________
    /usr/local/lib/news/etc/rc.news &
  ______________________________________________________________________

  Fr den ersten Start von INN kann dieses Skript (als root) auch
  manuell gestartet werden. Allerdings ist darauf zu achten, da nicht
  versehentlich mehrere innd gleichzeitig laufen.

  Bei einigen Distributionen ist standardmig ein anderer NNTP-Dmon
  (nntpd) fr cnews in //eettcc//iinneettdd..ccoonnff eingetragen.  Dann kann der innd
  nicht gestartet werden, weil der TCP-Port bereits belegt ist.  Daher
  mu die entsprechende Zeile in iinneettdd..ccoonnff auskommentiert werden, was
  man dem inetd durch kill -1 mitteilen kann.

  Weiterhin sind fr den reibunslosen Betrieb von INN noch einige
  Eintrge in der crontab des Users news notwendig:

  ______________________________________________________________________
  SHELL=/bin/sh
  MAILTO=roland
  #
  # INN:
  #
  13  *   * * *   /usr/local/lib/news/send-fidogate
  17  *   * * *   /usr/local/lib/news/send-uucp rhein
  13  21  * * *   /usr/bin/nice /usr/local/lib/news/bin/news.daily delayrm
  48  21  * * *   /usr/local/lib/news/rnews -U
  ______________________________________________________________________

  Hier werden einmal pro Stunde die Batches fr alle Fidosysteme sowie
  fr das UUCP-System rhein gepackt (ohne UUCP-Connection kann der Teil
  natrlich entfallen). Weiterhin wird einmal pro Tag aufgerumt, und
  darber per Mail informiert. Abschlieend werden alle versehentlich
  liegengebliebenen Artikel verarbeitet.

  Es bleibt noch das Erstellen der Newsgroups. Hierzu sowie fr fast
  alle anderen nderungen am Newssystem wird nur das eine Kommando
  ccttlliinnnndd verwendet. Es sollte immer nur vom User news aufgerufen werden
  und es ist im Verzeichnis //uussrr//llooccaall//lliibb//nneewwss//bbiinn zu finden.
  Newsgroups werden dabei mittels ccttlliinnnndd nneewwggrroouupp ffiiddoo..ggeerr..lliinnuuxx
  angelegt (mit der entsprechenden Newsgroup natrlich).  Dabei sind
  diverse weitere Optionen mglich, die man alle in der Manpage zu
  ccttlliinnnndd((88)) nachlesen kann. Insbesondere sollten die Newsgroups
  ccoonnttrrooll, jjuunnkk und ffiiddoo..jjuunnkk angelegt werden, die Control-Messages
  (z.B. cancel), Artikel fr nicht installierte Newsgroups und Artikel
  fr nicht in //uussrr//llooccaall//lliibb//ffiiddooggaattee//aarreeaass eingetragene Areas
  auffangen.

  Um im Newsreader die Beschreibungen der einzelnen Newsgroups zu
  finden, kann man weiterhin noch das File
  //uussrr//llooccaall//lliibb//nneewwss//nneewwssggrroouuppss anlegen, welches in jeder Zeile den
  Namen einer Newgroups und dahinter (durch einen Tab abgetrennt) die
  Beschreibung der Newsgroup. Dabei strt es nicht, wenn nicht
  existierende Newsgroups eingetragen sind, Newsgroups doppelt
  eingetragen sind (es wird der erste Eintrag angezeigt) oder Newsgroups
  nicht eingetragen sind.

  Da auch INN seine Log-Messages ber syslog erstellt, sollte man
  folgende Eintrge in //eettcc//ssyysslloogg..ccoonnff vornehmen:

  ______________________________________________________________________
  news.crit                               /var/log/inn/news.crit
  news.err                                /var/log/inn/news.err
  news.notice                             /var/log/inn/news.notice
  ______________________________________________________________________

  Weiterhin sollte man noch das Verzeichnis //vvaarr//lloogg//iinnnn anlegen.

  Fr weitere Informationen zu INN, die Umstellung eines cnews-Systems
  auf INN, Probleme etc. verweise ich auf die sehr gute INN-FAQ und die
  reichlich vorhandenen Manpages.

  1144..  NNeewwss//EEcchhoommaaiill lleesseenn uunndd sscchhrreeiibbeenn

  Ich persnlich bevorzuge als Newsreader ttiinn. Da dieser, wie alle
  anderen auch nicht fr Fido konstruiert wurde, gibt es standardmig
  keine Mglichkeit, bei Echomails einen Adressaten anzugeben, was ja im
  Fido mglich und blich ist.  FidoGate ermglicht das jedoch ber eine
  zustzliche Headerzeile XX--CCoommmmeenntt--TToo::. Selbige kann man manuell
  erstellen, wobei zu beachten ist, da der Username in runden Klammern
  stehen mu. Es ist aber auch erlaubt, hier eine komplette Internet-
  Adresse inclusive Realname anzugeben.

  Beispiele:

  X-Comment-To: (Roland Rosenfeld)
  X-Comment-To: rosenfel@uran.informatik.uni-bonn.de (Roland Rosenfeld)

  Im Verzeichnis ffiiddooggaattee//ccoonnttrriibb//nneewwss findet man jedoch auch Patches
  fr ttiinn, xxrrnn und nnnn, die diese Zeile automatisch generieren, wenn man
  auf einen Artikel antwortet.  Falls man ttiinn nicht patchen mchte, kann
  man auch folgende Zeile in ~~//..ttiinn//ttiinnrrcc eintragen:

  news_quote_format=X-Comment-To: (%N)\n\n%F wrote in msg %M:

  dann darf man allerdings nicht vergessen, bei jedem Follow-Up die
  berflssige Leerzeile vor dem XX--CCoommmmeenntt--TToo:: zu lschen.

  Wenn Du schon eine der Beta-Versionen von tin einsetzt (ab
  ttiinn--11..33bbeettaa--995500882244), dann kannst Du einfach folgendes in
  ~~//..ttiinn//aattttrriibbuutteess eintragen:

  ______________________________________________________________________
  scope=*
  auto_save_msg=OFF

  scope=fido.*
  x_comment_to=ON

  scope=ger.*
  x_comment_to=ON
  ______________________________________________________________________

  und schon weden in den Fido- und Gernet-Echos XX--CCoommmmeenntt--TToo::-Header
  erstellt, ohne da Du tin patchen mut.

  Als weitere Alternative bietet sich seit FidoGate 3.9.5 an, den
  Newsreader so zu konfigurieren, da eine folgender Zeilen vorn in der
  Message steht, denn dann wird diese zur Ermittlung des Realnames
  verwendet:

  user@do.main (User Name) writes:
  User Name <user@do.main> writes:
  user@do.main.writes:
  user@do.main (User Name) wrote:
  User Name <user@do.main> wrote:
  user@do.main wrote:
  In article <id@do.main> user@do.main writes:
  In article <id@do.main>, user@do.main writes:

  1155..  MMaaiill//NNeettmmaaiill lleesseenn uunndd sscchhrreeiibbeenn

  Ich persnlich verwende hierzu eellmm. Eigentlich mu man sich dabei
  nicht um allzuviel kmmern, man adressiert nur halt mit _p_f_n_z-Notation.
  So wird aus

  Roland Rosenfeld 2:2450/111.13

  die Adresse

  Roland_Rosenfeld@p13.f111.n2450.z2.fido.sub.de

  oder gar

  Roland_Rosenfeld@p13.f111.n2450.z2.fido.sub.de (Roland Rosenfeld)

  und aus

  Roland Rosenfeld 21:100/64.13

  wird

  Roland_Rosenfeld@p13.f64.n100.z21.ger.sub.de

  Internet-Adressen kann man hingegen direkt angeben und fr Muse gibt
  man die entsprechende Internet-Adresse an, also z.B.
  VVoorrnnaammee__NNaammee@@ssuu..mmaauuss..ddee. Trotzdem wird die Mail ber das Fido-Maus-
  Gate geschickt (es sei denn man hat in ffiiddooggaattee//ssrrcc//ccoonnffiigg..hh etwas
  anderes eingestellt).

  Fr Maus-Messages sollte die Datei //uussrr//llooccaall//lliibb//ffiiddooggaattee//mmaauuss immer
  auf dem neusten Stand sein, damit die verschiedenen Maus-Domains
  korrekt erkannt und konvertiert werden (nicht alle Muse sind unter
  ..mmaauuss..ddee erreichbar, es gibt diverse Ausnahmen. Bei FidoGate ist aber
  immer eine aktuelle Version des Files dabei, welches man in
  ffiiddooggaattee//lliibb//mmaauuss findet.

  Wichtig ist nun auch, da man Mails an Tools (Areafix, FileMgr,...)
  schicken kann. Diese haben jedoch oft Probleme mit den von FidoGate
  erstellen Mails.  Selbige haben nmlich meist in der ersten Zeile ein
  " ** TToo:: aaddrreessssee" stehen, was manche der Tools so interpretieren, da
  alle Areas ("**") anbestellt werden sollen. Will man also diese Zeile
  abstellen, so kann man mit eellmm im Men HH)eader mit UU)ser-Defined-
  Header (vor dem Verschicken) eine zustzliche Header-Zeile eingeben:

  X-Flags: N

  Weiterhin hat FileScan beispielsweise in einigen Versionen den Bug,
  da er die Adresse nicht dem Header entnimmt, sondern der Message-ID.
  Selbige enthlt bei FidoGate-Messages aber nicht die FTN-Adresse
  (Z:N/F.P), sondern die Internet-Adresse, so da auch hier
  Schwierigkeiten auftauchen. Selbige lassen sich aber mit

  X-Flags: M

  beheben, denn dann wird eine Fido-bliche Message-ID generiert (fr
  verschiedene Netze mit der jeweiligen Adresse).

  Man kann die X-Flags natrlich auch kombinieren, ich verwende
  beispielsweise fr alle Mails an irgendwelche Robots immer

  X-Flags: MN

  Will man Crashmails verschicken, so mu man zustzlich "XX--FFllaaggss:: CC"
  setzen. Wird dabei an einen Point adressiert, so wird die Mail an
  dessen Bo gecrasht.

  Auch FileAttaches sind mglich.  Hierzu gibt man "XX--FFllaaggss:: FF" an und
  gibt den Dateinamen mit Pfad(!) als Subject an.

  Will man irgendwelche Flags fr alle Mails setzen, dann hat man auch
  die Mglichkeit eine Datei ~~//..eellmm//eellmmhheeaaddeerrss anzulegen, welche nur die
  entsprechende Headerzeile, also beispielsweise

  X-Flags: MN

  enthlt. Dann wird diese Headerzeile in jeder Mail eingetragen.

  Sollten die X-Flags wider erwarten bei Dir keine Wirkung zeigen, dann
  schau mal ins FidoGate-Logfile, denn dort bemerkt FidoGate dann
  gewhnlich, da der in //uussrr//llooccaall//lliibb//ffiiddooggaattee//ccoonnffiigg..ccoommmmoonn
  eingetragene Rechnername HHoossttnnaammee..DDoommaaiinn nicht mit dem Namen der
  Maschine, auf der FidoGate luft, bereinstimmt.  Genau das ist jedoch
  Vorraussetzung, damit die X-Flags akzeptiert werden, denn andernfalls
  knnte ja jeder per Netmail bei Dir Crashmails, Filerequests etc.
  absetzen.

  1166..  FFiilleess rreeqquueesstteenn

  Fr Filerequests kann man das Perl-Skript iiffrreeqq verwenden, welches
  sich im Verzeichnis iiffmmaaiill//mmiisscc//ccoonnttrriibb befindet. Mit einigen DOS-
  Request-Prozessoren macht das noch Probleme, da an den Zeilenenden das
  Linefeed fehlt. Folgender Patch lst dieses Problem:

  ______________________________________________________________________
  --- ifreq~      Sat Aug  6 14:41:28 1994
  +++ ifreq       Sat Oct  8 12:05:09 1994
  @@ -73,7 +73,7 @@
  # open the flofile for appending
  open(FLOFILE, ">>" . $reqfile) || die "can't open $reqfile";
  while (@files) {
  -                       print (FLOFILE shift(@files), "\n");
  +                       print (FLOFILE shift(@files), "\r\n");
  }
  close(FLOFILE);
  ______________________________________________________________________

  1177..  FFeehhlleerrssuucchhee

  Sollte Das alles trotz meiner Anleitung noch nicht auf Anhieb
  funktionieren, so gibt es noch diverse Mglichkeiten, einen Fehler
  aufzuspren.
  Wichtigstes Tool hierzu ist das Programm iiffssttaatt, welches anzeigt,
  welche Pakete fr welche Adresse bereit liegen. Hier sollte man sich
  nicht wundern, wenn die Pakete nach dem Start von ifpoll pltzlich
  geschrumpft sind, das liegt nmlich daran, da die Mails dann zu ZZIIPP-
  Files gepackt wurden.

  1177..11..  MMaaiill wwiirrdd nniicchhtt vveerraarrbbeeiitteett

  Hier ist es sinnvoll, das Debug-Level von rrffcc22ffttnn in
  //eettcc//ssmmaaiill//ttrraannssppoorrttss bzw. im //eettcc//sseennddmmaaiill..ccff hochzusetzen. Hierzu
  gibt man im entsprechenden Netz den zustzlichen Parameter --vv bei
  rrffcc22ffttnn an (ggf. auch mehrfach, dann wird das Debug-Level entsprechend
  hher, ich verwende meist --vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv oder so). Um die
  Debug-Meldungen dann wirklich in die Hand zu bekommen, schicke ich die
  Mail einfach mit einer Kopie an eine nicht existente Adresse und
  bekomme dann den Rcklufer mit smtlichen Debug-Meldungen. Kommt der
  Rcklufer berhaupt nicht, so kann es durchaus sein, da irgendwelche
  Permissions nicht stimmen und das System einfach wartet (man sieht das
  daran, da noch sseennddmmaaiill und rrffcc22ffttnn als Prozesse laufen). Dann findet
  sich das aktuelle Debug-File in //vvaarr//ssppooooll//ssmmaaiill//mmssgglloogg.  Unter
  //vvaarr//ssppooooll//ssmmaaiill findet man dann auch die liegengebliebenen Messages.
  Bei Verwendung von Sendmail werden die Log-Meldungen dagegen per
  syslog ins Syslogfile geschrieben, whrend die liegengebliebenen
  Messages in //vvaarr//ssppooooll//mmqquueeuuee landen.

  1177..22..  NNeewwss wweerrddeenn nniicchhtt vveerraarrbbeeiitteett

  Analog zum Vorgehen bei Mail kann man auch bei News verfahren. Hier
  gehe ich gewhnlich so vor, da ich in //uussrr//lliibb//nneewwssbbiinn//bbaattcchh//vviiaaffiiddoo
  (cnews) bzw. //uussrr//llooccaall//lliibb//nneewwss//sseenndd--ffiiddooggaattee (INN) die
  entsprechenden --vv's einbaue und dann an die entsprechende Zeile ein 22>>
  //ttmmpp//ffggaattee..oouutt anhnge, was dazu fhrt, da stderr nach //ttmmpp//ffggaattee..oouutt
  umgeleitet wird, das ich mir dann anschauen kann.

  Ansonsten sollte man bei cnews zwischen dem Aufruf von nneewwssrruunn und
  rruunn--bbaattcchh nachsehen, ob der Artikel in
  //vvaarr//ssppooooll//nneewwss//oouutt..ggooiinngg//**//ttooggoo aufgelistet wurde und dort
  anschlieend auch wieder gelscht wurde. Manchmal (je nach cnews-
  Version) werden die Artikel auch in //vvaarr//ssppooooll//nneewwss//iinn..ccoommiinngg
  zwischengelagert.

  Bei INN sollten die Artikel sofort ins Newssystem aufgenommen werden,
  und damit auch direkt im File //vvaarr//ssppooooll//nneewwss//oouutt..ggooiinngg//** erscheinen.
  Nach dem sseenndd--ffiiddooggaattee sollten sie dort verschwinden und im Fido-
  Outbound landen.

  Weiterhin sollte man sich alle vorhandenen Logfiles ansehen:

     ssmmaaiill
        //vvaarr//ssppooooll//ssmmaaiill//lloogg//llooggffiillee

     SSeennddmmaaiill
        //vvaarr//lloogg//mmaaiill

     ccnneewwss
        //vvaarr//lliibb//nneewwss//lloogg..**  //vvaarr//lliibb//nneewwss//bbaattcchhlloogg..**
        //vvaarr//lliibb//nneewwss//eerrrrlloogg..**

     IINNNN
        //uussrr//llooccaall//lliibb//nneewwss//lloogg //uussrr//llooccaall//lliibb//nneewwss//eerrrrlloogg
        //vvaarr//lloogg//iinnnn//**

     ffiiddooggaattee
        //vvaarr//lloogg//ffnneett//lloogg

     iiffcciiccoo
        //vvaarr//lloogg//ffnneett//iiffmmaaiill //vvaarr//lloogg//ffnneett//iifflloogg //vvaarr//lloogg//ffnneett//iiffddeebbuugg

  Um die Korrektheit erstellter Pakete zu erkunden oder Probleme in
  bestehenden Paketen zu finden, enthlt FidoGate das Programm ppkkttddeebbuugg.
  Braucht man mehr Informationen, so sollte man sich das DOS-Programm
  Inspect besorgen, welches problemlos in der Dosemu luft und wenn man
  die Verzeichnisse entsprechend freigibt und die Dosemu dann als User
  uuuuccpp startet, dann kann man die ..ppkktt-Files und Archive sogar
  verndern.

  Hngt CNews komplett, so bleibt einem nur ein Debugging der diversen
  cnews-Shell-Scripts. Hierzu sollte man in das jeweilige Skript ein
  "sseett --xxvv" am Anfang einbauen, welches genau ausgibt, welche Zeilen des
  Skripts in welcher Reihenfolge und mit welchen Parametern aufgerufen
  werden. Fr weitere Informationen dazu empfehle ich die Manpage der
  bbaasshh.

  Falls nur das Posten von News-Artikeln nicht klappt, kann man auch mal
  versuchen, mit PPnneewwss aus dem Paket ttrrnn direkt zu posten. Selbiges ist
  nmlich im Gegensatz zu ttiinn ein einfaches Shell-Skript, bei dem die
  Fehlermeldungen von cnews immerhin so lange stehen bleiben, bis man
  sie gelesen hat (bei ttiinn werden die direkt wieder vom Men
  berschrieben).

  1188..  UUnntteerrssttttzzuunngg

  Bei dieser HOWTO wurde ich durch viele Kommentare und Verbesserungen
  untersttzt. Besonders sind hier zu nennen:

    aannddiijj@@aannddii..ttrriiccbbbbss..ffnn..ssuubb..oorrgg (Andreas Jellinghaus)

    uullii@@ccoorrnnoo..ccoollooggnnee..ddee (Ulrich Villers) 2:2450/115.3

    mmaarrttiinn@@eerrddee..GGUUNN..ddee (Martin Seine) 2:2448/413.100

    ppiieett@@ssmmaallllcchhaannggee..rrhheeiinn..ddee (Peter Theisohn) 2:2450/30

    mmgg@@ggeennyyoosshhaa..iinn--cchheemmnniittzz..ddee (Mike Gaertner) 2:249/5060.17

  Ergnzungen, Fehler-Reports etc. werde ich gern einarbeiten.

