home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / bbs / ecu_200 / ecu.doc < prev    next >
Text File  |  1993-02-07  |  38KB  |  783 lines

  1.  
  2.  
  3.  
  4.  
  5.                  ******                           *****
  6.                  ******                          ******    **
  7.                  **                              **        **
  8.                  **       ****   **  **          **      ******
  9.                  *****   *****   **  **  ******  ***     ******
  10.                  *****   **      **  **  ******   ***      **
  11.                  **      **      **  **            ***     **
  12.                  **      **      **  **             ***    **
  13.                  **      **      **  **              **    **
  14.                  **      **      **  **              **    **
  15.                  ******  ******  ******          ******    ****
  16.                  ******   *****   *****          *****      ***
  17.  
  18.  
  19.                            E x p o r t & C r u n c h
  20.  
  21.                                   Version 2.00
  22.                    (basierend auf Ecu 1.09 von Heinz Ozwirk)
  23.                    
  24.                                        by
  25.  
  26.                                 Patrick Seemann
  27.  
  28.                               2:301/701.29@fidonet
  29.   
  30.                                 7. Februar 1993
  31.  
  32.  
  33.  
  34.  
  35.  
  36.         Grundsätzliches
  37.  
  38.         ECU ist Freeware. Jeder darf es für den privaten Gebrauch  benut-
  39.         zen und  kostenlos weitergeben.  Die Verbreitung  durch Mailboxen
  40.         ist zulässige, wenn dafür keine zusätzliche Gebühr verlangt wird.
  41.         Der Vertrieb durch  PD-Versender bedarf meiner  schriftlichen Zu-
  42.         stimmung.
  43.  
  44.         Jeder Anwender ist für den  Schaden, der ihm durch ECU  entsteht,
  45.         oder den er mit ECU anrichtet, selbst verantwortlich.  Fehlermel-
  46.         dungen und/oder Verbesserungsvorschläge nehme ich aber gerne ent-
  47.         gegen. Ich verspreche aber nicht, daβ ich sie auch  berücksichti-
  48.         gen werde.
  49.  
  50.  
  51.         Allgemeines
  52.  
  53.         ECU ist als  Ersatz von ComScan,  Export, Bye und  Crunch für ST-
  54.         Points gedacht. Dabei arbeitet ECU bevorzugt mit LED und Binkley-
  55.         Term zusammen. Einen anderen  Editor kann man vermutlich  verwen-
  56.         den, wenn er das  gleiche Dateiformat wie LED  verwendet. Binkley
  57.         durch The-Box zu ersetzen  kann dagegen problematisch werden,  da
  58.         die beiden Mailer unterschiedliche Dateinamen voraussetzen.
  59.  
  60.  
  61.         Voraussetzungen
  62.  
  63.         ECU benötigt  zum Betrieb  einen Atari-ST  (1MB bevorzugt),  eine
  64.         Harddisk (es soll immer noch  Leute geben, die mit einem  Floppy-
  65.         Laufwerk versuchen einen  Point zum Laufen  zu bringen), LED  als
  66.         Message-Editor (notfalls geht es  auch mit Pandora), LHARC  (oder
  67.         ein beliebiges anderes Kompressionsprogramm) und BinkleyTerm oder
  68.         The-Box (ab Ecu 1.06) als Mailer.
  69.  
  70.  
  71.  
  72.         Installation
  73.  
  74.         Bei  der  Installation  setzen  wir einmal einen funktionierenden
  75.         Point voraus. Dann ist die gröβte Hürde bei der Installation  von
  76.         ECU bereits überwunden. Alles, was dann noch zu tun bleibt, ist:
  77.  
  78.         -  Kopieren Sie ECU.PRG auf die Festplatte zu den ganzen  anderen
  79.            Point-Programmen.
  80.  
  81.         -  Starten Sie LED, und überzeugen Sie sich, daβ die Option `Skip
  82.            ComScan' nicht  aktiv ist.  LED darf  Echo-Mails nicht  in die
  83.            Netmail Area kopieren.
  84.  
  85.         -  Erstellen Sie die Datei ECU.CFG. Sie muβ sich im gleichen Ver-
  86.            zeichnis wie ECU.PRG befinden.
  87.  
  88.  
  89.  
  90.         Vorteile von ECU
  91.  
  92.         -  ECU ist zuverlässig. Im Gegensatz  zu ComScan hat es mir  noch
  93.            nie - nicht einmal in der Testphase - die Platte zerschossen.
  94.  
  95.         -  ECU kann Areas für mehrere Hosts verwalten.
  96.  
  97.         -  ECU unterstützt  4d-Adressierung, und  kann sie  fast beliebig
  98.            mit 3d-Adressen mischen.
  99.  
  100.         -  ECU erzeugt Flow-Files wahlweise für BinkleyTerm oder The-Box.
  101.  
  102.  
  103.  
  104.         Nachteile von ECU
  105.  
  106.         -  ECU ist langsamer als Export oder Bye. Dafür werden die  Areas
  107.            aber - wie bei ComScan - auch gleich komprimiert. Dies ist mir
  108.            die etwas längere Laufzeit wert.
  109.  
  110.  
  111.         Die Konfigurationsdatei
  112.  
  113.         In der  Konfigurationsdatei werden  die Hosts  und die  Areas be-
  114.         schrieben. Aus dieser Datei erfährt ECU welche Mails für  welchen
  115.         Host bestimmt sind,  und was mit  den Mails zu  tun ist. Die  Be-
  116.         schreibung dieser Datei befand  sich bisher an dieser  Stelle. Da
  117.         die  gleiche  Datei  aber  auch  von anderen Programmen verwendet
  118.         wird, und ich keine Lust habe den Aufbau dieser Datei immer  wie-
  119.         der zu beschreiben,  (vor allem bei  Änderungen wird das  lästig,
  120.         wenn man in vielen Dateien immer die gleichen Änderungen  vorneh-
  121.         men muβ) habe ich  beschlossen, für die Konfigurationsdatei  eine
  122.         eigene Beschreibung zu  machen. Diese Beschreibung  befindet sich
  123.         in der Datei CFG.TFM. Sie gehört zur Dokumentation aller Program-
  124.         me, die diese Konfigurationsdatei verwenden.
  125.  
  126.  
  127.         Parameter in der Kommandozeile
  128.  
  129.         Einige Parameter können auch in der Kommandozeile angegeben  wer-
  130.         den. Diese Parameter haben in der Regel höhere Priorität als  die
  131.         entsprechenden Anweisungen in der Konfigurationsdatei.
  132.  
  133.         Statt mit / können Optionen auch mit - eingeleitet werden.
  134.  
  135.         flags können die  Werte yes (1),  no (0) und  toggle annehmen. Es
  136.         ist nur das jeweils erste Zeichen relevant.
  137.  
  138.  
  139.  
  140.         name
  141.            Ein Filename  ohne weitere  Zusätze bezeichnet  die zu lesende
  142.            Konfigurationsdatei. Wenn  keine Datei  beim Aufruf  angegeben
  143.            wird, lieβt ECU die Datei ECU.CFG.
  144.  
  145.         /?
  146.            Das Programm gibt einen Kurzen Hilfstext aus. Danach wird  das
  147.            Programm  sofort  abgebrochen.  Die  übrigen Parameter und die
  148.            Konfigurationsdatei werden  nicht mehr  verarbeitet. Statt  -?
  149.            kann auch nur ? verwendet werden.
  150.  
  151.         /Cflag
  152.            Hiermit kann  das Komprimieren  der Header-  und Message-Files
  153.            ein- und  ausgeschaltet werden.  Mit /Cyes  werden Header- und
  154.            Message-Files komprimiert. Dies entspricht dem Verhalten, wenn
  155.            in ECU.CFG Compress angegeben wurde, aber nicht NoCrunch.  Mit
  156.            /Cno werden weder die  Message- noch die Header-Files  kompri-
  157.            miert. Es werden  auch keine alten  Mails gelöscht. Dies  ent-
  158.            spricht  dem  Verhalten,  wenn  in der Konfiguartionsdatei No-
  159.            Crunch aber nicht Compress angegeben wurde.
  160.  
  161.         /Dflag
  162.            Mit dieser Option kann der Dupe-Checker ein- und ausgeschaltet
  163.            werden. mit /Dyes wird er eingeschaltet, mit /Dno wird er aus-
  164.            geschaltet. /Dtoggle kehrt  den aktuellen Zustand  um. Default
  165.            ist /Dyes.
  166.  
  167.         /Fflag
  168.            Ecu kann gezwungen werden,  auch dann ein Flow-File  zu erzeu-
  169.            gen, wenn an einen Host nichts geschickt werden muβ. Auf diese
  170.            Weise kann  man BinkleyTerm  zwingen dort  anzurufen, ohne daβ
  171.            Mail für  den Host  vorhanden ist.  Mit /Fyes  werden für alle
  172.            Hosts Flow-Files erzeugt, mit /Fno  nur für die Hosts, an  die
  173.            wirklich etwas geschickt werden  muβ. /Ftoggle kehrt die  Wir-
  174.            kung von DummyFLO um. Default if /Fyes.
  175.  
  176.            Auch das Verhalten des /F-Schalters beim Aufruf von Ecu wurde 
  177.            leicht verändert. Wenn /F oder /F1 angegeben wurde, wird für 
  178.            alle Hosts ein Flowfi-le erzeugt. Wenn dabei für einen Host 
  179.            ein gepacktes oder ungepacktes Paket erforderlich ist, wird es 
  180.            erzeugt. Für Hosts, bei denen DummyFLO nicht angegeben wurde, 
  181.            oder für die Flowfiles mit `DummyFLO 0' abgeschaltet wurden, 
  182.            wird ein Flowfile aber kein Paket erzeugt. Wenn /F0 angegeben 
  183.            wurde, werden - unabhängig von den Angaben in der Konfigura-
  184.            tionsdatei - keine Flowfiles erzeugt.
  185.  
  186.         /Lfilename
  187.            Der Name des Log-Files wird festgelegt. Alle Meldungen  werden
  188.            in die Datei 'filename' geschrieben. Default ist BT.LOG.
  189.  
  190.         /Mloglevel
  191.            Damit wird die  Ausführlichkeit der Fehlermeldungen  bestimmt.
  192.            Zur Zeit sind nur die Werte  0 - keine Ausgabe ins Log-File  -
  193.            und 1 - alles ins Log-File sinnvoll.
  194.  
  195.         /Qflag
  196.            Mit dieser Option kann  QuickScan ein- und ausgeschaltet  wer-
  197.            den. Mit  /Qyes wird  QuickScan eingeschaltet.2  Mit /Qno wird
  198.            QuickScan abgeschaltet, und mit /Qtoggle wird der bisher  ein-
  199.            gestellte Zustand umgedreht. Default ist /Qno.
  200.  
  201.         /Pflag
  202.            Mit dieser Option werden  die Areas unabhängig von  der Anzahl
  203.            der  gelöschten  oder  exportierten  Mails gepackt. Die Header
  204.            werden komprimiert, wenn sie mindestens einen gelöschten  Ein-
  205.            trag enthalten,  und alle  Lücken in  den Message-Files werden
  206.            geschlossen. Das  Crunch-Limit in  den Areas  (s. Crunch) wird
  207.            ignoriert. Diese Option wird mit /Pyes (bzw. /P)eingeschaltet.
  208.  
  209.         /Wflag
  210.            Das Verhalten von Ecu bei Fehlern bestimmt. Mit /Wyes hält ECU
  211.            bei einem Fehler an und wartet auf eine Eingabe des Benutzers.
  212.            Mit /Wno werden  Fehler nur in  das Log-File eingetragen,  und
  213.            das Programm - wenn möglich - fortgesetzt. /Wtoggle kehrt  die
  214.            Wirkung von NoPause um. Default ist /Wyes.
  215.  
  216.  
  217.         Funktionen von ECU
  218.  
  219.         ECU liest  die Header  aller Areas  und entscheidet  an Hand  der
  220.         Message-Flags und  des Datums,  was mit  der Mail  gemacht werden
  221.         soll.
  222.  
  223.         -  Mails, die  älter sind  als die  angegebene Anzahl  von Tagen,
  224.            werden gelöscht,  es sei  denn bei  ihnen ist  das HOLD-  oder
  225.            LOCAL-Flag gesetzt. Die Überprüfung des HOLD- bzw. LOCAL-Flags
  226.            kann mit  den Befehlen  KillHold bzw.  KillLocal in  der Area-
  227.            Beschreibung für einzelne Areas abgeschaltet werden.
  228.  
  229.         -  Mails, die nach dem Senden gelöscht werden können, und die be-
  230.            reits  gesendet  wurden,  werden  gelöscht.  Eine als 'Kill if
  231.            Sent' markierte Mail  wird erst beim  nächsten Aufruf von  ECU
  232.            nach dem Exportieren dieser Mail gelöscht. Nicht bei dem  Auf-
  233.            ruf, bei dem sie exportiert wurde.
  234.  
  235.         -  Mails, bei  denen das  LOCAL-Flag gesetzt  ist, werden  expor-
  236.            tiert. Dies kann durch  setzen des HOLD-Flags verhindert  wer-
  237.            den. Als gelöscht markierte  Mails werden natürlich nicht  ge-
  238.            sendet. Das  LOCAL-Flag wird  von LED  bei allen  eingegebenen
  239.            Meldungen gesetzt.  Bei importierten  Mails ist  das Flag  ge-
  240.            löscht. Es scheint daher ausreichend sicher zu sein, die  Ent-
  241.            scheidung über das Senden von diesem Flag abhängig zu machen.
  242.  
  243.         -  Mails, bei denen das  DELETE-Flag gesetzt ist, werden  aus der
  244.            Header-Datei entfernt. Wenn solche Mails gefunden werden, dann
  245.            wird die Area auf jeden Fall komprimiert. Unabhängig davon, ob
  246.            Compress selektiert wurde oder nicht.
  247.  
  248.         -  Wenn das From-Feld  im Header leer  ist, trägt Ecu  ein ? ein.
  249.            LED betrachtet  einen Header  ohne Absender  als Dateiende und
  250.            zeigt die folgenden Mails  nicht an. Eigentlich sollte  ja der
  251.            Import schon für richtige Message-Header sorgen, aber so lange
  252.            das nicht der Fall ist, ist dies immer noch die beste  Lösung.
  253.            Wenn also der Verdacht besteht,  daβ LED nicht alle Mails  an-
  254.            zeigt, sollte man Ecu einmal aufrufen bevor in die verdächtige
  255.            Area neue Mails geschrieben werden.
  256.  
  257.  
  258.  
  259.         Aus einer exportierten  Mail werden zuerst  alle Kontrollinforma-
  260.         tionen am Anfang und Ende der Mail entfernt. Diese  Informationen
  261.         werden neu erzeugt.
  262.  
  263.         Vor dem  Text der  Nachricht werden  die folgenden  Informationen
  264.         eingefügt:
  265.         -  Wenn der  Empfänger ein  Point mit  4d-Adresse ist,  wird eine
  266.            TOPT-Zeile erzeugt (nur Netmail).
  267.         -  Wenn  der  Absender  ein  Point  mit 4d-Adresse ist, wird eine
  268.            FMPT-Zeile erzeugt (nur Netmail).
  269.         -  Wenn die  Zone des  Empfängers nicht  mit der  Zone des  Hosts
  270.            übereinstimmt, wird eine INTL-Zeile erzeugt (nur Netmail).
  271.         -  Bei einer Echo-Mail wird die AREA-Zeile erzeugt.
  272.         -  Die Message-Id wird erzeugt.
  273.  
  274.  
  275.         Im Anschluβ an die eigentlich Nachricht folgen in einer  Echomail
  276.         noch
  277.         -  die Tearline
  278.         -  das Origin
  279.         -  das SEEN-BY
  280.         -  der Path (nur mit 3dPath in der Konfigurationsdatei)
  281.  
  282.         In der Meldung selbst kann ECU weiche Zeilenenden erzeugen. Dabei
  283.         nimmt ECU an, daβ ein weiches Zeilenende vorliegt, wenn unmittel-
  284.         bar vor dem Zeilenende ein Leerzeichen oder ein Divis steht.  Die
  285.         Übersetzung kann für jede Area eingestellt werden. Auch innerhalb
  286.         einer Mail kann die Übersetzung ein- und ausgeschaltet werden.
  287.  
  288.         Wenn eine Zeile ein >-Zeichen  enthält, wird vor und nach  dieser
  289.         Zeile immer ein hartes Zeilenende  erzeugt. Ecu nimmt an, daβ  es
  290.         sich bei solchen Zeilen um Quotes handelt, und die sollten besser
  291.         nicht verändert werden,  da das erfahrungsgemäβ  meistens unschön
  292.         aussieht.
  293.  
  294.         Wenn eine Zeile in der Mail mit einem Punkt beginnt3, wird  diese
  295.         Zeile nicht ausgegeben, sondern als Befehl an ECU  interpretiert.
  296.         Zur Zeit sind die folgenden Kommandos implementiert:
  297.  
  298.         .h hard returns
  299.            Ab sofort werden keine weichen Zeilenenden mehr erzeugt.
  300.  
  301.         .i include
  302.            Der Rest der Zeile  wird als Dateiname interpretiert.  Der In-
  303.            halt dieser Datei wird an Stelle dieser Zeile in die Mail ein-
  304.            gefügt. Die eingefügte Datei ist in LED nicht sichtbar.
  305.  
  306.         .p Signatur unterdrücken
  307.            Wenn für die Area, in der die Mail steht, eine Signatur  defi-
  308.            niert ist, wird  diese in dieser  Mail nicht erzeugt.  .p kann
  309.            irgendwo vor der Tearline stehen.
  310.  
  311.         .s soft returns
  312.            Ab sofort dürfen weiche Zeilenenden erzeugt werden.
  313.  
  314.         .t tearline
  315.            An Stelle dieser Zeile wird eine Tearline eingefügt. Notwendig
  316.            wurde dieser Befehl, da einige AreaFix's eine Tearline  erwar-
  317.            tet, ECU sie aber entfernt  und in einer Netmail nicht  wieder
  318.            einfügt.
  319.  
  320.  
  321.         Netmail-Routing
  322.  
  323.         Echoareas werden in  der Regel nur  über einen Host  geroutet. Da
  324.         war die Entscheidung also leicht, jeder Area einen Host  zuzuord-
  325.         nen. Bei Netmails  sieht es allerdings  etwas anders aus.  Es muβ
  326.         die Möglichkeit  bestehen, jedem  Host eine  Netmail zu schicken.
  327.         Der erste Versuch dieses Problem zu lösen bestand in einer  eige-
  328.         nen Netmail-Area für jeden Host. Grundsätzlich funktioniert dies,
  329.         es traten aber auch  einige Probleme damit auf.  Eine Alternative
  330.         dazu ist eine Netmail-Area, in der man angeben kann, über welchen
  331.         Host die Mail laufen soll. Mittlerweilen beherrscht ECU beide Va-
  332.         rianten. Probleme sind dabei  noch nicht aufgetreten, dafür  sind
  333.         aber einige überraschende Features entstanden.
  334.  
  335.         Eine eigene Netmail-Area für jeden  Host hat den Vorteil, daβ  es
  336.         einfach zu programmieren ist, und daβ der Anwender auch recht gut
  337.         die Übersicht behält, was  über welchen Host läuft.  ein Nachteil
  338.         ist allerdings, daβ LED nur eine Netmail-Area unterstützt. In al-
  339.         len anderen Areas ist  der Anwender selbst dafür  verantwortlich,
  340.         daβ die richtige  Adresse in den  Header gelangt. ECU  erlaubt es
  341.         daher in der FROM- bzw. TO-Zeile auβer dem Namen noch die Adresse
  342.         anzugeben. Die Adresse  steht hinter dem  Namen und wird  durch @
  343.         vom Namen getrennt4. Diese Adresse  ersetzt die von LED bzw.  ECU
  344.         eingetragene Adresse. Als Adresse kann auch ein in der Konfigura-
  345.         tionsdatei definiertes Alias verwendet werden. Bei Netmails setzt
  346.         ECU die Adresse des Absenders als Zieladresse ein. Wenn dann eine
  347.         falsche (oder  keine) Adresse  in der  TO-Zeile steht,  kommt die
  348.         Mail an  den Absender  zurück. Er  weiβ dann  wenigstens, daβ sie
  349.         nicht angekommen ist.
  350.  
  351.         Es hat aber auch Vorteile nur eine Netmail-Area für alle Hosts zu
  352.         verwenden.  Man  kann  dann  von einigen nützlichen Eigenschaften
  353.         LEDs gebrauch machen, und man  kann so ziemlich sicher sein,  daβ
  354.         alle Mails irgendwann ankommen. Ein Nachteil ist, daβ man bei ei-
  355.         ner Mail angeben muβ, über welchen Host sie laufen muβ. Wenn  man
  356.         dies versäumt, kommt die  Mail allerdings auch irgendwann  einmal
  357.         an - es sei  denn, es handelt sich  um eine Mail an  AreaFix. Bei
  358.         dieser Methode  sollte man  die Netmail-Area  dem Host  zuordnen,
  359.         über den die meisten Netmails  laufen. Durch einen Zusatz in  der
  360.         Subject-Zeile kann eine Netmail aber zu jedem Host geleitet  wer-
  361.         den. Dazu genügt es die Host-Adresse (oder ein Alias) in  eckigen
  362.         Klammern an den Anfang des Subject-Zeile zu schreiben.
  363.  
  364.         Zur Auswahl des günstigsten Hosts verwendet Ecu das folgende ver-
  365.         fahren:
  366.  
  367.         -  Wenn das  Crash-Flag im  Message-Header gesetzt  ist, wird die
  368.            Mail direkt an den Empfänger geschickt. Ist der Empfänger  ein
  369.            Point, so wird die Mail an seinen Bossnode geschickt. Dazu muβ
  370.            die 4d-Adresse des Points angegeben werden. Wenn eine Fakenet-
  371.            Adresse angegeben  wurde, muβ  diese Adresse  in der  Nodelist
  372.            stehen,  da  BinkleyTerm  das  Paket  nicht  verschicken kann.
  373.            Crashmail ist nur in der eigenen Zone möglich.
  374.         -  Wenn die  Subject-Zeile einer  Netmail einen  Host in  eckigen
  375.            Klammern enthält, wird die  Netmail an diesen Host  geschickt.
  376.            Der Host muβ in ECU.CFG definiert sein. Sonst wird die Mail an
  377.            den Host geschickt, der die dem hier angegebenen Host ähnlich-
  378.            ste Adresse hat (also im gleichen Netz oder wenigstens in  der
  379.            gleichen Zone liegt).
  380.         -  Wenn die Netmail an einen in der Konfigurationsdatei angegebe-
  381.            nen Host  oder an  einen Point  eines solchen  Hosts gerichtet
  382.            ist, wird sie direkt an den Host geschickt.
  383.         -  Wenn ein Host im gleichen Netz wie der Empfänger bekannt  ist,
  384.            wird die Mail an diesen Host geschickt.
  385.         -  Wenn keine  der zuvor  angegebenen Methoden  zum Erfolg führt,
  386.            wird die Mail an den Default-Host der Area geschickt.
  387.  
  388.  
  389.         Tick-Files
  390.  
  391.         Tick-Files  sollen  das  Versenden  von Dateien erleichtern. Dazu
  392.         wird auβer  der eigentlichen  Datei noch  eine zusätzliche  Datei
  393.         übertragen, die Informationen  über die Primärdatei  enthält, und
  394.         die vom empfangenden Rechner automatisch ausgewertet werden kann.
  395.         So ist es dann möglich, daβ eine Datei automatisch in die Fileba-
  396.         se des Empfängers aufgenommen  wird, und allen Usern  des Systems
  397.         zur Verfügung steht,  ohne daβ der  Sysop eingreifen muβ,  wie es
  398.         bei einem normalen File-Attach notwendig ist.
  399.  
  400.         Auf dem  ST gibt  es meines  Wissens zur  Zeit ein  Programm, das
  401.         Tick-Files  unterstützt,  nämlich  Stick&Hatch  von Joop Koopman.
  402.         Dieses Programm funktioniert zwar ganz ordentlich (wenn man  ein-
  403.         mal davon absieht, daβ Binkley die erzeugten Files nicht  sieht),
  404.         aber irgendwie war es mir immer etwas unklar, was da so alles ab-
  405.         geht, und warum gerade das, was ich wollte, nämlich Fileareas mit
  406.         unterschiedlichen Hosts austauschen, zwar so tut als ob es  funk-
  407.         tioniert, ich es aber irgendwie doch nicht zum Laufen kriege.5
  408.  
  409.         Als ich anfing mir  zu überlegen, wie man  mit LED und ECU  Tick-
  410.         Files verschicken könnte, vielen mir recht schnell zwei Varianten
  411.         ein. Beide  haben ihre  Stärken und  Schwächen, so  daβ ich  mich
  412.         schlieβlich entschloβ beide zu implementieren.
  413.  
  414.  
  415.  
  416.         Das Echomail-Konzept
  417.  
  418.         In  dieser  Variante  setzt  ECU  für  jede  Filearea eine eigene
  419.         Echomail-Area voraus. Das hat den Vorteil, daβ alle Informationen
  420.         über die Area im Konfigurationsfile einmal definiert werden  kön-
  421.         nen, und das sich der  Benutzer um die Details kaum  noch kümmern
  422.         muβ.  Wenn  man  aber  nur  in  Ausnahmefällen Files in eine Area
  423.         schicken will,  dann ist  es natürlich  schon etwas  umständlich,
  424.         wenn man diese Area erst einrichten muβ. Für diese Fälle ist  das
  425.         Netmail-Konzept etwas besser geeignet, aber noch geht es hier  um
  426.         das Echomail-Konzept.
  427.  
  428.         Eine Tick-Area wird  wie eine Echo-Area  definiert. In der  Area-
  429.         Beschreibung wird lediglich angegeben, daβ es sich um eine  Tick-
  430.         Area handelt (s. Tickarea) und welches Passwort verwendet  werden
  431.         soll (s. Password). In AREAS.BBS muβ die Area natürlich auch  de-
  432.         finiert werden, sonst wird sie von LED nicht erkannt.
  433.  
  434.         Wenn nun  ein File  in diese  Filearea geschickt  werden soll, so
  435.         schreibt  man  in  der  Area  einfach  eine Mail an den Sysop des
  436.         Hosts, an den man diese  Area sendet. Als Subject wird  der voll-
  437.         ständige Dateiname, also ruhig mit Laufwerk und Pfad,  angegeben.
  438.         Die Mail selbst muβ eine Zeile enthalten, die mit dem Tick-Prefix
  439.         und dem Schlüsselwort Desc beginnt. Der Rest dieser Zeile  sollte
  440.         die Datei kurz beschreiben. Alle Zeilen, die nicht mit dem  Tick-
  441.         Prefix beginnen, werden als Netmail  an den Host dieser Area  ge-
  442.         schickt. (Daher sollte möglichst der Sysop als Empfänger  angege-
  443.         ben werden.)
  444.  
  445.  
  446.  
  447.         Das Netmail-Konzept
  448.  
  449.         In der zweiten  Variante gibt es  keine Areas, die  wie Echoareas
  450.         aussehen, in Wirklichkeit  aber Netmails erzeugen.  Vielmehr wird
  451.         hierbei die  Mail an  den Empfänger  tatsächlich als  Netmail mit
  452.         File-Attach geschrieben. Im Unterschied zum normalen  File-Attach
  453.         wird  vor  dem  Dateinamen  ein  spezielles  Zeichen,  der  Tick-
  454.         Indicator,  angegeben.  ECU  erzeugt  dann,  wie  beim  Echomail-
  455.         Konzept, zum Primärfile ein  Tick-File. Allerdings fehlen ECU  in
  456.         diesem Fall ein paar Informationen, die in der Netmail  angegeben
  457.         werden müssen.
  458.  
  459.         Die Netmail muβ, auβer der Desc-Zeile, auch noch die Area enthal-
  460.         ten. Diese  Zeile beginnt  mit dem  Tick-Präfix, gefolgt  von dem
  461.         Schlüsselwort Area und  einem Wortzwischenraum oder  Doppelpunkt.
  462.         Danach folgt der  Name der Filearea,  wie sie beim  Empfänger be-
  463.         kannt ist.
  464.  
  465.         Beim  Versenden  eines  Files  geht  man ähnlich wie im Echomail-
  466.         Konzept vor. Man  muβ nur zusätzlich  die Area und  den Empfänger
  467.         angeben. Vorsicht ist  geboten, wenn ein  File nicht direkt  ver-
  468.         schickt wird, sondern aus  versehen mit der normalen  Netmail ge-
  469.         routet wird. Die beteiligten Sysops finden es bestimmt nicht  lu-
  470.         stig. Daher sollten solche  Mails immer als Crashmail  verschickt
  471.         werden.
  472.  
  473.  
  474.  
  475.         AREAS.BBS
  476.  
  477.         Die Datei AREAS.BBS wird benötigt, um die Reihenfolge der  Areas,
  478.         in der sie in LASTREAD.CED stehen, zu bestimmen. Ab Version  1.01
  479.         kann ECU auch die übrigen Angaben dieser Datei auswerten. Das ge-
  480.         naue Format dieser Datei scheint nirgendwo dokumentiert zu  sein.
  481.         Daher soll  hier eine  kurze Beschreibung  folgen, welches Format
  482.         Ecu von dieser Datei erwartet.
  483.  
  484.         -  Leerzeilen und Zeilen, die mit einem Semikolon beginnen werden
  485.            ignoriert. Vor dem Semikolon darf jedoch kein anderes Zeichen,
  486.            auch kein Leerzeichen, stehen.
  487.  
  488.         -  Am Dateianfang werden alle  Zeilen, die nicht mit  einem Divis
  489.            (-) beginnen, ignoriert. Normalerweise sind dies der Systemna-
  490.            me und  der Default-Origin.  Die erste  dieser Zeilen  ist das
  491.            Default-Origin.  ECU  benutzt  dieses  Origin bis eine -ORIGIN
  492.            Zeile auftritt. Wenn in ECU.CFG schon Origins definiert waren,
  493.            so werden sie durch das Default-Origin ersetzt.
  494.  
  495.         -  Zeilen, die mit einem  Divis beginnen werden ignoriert.  Diese
  496.            Zeilen enthalten in der  Regel den Bossnode, Origins  oder die
  497.            Anzahl der Tage,  die eine Nachricht  im System bleiben  soll.
  498.            Ecu erhält dies Informationen aus ECU.CFG, kann aber auch  die
  499.            Informationen aus AREAS.BBS  verwenden. In diesem  Fall werden
  500.            -DAYS und  -ORIGIN ausgewertet.  Die Angaben  gelten für  alle
  501.            folgenden Areas.
  502.  
  503.         -  In allen  anderen Zeilen  erwartet Ecu  mindestens drei  durch
  504.            Leerzeichen und/oder Tabs  getrennte Bestandteile -  den Namen
  505.            der Areadatei, den  offiziellen Namen und  den Host für  diese
  506.            Area.
  507.  
  508.         Ab Ecu 1.08 bzw. Llegada 1.03 werden mehr Informationen aus  ARE-
  509.         AS.BBS übernommen. Die Anzahl  der Ausnahmen in ECU.CFG  wird da-
  510.         durch verringert. Im Einzelnen werden jetzt die folgenden  Anwei-
  511.         sungen erkannt.
  512.  
  513.         -ORIGIN text
  514.            Der angegebene Text  wird als Origin  an alle Mails  in dieser
  515.            Area angehängt. Wenn als  Text das Schlüsselwort -RANDOM  auf-
  516.            tritt, wird ein zufälliger Text aus der Origin-Datei  gewählt.
  517.            (s. Globale Anweisungen, Origin).
  518.  
  519.         -DAYS n m
  520.            Empfangene Mails, die älter  als n Tage sind  werden gelöscht.
  521.            Lokale Mails werden nach  m Tagen gelöscht. m  kann entfallen.
  522.            In diesem Fall wird die Zeit aus ECU.CFG übernommen.
  523.  
  524.         -CRUNCH high low crunch
  525.            Die Höchst- und  Mindestzahl von Mails  in der folgenden  Area
  526.            wird definiert.  high gibt  an wieviele  Mails maximal  in der
  527.            Area bleiben dürfen,  low bestimmt die  Anzahl von Mails,  die
  528.            immer in der Area  bleiben. Mit crunch kann  angegeben werden,
  529.            wieviele Änderungen (gelöschte oder exportierte Mails)  erfor-
  530.            derlich sind, um Ecu zum Packen der Area zu bewegen. Diese An-
  531.            weisungen  entspricht  den  Befehlen  HighLimit,  LowLimit und
  532.            Crunch in ECU.CFG.
  533.  
  534.         -PASSWD pw
  535.            Ein Passwrt für  die Area wird  definiert. Dise Anweisung  ist
  536.            nur für Tick-Area von Bedeutung.
  537.  
  538.         -SIGNATURE filename
  539.            Der Inhalt der angegebenen Datei  wird an das Ende jeder  Mail
  540.            in der folgenden Area geschrieben. Dies entspricht der  Signa-
  541.            ture-Anweisung in AREAS.BBS.
  542.  
  543.         -FLAGS flags...
  544.            Für flags  können KillLocal,  KillHold, NoOutput  und TickArea
  545.            angegeben werden. Die Flags entsprechen den entsprechenden An-
  546.            weisungen in ECU.CFG. Wie in ECU.CFG kann den Flags auch  hier
  547.            ein  Ausrufezeichen  vorangestellt  werden.  Das entsprechende
  548.            Flag wird dann gelöscht, und nicht aktiviert. Zwischen  Ausru-
  549.            fezeichen und Flag dürfen keine anderen Zeichen stehen. Mehre-
  550.            re Flags können  auf einmal definiert  werden. Sie müssen  mit
  551.            Leerzeichen oder Tabs voneinander getrennt werden.
  552.  
  553.  
  554.         Anhang A - Beispiel-Mails
  555.  
  556.         FROM: Bustopher Jones@4:71/1
  557.         TO:   Mr. Mistoffelees@5:18/0
  558.         SUBJ: [1:234/56]Test
  559.         -----------------------------------------------------------------
  560.         Diese Mail geht an M.M. mit Adresse 5:18/0. Sie wird über den
  561.         Host 1:234/56 geroutet. Sie wird aber nicht mit B.J.s Adresse bei
  562.         1:234/56 gesendet, sondern mit 4:71/1. Wozu auch immer das gut
  563.         sein mag.
  564.         .t
  565.         Die vorherige Zeile erzeugt eine Tearline (---) in der Mail. Der
  566.         darauf folgende Text könnte verloren gehen.
  567.  
  568.  
  569.  
  570.         FROM: Bustopher Jones
  571.         TO:   Mr. Mistoffelees
  572.         SUBJ: [HoG]Test
  573.         -----------------------------------------------------------------
  574.         .h
  575.          MM> Quotes sollten immer mit harten Zeilenenden versehen werden,
  576.          MM> da der Empfänger sonst beim Umbrechen noch mehr Unheil an-
  577.          MM> richten könnte als er eh schon tut.
  578.         .s
  579.  
  580.         In der eigentliche Mail können weiche Zeilenenden verwendet wer-
  581.         den. Hier ist es im Allgemeinen egal wo der Empfänger eine neue
  582.         Zeile beginnt. In Tabellen oder Programmfragmenten sollte man na-
  583.         türlich mit harten Zeilenenden arbeiten. '.h' und '.s' erzeugen
  584.         keine Leerzeile. Daher nach '.s' die extra Leerzeile.
  585.  
  586.  
  587.  
  588.  
  589.         Setzt man  die Konfigurationsdatei  aus Anhang  A voraus,  werden
  590.         alle Netmails über  2:249/6 [Spam] geroutet.  Durch [HoG] in  der
  591.         Subject-Zeile wird diese Mail jedoch über 2:247/32 geroutet.  Als
  592.         Absender   wird   auch   die   entsprechende   Fakenet    Adresse
  593.         (2:24000/9323) in den Message-Kopf eingetragen.
  594.  
  595.  
  596.         Anhang B - Return-Codes
  597.  
  598.  
  599.         Dieser Abschnitt ist für diejenigen interessant, die ECU in einer
  600.         Batchdatei verwenden. ECU liefert beim Programmende einen Fehler-
  601.         code, der Aufschluβ über das Vorliegen und evtl. über die Art ei-
  602.         nes Fehlers gibt. Die folgenden Return-Codes können derzeit  auf-
  603.         treten:
  604.  
  605.         0  kein Fehler
  606.            ECU hat keine Fehler erkannt und ist bis zum Ende  durchgelau-
  607.            fen.
  608.  
  609.         1  Fehler beim Laden des Resource-Files
  610.            Dieser Fehler  sollte eigentlich  nicht auftreten,  da das Re-
  611.            source-File ein Teil des Programms ist.
  612.  
  613.         2  ECU wurde mit /? aufgerufen
  614.            Es liegt zwar kein Fehler vor, aber trotzdem hat ECU seine Ar-
  615.            beit nicht getan, nämlich die Areas nach zu sendenden Mails zu
  616.            durchsuchen.
  617.  
  618.         3  Abbruch durch Benutzer
  619.            Nach ein Fehler, nach dem ECU noch hätte weiter arbeiten  kön-
  620.            nen, hat der Anwender das Programm mit `Abbruch' verlassen,
  621.  
  622.         4  Konfigurationsdatei nicht gefunden
  623.            ECU  hat  die  angegebene  Konfigurationsdatei  (oder ECU.CFG)
  624.            nicht gefunden.
  625.  
  626.         5  Zu wenig Speicher
  627.            ECU hat nicht genug Speicher um alle Area- und  Host-Beschrei-
  628.            bungen oder eine Mail zu laden. Dieser Fehler ist eher unwahr-
  629.            scheinlich und deutet  auf ein internes  Problem in der  Spei-
  630.            cherverwaltung hin. Wenn es nach einem Reset funktioniert, war
  631.            es wohl tatsächlich ein Fehler in der Speicherverwaltung. Wenn
  632.            auch Reset nichts hilft, dann liegt es wohl doch an einer sehr
  633.            langen Mail.
  634.  
  635.         6  Fehler in Konfigurationsdatei
  636.            Das kann  fast alles  bedeuten. Vielleicht  wurden 3d-Adressen
  637.            gewählt, aber keine Fakenet-Adresse angegeben. Die  Fehlermel-
  638.            dung im Logfile sollte mehr aussagen.
  639.  
  640.         7  Systemfehler
  641.            Ein  Fehler  bei  einer  Systemfunktion ist aufgetreten. Viel-
  642.            leicht hat ECU eine Datei nicht gefunden, oder die Platte  ist
  643.            voll, oder was auch immer. Auch hier sollte das Logfile  nähe-
  644.            res sagen.
  645.  
  646.  
  647.         Anhang C - Änderungen
  648.  
  649.         1.00 ---> 1.01
  650.  
  651.         -  Einführung der Default-Area (s. Default),
  652.         -  Übernahme der Daten aus AREAS.BBS (s. UseAreas),
  653.         -  wählbares Trennzeichen zwischen  Name und Adresse  (s. Addres-
  654.            sPrefix)
  655.  
  656.  
  657.  
  658.         1.01 ---> 1.02
  659.  
  660.         -  Programmkennzeichen vor Anweisungen (s. E:),
  661.         -  Löschen von Schaltern (s. !),
  662.         -  Statistik in Logfile,
  663.         -  Fehler beim Suchen eines passenden Hosts behoben,
  664.         -  Fehler beim Löschen alter Cludges behoben,
  665.         -  Verhindern von Netmails an einzelne Hosts (s. NoNetmail),
  666.         -  optionales Routing von Echomails (s. RouteEchos)
  667.  
  668.  
  669.  
  670.         1.02 ---> 1.03
  671.  
  672.         -  Strategie zum Suchen eines passenden Hosts leicht verändert,
  673.         -  Korrektur des Flow-File-Eintrags, wenn als  Outbound-Directory
  674.            ein absoluter Pfad oder ein Laufwerk angegeben wird,
  675.         -  Dupe-Checker etwas schneller
  676.         -  Fehler bei zu langen Verweilzeiten korrigiert
  677.         -  andere Prioritäten bei der Übernahme von Daten aus AREAS.BBS
  678.         -  kein Leerzeichen mehr in AREA-Line
  679.         -  das neue Format für Last-Read-Pointer von LED 1.00 wird unter-
  680.            stützt (s. LedNew)
  681.         -  für ArcMail Pakete werden andere Dateinamen verwendet, die Na-
  682.            men können auch vom Anwender bestimmt werden. (s. ArcmailName)
  683.         -  3dAddress wird  nur noch  für die  Paket-Header verwendet. Für
  684.            Message-Header wurden 3dNetmail und 3dEchomail eingeführt.
  685.  
  686.  
  687.  
  688.         1.03 ---> 1.04
  689.  
  690.         -  ECU und LLEGADA greifen auf gemeinsame Routinen und Daten zu.
  691.         -  Tick-Files können erzeugt werden.
  692.         -  Crunch kann abgeschaltet werden.
  693.         -  Es ist  einstellbar, wieviele  Mails mindestens  in einer Area
  694.            bleiben sollen.
  695.  
  696.  
  697.  
  698.         1.04 ---> 1.05
  699.  
  700.         -  QuickScan Modus, in dem nur die Areas untersucht werden, deren
  701.            Header- oder Message-Files geändert wurden.
  702.         -  Meldungen statt in Log-File in eine wählbare Message-Area
  703.  
  704.  
  705.  
  706.         1.05 ---> 1.06
  707.  
  708.         -  Flow-Files für The-Box können erzeugt werden. (s. CreateTB)
  709.         -  Mails  können  direkt   in  andere  Zonen   geschickt  werden.
  710.            (UseZones, DefaultZone)
  711.         -  Crashmail wird immer mit 4d-Adressen verschickt.
  712.         -  Als Default für Crunch wird  1 angenommen, statt bisher 0.  So
  713.            wird nicht auch dann  die Messagebase komprimiert, wenn  keine
  714.            gelöschten Mails  vorhanden sind,  und kein  Minimum angegeben
  715.            wurde.
  716.         -  3dMsgId funktioniert jetzt.
  717.         -  Crashmail  funktioniert  jetzt   auch,  wenn  beim   Outbound-
  718.            Directory ein vollständiger Pfad angegeben wurde.
  719.         -  Es kann eine maximale Anzahl von Mails in einer Area angegeben
  720.            werden (s. HighLimit)
  721.  
  722.  
  723.  
  724.         1.06 ---> 1.07
  725.  
  726.         -  Die Generierung der INTL-Zeile kann erzwungen werden (s.  For-
  727.            ceIntl)
  728.         -  ECU kann beim Start durch Drücken der Alternate-Taste angehal-
  729.            ten werden
  730.         -  Ein potentieller Fehler beim Exportieren der Mails wurde  beh-
  731.            oben.
  732.         -  Entgegen der Behauptung beim  Update auf 1.06 wurde  Crashmail
  733.            doch nicht 4d verschickt. Jetzt wird in den Message-Header die
  734.            korrekte 4d-Adresse eingetragen. Die Adresse im Paket  richtet
  735.            sich nach den Angaben für den Default-Host.
  736.         -  ECU kann in jeder Mail den Text für die Origin-Zeile  zufällig
  737.            aus einer Textdatei wählen (s. RandomOrigin, und Origin)
  738.         -  Für jeden Host  kann ein Komprimierungsprogramm  angegeben (s.
  739.            ArcPack)
  740.  
  741.  
  742.  
  743.         1.07 ---> 1.08
  744.  
  745.         -  Wenn in einer Area das NoOutput-Flag gesetzt ist, braucht  für
  746.            diese Area kein Host angegeben werden.
  747.         -  Zeilen, die mit einem TickIndicator beginnen, werden nur  noch
  748.            in Tick-Mails gelöscht. In normalen Mails bleiben sie - wie es
  749.            eigentlich sein sollte - erhalten.
  750.         -  Weiche Zeilenenden werden nicht mehr erzeugt. Led fügt am Ende
  751.            einer Bildschirmzeile kein  Zeilenende mehr ein.  Also braucht
  752.            Ecu daraus  auch keine  weichen Zeilenenden  zu machen.  Falls
  753.            noch jemand mit Led 0.10 arbeitete, dann wäre jetzt vielleicht
  754.            der Augenblick gekommen, auf eine neue Version umzusteigen.
  755.         -  In Mails kann eine Signatur eingefügt werden (s. Signature)
  756.         -  Include-Dateien können in Mails eingefügt werden.
  757.         -  Das Received-Flag wird beim Exportieren nicht gelöscht.
  758.         -  Die Zonennummer in  TB-Flow-Files wird -  wie bei Crashmail  -
  759.            als Extension an den Namen des Outbound-Directories angehängt.
  760.         -  Wenn  zu  einem  TB-Flow-File  das  passende Binkley-Flow-File
  761.            nicht angelegt  oder geöffnet  werden kann,  wird das TB-Flow-
  762.            File nicht mehr gelöscht.
  763.         -  Bei ArcPack können die  Paket- und Bundle-Name angegeben  wer-
  764.            den.
  765.         -  Beim Exportieren wird  die Absenderadresse nur  noch geändert,
  766.            wenn es eine bekannte Pointadresse  ist, die als 3d- oder  4d-
  767.            Adresse in einer Host-Definition angegeben wurde.
  768.         -  Dummy-Flowfiles können für jeden Host einzeln erzeugt werden.
  769.         -  Crashmail kann komprimiert werden (s. PackCrashmail)
  770.         -  Für jeden Host kann angegeben werden, wie genau seine  Adresse
  771.            mit einer Netmail-Adresse  übereinstimmen muβ, damit  die Net-
  772.            mail über diesen Host geroutet wird. (s. MatchMin)
  773.         -  In AREAS.BBS kann als  Origin der Text -RANDOM  angegeben wer-
  774.            den.  Ecu  trägt  dann  einen  zufällig gewählten Text aus der
  775.            Origin-Datei in Mails in die so gekennzeichneten Areas ein.
  776.         -  Zusätzliche (bzw. geänderte) Optionen in AREAS.BBS: -DAYS (er-
  777.            weitert), -CRUNCH, -PASSWD, -SIGNATURE, -FLAGS.
  778.         -  Hexadezimale Extension des Outbound-Directories für andere Zo-
  779.            nen.
  780.         -  Domain-Directories  werden  unterstützt.  In  der  Msgid wird,
  781.            falls vorhanden, die Domain angegeben.
  782.  
  783.