Neuerungen seit der Version BayCom-Mailbox V1.00: ------------------------------------------------- ab 1.01 (10.11.92): - eingebauter Editor strzt ab, wenn mehr als 40kb geladen werden. Jetzt ist eine harte Grenze bei 40k eingebaut. - Wenn ein User A L 1 eingibt, dann gibt es fr ihn keine Chance mehr, das zu korrigieren. Nun ist unterer Anschlag von 4 eingebaut, bzw. 0 kann auch eingegeben werden. - Ein Send-Befehl S DL8MBT@DB0AAB war nicht m”glich, ohne ein Blank dazwischen. Ist nun auch m”glich ab 1.02 (15.11.92): - Prinzipieller Fehler bei CHECK: Bei mehr als 256 verschiedenen Boards wurde die Hash-Tabelle nicht mehr ordentlich bearbeitet und damit zeigten die Nachrichtennummern Unsinn an. Orgien von Fehlermeldungen waren die Folge. Ist nun behoben. - Beim E und M Forwarden werden die Infos nicht mehr zum Absender zurckgeschickt. Auáerdem sind bessere Plausibilit„tskontrollen hinzugekommen, ob die Nachrichten korrekt sind. - Das NEW-Kommando hat gelegentlich eine unsinnige Forwardliste erzeugt, wenn sich viel ge„ndert hat, insbes. bei Hinzufgen oder l”schen einer Box. - Beim BIDLIST-Kommando fand kein Taskwechsel statt -> stillstand fr die anderen. - Bei FWDSSID 0 waren ein paar falsche Bits gesetzt, was zu DAMA-artigen Aussendungen gefhrt hat. - Im Halbstundentakt und beim Starten der Box werden nun nicht mehr alle Forwardpartner auf einmal connected, sondern im Abstand von 30sec, um die Massen von Verbindungsaufbauten etwas zu entzerren. - Bei DIR PATH kann nun ein Boxrufzeichen oder ein Fragment davon angegeben werden. (z.B. D P DB0AAB) - An DieBox-Systeme werden keine hierarchischen Forwardadressen mehr weitergegeben. Bisher wurde ab Diebox 1.9 die korrekte Adresse geliefert, diese scheint sie aber nicht zu vertragen. - AKTUELL-Befehl: War kein Text gespeichert, so kam ein unsinniges Datum. Ist nun abgefangen. - Bei E -F wurde auch 'Nachricht geloescht' gesagt wenn der Befehl abgebrochen wurde. Ist nun behoben. - Bei Cursor-Up an der Konsole konnte es vorkommen, daá ein zu kleiner Eingabepuffer durch die History berschrieben wurde. Kann nun nicht mehr vorkommen. ab 1.03 (16.11.92): - Neue Funktion STATUS zum Abrufen diverser Statistik. Bis jetzt nur STATUS FORWARD implementiert (kurz st f), es wird angezeigt zu welchen Nachbarboxen wieviele Nachrichten zum Senden vorliegen bzw. in dieser Session bereits geforwardet wurden. - Unangenehmer Bug im Befehl SETLIFETIME, bei Bulletins konnte nach der Anwendung des Kommandos die Check-Liste zerschrieben werden Ist nun behoben. - Bei Programmabbruch durch eine schwere Fehlermeldung 'abort' wird nun die Meldung auch auf den Bildschirm geschrieben, nicht nur ins File SYSLOG.BCM. - Bei REORG konnte es vorkommen, daá Verwaltungsfiles gel”scht wurden, die gerade im Zugriff waren. Dies fhrte zu Fehlermeldungen und den Verlust von Filehandles. Nun wird vor dem L”schen jedes Files die Semaphoren- tabelle durchsucht. ab 1.04 (25.11.92): - Vergr”áerung des Puffers fr E/M-šbertragung - Fehler bei List/dir l ibm < test hat nicht korrekt funktioniert (das Blank hinter dem Boardnamen wurde nicht entfernt) Ist nun behoben. - Vor Beenden des Forwarding nochmal schaun ob Usernachrichten da sind. - Der NEW-Befehl indiziert nun auch das Helpfile neu, dadurch kann Help auch im Betrieb ge„ndert werden. - Neue Help-M”glichkeit HELP ALL listet das gesamte Helpfile. Auáerdem wird zu jedem Helptext eine šberschrift angezeigt. - Bei jeder in die Box eingespeicherten Nachricht wird nun automatisch das MYBBS des Absenders abgespeichert. Dies allerdings nur, wenn dieser nicht bereits selbst ein MYBBS eingegeben hat. - Als Dateiende wird nun auch ***END akzeptiert. Dies war eigentlich bisher schon eingebaut aber durch einen Bug nicht wirksam. - Bei MKBOARD wird nun abgefragt, ob das Board schon existiert, wenn ja gibt es eine Fehlermeldung. Auáerdem wurde die Syntax vereinheitlicht, mkboard software/baycom ist nun auch m”glich. - Das PS-Kommando zeigt nun auch an, wie lange ein Prozess schon existiert und wie lange keine Eingabe mehr erfolgt ist. - Ekelhafter Bug: Wenn ein E-File ankam, das ein BID l”schen soll, welches selbst wiederum fr ein E-File vergeben worden ist , dann hat das zum Totalabsturz gefhrt. Wo solche Files herkommen ist nicht so recht zu erkl„ren, da sie unsinnig sind, aber sie kamen so alle paar Tage mal. ab 1.04a (26.11.92): - Wenn beim Reorg kaputte Files als solche erkannt werden, werden sie in das Verzeichnis MIST geschoben. Das funktionierte nur, wenn die Daten alle auf einem logischen Laufwerk gelegen haben (rename-Funktion). Nun werden die Daten auch von einem anderen Laufwerk korrekt umkopiert. - Beim Purge wird nun auch die Zahl der gel”schten Mails ins Syslog geschrieben. Format: mbpurge: 10 era, 20 lt, 234 all Bedeutung: era: Files die mit Erase oder nach Forward gel”scht wurden lt: Files bei denen die Lifetime abgelaufen ist all: Anzahl der untersuchten Files in der Box - Forwarding geht nun in beiden Richtungen (senden und empfangen) gleich- zeitig. Dabei wird bei jeder neuen Verbindung und jedem Richtungswechsel geprft, ob fr den entsprechenden Forwardpartner schon eine Verbindung in DIESER Richtung besteht. - Beim Bin„rfile senden (nur Sysop) kommt jetzt nur noch #BIN## um auch mit SUPERKISS kompatibel zu sein. ab 1.05 (28.11.92): - Beim Abscannen der Optionen war ein Fehler, Konstrukte wie c -tiz waren nicht m”glich sondern nur c -t -i -z Ist nun behoben. - vor jedem l”schen oder rename auf ein File wird mittels chmod-Kommando das Read-Only-Bit zurckgesetzt. Gelegentlich war das pl”tzlich gesetzt, niemand weiá warum, aber zumindest lassen sich durch diese symptomatische Maánahme die Folgefehler verhindern. - Bei ST F wird nun auch angezeigt, ob die Box beim letzten Connect erreichbar war oder nicht (Spalte 'Ok') - Bei der Angabe USERLIFE in INIT.BCM wird eine versehentlich eingegebene 0 (Lifetime 0 Tage!!!) zu dem Maximalwert 999 umgewandelt. ab 1.06 (29.11.92): - Peinlicher Tippfehler: 'letzer login' statt 'letzter login' Hat erstaunlich lang keiner gemerkt bzw. sich nicht beschwert. - Beim KOPF-Kommando wurde kein fclose gemacht, also blieben files offen. Gut daá dieses Kommando kaum jemand kennt... ab 1.07 (30.11.92): - Hinweise zum Betrieb von Node und Mailbox auf einem Rechner: In der Doku SYSOP.TXT ist nun diesem Thema ein neues Kapitel 2.5. entstanden. - Option H bei LIST/DIR verhindert die Ausgabe der šberschriftszeilen vor einem Inhaltsverzeichnis. - Bei einem Ausstieg ins DOS oder bei einem Start der Mailbox aus dem falschen Directory wird nun automatisch in das Directory gewechselt, aus dem BCM.EXE entnommen wurde. Dadurch k”nnen Abstrze durch versehentlichen Verzeichniswechsel nicht mehr vorkommen. - Wird an der Console O alleine (ohne Befehl) eingegeben, so wird nun bis zur Eingabe von EXIT ins DOS gewechselt. Achtung: W„hrend dieser Zeit steht die Box still. Nach 15min bootet der Watchdog im L2 den Rechner neu. - Beim Transfer einer Bulletin-Nachricht, die man selbst in die Box geschrieben hat, wurde diese anschlieáend im ganzen Netz gel”scht (weil alte Nachricht ein Erase gemacht wird). Ist nun behoben. ab 1.08 (06.12.92): - Abbruch von laufenden Ausgaben nicht mehr mit CTRL-Z sondern nun mit CR (Return). Langsame Kommandos wie CHECK oder D M k”nnen nun auch ohne Ausgaben mit CR abgebrochen werden. - Im SYSLOG und CMDLOG werden nun evtl auftretende CTRL-Z Zeichen ausgefiltert. Diese konnten bisher ein unerwartetes Fileende bewirken. - Neuer Sysop-Befehl: IMPORT Das benannte File wird dabei interpretiert als wenn es von der Eingabe ber Funk oder Konsole k„me. Jeder Boxbefehl kann damit aus einem File heraus gestartet werden. Insbesondere ist ein impliziter Send-Befehl m”glich. Beispiel: File STAT.IMP s statisti @ db0aab # 30 Log-Statistik Hier steht die Statistik nnnn (File-Ende) - Vor einer Forward-Session werden nun aus den FWD-Hilfsfile alle erledigten Zeilen entfernt. Dadurch wuchern die Files nicht mehr, wenn lange Staus beim Forwarden entstehen. - Bei TRANSFER wird nun MYBBS des Zielrufzeichens auch dann bercksichtigt, wenn in der Nachricht explizit eine andere Forwardadresse angegeben ist. - Neuer INIT-Parameter: DEFLF setzt die Grundeinstellung der Leerzeilen (ALTER LF <..>), wenn ein neuer Benutzer einlogt. Dies hat allerdings keinen Einfluá auf bereits bekannte Benutzer. ab 1.09 (13.12.92): - Format des PS-Befehls (Process Status) ge„ndert. Nun wird auch der zuletzt eingegebene Befehl jedes Users angezeigt. Auáerdem werden nicht mehr immer alle Informationen angezeigt. Default zeigt nur nur die aktiven Mail-Prozesse an. Optionen bei PS -a zeigt auch den Wait-Event und Prozesstyp an -b Zeigt auch Hintergrund-Prozesse an -s zeigt auch die Stackbelegung und Warteschlage Alle Informationen gibt es also mit ps -abs - ST F wurde erweitert um die Zeiten, wie lange der letzte erfolgreiche Forward zurckliegt. Auáerdem zeigt die Spalte "Ok" folgendes an: 0 Partner war beim letzten Versuch nicht erreichbar 1 Partner war erreichbar 2 es wird gerade Forward empfangen 3 es wird gerade eine Verbindung zum Partner aufgebaut 4 es wird gerade Forward gesendet - Serielle Schnittstelle: Die Box kann nun auch ber einen seriellen Port angesprochen werden. Dabei wird ein primitives Terminal (z.B. VT100 oder XTALK) ben”tigt und man erh„lt eine Benutzeroberfl„che wie ber Funk. Zum Login ist allerdings eine Anmeldung mit Rufzeichen und Passwort erforderlich. Das Passwort kann nur von einem Sysop mit SETUSER TTYPW (max. 8 Zeichen) eingegeben werden und ist fr jeden Benutzer einzeln zu vergeben. Ohne VORHER eingetragenes Password kann nicht ber die serielle Schnittstelle eingelogt werden. Dies erm”glicht, daá auch Unbefugte Zutritt zum Terminal haben k”nnen ohne die Datensicherheit der Box zu gef„hrden. Zur Konfiguration ist in INIT.BCM folgende Zeile nachzursten: TTYMODE 1:9600,n,8,1,e ^e=echo ein, l=echo lokal ^Anzahl der Stopbits ^Anzahl der Datenbits ^Parity n=no e=even o=odd ^baudrate 1200-38400 ^com-Schnittstelle com1-com4 (com3=irq5 com4=irq7) Ist ein 16550 (Baustein mit Puffer) eingebaut, so wird dieser erkannt und benutzt. Als Handshake wird stets XON/XOFF verwendet. - im Log werden nun auch gesendete und gelesene Files angezeigt sowie ein Flag mit folgender Bedeutung: S Sysop Q Ausstieg mit Quit F Forward-Verbindung - Die angezeigte L„nge von Files (in Bytes) war nicht korrekt, es fehlte pro Zeile ein Byte (gefunden von DF3VI) - Bei jedem Login wird nun der TNC-Puffer ausgeleert. Es konnte vorkommen, daá noch Mll vom Vorg„nger im Puffer lag - Bei Feststellen des Bildschirmformates wird nun ein Plausibilit„tscheck gemacht. Es gibt offenbar BIOS-Versionen, die Bildschirme mit 0 Zeilen oder 0 Spalten melden. - critical Errors und CTRL-Break werden nun abgefangen (vorher nicht) ab 1.10 (15.12.92): - Der Befehl MVBOARD hat erstens nicht funktioniert (bzw. nicht MEHR funktioniert durch einen Folgefehler einer anderen Žnderung), und war auch gar nicht im Sysop-Manual beschrieben. Beides ist nachgeholt. - Neues beim Logbuch: Es werden nur noch die jeweils neuesten 20 Eintr„ge ausgegeben. Folgende Optionen sind beim LOG-Befehl gltig: -f zeigt AUCH Eintr„ge von Forwardverbindungen (Default aus) -s zeigt NUR Eintr„ge von Sysop-Logins -w geht bei der Suche eine Woche zurck (7 Tage) -m geht bei der Suche ein Monate zurck (30 Tage) -q geht bei der Suche 3 Monate (Quarter) zurck (90 Tage) -y geht bei der Suche ein Jahr zurck (Achtung: m,q und y werden ewig lange dauern!!) -c z„hlt nur die Anzahl der gefundenen Logins im angegebenen Zeitraum -a gibt ALLE gefundenen Eintr„ge aus (nicht nur 20) Eine Kombination der Optionen ist m”glich. Beispiele: log -y dg3rbu sucht die letzten 20 logins von DG3RBU im letzten Jahr log -ws 1.10. sucht Sysop-Logins in der Woche vor dem 1.10. log -cmf gibt die Anzahl aller Logins im letzten Monat aus - bei Transfer von Bulletin nach Usermail BID nicht mitgeben, da die Nachricht sonst bei der Weitergabe nicht angenommen wird. - Mittels TALK (ohne Nachricht dahinter) kann nun mehrfach ein bestimmtes Rufzeichen angesprochen werden. Man kann sich dadurch das dauernde t sparen, wenn ein paar S„tze mehr gewechselt werden sollen. Verlassen dieses Modus mit /q oder /b ab 1.11 (21.12.92): - Bei TALK zu lange Zeilen in 2 Zeilen auftrennen, damit nichts verlorengeht. - Wenn im Forwardfile ...... eingetragen ist, zu diesen Zeiten trotzdem reverse-Forward schicken, lediglich selbst nicht FWD aufbaun. - Vor einem ; in der Befehlszeile darf nun ein Blank sein, war bisher teilweise nicht der Fall (z.B. "r darc 1 ; r darc 5" ging nicht) - Bei voller Platte hat die Box nicht korrekt reagiert. Nun werden unter 800kB frei keine Info-Mails mehr angenommen, unter 400k keine Usermails. Beim Einloggen als Sysop wird unter 1MB frei eine Meldung ausgegeben. Die Software startet nur hoch, wenn mehr als 300kB frei sind, um genug Platz fr Verwaltungsfiles zu gew„hrleisten. - Bei Callwechsel wird nun nicht mehr der Sysop-Status zurckgesetzt. - Neues bei REORG: reorg u Nur Userfiles reorganisieren reorg c Nur Checkliste neu aufbaun reorg b Nur Bulletin-Listfiles neu aufbaun reorg l NEU: Userliste reorganisieren (Hash neu aufbaun + checken) Hierfr muá genug Platz auf der Platte frei sein, um eine Kopie von USERS.BCM anzufertigen. Reorg ohne Parameter fhrt komplettes Reorg durch. Es k”nnen mehrere Reorg-Befehle abgesetzt werden, sie werden nacheinander ausgefhrt. - Wird der Rechner an einer USV angeschlossen, so kann mittels PIN 15 von der LPT1-Schnittstelle die Box durch die Alarm-Leitung der USV abgeschaltet werden. Pin 15 high -> Box l„uft Pin 15 low -> Box wird abgestellt. Zur Aktivierung muá in INIT.BCM (oder in der Box als Sysop) der Befehl usvsense 1 eingefgt werden. Dies wurde fr OE3XBS bernommen von OE6BUD. - In kritischen Situationen kann die Box mit dem Befehl DISABLE in einen Zustand versetzt werden, in dem sie keine Connects mehr annimmt und auch keinen Forward mehr betreibt. In diesem Zustand kommt man nur noch als Sysop in die Box (nach Eingabe von pw) aber sonst nicht. Aufgehoben wird der Zustand durch den befehl ENABLE oder Neustart. - Neuer Befehl UIMPORT zum Einlesen von DieBox-Userlisten. Dabei werden im aktuellen Verzeichnis die Files USER3.IDX und USER3.DAT gesucht und ausgewertet. Die gefundenen Daten (Name, Mybbs) werde zu den vorhandenen hinzugezogen. Dieser Vorgang kann also mit beliebigen Files von anderen Mailboxen wiederholt werden, da jeweils nur ein Hinzufgen, kein Ersetzen stattfindet. Es findet eine Plausibilit„tskontrolle der eingelesenen Userdaten statt. Da der Vorgang sehr lange dauert, wird als Lebenszeichen jeder 100te gelesene Eintrag gezeigt. - Die Anzahl der gleichzeitigen Logins in der Box von einem User l„át sich nun begrenzen, und zwar mit MAXLOGINS Bei maxlogins 0 werden nach wie vor beliebig viele Logins zugelassen, maxlogins 1 l„át jeden User (auáer Sysop und Forwarding) nur 1mal rein. ab 1.12 (04.01.93): - Fr ein Forwarding mit DB0SAO (Wampes BBS) mussten einige Sonderlocken in die Software eingebaut werden, da SAO folgende Eigenschaften hat: Meist kommt am Anfang KEIN System-ID [box-version-$], sondern SOFORT der erste SEND-Befehl. Dies fhrt ansonsten zum Disconnect, da keine ordentliche Zuweisung der Forwardparameter stattfinden kann. Bei Usermails wird nach dem OK noch mindestens eine Leerzeile erwartet. Wenn doch mal ein System-ID kommt, meldet dieser [thebox-1.6-$] obwohl das System leider ganz andere Eigenschaften als thebox hat. Gelegentlich kommt ein Prompt mehr als blich. Auch dieser musste abgefangen werden. Der bisherige F> Prompt wurde gegen > ersetzt, da dies offenbar DB0SAO gest”rt hat. - Endlich sind offenbar ab und zu fehlerhafte MYBBS-Bulletins verschwunden. Die Ursache lag in gemeinsam benutztem Speicher, der nicht offensichtlich war. - Absturz beim Ankommen eines unkorrekten Datums in den R:-Zeilen durch einen Fehler in der Borland-Bibliothek. Ist nun umschifft. - Beim Login kommt vor dem CTEXT nun eine Leerzeile. Dies ist bei DieBox offensichtlich auch so (der Sinn ist allerdings nicht erkennbar) und manche Terminalprogramme wnschen es. - Mit dem Befehl USERQUOTA in der INIT.BCM oder als Sysop-Kommando l„át sich die maximale Ausgabemenge der Box pro Tag und Benutzer einstellen. Ist diese Menge ersch”pft, so ist kein Auslesen oder Absenden von Bulletin-Mails mehr m”glich. Usernachrichten funktionieren auch bei berschrittener Menge noch. Der Befehl funktioniert nur im Zusammenhang mit MAXLOGINS 0 korrekt. Bei mehreren gleichzeitigen Logins unter einem Rufzeichen ist mit einer nicht korrekten Z„hlung zu rechnen. UNSERQUOTA 0 schaltet die Funktion ab (in den meisten F„llen sinnvoll) Die Žnderung ist speziell DB0HAG gewidmet, wo auch in der Vergangenheit mit einem solchen Mechanismus gearbeitet wurde. Der User kann mit dem Befehl QUOTA abrufen, wieviele Daten an diesem Tag schon gelaufen sind, also wievel er noch melken kann. - Fehler bei WPRG in der Box beseitigt. Bin„re Files wurden nicht korrekt abgespeichert. - grobe Absch„tzung der CPU-Geschwindigkeit beim Hochlaufen der Software. Der Wert wird im VERSION-Befehl angezeigt und hat nur eine relative Aussagekraft. - Beim Lesen vom Files mit vollkommen undefinierten Inhalt (z.B. bei einem Filesystemfehler) konnte die Box abstrzen. Wurde behoben. - Behandlung der Rubriken AUTO7P REQ* 7PSERV FILSRV FNDFIL wie Userfiles, d.h. Weiterleitung ggf. ohne BID und nicht ”ffentlich sichtbar. ab 1.13 (07.01.93): - Fehler im Parser: Bei D A 1.12.1992 wurde das 1992 als Suchbegriff benutzt. Ist nun behoben. - Fehler in L2-Interface: es wurden nur 20 Verbindungen zugelassen, nun sind es 40. Sollte das irgendwo nicht reichen, ist eine weitere Erh”hung sehr einfach m”glich. - Da manchmal aus bisher ungekl„rter Ursache Files pl”tzlich das READ-ONLY Attribut gesetzt haben, wird nun vor jedem schreibenden Zugriff dieses Bit pauschal zurckgesetzt. Der Versuch, eine solche symptomatische Fehlerbehebung zu realisieren ist in vorherigen Versionen gescheitert aber funktioniert nun. - Neuer Sysop-Befehl SETUSER Wirkt wie ALTER, jedoch muss ein Rufzeichen angegeben werden, fr das der Parameter verstellt werden soll, also z.B. setu dg3mfw f db0aab wirkt wie call dg3mfw;a f db0aab - Sperren von Benutzern geht nun mit SETUSER STATUS 2 zurcksetzen der Sperre mit SETUSER STATUS 0 Alle anderen Werte fr Status haben vorerst keine Bedeutung. - Ver„nderte Parameter und Checkdatum etc. werden nun SOFORT und nicht erst beim Logout auf Platte geschrieben. Dadurch ist nicht mehr mit Unregelm„áigkeiten bei mehreren gleichzeitigen Logins unter einem Call zu rechnen. - Ein Quittext ist nun auch m”glich (war bisher schon, funktionierte aber nicht). Da die Funktion aber an Unwichtigkeit kaum zu berbieten ist, ist sie stiefmtterlich behandelt und es kann auch jetzt noch unter ungnstigen Bedingungen vorkommen daá der Quittext verlorengeht. File ist MSG\QTEXT.DL - Durch einen Tippfehler in der Software des SETLIFE-Befehls wurden ver„nderte Lifetimes nach Reorg wieder auf Default gesetzt. Das ist nun nicht mehr der Fall. - Die Default-Options (z.B. DEFUDIR etc) in der INIT.BCM wurden bisher ignoriert. Es hat aber bis jetzt noch keiner gemerkt, daran sieht man wie wichtig die Funktion ist. - Beim MYBBS-Befehl (oder ALTER FORWARD) kann nun eine Option -l (lokal) angegeben werden, dann wird der Eintrag NICHT an andere Boxen weitergeleitet. Dies kann sinnvoll sein, wenn eine nicht berall bekannte lokale Mailbox als Forwardadresse angegeben werden soll. Beispiel: a f -l db0ffb - Bisher konnte es bei ankommenden Info-Files dazu kommen, daá die Box, die das File angeliefert hat anschlieáend connected und gleich wieder disconnected wurde. Das sollte nun nicht mehr vorkommen. ab 1.14 (17.01.93): - Ab 16384 Eintr„gen in der Check-Liste kam es zu Abstrzen im Zusammenhang mit ERASE und „hnlichen Befehlen. Ist behoben. - Gelegentlich entstehen Listfiles mit 0 Eintr„gen. Im Moment ist noch nicht gekl„rt zu welcher Gelegenheit diese auftauchen. Es konnte dann zu Abstrzen bei den Befehlen D N oder D A kommen. Ist behoben. - Das Zurcksetzen des READ-ONLY Bits wird nun im Syslog angezeigt. Es muss noch erforscht werden, zu welcher Gelegenheit diese Fehler auftreten. - W„hrend REORG l„uft k”nnen nun trotzdem Files in die Box gespeichert werden. Das Sortieren der Checkliste sperrt allerdings nach wie vor das Senden, dies wird noch berarbeitet. - Beim Send-Befehl wird der "<"-Operator nur noch beim Forwarding akzeptiert. - Die Begrenzung der Ausgabemenge (Quota) war auch beim Forwarding aktiv. Das war natrlich so nicht vorgesehen und ist behoben. Neue M”glichkeiten: setuser status 1 schaltet die Userquota-Begrenzung selektiv fr einzelne Benutzer ab setuser quota setzt die heute ausgelesenen Bytes auf einen beliebigen Wert (also auch 0) setuser quota gibt den momentanen Stand aus. - Wurde der Editor bei nicht gengend freiem Speicher aufgerufen, war mit einem Absturz zu rechnen. Ist behoben. - Beim Log wurden bisher nur Verbindungen mit mehr als 500 Bytes Datentransfer gespeichert. Da dies zu Anfragen gefhrt hat, wird nun jede Verbindung gelogt. - Beim FORWARD-Befehl wird nun angegeben, wenn eine Adresse nicht bekannt ist. - Beim ™ffnen von mehr als 15 Files gleichzeitig konnte eine Tabelle berlaufen und ein undefiniertes Verhalten war die Folge. Nun k”nnen so viele Files offen sein, wie in FILES=... in der config.sys steht. - Weitere Plausibilit„tschecks bei fehlerhaft ankommenden E/M-Files, in einem Spezialfall konnten 2 Meldungen zusammenwachsen, was zu Fehlern fhrte. ab 1.15 (10.03.93): - Anzeige des insgesamt verfgbaren Plattenplatzes im VER-Befehl. Auáerdem wird das aktuelle Datum/Uhrzeit angezeigt. - L”schen von leeren Listfiles - Bei LIST konnte es vorkommen, daá wenn in einem Board nur eine Nachricht dringestanden ist, daá diese nicht angezeigt wurde. Ist nun behoben. - Neue Plausibilit„tskontrolle bei LIST.BCM Files. Durch Fehler im File- system (z.B. Querverkettungen) konnte die Box abstrzen. - die šberschriften im LIST-Befehl (Option -j aktiv) werden nun abh„ngig von der Einstellung der Optionen richtig angepasst. - Option -q funktioniert nun auch bei D U M - Die Auswertung der Forwardadressen in FWD.BCM hat sich etwas ge„ndert. Insbesondere wird jetzt bei mehrdeutigen Angaben stets die Angabe mit der l„ngsten šbereinstimmung benutzt. Beispiel: OE7* OE9* wird in einer Richtung geschickt, OE* kann in die andere Richtung geschickt werden und bedeutet dann alles auáer OE7 und OE9. Bisher war in solchen F„llen mit nicht korrekter Lieferung zu rechnen. Auáerdem lassen sich nun mehrere Felder kombiniert angeben. Beispiel: .SA.DEU fr Sachsen, .SA ansonsten fr Sdamerika. Durch eine entsprechende Kombination aller M”glichkeiten sollte sich nun jede noch so 2deutige H-Adresse eindeutig routen lassen. Auáerdem drfen nun problemlos mehrere Alternativrichtungen angegeben werden, z.B. DB0* in 2 Richtungen gleichzeitig. Die Files werden dann stets zu der Box geschickt, die schneller erreichbar ist. Bisher musste in einem solchen Fall mit Fileverdopplungen gerechnet werden. - Durch * gekennzeichnet, lassen sich nun einzelne Boards vom Forward zur Nachbarbox ausschlieáen, also z.B. *bilder *statisti etc. Mit der Option -r l„át sich die Selektion umkehren, d.h. NUR Boards mit dem angegebenem Namen werden weitergegeben. Das gilt auch fr die Sonder- Rubriken E und M (anzugeben mit *e oder *m). - Im Forwardfile k”nnen nun fr jede einzelne Box Optionen angegeben werden -b maximale File-L„nge (Beispiel -b10000 fr 10kB) -f sendet nach Connect ein Paket mit einer Leerzeile (fr tcp/ip) -p l„át nach dem Login den Prompt weg (z.B. fr DB0SAO erforderlich) -r sendet AUSSCHLIESSLICH die angegebenen Boards zur Nachbarbox -e E/M-Files 4zeilig senden (allerdings in 1 Frame, z.B. fr DB0SAO) Jede Option muss einzeln durch links und rechts ein Blank getrennt angegeben werden, also z.B. -b20000 -r *sysop *f schickt zur betreffenden Box nur SYSOP und F mit max 20kB Gr”áe - ttymode kann nun durch Angabe von TTYMODE OFF ausgeschaltet werden - ist kein mybbs eingestellt, so kommt beim Login eine entsprechende Meldung - statt PW wird nun auch SYS akzeptiert. Dabei wird die Ausgabe einer Leerzeile vor der Passwortfolge unterlassen. Damit sollte die Funktion auch kompatibel zu „lteren SP-Versionen und thp, superkiss etc sein. - zus„tzlich ist jetzt auch die diebox-„hnliche Funktion PRIV enthalten. Dazu ist die Angabe der Loginzeit im Ctext notwendig "Login: %d %i" das dazu passende File heiát PWLIST.BCM und entspricht exakt dem Format von PWLIST.TXT bei diebox. Da die Benutzung ausschlieálich fr diebox- Insider gedacht ist bitte ich weitere Informationen und Utilities von dort zu beziehen. Das File PWLIST.BCM muss 1620 Bytes in EINER Zeile enthalten und kann NICHT mit WTEXT in die Box gespielt werden, da bei diesem Kommando eine Begrenzung der Zeilenl„nge erfolgt. - bei Read wird nun nicht mehr die eingegebene, sondern die tats„chliche Lifetime angezeigt - Ist ein TRANSFER nicht erfolgreich, wird nun NICHT mehr die alte Nachricht gel”scht. Bei Bulletins war das bisher so - wird bei einer Forwardadresse eine SSID angegeben (z.b. @db0aab-8 ) so wird diese stillschweigend abgeschnitten - nach der Angabe "To : ...." am Anfang eines Files wird nun eine Leerzeile eingefgt (ich habe mich anfangs geweigert, aber es haben mich hinreichend viele Leute dahingehend genervt...) - vor dem Erzeugen von neuen Directories wird untersucht, ob es ein gleichnamiges File gibt (kam durch Fehler vor) und ggf. gel”scht. - Bisher konnte es vorkommen, daá bei starker Belegung der Box ab und zu neue Logins mit BUSY abgewehrt wurden, obwohl noch genug Speicher und Tasks frei waren. Das lag daran, daá immer nur ein TNC-Port aktiv gehalten wurde und erst wenn auf diesem ein Login erkannt wurde dann wurde der n„chste er”ffnet. Nun werden immer 3 gleichzeitige Logins offengehalten, so daá der Effekt nicht mehr vorkommen sollte. - Das KILL-Kommando fhrt nun auch einen Disconnect des angesprochenen Users durch (vorausgesetzt dieser ist ber Funk eingelogt). - Das PURGE-Kommando ist nun ein User-Befehl. Das EIGENE Verzeichnis wird von allen gel”schten und veralteten Files befreit. Dies geschieht normalerweise nur einmal in der Nacht. Als Sysop kann man nun einen beliebigen Boardnamen (User oder Info) angeben, auf den das Purge-Kommando wirkt. Der Buchstabe A bewirkt das gesamte PURGE, wie bisher. Zusammenfassung: PUrge reinigt das eigene Verzeichnis PUrge reinigt ein beliebiges Board (nur sysop) PUrge a startet generellen Reinigungsvorgang (") - Linefeed-Zeichen ($0A) werden nun ignoriert, wenn sie ber Funk kommen. Da in PR zum Trennen von Zeilen ausschlieálich CR blich ist, haben gelegentlich ankommende LF gest”rt, da sie intern in der Box wie CR behandelt wurden. - In die "Read:" Anzeige beim Lesen von Files passen nun etwa 36 Rufzeichen. Die Anzeige wurde auf max. 4 Zeilen erweitert. Im Datenfile werden die Rufzeichen in eine bis zu 254 Bytes lange Zeile geschrieben. Datenfiles, die vor der Version 1.15 geschrieben wurden, behalten das alte Format. - bei Anwendung von A REJ ... wurden Boardnamen, die gleich dem Anfang von angebenen Namen waren, ebenfalls ausgeschlossen. Also bei DIGICOM kam DIGI auch nicht, bei FFR kam F nicht etc. Ist nun behoben. Zus„tzlich l„át sich nun durch Angabe von -R am Anfang der REJ-Liste die Auswertung umkehren, d.h. es werden NUR Rubriken gezeigt, die in der REJ-Liste auftauchen. Beispiel: a rej -r dxnews satellit listet bei DIR NEWS alles unterhalb von DXNEWS und SATELLIT, bei CHECK erscheinen nur diese Rubriken und nicht deren Unterrubriken. - Auf Wunsch kann in einem einstellbaren Zeitintervall eine Bake gesendet werden, in der alle Rufzeichen auftauchen, fr die in den letzten 24h eine neue (ungelesene) Nachricht eingetroffen ist. Befehl: MAILBEACON Das Zeitintervall wird in Minuten angegeben, 0 schaltet die Bake aus. Die Bake kann ber mehrere verschiedene Digipeaterpfade ausgesendet werden. Die Adressen werden dabei dem File BEACON.BCM entnommen. Format des Files BEACON.BCM: [ ... ] [ ... ] .... Die Parameter bedeuten folgendes: : Rufzeichen, unter dem die Bake gesendet werden soll : Zieladresse (UI-Adresse) der Bake : evtl. Digi, ber den die Bake gesendet werden soll Beispiel: db0aab-8 mails db0aab db0aab-8 mails db0aab oe7xar - Bei der Meldung, daá eine neue Nachricht eingetroffen ist, wird nun auch die Nummer der Nachricht angezeigt. - Die Task-Anzeige (erste Zeile) wird nun auch ber den window-manager ausgegeben, so daá es beim šberlappen mit anderen Fenstern nicht mehr zu Ausl”schungen kommt. Auáerdem wurde die Taskwechselzeit etwas optimiert. - Neues File CONVLIFE.BCM Hier kann einer Nachricht eine andere Lifetime zugeordnet werden wenn bestimmte Ausdrcke im Betreff enthalten sind. Beispiel CONVLIFE.BCM: ------------------ ; Lifetime Begriff 10 suche 10 ? 0 arsch 0 verkaufe ------------------ Die Lifetime 0 bedeutet, daá die Nachricht beim n„chsten Purge gel”scht wird. Die Zuordnung der Lifetime erfolgt nur lokal, beim Forwarding wird die originale Lifetime weitergegeben. - DIR USERS zeigt nun nur noch ungel”schte Nachrichten an. Auáerdem ist die Anzeige nach Rufzeichen sortiert. Diese Žnderung erfolgte auf mehrfachen Wunsch, bewirkt aber daá der Befehl SEHR langsam geworden ist, da fr jedes einzelne Rufzeichen das File LIST.BCM durchsucht werden muá. Also bitte nicht wundern wenn die Funktion je nach Menge und Rechenleistung 10-60sec braucht. Etwaige Beschwerden bitte an die Leute, die es partout so haben wollten. - Der CPU-Index Test wird nun ber mehrere Versuche gemittelt damit es nicht gar so eine willkrliche Hausnummer ist, die dort angezeigt wird. - Logins ber TTY-Port werden nur noch im Sysop-Modus angezeigt. (gilt fr Userliste und Log) - Die Auswertung der R:-Zeilen (Path:) zeigte bei Boxen, die statt ihrem Rufzeichen irgendwelche Zahlen liefern, diese Zahlen an. Nun werden auch diese Spezialf„lle (z.B. DB0IE) richtig angezeigt. - bei DIR BOARDS * konnten gelegentlich unsinnige Werte (-1 Nachrichten) auftauchen. Wird nun sauber abgefangen. - Wenn durch einen Filesystemfehler (z.b. Querverkettung) in USERS.BCM grober Unsinn steht, dann konnte selbst REORG L nichts mehr ausrichten. Nun kann diese Routine (fast) jeden Mist verdaun und aufarbeiten. - Helplevel 1 bedeutet ab sofort, daá zwar das Men kommt, aber nicht der erweiterte Ctext beim Login. - Angaben von Bereichen (insbesondere bei CHECK) k”nnen nun auch ber 32767 hinausgehen, da langfristig mit mehr Eintr„gen zu rechnen ist. Bisher fhrte "c 40000-" nicht zum Erfolg. - Wenn bei PURGE ein fehlerhaftes LIST.BCM erkannt wird, so wird dieses gel”scht, PURGE abgebrochen und automatisch REORG durchgefhrt. Auáerdem wird bei Erkennen eines fehlerhaften CHECK-File dieses nachts nach dem Purge-Job automatisch neu generiert. - Beim Login wird nun ein Callcheck durchgefhrt. Fehlerhafte Rufzeichen werden nicht mehr hereingelassen. - U zeigt nun eine verkrzte Ausgabe der User-Parameter, die volle Ausgabe ist nach wie vor mit A m”glich. ab 1.15c (22.03.93): - in der Version 1.15 war nach Transfer einer Nachricht keine korrekte Forward-Weiterleitung. Ist behoben. - Mittels "d -n u m" werden nur Usernachrichten gelistet, deren Eigentmer NICHT die eigene Box als MYBBS eingestellt haben. Dadurch lassen sich fr den Sysop leicht alle unzustellbaren Nachrichten auflisten. - Wenn bei einem per Forward ankommenden File die letzte Zeile gr”áer 256 Bytes war UND kein Return vor dem CTRL-Z kam, blieb das Forward h„ngen. Soetwas ist zwar unwahrscheinlich, kam aber vor. - ALTER DEFAULT hat seit etlichen Versionen nicht mehr funktioniert. Scheibar hats keiner gemerkt, bin durch Zufall draufgekommen. - Wenn der Betreff einer Nachricht l„nger als 65 Zeichen war konnte unvorhersehbares passieren bei ERASE, FORWARD etc. Die Begrenzung im Listfile war nicht sauber durchgefhrt. ab 1.15d (07.04.93): - Wenn fehlerhafte Lifetimes ber Funk ankamen, konnte es vorkommen daá die LIST.BCM irreparable Fehler aufweisen. Ist behoben. ab 1.15e (30.04.93): - Die CHECK-Liste durfte nicht l„nger als 32768 EIntr„ge sein, sonst konnte beim REORG beim sortieren des Files ein Absturz passieren. Ist behoben. ab 1.15f (18.06.93): - Beim MYBBS-Forwarding mit DieBox 1.9a wurden die Files einzeilig nicht akzeptiert, da eine (unsinnige) Plausibilit„tsprfung die Zeilen als falsch empfunden hat. Das Problem war die Zeilenl„nge, da bei diebox vor dem CTRL-Z ein paar Blanks kommen. Ist nun behoben. - Da in vielen Boxen das BID-File im Laufe der Zeit Fehler im Hashcode bekommen hat, l„át sich nun das BID-File reorganisieren. Das geht einzeln mit REORG I und wird beim Gesamt-Reorg auch durchgefhrt. Dadurch sollte auch eine Absturzquelle umschifft sein. ab 1.16c (08.01.93): - Das Abbrechen von Nachrichten ohne Speicherung ist mit CTRL-X m”glich. - Fr einen Hardware-Watchdog zappelt an LPT1 die Leitung D0 mit etwa 10Hz. - Im Syslog wird die Wertigkeit der Meldung (R/L/S/F/A) mit vorangestelltem #-Zeichen dargestellt damit man leichter nach Meldungen einer bestimmten Kategorie suchen kann wenn das Log groá ist. - W„hrend BID- und CHECK-Reorg ist auch der Empfang von E-Mails gesperrt. - Der Bug im Transfer-Befehl (tr 1- > call) ist behoben. - Beim Forwarding kann es nicht mehr zu wildem Pompt-Austausch kommen - Wenn die Box nicht fr ein gltiges Rufzeichen konfiguriert ist, ist sie nach dem hochstarten automatisch im Disable-Zustand. - Ist das bulletin.bcm-File defekt, wird es nach bestem Wissen restauriert. Dieser Mechanismus hat vorher nicht funktioniert. Ggf. gehen dabei allerdings die Lifetimes verloren. - Im BID-Reorg war ein Fehler, der sich sehr lange nicht finden hat lassen. Es sollten nun keine doppelten Files mehr vorkommen. Durch die Penetranz dieses Bugs habe ich mich jedoch entmutigen lassen, Aussagen der Sorte "ist nun behoben" zu machen. - Im Betreff einer Nachricht kann auch sowas wie #TEST angegeben werden, ohne daá es als Lifetime interpretiert wird. - Lange Erase- und Transferbefehle etc k”nnen mit Return abgebrochen werden - Wenn beim Forward keine Nachrichten mehr vorliegen, wird "***done" gesendet (sollte so sein laut W0RLI-spec). - Kommandos wie A C D,Q haben keine Wirkung mehr. ab 1.16e (20.01.94): - Umstellung auf kleineres Speichermodell, dadurch Einsparung von ca. 20kB. Im Code muáten dazu einige Anpassungen gemacht werden, die hoffentlich keine Nebenwirkungen haben. Auáerdem hat ein Bug im Borland-Laufzeitsystem weitere 16k weggefressen, so daá insgesamt jetzt knapp 40k mehr Speicher frei ist. - Umgehung eines Bugs im Borland-Laufzeitsystem: Die HEAP-Anzeige im V-Befehl zeigt nun wieder richtige Werte und keine Hausnummern an. - Weiterer Nachtarok zum Thema BIDs: Beim Reorg wurden immer noch gelegentlich korrekte BIDs als fehlerhaft empfunden und gel”scht. Ist behoben. - Bei Einstellung A C D N und verschiedenen anderen login-Kommandos wurde der Loginz„hler nicht gesetzt. Hatte auch Implikationen wenn eine Quota-Beschr„nkung aktiv war. Ist behoben. ab 1.17b (10.02.94): - Die Box kann nun auch andere Sprachen als deutsch, siehe dazu Beschreibung im Kapitel 4.8. Auáerdem sind alle Meldungen editierbar. Nordlichter k”nnen also nun endlich das verhasste "Servus" gegen die gewohnte Begráung "Moin Moin" ersetzen. Einstellung der Sprache mit ALTER SPEECH bzw. automatisch beim Login nach Prefix - Neuer Benutzerbefehl PARAMETER Mit diesem Befehl kann die Konfiguration der Box abgefragt werden. Dabei wird das File INIT.BCM ausgegeben. Durch kann eine beliebige Zeichenfolge angegeben werden, nur Zeilen mit šbereinstimmung werden ausgegeben. Beispiel: par runutils gibt aus, welche DOS-Programme fr den Benutzer zug„nglich sind Vorbeugend m”chte ich erw„hnen, daá ich in dieser M”glichkeit eine weitere Erh”hung der Transparenz der BayCom-Box sehe. Den Sysops, die lieber ihre Geheimnisse pflegen wollen, rate ich generell von der Benutzung dieser Software ab. - Ausgabe der CPU-auslastung mittels STATUS CPU (st c). Siehe dazu Hinweise im HELP-File. - Das Makro %a gibt die Auslastung des Rechners in Prozent an. Der Wert wird aus den Messungen der letzten 40 Sekunden berechnet (siehe HELP STATUS) - Die Groá-/Kleinschreibung beim Namen wird nicht mehr bevormundet. A NAME Hans-Ulrich bleibt wie es eingegeben wurde. - RUN-Utilities fr Benutzerzugriff Es k”nnen beliebige DOS-Programme fr den Benutzer freigegeben werden. Einzustellen sind diese mit runutil ... runutil off schaltet diese M”glichkeit aus (default) Die Programme k”nnen an einer beliebigen Stelle auf der Platte stehen, mssen jedoch ber den Systempfad (PATH=...) erreichbar sein. Die Kommandozeile des Benutzers wird transparent durchgereicht, d.h. das Programm darf beliebige Parameter/Optionen erwarten. Das aufgerufene Programm muá folgende Eigenschaften haben: - Schnelle Ausfhrung. W„hrenddessen steht die Box fr alle User! - Ausgaben nur ber DOS/BIOS, nicht direkt in den Bildschirm - Keine Eingaben! Wenn das Programm auf eine Eingabe wartet, steht alles still. - Der Aufruf muá "wasserdicht" sein, d.h. der User darf mit einer x-beliebigen Kommandozeile keinen Schaden anrichten k”nnen. - Geringer Speicherbedarf. Es steht i.A. nur wenig freier Speicher zur Verfgung (typisch ca. 100kB, siehe Anzeige im V-Befehl "Heap") - Es kann sich um ein .COM .EXE oder .BAT-file handeln. - Ausfhrliche Suchm”glichkeiten in der Benutzerdatenbank. Diese M”glichkeit ist schon vor einer Weile eingebaut worden, war aber nicht dokumentiert. Siehe HELP USER. - Žnderung des Konfigurationsfiles INIT.BCM: Die Parameter werden nun nach Gruppen sortiert ausgegeben, die Anordnung wurde dadurch etwas bersichtlicher. Die Konvertierung des bisherigen Formates von INIT.BCM erfolgt automatisch, fr den Sysop ergibt sich keinerlei Handlungsbedarf. Jede Žnderung der Konfiguration (durch Aufruf des entsprechenden Befehls) wird SOFORT nach INIT.BCM bernommen, bisher war dies nur verz”gert der Fall. Neue Parameter in INIT.BCM: timeslot 2 Einstellung der maximalen Zeitscheibe, w„hrend der ein laufender Prozess nicht unterbrochen wird. Dieser Wert gibt eine Zeiteinheit in 55ms-Schritten an und war bisher fest auf 2 eingestellt. Je geringer der Wert ist, desto schneller wechselt das System die Tasks und desto schneller ist die Antwortszeit. Andererseits wird bei zu kleiner Zeitscheibe die Aufteilung ungerecht und der Systemoverhead (Zeit fr Taskwechsel) gr”áer. Sinnvolle Werte liegen zwischen 0 (schnellstm”glicher Taskwechsel, keine feste Zeitscheibe) und ca. 5 (bestm”gliche Ausnutzung des Systems, aber sehr langsame Reaktionszeit). Voreinstellung ist 2, was sich als sinnvoller Kompromiss herausgestellt hat. scrolldelay 2 Das Rollen des Bildschirms ist normalerweise sehr ruck- artig. Dies liegt an einem verz”gerten Bildschirmaufbau. Dadurch wird Zeit fr das Beschreiben des Bildschirms gespart. Wem dadurch die Bildschirmausgaben zu schlecht lesbar werden, der kann die Scrollrate nun auch ver- schnellern, was allerdings dann generell die Ausgabe- geschwindigkeit reduziert. scrolldelay 0 erzeugt ein zeilenweises Bildrollen, wie dies von anderen Programmen gewohnt ist, 1 entspricht 55ms Verz”gerung etc. purgehour 4 stellt die Uhrzeit (Stunden nach PC-Uhr) ein, zu der der PURGE-Job gestartet wird. Zu dieser Zeit wird auch SAVE.BAT ausgefhrt und ggf. ein REORG veranlasst, wenn am Filesystem ein Fehler erkannt wurde. -- folgende Befehle werden weiter unten genauer beschrieben -- dosinput 1 Eingaben m”glich bei DOS-Befehlen runutils ... externe DOS-Programme fr den Benutzer watchdog 7 Soft/Hardwarewatchdog fwdtrace 1 Mitschreiben von fwd-Verbindungen auf Platte -------------------------------------------------------------- - Watchdog-Funktionen (teilweise schon bisher vorhanden) Parameter in INIT.BCM: watchdog x hat folgende Werte 0 Watchdog aus 1 Hardware-Watchdog ein (zappeln an LPT1 wird erzeugt) 2 Software-Watchdog ein. BCM.EXE berwacht sich selbst. Dies ist zuverl„ssiger als die bisherige šberwachung durch L2.EXE und spricht bereits nach ca. 1 min an. Bei DOS-Ausstieg wird die Zeit auf 30 min gesetzt. Bei Ablaufen des Watchdogs erfolgt ein DOS-Kaltreset. 4 Debug-Ausgabe in Betrieb. Vor jedem Watchdog-Reset wird versucht, den momentanen Systemstatus ins Syslog zu schreiben. Dies kann jedoch die Zuverl„ssigkeit des Watchdogs verschlechtern, weil dazu das Filesystem noch 'leben' muá. Die Debug-Ausgaben erfolgen in SYSLOG.BCM und beginnen mit #W. Die einzelnen Werte k”nnen miteinander kombiniert werden, d.h. watchdog 7 schaltet alle besagten M”glichkeiten ein. Sysops, die nicht am Debugging beteiligt sind, einen m”glichst stabilen Betrieb wnschen und keinen Hardware-Watchdog angeschlossen haben, sollten watchdog 2 einstellen. - Bei ALTER wird dem Sysop auch Insider-Info angezeigt, das ist Passwort (noch nicht fertig implementiert) TTY-Passwort, Userstatus und Quota (Summe aller Kilobytes von heute) - Der Ausstieg ins DOS vertr„gt nun auch Benutzereingaben. Es ist nun nicht mehr verheerend, wenn man "o time" eingibt, da die Zeit dann einfach eingegeben werden kann. Das war technisch nicht ganz einfach, die guten Ideen hierfr hat DG9MHZ geliefert, besten Dank. Folgende Einschr„nkungen gibt es trotzdem: - die Ausgaben mssen ber DOS/BIOS erfolgen, nicht direkt in den Bildschirmspeicher. - Die Eingaben beschr„nken sich auf normale Zeichen incl. CTRL-Zeichen. Funktionstasten, ALT-Tasten, Cursortasten etc k”nnen NICHT eingegeben werden (CTRL-C zum Abbrechen funktioniert erfreulicherweise) - W„hrend das DOS-Programm l„uft, steht die Mailbox. Das gilt auch, wenn das DOS-Programm auf eine Eingabe wartet. Der SW-Watchdog ist in diesem Zustand auf "geduldig" geschaltet und schl„gt erst nach ca. 30min zu. Hardware-Watchdogs mssen das auch bercksichtigen. Es ist also ratsam, DOS-Programme zgig zu bearbeiten. - Das Programm SHROOM zum Auslagern von BCM.EXE und damit Gewinnung von Speicherplatz l„uft mit dieser Methode nicht mehr. - w„hrend ein DOS-Programm l„uft, wird permanent die Eingabe (in diesem Fall L2) abgefragt. Dies hat zur Folge, daá nach dem Absetzen eines DOS-Befehls ein Zeichen verschluckt werden kann. Sowas wie o dir;d dl8mbt funktioniert evtl nicht korrekt, weil das noch im Puffer befindliche "d" evtl vom DOS verschluckt wird. Dieser Effekt tritt nur bei Einstellung "dosinput 1" auf. Die bisherige Ausfhrung von DOS-Programmen ber ein tempor„res Ausgabefile kann mittels dosinput 0 in INIT.BCM eingestellt werden. Dies gilt dann auch fr die RUNUTILS. Dann ist auch der Betrieb von SHROOM m”glich, allerdings funktionieren keine Eingaben. - Wird mit CONNECT von der Konsole eine Verbindung aufgebaut, so kann mittels pw oder sy automatisch das Passwort fr andere Knoten (Baycom oder Flexnet) erzeugt werden. Die dafr erforderlichen Passw”rter mssen in PASSWD.BCM stehen. Die erste Zeile ist das eigene Boxpasswort, danach k”nnen weitere folgen in der Form: db0lna jhasgdhjgdhjgsjhgdjhgsjdhgsjhgdjhsghdjgashjgdhjsghjd db0rgb sadjhsjhgdjhasgdhgshjdgahjsgdhjgshjdgahjsgdhgshjdghsj db0ffb 14711 .......etc. Das Trennen der Verbindung erfolgt nun nicht mehr mit CTRL-D sondern mit :d (wie beim Baycom-Terminal gewohnt) Weitere Terminalfunktionen sind in Vorbereitung. - Das Fenster mit der Einschaltmeldung schlieát bei Tastendruck - dir f funktioniert nun fr Board F. Funktion DIR FROM ist gestorben, sie wurde schon bisher durch DIR SENT ersetzt. - Forwardingablauf vollkommen neu aufgebaut. - Unterbrechung von bulletins wenn eine usermail kommt - Verz”gerung vor disconnect - mehrfacher Richtungswechsel mit f> m”glich - Auswertung von "reconnected" und "link failure" mit gezieltem Abbruch (ohne l”schen der Mail) - Diverse Meldungen machen Forwardprobleme leichter zu verfolgen - die SSID wird bei jedem Connect zwischen (fwdssid) und (fwdssid+1) gewechselt, damit die Verbindungen eindeutig sind. - Trace-M”glichkeit beim Forwarding. fwdtrace 1 in INIT.BCM bewirkt, daá s„mtliche Forwardverbindungen nach TRACE\T_.BCM mitgeschrieben werden. Dabei wird Datum/Uhrzeit, Task-Nr (bei mehrfachconnects wichtig), S (Send) R (Receive) und die entsprechende Zeile angezeigt. Die Forward-Traces k”nnen mit dem Befehl TGREP durchsucht werden, tg gibt das Ende (letzte 2kB) des Files aus. - grep-Funktion fr den Sysop. Syntax: grep grep sucht nach regul„ren Ausdrcken, wie bei UNIX blich. Dies ist ab sofort bei allen Suchoperationen (CL SL SLR TG etc) m”glich. Enth„lt Blanks, so muá es in Anfhrungszeichen gesetzt werden z.B. grep "test string" trace\syslog.bcm - Benutzeroberfl„che: Mit ALT-C lassen sich die Farben einstellen. (ist allerdings noch nicht abzuspeichern, daher nur geringer Nutzen) - Beim Start gibt es ein paar Optionen: bcm /? zeigt m”gliche Optionen bcm /c benutzt bei VGA 25 statt 50 Zeilen (spart ca. 5kB Speicher bei VGA) bcm /m benutzt monochrom-Farbattribute bcm /f zeigt die m”gliche Anzahl offener Files (sollte > 40 sein) - Bei TRACELEVEL 0 werden die #R-Ausgaben nicht in syslog.bcm sondern in syslog_r.bcm geschrieben, damit die vielen Ausgaben leichter analysiert werden k”nnen. Auáerdem kann syslog_r.bcm einfach gel”scht werden, wenn es zu groá wird, ohne daá interessante syslog-infos verlorengehen. Analog zum Befehl SLOG gibt es fr dieses File einen Suchbefehl SLR . - Im Syslog wird die Uhrzeit mit Sekunden angezeigt, um Zeitzusammenh„nge leichter nachvollziehbar zu machen. - Bei allen Log-Ausgabekommandos (SLOG SLR CLOG TGREP UNKNOWN) wird nicht mehr das gesamte File, sondern nur die neuesten ca. 2kByte ausgegeben, wenn kein Suchbegriff angegeben worden ist. Dazu kommen 2 neue Kommandos: BEGIN zeigt die ersten 2kByte eines Textfiles TAIL zeigt die letzten 2kByte eines Textfiles Die Ausgabe wird jeweils auf volle Zeilen gerundet. - Alle halbe Stunde wird ein Programm namens HALFHOUR.BAT ausgefhrt, wenn es existiert. Damit k”nnen regelm„áig DOS-Programme gestartet werden. Die Ausgaben von SAVE.BAT werden nach SAVE.OUT umgeleitet, die von HALFHOUR.BAT landen in HALFHOUR.OUT. Damit kann hinterher festgestellt werden, ob die batches ordentlich ausgefhrt worden sind. - In Kombination mit der Version 1.55 von L2.EXE (nur Mailboxversion verfgbar, Node nach wie vor 1.54) kann BCM nun bis zu 80 logins verkraften. Die bisherigen ca. 40 waren bei DB0AAB und DB0RBS gelegentlich voll. Einstellung in SCC.INI: dports 80 Eine bertrieben hohe Einstellung kostet allerdings Speicher (300 bytes pro port) und sollte daher vermieden werden. ab 1.18 (23.02.94): - Die Sortierung des Checkfiles hat bei REORG gelegentlich nicht korrekt funktioniert. Zur Behebung wurde der bisher verwendete Quicksort gegen ein geeigneteres Verfahren ersetzt, das nur etwa 10% der bisher gebrauchten Zeit ben”tigt und offensichtlich keine Fehler mehr macht. - Schutzmechanismen bei REORG und PURGE gegen Probleme mit gleichzeitigem Filezugriff wurden verfeinert. Purge und Reorg sollten nun ohne Nebenwirkungen im laufenden Betrieb sein, bisher war dies nicht voll gew„hrleistet. - Im BID-File konnte unter seltenen Bedingungen eine Unmenge von Schrott entstehen, die beim REORG das Syslog anfllt. Das Verfahren zum Abspeichern der BIDs wurde radikal ge„ndert und ist nun etwas robuster gegen Fehler in der Verarbeitung. - Das šberprfen der File-Header beim Forwarding hat gelegentlich Files ausgemustert, die eigentlich weitergeleitet werden h„tten sollen. Die šberprfung wurde umgebaut. Folgende Meldungen im Syslog sind neu bzw. ge„ndert: fwds: loop von>zu box Nachricht ist zu oft durch die eigene Box gelaufen (Schleife) und bleibt deshalb liegen. Bulletins drfen nur einmal angekommen sein, Usermails bis zu 3mal. Der Grund liegt bei Bulletins meist darin, daá irgendwo das BID ver„ndert worden ist und sie deshalb nochmal vorbeikommen, bei Usermails ist im Allgemeinen irgendwo das Forward gegeneinander eingestellt, sodaá sich die Boxen die Nachrichten gegenseitig zuspielen. Die Meldung kann mehrfach auftauchen, da sie erst beim (bzw. anstatt) Aussenden der Mail generiert wird und daher bei jeder Box auftaucht fr die die Mail bestimmt gewesen w„re. fwds: too old von>zu box bei bulletins: oldestfwd wurde berschritten, Nachricht ist zu alt und bleibt liegen. fwds: size von>zu box Dieses File ist gr”áer als in der -B Option im Forwardfile angegeben und bleibt deshalb liegen. - Bei Privatmails wird die Forwardadresse nicht nur mitgegeben, wenn sie eingegeben worden ist, sondern auch wenn sie MYBBS entnommen wurde. Das war bisher anders, hat sich aber bei Schnittstellen zu Boxen ohne MYBBS-Forwarding nicht bew„hrt. - Beim Aussenden von Info-Files wird die @-Adresse auch mitgegeben, wenn die Nachbarbox das Ziel ist (wichtig fr diebox T-Mails) - Beim Log kommen nun wirklich 20 Eintr„ge, nicht nur 19. - Lifetimes werden auf das maximal doppelte der eingestellten default-Lifetime begrenzt. Bisher konnte der Benutzer beliebige Lifetimes eingeben. - fwdtrace 2 bewirkt, daá nur Forwarding zu Boxen mitgeschrieben wird, bei denen in fwd.bcm die Option -T angegeben ist. - save.out wird nun wirklich erzeugt (hat nicht funktioniert) evtl. Abstrze zur Ausfhrung von save.bat sollten nicht mehr vorkommen. - R:-Zeilen in ankommenden Mails drfen nun mehr als 90 Zeichen haben, weil manche Sysops nicht genug Unsinn reinkriegen k”nnen. - Eine Žnderung drfte die gelegentlich falsch ankommenden Zeichen kurz nach dem Login vermeiden. Dies muss allerdings erst beobachtet werden, weil es sich um einen nicht testbaren, sporadischen Fehler handelt. - Die Anzeige CPU-Index im VERSION-Befehl wurde berarbeitet, sie ist jetzt nicht mehr abh„ngig von der Auslastung und l„át etwas besser auf die tats„chliche Geschwindigkeit des Rechners schlieáen. Die neuen Werte sind anders gewichtet als die alten und h„ngen sehr viel st„rker vom verwendeten Rechner ab. - Bin„rfilesenden (Sysop) kann durch eine Eingabe ungleich #OK# abgebrochen werden. ab 1.18a (25.02.94): - Bei explizitem FORWARD-Befehl (oder MYBBS) wird der loop-Detektor abgeschaltet ud die Mail trotzdem weitergeleitet. - Mit ALTER NOPURGE 1 l„át sich das Purge fr die eigenen pers”nlichen Nachrichten abschalten. Dies kann jedoch nur ein Sysop tun. Dadurch ist es nicht mehr m”glich, einem anderen b”swillig Nachrichten zu l”schen oder wegforwarden zu lassen. (fr den Sysop: setuser nopurge 0/1) - Passwortfunktion fr den Benutzer. Mit A PW kann sich selbst ein Passwort aufgebaut werden. wird dabei jeweils an ein bereits existierendes Passwort angeh„ngt und kann damit stckweise vergr”áert werden. Die maximale L„nge ist 39 Zeichen. Der login erfolgt dann wie im Sysop-Modus nach Netrom-Gepflogenheiten, d.h. statt dem Ctext kommt DB0AAB> 2 4 34 22 1 unf fr die Zahlen ist dann die entsprechende Stelle aus dem Passwortstring zurckzuliefern. Abschaltung mittels A PW (ohne Parameter) - Mehr Flexibilit„t fr Run-Utilities: Vor dem Start eines Utilities wird ein File namens RUNDAT.BCM erzeugt. In diesem stehen einige wesentliche Benutzerdaten: Die Felder werden nur durch Blanks getennt. ist 1 wenn der Benutzer selbst ber sein eigenes Passwort eingestiegen ist, sonst 0. ist 1 wenn Sysop-PW erfolgreich war. Benutzerstatus (ALTER STATUS) Helplevel ab 1.19 (14.03.94): - Zeilen und Bytes in Nachrichten z„hlen nur noch die Nachrichten selbst, nicht die R:-Zeilen. Dadurch ist die Gr”áe der Nachrichten nicht mehr von der L„nge des Weges abh„ngig. Dis gilt nur fr neue Nachrichten, nicht fr die bestehenden in der Box. - Bulletins, die bereits durch die eigene Box gelaufen sind, werden nicht mehr angenommen (bzw. nach dem Eintreffen sofort gel”scht). Dadurch werden Doppelg„nger mit ver„ndertem BID und dergl. verhindert. - Beim Benutzerpasswort (und auch Sysop-pw) kann der tats„chlich gltige String (5 Zeichen) an einer beliebigen Stelle in einem beliebig langen Zufallsstring stehen. Bisher muáte die 'L”sung' an einer durch 5 teilbaren Position stehen. Die Funktion ist damit kompatibel zu TheNetNode und anderen. - Wenn die erste Nutzdatenzeile in einem File > 120 Zeichen lang war, konnte es zu einem Absturz kommen (seit bcm118). - Abspeichern von Daten anderer Boxen. Auf Wunsch k”nnen aus ankommenden Mails diverse Daten bernommen werden. Dies bezieht sich insbesondere auf die korrekte H-Adresse aber auch andere Feinheiten, die evtl. von Interesse sind. Aktivieren der Funktion mit HADRSTORE 1 Dann werden Files HADDRESS.BCM und HADRHASH.BCM erzeugt. In diesen Files werden die Informationen gesammelt. Jede bekannte Box belegt 256 Bytes. Es wird also langfristig eine Menge von ca. 1-2 MB zu erwarten sein. Beim Reorg werden diese Files mitbearbeitet oder k”nnen gezielt mit reorg h neu erzeugt werden. Die Files werden nur aus neu ankommenden Nachrichten erzeugt, vorhandene Datenbest„nde werden nicht herangezogen. Das Abrufen der Daten geht mit dem PATH-Befehl: p zeigt wie bisher die Weiterleitung einer Nachricht an. p -a zeigt alle Daten zu an, vorausgesetzt es ist schon mindestens eine Nachricht von dieser Box angekommen. Angezeigt wird folgendes: H-Addr: Komplette H-Adresse beim letzten Update R-Header: Informationszeile des R-Headers Last BID: BID der letzten, von dieser Box stammenden Nachricht Last Board: Rubrik der letzten Nachricht Last User: User, ab den von dieser Box zuletzt was gekommen ist Bulletins: Anzahl Bulletins, die von dieser Box angekommen sind Usermails: Anzahl Usermails von dieser Box Dann kommt eine Aufschlsselnung nach bis zu 5 Nachbarboxen, wann (Update) zuletzt wieviele (Count) Nachrichten mit welcher Laufzeit (Delay) ber wieviele Zwischenboxen (Hops) angekommen sind. Aus diesen Informationen l„át sich evtl. auf einen sinnvollen Rckweg der Nachrichten schlieáen. p -s <..> sucht durch die Liste aller Boxen nach einem Suchbegriff. Dieser kann entweder in der H-Adresse oder im Info-Teil des R:-Headers vorhanden sein. z.B. p -s #bay sucht nach allen bayerischen Boxen p -s bcm sucht nach allen BayCom-Boxen Angezeigt wird die Gesamtzahl der Nachrichten der jeweiligen Box, die Zeitspanne wann die Information zuletzt erneuert wurde, die H-Adresse und die R:-Infozeile. p -sc <..> Z„hlt nur die Anzahl der gefundenen Stellen, gibt diese aber nicht aus. Mittels HADRSTORE 2 kann erwirkt werden, daá bei jeder Benutzereingabe die Adresse nach bestem Wissen zur ganzen H-Adresse vervollst„ndigt wird. Bis jetzt arbeitet die ganze Datensammlerei rein passiv, d.h. rein zu informativen Zwecken. (Ausnahme: H-Adressen-Vervollst„ndigung wenn HADRSTORE 2 eingestellt ist). Ob aus dieser Funktion im Endeffekt eine Form des Autoroutings erwachsen k”nnte, halte ich fr sehr fragwrdig. Da sich dieses Verfahren auch bei anderen Systemen nicht als fehlerfrei herausgestellt hat (es bilden sich immer wieder Schleifen oder grob falsche Wege), sehe ich darin eher ein Informationssystem fr den Sysop, um leichter ein korrektes Forwardfile erstellen zu k”nnen. ab 1.20 (22.03.94): - Bug bei der H-Adress-Erweiterung: Gelegentlich konnte es zu vollkommen falschen Forwardadressen kommen, weil ein Wurm in der Hashverkettung war. Ist behoben. Neue Einstellung von hadrstore: hadrstore 2: Rufzeichen wird nur erweitert, wenn der Benutzer keine vollst„ndige H-Adresse angegeben hat. hadrstore 3: Adresse wird immer aus der Datenbank entnommen. - Durch ein erneutes Missgeschick in der Reorg-Routinen wird beim reorg das BID-File in einen unbrauchbaren Zustand versetzt. Bitte mit der neuen Version m”glichst bald REORG I machen dann tuts wieder korrekt. - Žnderung im FORWARD-Befehl: Bei Bulletins wird nicht mehr die Adresse der Nachricht ge„ndert, sondern die Nachricht lediglich unver„ndert zum angegebenen Ziel weitergeleitet. Beispiel: Eine Nachricht @DL bleibt nach dem Forward-Befehl @DB0AAB im Verteiler @DL, wird aber zu DB0AAB weitergegeben (wenn nicht schon vorhanden, BID wird geprft). - Neuer Befehl EXPORT: export schreibt alle Ausgaben, die durch erzeugt werden in das angegebene File. Beispiel: ex ibm.txt r ibm 1- ex test d dl8mbt 1- Die Option -a bewirkt ein Anh„ngen an ein vorhandenes File, ansonsten wird kommentarlos berschrieben. Beispiel: ex -a test.txt ps - Das Userpasswort ist nun abschaltbar, da sich offenbar einiges Schindluder damit breitgemacht hat. Es bestehen 2 M”glichkeiten: userpw 0 (init.bcm oder direkt in der Box) bewirkt, daá in der ganzen Box die User-Passwort-M”glichkeit abgeschaltet ist. Dabei ist lediglich die Eingabe abgestellt, die Funktion ist nach wie vor in betrieb. Der Sysop kann nach wie vor Passw”rter eingeben. Mit dem Befehl a pw off kann ein Benutzer sein eigenes Passwort abstellen. Es ist nur noch dem Sysop m”glich (mit "setuser pw") dieses wieder zu aktivieren. Im ALTER-Befehl (Sysop) wird ein abgestelltes Passwort mit -1 gekennzeichnet, im USER-Befehl (z.B. u -a oder u -p) wird an der Stelle P der Wert 2 geschrieben, wenn das Passwort abgestellt ist. - Es gab viele Beschwerden wegen unerwnschter Fernl”schungen durch andere Sysops. Es sind zu diesem Zweck 2 neue Parameter hinzugekommen, mit denen jeder Sysop seine Box so einrichten kann, wie es erwnscht ist eraselog 0 kein Logging von gel”schten Files 1 remote-erase (auch Versuche werden gespeichert, wenn rem-erase aus ist) Kennzeichen im File: #L oder #K (in dieser Box ferngel”scht) Kennzeichen #X bedeutet, daá der L”schbefehl nicht von der Box kommt, bei der die Nachricht eingegeben wurde. 2 sysop-erase (bulletins+privatmails, die lokal "zensiert" wurden) Kennzeichen: #S 4 privatmail-erase (l”schen eigener Nachrichten) Kennzeichen: #E 8 privatmail-erase nach Forwarding (Nachrichten, die die Box verlassen) Kennzeichen: #F 16 unerase-Befehle werden auch gelogt. Kennzeichen: #U 32 L”schen von Nachrichten nach Transfer (nur bulletins) Kennzeichen: #T Die Werte k”nnen miteinander kombiniert werden, komplettes Logging: 63 Die L”schungen werden im File TRACE\ERASELOG.BCM vermerkt. In diesem File kann analog zu SLOG etc. mit dem Befehl ELOG gesucht werden. remerase 0 remote-erase ganz abgeschaltet. Ankommende E-Nachrichten werden ignoriert, aber ggf. im Log vermerkt. Dadurch k”nnen L”schungen evtl. h„ndisch durchgefhrt werden. 1 remote-erase ein (wie bisher, alle L”schungen werden durchgefhrt) 2 Fernl”schung wird nur durchgefhrt, wenn die Nachricht in derselben Box gel”scht wird, von der sie eingegeben wurde. 3 Fernl”schung im Fall (2) wird zwar durchgefhrt, jedoch werden solche Nachrichten (mit X gekennzeichnet) beim PURGE nicht gel”scht sondern bleiben bis zum Verfall der Lifetime erhalten. Sie k”nnen mit dem Befehl CHECK -R gelistet werden (check -r zeigt im Gegensatz zu bisher nur noch die mit X gekennzeichneten Nachrichten an), ein l”schen der Nachrichten ist ber den Umweg "unerase " und "erase " m”glich. Dadurch l„át sich "Zensur" selbst entscheiden, ob die Nachricht nicht doch wieder aufscheinen soll. - Die Meldung "Soeben ist eine neue Nachricht .. eingetroffen" wird nun in der richtigen Sprache gesendet. Bisher war es die Sprache dessen, der die Nachricht in die Box gespeichert hat. Diese Žnderung steht zwar vom Nutzen in keinerlei Verh„ltnis zum Aufwand, wurde aber von sehr vielen Leuten mit groáer Dringlichkeit angemahnt (mein Kommentar: Nietenz„hler hi). Als angenehme Randerscheinung wird jetzt der Prompt bei Erscheinen dieser Meldung auf das eigene Rufzeichen gesetzt, damit ein anschlieáendes "r 25" nicht ins leere geht, wenn der Prompt anders steht. - WORLI-Boxen drfen nun auch eine Nachricht mit ST .. statt SP und SB schicken. Es konnte mir zwar niemand befriedigend erkl„ren worum es sich dabei handelt, aber es scheint vorzukommen. - Es ist nun auch ein KILL-Befehl auf einen Purge- oder Reorgprozess zul„ssig. Das hat bisher zu einem klemmen der Box gefhrt. - Hinweis (War schon bisher so, wurde allerdings nicht erw„hnt): Im User-Passwort (bei ALTER PW) drfen keine Zeichen , (Komma) und ; (Semikolon) vorkommen. Diese werden bei der Eingabe verschluckt. - REPLY kann nun auch mit Board/Bereich versehen werden. REP ohne Parameter bezieht sich nach wie vor auf das zuletzt gelesene File. Auch die Befehle ERASE UNERASE TRANSFER SETLIFE FORWARD beziehen sich auf das zuletzt gelesene File, wenn kein Board/Bereich angegeben wird. - Statt eines Bereiches kann nun auch ein Suchbegriff angegeben werden. Dieser muá in Anfhrungszeichen stehen. Beispiele: e "betreff" e ibm "suche" r baybox "bcm120" rep "kritik" tr dl8mbt "df3vi" >dg5mgn Der Suchbegriff kann irgendwo in einer Zeile des LIST-Files auftreten. Es kann also (wie bisher auch schon) bei der Suche nach Einzelzeichen zu mehrdeutigkeiten kommen. Die Žnderung gilt fr die Befehle ERASE UNERASE TRANSFER SETLIFE FORWARD REPLY READ - Mit dem Parameter CREATEBOARD 1 kann eingestellt werden, daá auch ein Benutzer einen neuen Boardnamen unter TMP anlegen kann (wie beim Forwarding). Ich halte es zwar nicht fr sinnvoll, aber es gab schon einige Beschwerden, warum man das bei der Baycom-Box nicht kann obwohl es woanders geht. ab 1.21 (05.04.94): - Diverse kleine Innenkosmetik, die ein Aufz„hlen nicht lohnt. - Fehler im Aufbau des hadress.bcm beseitigt (Doppeleintr„ge, Mist in der Headerzeile etc). Bitte einmal reorg h machen. - REPLY-Befehl geht nun wieder fr Bulletins - Die Kopfzeile im Read-Befehl ist nun wieder exakt wo wie vorher Ich hatte die Darstellung etwas verkrzt, um ein šberlaufen der Zeile zu verhindern. Dabei ist mir entgangen, daá viele Leute die Mails nicht lesen wollen, sondern maschinell auswerten, und da muá offenbar alles aufs Bit genau passen. In diesem Zusammenhang sollte ber eine Maschinenlesbare Boxoberfl„che nachgedacht werden, da es meines Erachtens untragbar ist, alte Krcken bis zum Nimmerleinstag mitzuschleppen, nur weil es sonst die "Maschinisten" nimmer lesen k”nnen. - Der Check-Befehl ist gravierend schneller geworden. Dies wird mit einem Hilfsfile CHECKNUM.BCM erreicht, das die Nummern innerhalb der Rubriken enth„lt. Dieses File wird automatisch erzeugt und aktualisiert, kann aber auch durch "reorg n" gezielt neu erzeugt werden. - H-Adressen drfen nun mehr als 24 Zeichen lang sein. Zum Zeitpunkt des Designs der Box war noch nicht abzusehen, daá manche Sysops irrwitzig lange Adressen einstellen. Nun ist eine maximale L„nge von 39 Zeichen m”glich. Zu diesem Zweck muá das File HADDRESS.BCM umorganisiert werden. Dies geschieht beim Starten automatisch (kein Eingreifen vom Sysop erforderlich), das File heiát knftig HADR2.BCM. Das alte File kann gelegentlich gel”scht werden, wenn sicher ist, daá kein Zurckrsten auf eine alte Version mehr erforderlich ist (!). Nach dem Starten ist ein reorg h sinnvoll, aber theoretisch nicht erforderlich. Ich empfehle es trotzdem. - Nach diversen Diskussionen und Problemen habe ich mich entschlossen, die Auswertung der Forwardwege prinzipiell zu erneuern. Herausgekommen ist eine L”sung, die nun voll dem Lehrbuch entspricht und trotzdem halbwegs robust gegen falsche Einstellung ist: Einlesen von FWD.BCM -------------------- Bei jedem Bezeichner werden, beginnend von rechts, alle Bezeichner abgeschnitten, die in der eigenen Boxadresse enthalten sind. Beispiel bei DB0AAB.#BAY.DEU.EU: db0wgs.#bay.deu.eu .eu ist enthalten, wird abgeschnitten db0wgs.#bay.deu .deu ist enthalten, wird abgeschnitten db0wgs.#bay .#bay ist enthalten, wird abgeschnitten db0wgs bleibt ber. Muss bekannt sein, da in der eigenen Region k1xx.#bay.nj.usa.na bleibt unver„ndert, da zwar #bay in der eigenen Adresse enthalten w„re, aber von rechts begonnen wird. .#hes.deu .deu wird abgeschnitten, .#hes berlebt In dem so eingelesenen Forwardfile sind nur noch Bezeichner enthalten, die auáerhalb der eigenen Bereiche liegen. Auáerdem wird automatisch (wenn nicht schon vorhanden) zu jeder Box das jeweilige Boxcall mit eingetragen. Das vereinfacht erstens die Auswertung, und zum anderen ist dadurch auch ein Alternativrouting zu Nachbarboxen m”glich, wenn man diese auch noch woanders eintragen will. Auswerten der Forwardadressen ----------------------------- Beim Auswerten der Forwardadresse wird zun„chst das ERSTE Feld untersucht. Wenn dieses in der Forwardliste exakt gefunden wird, so wird der Rest der H-Adresse ignoriert. Da Rufzeichen weltweit eindeutig sind, ist kein sinnvoller Fall denkbar, wo dies eine falsche Weitergabe ergibt. Ist das exakte Rufzeichen (oder fr bulletins der vollst„ndige Verteiler) nicht gefunden worden, so werden der auszuwertenden Adresse von rechts beginnend alle Bezeichner abgeschnitten, die in der eigenen Boxadresse enthalten sind (Beispiel siehe oben). Mit dieser modifizierten Adresse wird nun folgende Absuche durchgefhrt: Jeder Bezeichner im Forwardfile wird mit dem Ende der modifizierten Adresse verglichen. Dabei wird in der gesamten Tabelle nach der l„ngsten šbereinstimmung gesucht. Damit der Vergleich als erfllt gilt, ist eine rechtsbndige, exakte šbereinstimmung erforderlich. Auáerdem muá das Feld, mit dem der Vergleich durchgefhrt wird, entweder mit . beginnen, oder ein gltiges Boxrufzeichen sein (fr Konstrukte wie dh5rae.oe5xbl.aut.eu). Schlagen die bisherigen Vergleiche fehl, so wird nach passenden Wildcards gesucht. Diese mssen sich auf das Rufzeichen der Box beziehen (nicht auf H-Bezeichner) und funktionieren nur bei konkreten Adressen, nicht bei Verteilern. Auswirkungen im Forwardfile --------------------------- Die Adressierung bleibt fast vollst„ndig erhalten. Anpassungen fr Bezeichner, die im eigenen Bereich liegen, werden automatisch vorgenommen. Bei Bezeichnern im Ausland ist zu beachten, daá die Adresse nun streng von rechts ausgewertet wird (Ausnahme: ein konkretes Boxrufzeichen ist bekannt). Das heiát konkret, daá eine Angabe ".#tir" (Tirol) garnichts bringt, weil diese von rechts in einer Adresse wie "oe7xkj.#tir.aut.eu" gesucht wird. Das ".eu" darf entfallen, weil es in den eigenen Bereich f„llt. Das ".aut" ist jedoch auáerhalb und muá deshalb angegeben werden. Der korrekte Eintrag fr Tirol lautet also ".#tir.aut" Zus„tzlich kann in eine andere Richtung noch ".aut" angegeben werden. Da stets nach der l„ngsten šbereinstimmung gesucht wird, werden dann alle Nachrichten nach Tirol anders verteilt als der Rest von ™sterreich. Eine solche Einstellung bedingt natrlich, daá sich die Sysops halbwegs einig sind, wie ihre L„nder heiáen. Ich gebe zu, in diesem Fall ein schlechtes Beispiel gew„hlt zu haben (hi). Ein Sonderfall ist die von einigen wenigen Sysops eingestellte Adresse mit .EURO am Schluss. Diese F„lle mssen einzeln abgehandelt werden (in eine Richtung .HUN.EURO, in die andere .ITA.EURO) weil die Erkennung des eigenenen Kontinents hier nicht funktioniert und bei der strengen Leserichtung von hinten nach vorne das n„chste Feld sonst nicht ausgewertet wird. Vielleicht gelingt es aber auch, die wenigen (etwa 2% von allen in EU) Sysops davon zu berzeugen, es so zu machen wie alle anderen auch. Žnderungen 1.21c (19.04.94): - Zum leichteren Erzeugen des Userpasswortes durch beliebige Terminalprogramme kann nun mittels "a pwline 1" eingestellt werden, daá vor dem Passwortprompt vom Benutzer eine Zeile mit beliebigem Inhalt (z.B. pw oder sy oder irgendwas, das das Terminal "scharf" stellt) erwartet wird. Dadurch verh„lt sich die Box wie bei einem Sysop-Einstieg und das Password ist mit den meisten Terminals automatisch zu erzeugen. - Neben SAVE, HALFHOUR, HOUR wird nun alle Minute MINUTE.BAT und MINUTE.IMP ausgefhrt. Wenn die Files nicht existieren, wird nichts gemacht. Diese Erweiterung ist auf Wunsch entstanden und es ist nur auf schnellen Rechnern empfehlenswert, alle Minute ein Batch- oder Importfile zu starten. - Das BID-File kann jetzt mehr als 65535 Eintr„ge aufnehmen. Zu diesem Zweck muáte die Struktur des Files ge„ndert werden. Die relevanten Files heiáen nun BIDS2.BCM und BIDH2.BCM. Die Hashtabelle belegt nach der neuen Struktur 256kByte statt bisher 128kByte. Die Umstrukturierung erfolgt automatisch beim Start der neuen Boxversion. Die alten Files (bids.bcm und bidhash.bcm) k”nnen gel”scht werden, wenn nicht mehr auf eine „ltere Boxversion zurckgerstet werden soll. Beim Reorg werden im Unterschied zu bisher alle BIDs aus den vorhandenen Daten in das Bidfile mit aufgenommen. Der Parameter MAXBIDS bestimmt die maximale Anzahl BIDs im Bidfile, nachdem Reorg gelaufen ist. Im Betrieb wird das File bis zu 10000 Eintr„ge gr”áer, danach wird automatisch eine Reorganisation des Bidfile ausgel”st. Das dieser Parameter muá auf jeden Fall gr”áer eingestellt sein als die maximal zu erwartende Anzahl von Bulletins in der Box. Empfehlenswert ist die Defaulteinstellung 65536, bei zu vielen wird es langsamer und bei zu wenigen ist die Speicherzeit zu kurz. - L”schen doppelter Nachrichten mit REORG X Da es in der Vergangenheit mehrmals zu Fileverdopplungen durch die unterschiedlichsten Fehler in der BID-Ablage kam, ist nun mittels "reorg x" ein L”schen s„mtlicher Doppeleintr„ge m”glich. Die Funktion benennt die vorhandenen BIDfiles um, liest alle vorhandenen Bulletins ein, l”scht doppelte und kopiert anschlieáend die Files wieder zurck. Die Funktion sollte daher nicht unterbrochen werden. Wenn es doch passiert, so sollte bids2.reo und bidh2.reo anschlieáend h„ndisch in die entsprechenden *.bcm Files umkopiert werden, da sonst der BID-Bestand verloren ist. Die BID-Files sind w„hrend reorg x kleiner als im Betrieb. Keinesfalls drfen die Files w„hrend der reorg x l„uft umkopiert werden. Das kann zu Datenverlust fhren. Die Funktion schaltet die Box automatisch auf disable, weil der Ablauf kritisch ist. Vor dem Start sollten keine anderen Benutzer/Mailboxen eingelogt sein. W„hrend des Ablaufs drfen keine neuen Nachrichten eintreffen. Wenn man beim Ablauf die Box in Ruhe l„át, funktioniert der Vorgang zuverl„ssig und ohne Risiko. Von unn”tig h„ufiger Anwendung wird abgeraten, schon allein weil der Vorgang recht lange (ca. 1-4 Stunden) dauert. Žnderungen 1.31: Prinzipielles: - Fr eine Portierung nach Linux wurde der gesamte Code berarbeitet und portabel fr beliebige ANSI-C++ Compiler gemacht. Dabei haben sich teilweise gravierende interne Žnderungen ergeben, die im Idealfall jedoch keine Žnderung der Funktionalit„t bewirken. Sollten pl”tzlich Dinge nicht mehr gehen, die bisher gegangen sind, bitte ich um Mitteilung. Die Linux-Version ist noch im Test. Bei Interesse bitte bei mir melden. Ein paar Macken sind noch drin, aber Versuche kann man schon mal machen. - Info: Die Angabe "Swap" im VERSION-Befehl stimmt nur bei der Linux-Version. Zur Verbesserung der Portabilit„t existiert sie auch in der DOS-Version mit der Angabe "-". Auch an anderen Stellen (insbes. Kleinschreibung von Filenamen) wurden bei der DOS-Version Zugest„ndnisse an Linux gemacht. - Eigentlich sollte die vorliegende Version bereits mit einem neuen Interface zu L2.EXE laufen. Da dieser L2 aber noch nicht stabil genug ist und auch die Node-Version damit nicht mehr funktioniert habe ich nochmal das alte Interface hineingeflickt. Hier gilt im Prinzip das oben gesagte sinngem„á. Nun zu den tats„chlichen Žnderungen: - Verbesserungen am RUN-Interface: - die Files zum Auslagern der Programmausgaben werden nun mit eindeutigen tempor„ren Filenamen angelegt. - Metazeichen werden bei der Eingabe abgefangen. - die Datei RUNDAT.BCM enth„lt zum bisherigen Format noch weitere Zeilen in der Form: ----------------------------------------------- DL8MBT DF0AR Flori DL 0 1 0 2 Console call DL8MBT mybbs DF0AR name Flori language DL password 0 sysop 1 status 0 helplevel 2 digi Console txt_output 49L0G90 bin_output 49L0G91 ----------------------------------------------- Die beiden letzten Filenamen bestehen aus eineindeutigen, tempor„ren Filenamen, die von der Box vorgegeben werden. Das erste wird als Textfile zum Benutzer ausgegeben, das zweite transparent als Bin„rfile. Das RUN-Programm sollte hier auch l„ngere Pfadnamen akzeptieren, damit knftig hier Žnderungen auf Boxseite m”glich sind. Die Liste kann ggf. nach unten erweitert werden. Die Ausgabefiles werden nun in folgender Weise abgearbeitet: - Text-Ausgaben nach STDOUT (ehemals ANSWER.TMP) - Text-Ausgaben nach STDERR (ehemals ERROR.TMP) - Text-File welches mit txt_output benannt wird - Bin„r-File "bin_output" wird transparent, d.h. ohne jeden Vor- und Nachspann ausgegeben. *** Wer jetzt verwirrt ist: das Run-Interface ist trotz allem kompatibel zum bisherigen. Man MUSS also nichts „ndern, die Erweiterungen sind nur fr komplexe Programme, z.B. EL von DL5FBD gedacht. - wie an den vielen Filezugriffen zu sehen ist, ist fr einen befriedigend schnellen Betrieb von Utilities ein ordentlicher Rechner notwendig, also mindestens 386/33/4MB, bei kleinerer Maschine kann nur davon abgeraten werden weil jedes externe Programm als ungeheure Bremse wirkt. - Bei Import-Files gibt es etliche Verfeinerungen: o sollte nicht mehr zum Absturz fhren import innerhalb von import-files ist nun zul„ssig. Der Import wird allerdings gleichzeitig fortgefhrt (neue Task), das darf nicht zu Fehlern fhren. minute.bat/minute.imp wird nun zuverl„ssiger ausgefhrt neu: quarter.bat/quarter.imp alle Viertelstunde. - Automatische Import-Files funktionieren jetzt auch, wenn der Status des eigenen Boxrufzeichens auf 2 (gesperrt) gesetzt ist. Das war bisher nicht so. - Beim Ausschlieáen von Boards im Forward ("*RUBRIK") wird der Name vor passieren der CONVNAME-Funktion verwendet. - Es k”nnen nun maximal 30 Sprachen verwaltet werden, sofern der Speicherplatz ausreicht. Bisher war die Grenze bei 12 Sprachen. - Verfeinerungen im Reorg der Checkliste. Insbesondere der Fall einer leeren Checkliste fhrt nicht mehr zum Fehler. - Žnderung in der H-Adressen-Expandierung. Wenn hadrstore 2 eingestellt ist und vom Benutzer eine nicht auswertbare Adresse eingegeben wird, wird sie trotzdem wie bei hadrstore 3 expandiert. Dadurch sollten im Durchschnitt weniger Mails liegenbleiben. - Wenn MYBBS nicht bekannt ist und keine Adresse angegeben wurde, erfolgt nun bei SEND eine Fehlermeldung - Wird PURGE fr Bulletins aufgerufen, so erfolgt der anschlieáende Neuaufbau der Checknummern im Hintergrund, Prompt erscheint sofort wieder. - Einbau des BOX-BIN-Formates. Es ist nun Benutzer- und Forwardseite fr Bin„rfiles kompatibel zu DieBox eingebaut. Ich h„tte eigentlich lieber das weltweit benutzte und bew„hrte Verfahren nach F6FBB benutzt, der politische Druck hat die Entwicklung jedoch in diese Richtung getrieben. Ich m”chte an dieser Stelle meine tiefe Verachtung gegenber den Zeitgenossen zum Ausdruck bringen, die durch ideologische Hetzparolen Stimmung gegen Sysops von BayCom-Boxen gemacht haben, anstatt in einer sachlichen technischen Diskussion eine L”sung herbeizufhren. Manche Typen haben sich zu diesem Thema ein solch sch„biges Zeugnis ausgestellt, daá das Vertrauen fr eine knftige Zusammenarbeit stark belastet ist. Zur Technik: Aktiviert wird Boxbin beim Forward durch eine der Bedingungen: - Option -i in fwd.bcm - SID-Kennung "baycom" mit Version >= 1.30 Das Verhalten auf User- und Forwardseite ist weitgehend identisch zu Diebox (sollte zumindest so sein, Fehler bitte melden). Start-Bin„rtransfer: #BIN# oder #BIN##| oder beide M”glichkeiten mit Filespec dahinter. In dir/list/check erfolgt Kennzeichnung durch (BIN) vor dem Betreff. Beim Forward wird CRC-Error durch |> statt > gekennzeichnet. Das File wird dann bis zu 4mal wiederholt. In den Textfiles wird der Bin„r-Start in der Headerzeile nach dem Operator = im komprimierten Format angegeben. Am Bin„rstart ungleich =!!! (entspricht 0) erkennt man ein Bin„rfile. Es darf keinesfalls mit einem Editor bearbeitet werden, da sonst evtl. der Inhalt oder der Offset nicht mehr passt. Am Beginn des eigentlichen Bin„rinhalts wird die #BIN#... Zeile gespeichert und auf insgesamt 80 Zeichen mit 0 (nicht blank) aufgefllt. An DieBox-Sysops: ================= Bitte in MBSYS\SFWID.BOX folgenden Eintrag machen: ------ BayCom-1.1 18 S BayCom-1.2 18 S BayCom- 19 ------ Damit ist sichergestellt, daá ab BayCom-Box 1.30 auch BIN-Forward funktioniert. Dies ist notwendig ehe Bin-Forward wirklich gehen kann. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Bitte diese Information an alle Nachbar-Sysops weitergeben. ! ! Erfolgt dieser Eintrag bei einem DieBox-1.9 Nachbar nicht, so ! ! kommt es beim Forward von Bin„rfiles zum Blockieren. Es ist ! ! also sehr wichtig daá ALLE DieBox-Sysops diesen Eintrag machen ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - BUGs: Es hat im Moment ein paar Unzul„nglichkeiten, die bei n„chster Gelegenheit behoben werden: - transfer von Bin„rfiles funktioniert nicht. - kann ein Bin„rfile nicht zugestellt werden, erfolgt nur ein Eintrag ins Syslog, keine Mail an den Adressaten. Ich wollte die bin-f„hige Version so schnell wie m”glich unters Volk bringen, damit die militanten Streitereien rund um bin-fwd aufh”ren. Verfeinerungen haben eher Zeit, kommen aber alsbald. Žnderungen 1.31c: - gel”schte TMP-Boards wurden bei PURGE nicht entfernt (Portierungsproblem von DOS nach ANSI-C++/POSIX). Hat viel Arbeit gemacht, sollte aber nun wieder tun. Selbiges gilt fr den MVBOARD-Befehl. Insider kennen die Aufrufe findfirst/findnext, von denen ich etliche -zig drin hatte und fr die es kein portables Žquivalent gibt, sprich jede Stelle muáte einzeln auf Aufrufe von readdir() und stat() umgestrickt werden. Das wird m”glicherweise noch weitere Nachwehen mit sich ziehen, die noch nicht aufgefallen sind. - Filenamen waren immer noch teilweise groágeschrieben und mit \ als Pfadseparator. Da DOS auch kleingeschriebene Namen versteht und / fr die Pfade, und das dann zumindest richtung UNIX portabel wird, habe ich nun alle Spuren verwischt (hoffentlich...). - Die Option -x beim READ von Bin„rfiles bewirkt, daá nur der Textteil der Nachricht ausgegeben wird. Ich gebe zu daá -x dafr reichlich bl”d ist, aber es war sonst nix mehr frei und ich wollte keinen neuen Befehl erfinden. Vielleicht hat jemand eine bessere Idee, ich bin da aufgeschlossen. - Beim FORWARD-Befehl bewirkt neuerdings die Option -f, daá bei Bulletins die Adresse tats„chlich im File ge„ndert wird und das File nicht nur in die FWD-Liste eingetragen wird. Das war frher fest so, ist normalerweise bei Bulletins nicht sinnvoll aber kann in Spezialf„llen erforderlich sein. Beispiel: Eine Nachricht, die @DB0AAA adressiert ist, soll @P52 verteilt werde. Wenn man nun f lokales 5 @p52 angibt, bleibt die Nachricht @DB0AAA adressiert, wird aber nach DB0CZ weitergegeben. Gibt man f -f lokales 5 @p52 an, so steht in der Nachricht anschlieáend @P52 drin. (Anmerkung: dieses Beispiel ist mir so zugegangen, ist aber durchaus representativ. Fr andere Adressen als lokale Verteiler ist die Anwendung n„mlich nicht sinnvoll). - Beim Liegenbleiben von Bin„rmails wird nun eine Nachricht erzeugt, wo das Bin„rfile liegt. Transfer von Bin-Mails funktioniert noch nicht. - Da bei IMPORT-Files ein "o del " nicht zuverl„ssig funktioniert wenn das file sich selbst l”schen sollte (z.B. wegen eines geladenen SHARE.EXE), ist nun eine sauberere L”sung eingebaut. Der Befehl impdel innerhalb eines Importfiles bewirkt, daá das Importfile sich an der Stelle beendet und danach sich selbst l”scht. kann irgendein Name sein, sollte aber sinnvollerweise der Name des gerade laufenden imp-files sein. Dieser ist dem Programm jedoch an der Stelle nicht bekannt, daher muá er angegeben werden. Žnderungen 1.33a: - Editierm”glichkeit fr H-Adressen: p -ea setzt eine neue Adresse (Eintrag wird erzeugt falls er nicht existiert) p -ed l”scht einen Eintrag p -eh
setzt eine neue R: - Zeile p -et setzt Header-Empfangsdatum auf Anmerkung: es kann auch ein Header-Empfangsdatum aus der "Zukunft" angegeben werden, dadurch kann ein Eintrag fr eine definierte Zeit gesperrt werden. - Bei zu langen Mails (wegen gesetzter -b Option im Fwd-File) wird nun eine Warnmail an den Adressaten geschickt - Doppelte Privatmails bei Fwd-Mehrfacheintr„gen (kamen seit Version 1.30 mitunter vor) sollten wieder vorbei sein. - Boards mit / oder \ im Namen werden nun nicht mehr angelegt. Diese Zeichen werden automatisch gegen ein _ ersetzt. - Beim Purge kommt es nicht mehr zu Klemmern, wenn ein Verzeichnis nicht gel”scht werden kann (z.B. wegen "/" im Filenamen, siehe oben) Žnderungen 1.34: - einige interne Bugfixes vorheriger Versionen, keine funktionalen Žnderungen Žnderungen 1.35: *** Bug-Behebungen: - leere Boardnamen werden nicht mehr erzeugt. (Ich hoffe ich habe alle dussligen Randf„lle erwischt). Boardnamen mit mehr als 8 Zeichen werden ebenfalls nicht mehr akzeptiert. - Die L„nge von Bin„rfiles bei LIST/CHECK etc. war um ein Byte falsch. Sollte nun stimmen. - p -e.. (hadressen editieren) war auch im nicht-sysop status m”glich. Das war so nicht beabsichtigt und ist behoben. - Bei der Aussendung von Usermails war immer noch ein Fehler, so daá in Spezialf„llen Verdopplungen vorkommen konnten. Sollte nun endgltig behoben sein. - Wenn ein Password gesetzt ist, kann mybbs nur noch in der Box ge„ndert werden, die vorher als mybbs eingestellt war. - Beim Bin„r-Forward konnte es in seltenen, aber reproduzierbaren F„llen zum Aufh„ngen des Forward durch wiederkehrende CRC-Fehler kommen. Dies lag an einer unsauberen Positionierung im File und sollte nun endgltig behoben sein. - Die Optionen zum Forward werden bei DIR PATH nun korrekt angezeigt, ein Bug hat gelegentlich Optionen unterschlagen. - Wird eine Usermail nach Bulletin transferiert, so wird automatisch ein BID hinzugefgt. - Import-Files werden nicht mehr im cmdlog.bcm gespeichert, Fehlermeldung bei IMPDEL ist abgefangen. - H„nger beim Forward, wenn U in den Zeiten eingetragen sind, sollten aufh”ren. *** Neue Funktionen: - postfwd diese Funktion schickt liegengebliebene Privatmails nach @mybbs nach. Alle Usernachrichten werden durchgesucht und weitergeleitet, falls sie liegengeblieben sind. postfwd ist sozusagen ein Aufr„mdienst fr liegengebliebene Nachrichten. Nachrichten k”nnen liegenbleiben und durch postfwd angestoáen werden, wenn - w„hrend ihrer Ankunft zu einer ungnstigen Zeit ein Disconnect oder shutdown erfolgt - die Adresse nicht bekannt war als die Nachricht ankam. - Die Nachricht falsch adressiert ist, aber mybbs bekannt und korrekt ist. - Die Nachricht weder richtig adressiert war, noch mybbs bekannt ist, aber inzwischen eine Nachricht vom Adressaten angekommen ist, aus der sich sein mybbs schlieáen l„át Postfwd tr„gt auch Nachrichten, die bereits zum Foward eingetragen sind, nochmal ein. Das heiát, daá Nachrichten zu Boxen, die z.B. im Moment nicht erreichbar sind, dort nochmal eingetragen werden. Das ist aber nur ein Sch”nheitsfehler, da die Nachrichten deswegen nicht mehrfach verschickt werden. Das fwd-file fr solche F„lle wird l„nger als n”tig, allerdings sind diese Files ohnehin nicht groá und kosten daher wenig Plattenplatz. - Da die vielen Batch- und Importfiles zu den verschiedenen Zeiten langsam unbersichtlich geworden sind, gibt es nun eine neue, flexiblere Bearbeitung fr externe Programme und Importe. Gesteuert wird die gesamte Zeitverarbeitung durch ein File crontab.bcm Dieses File ist im Format sehr „hnlich dem gleichnamigen File unter UNIX. Das folgende Beispielfile ersetzt alle bisherigen zeitgesteuerten Jobs und fgt ein paar neue hinzu (reorg und postfwd): ---------------------------------------------------------------- #Timing-File for BayCom-Mailbox crontab.bcm # #ranges: #minute: 0-59 hour: 0-23 day: 1-31 month: 1-12 #weekday: 0-6 (0:sun 1:mon 2:tue 3:wed 4:thu 5:fri 6:sat) # #minute hour day month weekday command * * * * * minute 0,30 * * * * halfhour 1,31 * * * * beacon 3,33 * * * * forward 5 2 * * * postfwd 5 3 * * * purge 35 3 * * * save 5 4 * * 0 reorg 0,15,30,45 * * * * quarter 2 0 * * * hour0 2 1 * * * hour1 2 2 * * * hour2 2 3 * * * hour3 2 4 * * * hour4 2 5 * * * hour5 2 6 * * * hour6 2 7 * * * hour7 2 8 * * * hour8 2 9 * * * hour9 2 10 * * * hour10 2 11 * * * hour11 2 12 * * * hour12 2 13 * * * hour13 2 14 * * * hour14 2 15 * * * hour15 2 16 * * * hour16 2 17 * * * hour17 2 18 * * * hour18 2 19 * * * hour19 2 20 * * * hour20 2 21 * * * hour21 2 22 * * * hour22 2 23 * * * hour23 ---------------------------------------------------------------- Kommentarzeilen beginnen mit einem Zeichen ungleich 0-9 oder * In den linken 5 Spalten werden Zeiten angegeben. Hier kann jeweils entweder eine Zeit stehen, oder mehrere durch "," getrennt, oder Zeitbereiche in der Form "5-12" oder jede beliebige Kombination die nicht l„nger als 30 Zeichen ist, also z.B. "1,2,4-7,5,6-12,16" Ein * steht fr "jede Zeit ist gltig". Angegeben werden Minuten, Stunden, Tag im Monat, Monat, Tag der Woche. Bei letzterem bedeutet 0=Sonntag und z„hlt bis 6=Samstag. Alle Zeitangaben mssen erfllt sein, damit das angegebene Programm ausgefhrt wird ("UND"-Verknpfung). Sollten mehrere Zeitmodelle "ODER"-verknpft werden, so kann dasselbe Programm in mehreren Zeilen ausgefhrt werden. Das ausgefhrte Kommando ist entweder ein Batchfile (wird unter DOS ausgefhrt, Endung .BAT, oder ein Importfile (Endung .IMP), wie bisher gewohnt. Auáerdem werden einige reservierte, interne Kommandos ausgefhrt. Diese sind: purge startet das Ausputzen des kompletten Filesystems (wurde bisher zu "purgehour" gestartet) forward st”át das Forwarding zu benachbarten Boxen an (wurde bisher zur vollen und halben Stunde gestartet) beacon st”át das Erzeugen einer Mail-Bake an (wurde bisher in "mailbeacon"-Intervallen gestartet) postfwd leitet liegengebliebene Usermails weiter (neu) reorg [opt] startet Filesystem-Reorganisation. Wenn [opt] weggelassen wird, wird ein kompletter Reorg gemacht. Ansonsten kann ein Teil-Reorg angegeben werden, n„mlich einer der Buchstaben b Bulletins c Check-Liste h H-Adress-File i BID-File l User-Liste n Check-Nummern (in reorg c enthalten) u User-Nachrichten x Ausmisten von doppelten Bulletin-Eintr„gen (Vorsicht!) Beispiel: reorg i (reorg wurde bisher nicht automatisch aufgerufen) Sind zu einer Zeit mehrere Bedingungen gleichzeitig erfllt, so werden sie in der Reihenfolge der crontab abgearbeitet. Wenn ein batch-Programm (also externer DOS-Aufruf) mehr als eine Minute dauert, kann es sein daá andere Jobs, die unter derselben Zeit aber weiter hinten stehen, nicht mehr aufgerufen werden, weil inzwischen die Zeit gewechselt hat. Interne Kommandos (purge, forward etc) sowie IMPORT-Files werden nebenl„ufig ausgefhrt, d.h. blockieren sich nicht gegenseitig sondern starten wirklich zur gleichen Zeit. Wenn solche šberschneidungen unerwnscht sind, so ist dies durch entsprechendes Timing oder sleep-Kommandos in den entsprechenden Importfiles zu erreichen. Das File crontab.bcm wird bei jedem Minutenwechsel neu gelesen. Es sollte daher nur mit den Box-internen Befehlen edit,rtext,wtext bearbeitet werden und nicht durch externe DOS-Aufrufe (z.B. o copy ..) Dadurch ist sichergestellt, daá keine Schreib-/Lesekonflikte auftreten. Hinweis: Die Parameter mailbeacon und purgehour entfallen knftig. Sie werden vorerst noch aus Kompatibilit„tsgrnden mitgefhrt, damit ein Zurckrsten auf „ltere Versionen m”glich ist. - Beim der Anzeige "From: ..." im Kopf einer Nachricht wird nun statt dem eigenen Boxcall ggf. das Mybbs des Einschreibers und, falls bekannt, dahinter in Klammern der Name angegeben. - Passwort-Funktion fr Forwarding Zum Forwarden ist nun eine DieBox-kompatible Passwortfunktion eingebaut. Soll mit Passwort geforwardet werden, so muá im BCM-home Verzeichnis pro Forwardpartner ein File .pwd, also z.b. db0aab.pwd liegen. Dieses File enth„lt eine 1620 Bytes lange Zufallsfolge, die keine Zeilenumbrche oder Sonderzeichen enthalten darf. Das Format entspricht zu 100% dem File pwlist.bcm Dieses File muá spiegelbildlich bei beiden Forwardpartnern gleich vorhanden sein. Existiert ein solches Passwortfile, so MUSS der Forwardpartner das Verfahren beherrschen und es MUSS das passende Passwortfile bei ihm vorliegen, sonst ist kein Forward m”glich. Der Austausch des Passwortes funktioniert so: Wird die Box von auáen connected, gibt sie als ctext das SID von sich (die Zahlen bedeuten das Datum 09.11.94 13:25): [BayCom-1.35-H$] 0911941325 Hinter dem SID wird durch ein Blank abgetrennt die Loginzeit angegeben. Diese wird vom Partner ausgewertet. Die Box, die den Connect aufgebaut hat, antwortet mit ihrem SID: [BayCom-1.35-H$] aZ6R Hinter dem SID wird eine 4stellige Folge aus dem Passwortfile angegeben, die aus Datum und Uhrzeit des Logins gewonnen wird. Der Zugriffsalgorithmus ist wie bei DieBox. Mittels "pwgen " l„át sich eine geeignete Zufallsfolge erzeugen. Diese l„át sich mittels 7plus packen, importieren, zur anderen Box schicken, exportieren, 7plus entpacken etc. Dadurch ist es nicht n”tig, das File irgendwo ber einen Userzugang zu schicken. - Fr Nachbarboxen, die ernsthafte Probleme mit der Anzahl der Forwardconnects haben, l„át sich nun der Verbindungsaufbau bei jedem Neueintreffen eines Files abstellen. Bei Angabe der Option -d im fwd.bcm wird Forward zu dieser Box nur noch alle halbe Stunde (bzw. wie in crontab.bcm angegeben) angestoáen. Es muá allerdings in aller Deutlichkeit gesagt werden, daá sich dadurch die Performance im Forwarding DRASTISCH verschlechtert, und daá vor allem Bulletins dadurch nicht mehr den schnellsten Weg laufen, sondern einen zuf„lligen Weg, wie eben das File gerade ins Zeitraster f„llt. Ich habe mich deswegen so lange geweigert, eine diesbezgliche Žnderung in die Sofware einzubaun, weil ich sie fr technisch absolut unsinnig halte. Ein Connect mehr oder weniger kostet im Netz so gut wie keine Resourcen, hingegen ein unsinnig gelaufenes Bulletin sehr wohl. Auáerdem sollen Privatmails so schnell wie m”glich ankommen und nicht darauf warten mssen, bis mal wieder ein Zeitschlitz frei ist. E/M-Nachrichten fhren nicht mehr zum Anstoáen des Forwarding sondern werden nur zu forward-Zeiten bzw. im Anschluá an "echte" Files gesendet. - Zusammenfassung aller Optionen beim Forward (es hat sich immer wieder was dran getan, daher hier mal alle auf einmal): -b Filel„ngenbegrenzung in Bytes -d "delay": Verz”gertes Forwarding -i BoxBin-Forwarding aktivieren -e E/M Nachrichten mehrzeilig senden -f Leerzeile vor Beginn des Forwarding senden -p keinen Prompt nach dem ctext-SID schicken -r Boardnamen ausschlieálich forwarden -t TRACE aktivieren (bei fwdtrace 2) - Mit viel Widerwillen habe ich eine M”glichkeit implementiert, die eigenen Usermails fr andere unleserlich zu machen. Ich habe mich ber Jahre geweigert, eine solche M”glichkeit einzubaun, weil sie meines Erachtens den Grundlagen des Amateurfunks widerspricht. Da aber wertlose Zeitgenossen durch permanentes Auslesen und ”ffentlich-machen fremder Privatmails in letzter Zeit viel Unfrieden gestiftet haben, ist nun auch mein Geduldsfaden gerissen. Die Einstellm”glichkeiten sind vielf„ltig: Fr den Sysop: readlock 0 Nur Sysop kann list/read Sperre setzen (mittels "setuser readlock ") 1 Benutzer kann list/read Sperre fr sich setzen Fr den Benutzer: alter readlock 0 wie bisher, jeder kann alle Usermails sehen 1 bei dir/list/read erscheinen nur - selbstverfaáte Nachrichten - Nachrichten, die schon gelesen wurden 2 bei dir/list/read erscheinen nur die Nachrichten, sie selbst verfasst wurden. Die Einstellungen "alter readlock 1" und "2" sind nur bei gesetztem Passwort sinnvoll. Andernfalls ist durch Rufzeichenmiábrauch eine Umgehung m”glich, dies sollte verhindert werden. Benutzer, die fr sich die Lesesperre gesetzt haben, sind mittels u -r auflistbar. Die Defaulteinstellung fr alle Benutzer ist, daá wie bisher alle Nachrichten allgemein lesbar sind. - Mit Sysop-Berechtigung sind nun auch gel”schte Nachrichten lesbar (unerase nicht erforderlich). - Mit ALTER ECHO 0|1 l„át sich einstellen, daá jeder eingegebene Befehl von der Box nach dem Prompt zurckgeschickt wird. Das erh”ht die Netzbelastung nicht nennenswert, weil das Echo direkt an die Antwort geh„ngt wird. Es erm”glicht aber eine leichtere Zuordnung von Kommandos zu ihrem Ergebnis, insbesondere bei Filemitschnitten. Die Echoerzeugung ist nur beim Packet-Einstieg aktiv, an der Konsole und ber TTY gibt es ohnehin ein lokales Echo der eingegebenen Zeichen. - Statt "ALTER FORWARD " wird auch "ALTER MYBBS " akzeptiert, um die Befehlsvielfalt etwas weniger kritisch zu gestalten. - Nicht zuletzt: Fr die Version 1.35 gibt es eine grundlegend aktualisierte Sysop- und Benutzerdokumentation von Dietmar, OE3DZW. Ich m”chte an dieser Stelle einen herzlichen Dank an Dietmar aussprechen, der mit groáer Sorgfalt die Dokumentation auf den neuesten Stand gebracht und erweitert hat. Die Doku ist wie BCM.EXE in der BAYBOX-Rubrik sowie knftig auf der BCM-Verteildiskette zu finden. BCM-Žnderungen 1.36: - Ab der 1.36 ist BCM.EXE mit Option 80386 compiliert. Das spart etwas Platz und verschnellert den Code etwas. Unter anderem hat sich deswegen auch die Anzeige CPU-Index ver„ndert. Die Schleife, die ich zum sch„tzen der CPU verwendet habe, wurde fast doppelt so schnell wie vorher. Wer Probleme mit der 386er-Version hat m”ge mir das bitte mitteilen. Es ist per Compilerschalter im Moment auch noch 286er m”glich. Allerdings wird sich das im Laufe der n„chsten Versionen „ndern. Ich strebe mittelfristig 32Bit-Code an, und sp„testens dann ist die 286er-Epoche beendet. Bitte um diesbezgliches Feedback, hoffe aber daá es inzwischen keine 286er-Boxen mehr gibt (zumal es 386-boards gelegentlich fr 2stellige DM-Betr„ge gibt). Nebenbei ist eine DPMI32-Version (32Bit DOS) entstanden, die sehr viele schmerzliche Umbaumaánahmen erfordert hat und bis jetzt noch nicht zufriedenstellend l„uft. Die Speicherplatzprobleme sind damit zwar vom Tisch, aber es ergeben sich massive Schw„chen in der Performance und Zuverl„ssigkeit. Als Abfallprodukt entstanden etliche interne Optimierungen, weil die 32-Bit Version so erb„rmlich langsam geworden ist, daá an verschiedenen Stellen Straffungen unvermeidbar waren. Schneller geworden ist in erster Linie das L2-Interface und die Bearbeitung der Taskwarteschlange. - Viele interne Bugbehebungen, deren Aufz„hlung sowohl mhsam als auch im Prinzip unn”tig ist. - Beim User-Suchbefehl gibt es ein neues Suchkriterium: u l= sucht nach Benutzern, die ihren letzten Login nach hatten. Also z.B. u -u l=01.10. listet alle Benutzer deren MYBBS unbekannt ist und die nach dem 1.10. zuletzt in der Box waren. Die Eingabe des Datums ist weitgehend fehlertolerant und erg„nzt weggelassene Angaben durch das heutige Datum. - Timeout beim Forwarding. Um Eventualit„ten vorzubeugen, gibt es nun beim Forwarding ein Timeout. Die Zeit ist mit fwdtimeout 30 einstellbar und gilt fr den Aufbau der Verbinung und den normalen FWD-Befehlsaustausch. W„hrend der Filebertragung wird der Timeout neu gesetzt, wenn Daten den Besitzer wechseln. Also auch total klemmende Links werden nach dieser Zeit abgebrochen. Der Defaultwert von 30min sollte selbst in Gegenden mit mageren Links ausreichend lang sein und verhindern trotzdem klemmende Zust„nde. Stirbt eine Verbindung durch Timeout, so erfolgt ein #L-Eintrag ins Syslog. Dadurch k”nnen evtl. wiederkehrende Probleme erkannt werden, wie z.B. abgestrzte Nachbarboxen etc. Fr den Benutzer gibt es nach wie vor keine Zeitbeschr„nkung. Diese kann im l2.exe durch "disctime" erfolgen, sollte aber nicht zu kurz sein. - Das Forward-Passwort hatte noch ein paar Unsch”nheiten. - Wenn vom Partner nach ein paar Minuten Zeit kein SID kam, so hat die connectende Box das eigene SID gesendet. Diese M”glichkeit l„át sich jetzt nur noch mit die Option -s aktivieren, was aber das Passwort ausschlieát. - Vor der Loginzeit hat ein Blank gefehlt. - Neue Option bei EXPORT: export -u fhrt dazu, daá nicht wie blich im sysop-modus sondern als gew”hnlicher Benutzer ausgefhrt wird, d.h. alle Sysop-Besonderheiten gesperrt sind. Dies drfte fr Run-Utilities, die mittels import/export arbeiten, praktisch sein. - Bei DOS-Aufrufen wird nun nicht mehr starr command.com, sondern die in COMSPEC definierte Shell aufgerufen. Ist COMSPEC undefiniert, so wird nach wie vor command.com gestartet. - Trace-M”glichkeit fr den Sysop: monitor [-iords] Gibt die Ein- und Ausgaben eines beliebigen Tasks in der Box aus. Optionen: -i Eingaben (vom Benutzer) unterdrcken -o Ausgaben (zum Benutzer) unterdrcken -r Dateninhalt von READ-Befehlen unterdrcken -d Dateninhalt von DIR/LIST/CHECK Befehlen unterdrcken -s Dateninhalt von SEND-Befehlen unterdrcken Es k”nnen sowohl andere Benutzer, als auch Forwardverbindungen, als auch insbesondere Systemausgaben mitgeschrieben werden. Dies geht sowohl lokal am Bildschirm als auch ber Funk. Die kann dem PS-Befehl entnommen werden. Besonders interessant drfte die Ausgabe des Trace-Fensters (tid=1) oder des Monitor-Fensters (tid=3) sein. Bei diesen beiden Fenstern wird nach der jeweils letzten Zeile aus Platzgrnden kein Return ausgegeben. Dies ist zwar zun„chst verwirrend, aber unproblematisch. Es kann pro Task maximal eine Instanz des monitors aktiviert werden. Es ist jedoch m”glich, von einem Monitor wiederum die Ausgaben zu monitoren (etwas verwirrend, aber funktioniert). - Als Erg„nzung zum Monitor gibt es auch die M”glichkeit, l„nger werdende Files ausgeben zu lassen. Die Syntax ist wie bei UNIX: tail -f geht ans Ende des Files und gibt nur Sachen aus, die an das File neu angeh„ngt werden ("-f" steht fr "follow"). Interessant k”nnte also sein: tail -f trace/syslog_r.bcm oder tail -f trace/t_db0aab.bcm Diese Funktion klappt allerdings nur, wenn SHARE.EXE in der autoexec.bat geladen wird. Das ist aber ohnehin empfehlenswert, weil dann auch kritische Situationen innerhalb der Box besser ablaufen. - Im Console-Fenster werden nun nicht nur eintreffende, sondern auch ausgehende S-Befehle beim Forwarding mitgeschrieben. Das erleichtert das Verfolgen ber das Console-Fenster bzw. mon 1. - Das eigene Boxcall kann nun das Dummy-Forwardpartner angegeben werden. Dies ging bisher auch schon, aber mit Schw„chen. Sinn der Sache ist es, Boxrufzeichen und Verteiler anzugeben, die keine Weiterleitung bewirken sollen, trotzdem aber nicht in unknown.bcm auftauchen sollen und keine Eintr„ge in forward-triggerfiles ergeben sollen. Ein Eintrag (gedacht bei DB0AAB): db0aab aaaaaaaaaaaaaaaaaaaaaaaa db0aab db0eic db0wai bewirkt nun, daá - alle Nachrichten an db0eic und db0wai kommentarlos in db0aab liegenbleiben (in diesem Fall sinnvoll, weil beide Nachbarboxen derzeit nicht in Betrieb sind) - db0aab trotzdem nie connected wird und sich selbst nicht als Forwardpartner betrachtet. - db0aab nicht im "status forward" auftaucht - fr db0aab keine forward-triggerfiles (z.b. u_db0aab.bcm) angelegt werden. Die Zeiten (aaaaaa..) und das Connectrufzeichen mssen aus formalen Gnden angegeben werden, damit die Ziele tats„chlich dorthin geroutet werden. Deren Inhalt wird ignoriert. Forward zu Boxen mit gleichem Rufzeichen ist damit nicht mehr m”glich, allerdings war dies bisher schon problematisch und ohnehin nicht empfehlenswert. - Steht bei den Zeilen "From: CALL @ BOX" bzw. "de CALL @ BOX" in Klammern ein Name dabei und ist der Name lokal nicht bekannt, so wird dieser in die Userliste eingetragen. Das Rufzeichen "CALL" in dieser Zeile muss mit dem Absenderrufzeichen bereinstimmen, sonst wird der Name ignoriert. Ein lokal eingegebener Name wird nicht berschrieben. Nur die erste Zeile einer Nachricht wird untersucht. - Im SID (System-IDentifier) wird beim Forward-Verbindungsaufbau nun die Option D (also [BayCom-1.36-DH$] ) angegeben und auch ausgewertet. Diese Option macht die F„higkeit bekannt, 8stellige Boardnamen, Lifetimes, Bin-Forwarding und einzeilige E/M-Mails zu verarbeiten. Der Buchstabe D wurde von DL8HBS vorgeschlagen, wird auch bei DP verwendet und ausgewertet und ist wohl auch international abgestimmt. - Bildschirmschoner, mittels crtsave l„át sich der Bildschirm abschalten, wenn eine Weile keine Taste mehr gedrckt worden ist. Es findet dann auch kein interner Update des Bildschirms mehr statt was etwas Zeit spart. Das ist in erster Linie fr die 32Bit-Version gedacht, da hier der Bildschirmzugriff langsamer ist. Bei Tastendruck schaltet der Bildschirm an. - REORG ist nun gravierend schneller geworden, weil die LIST.BCM-Files nicht mehr pauschal aufgebaut werden sondern penibel auf Stimmigkeit geprft und nur bei erkanntem Fehler erneuert werden. Dadurch wird im Schnitt sehr viel Zeit gespart weil im Allgemeinen keine Sch„den enthalten sind. Geprft wird, ob - das listfile die richige L„nge hat - jeder Eintrag mit dem entsprechenden Verzeichniseintrag bereinstimmt. - die Reihenfolge sortiert ist - jeder Eintrag formal plausibel erscheint (Feld-Trennsymbole) - reorg l (userliste) wird nicht mehr bei jedem Komplettreorg implizit, sondern nur bei explizitem Aufruf gestartet. reorg p l”scht alle Eintr„ge aus dem Userfile, deren mybbs nicht selbst eingegeben ist und auch kein Name vorhanden ist. Knftig wird auch bei "gelerntem" mybbs ein Zeitstempel mitgefhrt so daá sp„ter ein gezielteres Ausmisten m”glich ist. - Der Parameter RUNUTILS in INIT.BCM kann nun mehr als 80 Zeichen lang sein (max. 255). Allerdings geht dies nur vom init-file aus, die Kommandozeile im Sysopmodus der Box kann das nicht. Sollen mehr run-utilities laufen, so ist INIT.BCM mit einem Editor zu bearbeiten und hochzuladen. Ein Einlesen dieses Files ist mit NEW m”glich, ohne die Box abzustellen. - BYE ist nun anders als QUIT. Quit setzt das letzte Quit-Datum, Bye macht einen logout ohne das Datum zu setzen (wie disconnect). - Noch ein Hinweis in eigener Sache. Wenn ich hier die Hadress-Liste durchsehe, dann sehe ich erfreulich viele BCM-Header, die den jeweils neuesten oder zumindest zweitneuesten Versionen entsprechen. Das finde ich toll, daá so viele Sysops den Update via BAYBOX machen und dadurch das Netz in einem einheitlichen Zustand halten. Leider gibt es auch einige Boxen, die sehr alte Versionen noch betreiben, und das erfllt mich etwas mit Sorge. Ich sorge stets dafr, daá der Update von einer Version zur n„chsten ohne weitere Interaktionen des Sysops m”glich ist. Das ist nicht immer ganz einfach, aber bisher meistens gelungen. Wenn nun sehr groáe Versionssprnge gemacht werden, so laufen manche update-Meachanismen nicht mehr fehlerfrei ab und es w„re auch zu viel verlangt von jeder bisherigen Version das Update zu testen. Da ich davon ausgehe, daá die Betroffenen (ich meine konkret alle Versionen kleiner 1.34) ohnehin in dieser Rubrik nicht auf dem neuesten Stand sind, bitte ich nun alle Nachbarsysops entsprechend darauf hinzuwirken, daá hier m”glichst nachgezogen wird, oder mir die Grnde fr das nicht-nachziehen mitgeteilt werden, damit ich entsprechend aktiv werden kann. Ich habe inzwischen auch meine update-Methode etwas gestrafft: - Versionen mit einem Buchstaben hinter der Nummer sind Testversionen, die nur an einen kleinen Kreis von Testern verteilt werden, die gewillt sind, notfalls auch grobe Fehler zu erkennen und mitzuteilen. - Versionen ohne Buchstaben sind vorgetestete Programme, in denen grobe Instabilit„ten und Fehlfunktionenen nicht vorkommen sollten. Die 1.35 war von dieser Qualit„t, was nicht heiát daá garkeine Unzul„nglichkeiten auftreten k”nnen. Aus momentaner Sicht sollte die 1.36 ebenfalls diesen Anforderungen gengen. Box-Žnderungen 1.37 (Zusammenfassung seit 1.36, Stand 24.01.96): - Flexnet-Interface Zus„tzlich zum baycom l2 1.55a kann jetzt auch FlexNet als PR-Interface benutzt werden. An den Eigenschaften der Box „ndert sich dabei nichts nennenswertes. Im File INIT.BCM kommt ein neuer Parameter hinzu: mycall [ ] stellt bis zu 4 Rufzeichen ein, unter denen die Box erreichbar ist. Bisher wurde das Rufzeichen der Box im L2 eingestellt. Das erste mit MYCALL eingestellte Rufzeichen wird auch beim Rausconnect zum Forwarding benutzt. Dabei wird FWDSSID bercksichtigt. Der TNC-Befehl (spricht direkt den L2 an) hat mit Flexnet eine andere Bedeutung. Er dient derzeit lediglich zum ein- und ausschalten des Monitors. tnc trace -1 zeigt alle monitor-kan„le tnc trace zeigt einen Kanal tnc trace schaltet den Monitor ab. # BCM1.37 funktioniert nur mit FlexNet 3.3e oder h”her. # (updates fr knftige Versionen erfolgen synchron mit FlexNet-updates) BayCom-L2 1.55a wird noch untersttzt, die bern„chste Version wird jedoch dieses Interface aus Platzgrnden nicht mehr haben. Sp„testens dafr sollten alle laufenden Systeme auf FlexNet umgestellt sein. Siehe dazu die Einspielung von DK7WJ in der Rubrik FLEXNET. - Reply: Nicht mehr Absenderbox, sondern mybbs wird als Antwortsbox angegeben. - setuser fhold 1 verhindert, daá Bulletin-Files von zu anderen Boxen weitergeleitet werden. Usermails sind nicht betroffen. Die Nachrichten werden nicht gel”scht sondern bleiben lediglich liegen. Sie k”nnen nach Sichtung mit dem FORWARD-Befehl vom Sysop auf die Reise geschickt werden. Diese Funktion sollte nur in sehr klaren und begrndeten Einzelf„llen angewendet werden. Eine Erweiterung dieser Funktionalit„t ist noch in Arbeit, die vorliegende Version war ein notwendiger Schnellschuá um krzlich aufgetretenes Ungemach etwas auszubremsen. - Bei einem MYBBS-Befehl zum bereits bestehenden Boxcall werden nicht mehr alle Nachrichten neu in die Forwardliste eingetragen. Dadurch ist der Befehl schneller geworden, wenn viele Nachrichten in der eigenen Box liegen. - shutdown -r fhrt einen Reboot des Rechners durch - beacon sendet einen Text als Bake aus (beacon.bcm wird zum Generieren der Adressfelder benutzt) - send-message Im messages-File kann beim Abschicken einer Nachricht nun noch der Name des Adressaten eingebaut werden. Dabei muá (sinngem„á) folgendes ge„ndert werden: bisher: "Nachricht fuer %s " "senden.\nEnde mit NNNN oder CTRL-Z, Abbruch mit CTRL-X\n" knftig: "Nachricht fuer %s " "%ssenden.\nEnde mit NNNN oder CTRL-Z, Abbruch mit CTRL-X\n" Das %s am Anfang gibt zus„tzlich in Klammern den Namen aus. Die Meldung muá dazu 2zeilig sein (mit \n), da sie sonst zu lang werden kann. - Im Prompt bei der Passwortabfrage konnten bisher gleiche Zahlen aufauchen. Jetzt ist sichergestellt, daá jede Zahl nur einmal kommt, vorausgesetzt das Passwort ist l„nger als 5 Zeichen - In RUNDAT.BCM wird beim Start von RUN-Utilities ein Filename bergeben, der nach Ausfhren des Programmes importiert wird. Dadurch ist es m”glich, daá Run-Programme anschlieáend Box-Befehle ausfhren. Der Import wird im Hintergrund unter dem Rufzeichen der Box durchgefhrt. Die Ausfhrung erfolgt mit Sysop-Privilegien. Sollte dies anders sein, so muá das Programm im Importfile mit call den login „ndern und/oder mit pw off den Sysopstatus verlassen. Das Verhalten ist in dieser Beziehung gleich mit Importfiles, die aus der crontab aufgerufen werden. Erzeugt ein Programm ein importfile, so sollte der letzte Befehl in diesem Programm impdel lauten, wobei der von rundat.bcm bergebene Filename des Importfiles ist. - im Version-Befehl wird nun auch CPU-Typ und PR-Interface angezeigt - In FWD.BCM koennen nun an beliebiger Stelle (nicht nur in Spalte 1) Kommentare stehen. - Lifetime 999 fuehrt nun auch zu korrekt dauerhafter Anzeige in den Listfiles. Nachrichten oder Boards mit Lifetime 999 werden nie geloescht. - Wird die Box mit bcm /n gestartet, so erfolgen keine Zugriffe auf den Bildschirmspeicher. Durch Deaktivieren der Videokarte laesst sich so ein durchgehender Speicherbereich herstellen. - Die crontab ist nun mittels "cron" auch fuer den normalen Benutzer lesbar. - Sonderzeichen in Boardnamen, die zu Problemen beim Forwarding fuehren koennen, werden nun komplett abgefangen. Nur - und _ sind moeglich. - Im File "badnames.bcm" koennen nun Boardnamen abgelegt werden, die von der Box nicht akzeptiert werden, also auch nicht unter TMP angelegt werden. Die Nachrichten werden mit "NO - BADNAME" abgelehnt. In jeder Zeile dieses Files kann ein Name stehen, das File darf beliebig lang sein. Nur die ersten 6 Zeichen pro Zeile werden ausgewertet. Gross- / Kleinschreibung ist irrelevant. - Beim Einloggen waren bisher kurzzeitig ca. 48k Speicher zum Erstellen der Verzeichnisliste erforderlich. Bei Speicherknappheit hat das zu Abwuerfen gefuehrt. DIR kommt nun bei kleinen Listen mit sehr viel weniger Speicher aus. - Ist die Mailbake l„nger als ein Paket, wird sie in mehreren Paketen ausgesendet. Bisher wurde sie abgeschnitten. - 2 neue Makros: %s zeigt den freien Speicher (Heap) in Kilobytes an %u zeigt die Runtime (Uptime) in dem Format wie im VERSION-Befehl an - Bei langen DOS-Ausstiegen wird nun bei Betrieb mit FlexNet vorher der QSO-Watchdog abgestellt. Dadurch reiáen bestehende Verbindungen nicht mehr ab und insbesondere bei langen Ausstiegen mit dosinput 1 sollten keine Instabilit„ten mehr auftreten - Das setuser-kommando funktioniert nun auch bei Rufzeichen, die bisher noch nicht im System bekannt sind. Es wird ein neuer Eintrag mit default- Parametern generiert. - Die Parameter timeslot 2 scrolldelay 1 hadrstore 2 im init.bcm wurden entfernt und sind nun fest auf ihre Defaultwerte eingestellt. Diese Reduzierung dient der besseren šbersichtlichkeit und nimmt die M”glichkeit, hier unsinnige Werte einzustellen. Die damalige Einfhrung der Parameter ist in erster Linie auf meinen Spieltrieb zurckzufhren. - Beim Einspeichern von Files wird die Folge "//e " am Zeilenanfang erkannt und der erste / gegen \ ersetzt. Dies soll die Verbreitung von derartigen "Killermails" unterbinden, so wie sie in letzter Zeit vielfach im Netz aufgetaucht sind. - Mit dem Befehl "NEXT", abkrzbar mit "n" kann die n„chste Nachricht ausgelesen werden. Relevant ist dabei der zuletzt verwendete READ-Befehl. - Neues bei der Help-Funktion Es k”nnen šber- und Unterbegriffe angegeben werden. "help alter forward" kann mit "h a f" abgekrzt werden und liest einen anderen Helptext als bei Eingabe von "help alter". Im Helpfile werden solche Kombinationen mit einem Punkt abgetrennt. \\ALTER ---------text fr alter------- \\ALTER.FORWARD ---------text fr alter forward--- Es ist nur eine Hierarchieebene m”glich, Konstrukte wie \\DIR.USER.MESSAGES funktionieren nicht. Auáerdem k”nnen fr redundante Helptexte Verknpfungen angelegt werden. Dies erfolgt mit dem = Zeichen. \\MSG=TALK ---kein text-- ruft statt "msg" den Helptext von "talk" auf. \\MYBBS=ALTER.FORWARD ---kein text-- ruft bei Eingabe von "h mybbs" den Helptext von "alter forward" auf. Auch die umgekehrte Verknpfung w„re zul„ssig: \\ALTER.FORWARD=MYBBS ---kein text-- Es lassen sich also unter- und šberbegriffe beliebig vermischen. Verknpfungen drfen wiederum auf Verknpfungen zeigen, zyklische Verknpfungen sind natrlich unzul„ssig und fhren zu einer Fehlermeldung im Syslog. - Die frhere Žnderung, daá das eigene Boxrufzeichen nicht als Forwardpartner akzeptiert wird, wurde auf vielfachen Wunsch nun wieder rckg„ngig gemacht. Nachrichten, die nicht weitergereicht werden sollen, werden nun bei einem pseudo-Forwardpartner namens DUMMY eingetragen. Es sollten also sinnvollerweise die Forwardfiles entsprechend ge„ndert werden. Sinnvoll ist ein Eintrag unter gleichem Rufzeichen knftig nur dann, wenn am selben Standort mehrere Boxen unter dem gleichen Rufzeichen betrieben werden sollen. - Bei lokalen MYBBS-Eintr„gen (mybbs -l ) kann nun auf mehrfachen Wunsch auch eine SSID mit angegeben werden. Dies gibt die M”glichkeit, bei mehreren Boxen am selben Standort gezielt zu einer anderen Box unter demselben Rufzeichen die Nachrichten weiterleiten zu lassen. Beispiel (db0pv-9 sei z.B. eine Linux-Box): Eintrag ins fwd-file: db0pv aaaaaaaaaaaaaaaaaaaaaaaa db0pv-9 db0pv-9 Angabe des Benutzers: mybbs db0pv # gibt generell db0pv im Netz bekannt mybbs -l db0pv-9 # stellt lokal zu db0pv-9 um Das Vergeben von SSIDs bei Forwardeintr„gen funktioniert nur bei Eintr„gen des EIGENEN Rufzeichens. Es ist also keine Prinzipielle Žnderung der Gepflogenheiten von AX.25-Boxadressen. Man darf gespannt sein, welche Nebenwirkungen diese Žnderung hat, zumal sie sehr kompliziert zu verwirklichen war. Bitte also den gesamten Themenkreis rund um die Forward-Adressierung nochmal gut testen. - Pro Richtung sind nun mehr als 10 Forwardpartner m”glich. Das Maximum liegt nun etwa bei 16 Forwardpartnern pro Richtung (h„ngt von der L„nge der Rufzeichen ab). Dies sollte nun auch fr Krawallboxen ausreichen. Falls nicht, sollte der Verantwortliche ernsthaft ber sinnvolle Forward-Topologie nachdenken. Eigentlich hat letzteres auch fr die bisherige Grenze von 10 zugetroffen. - In den Messages-Files kann bei den Landeskennern in Klammern ein Kenner angegeben werden, unter dem die HELP-, CTEXT-, QTEXT- ..etc -files gesucht werden. Das ist haupts„chlich fr Dialekte (bay, pf, bw etc) interessant, die ansonsten DL verwenden sollten und nicht etwa GB. Hier wird in die erste Zeile etwas beschreibendes (kein Landeskenner weil das hier Unsinn ist) und dahinter (DL) geschrieben, also fr bay z.B. BAYERISCH (DL) dann kommen die Texte entsprechend. Ist nichts in Klammern angegeben, ist Default nach wie vor GB. Bisher musste man Kopien anlegen, da per Default die englischen Versionen (.GB) benutzt worden sind. - "reorg f" ist wie "reorg b", erzeugt jedoch in jedem Fall die list.bcm-files neu (ohne vorherige Prfung) und nimmt auch Bulletin-IDs aus dem vorhandenen Datenbestand ins BID-File auf. "reorg f" ist wesentlich langsamer als der normale reorg und normalerweise unn”tig. Die Funktion sollte daher nur in folgenden F„llen benutzt werden: - die Bulletin-lifetimes haben sich ver„ndert, dies sollte in allen Listfiles korrigiert werden. - das BID-File ist verlorengegangen und sollte deshalb aus dem Datenbestand gebildet werden. - E-Botschaften werden nur noch dann generiert, wenn eine Nachricht tats„chlich per Forwarding die Box verlassen hat. Dadurch ist es z.B. fr unangenehme Zeitgenossen wie DL3SBI etwas schwieriger geworden, durch Spielereien fr gr”áere Mengen von E-Files zu sorgen. Lassen wir uns berraschen, was er sich beim n„chsten mal einfallen l„át, damit es nie zu lustig wird. ----------------------------------------------------------------------------- BCM-Aenderungen 1.37b .. 1.38 (21.10.96): Aenderungen bei DOS- und Linux-Version -------------------------------------- - Die Uhrzeit darf nun problemlos zurueckgestellt werden (Wichtig fuer Umstellung von Sommer- auf Winterzeit). Dabei darf allerdings die Box nicht abgeschaltet werden. Die Zeit wird von der Box automatisch in kleinen Schritten angenaehert, indem die Box-Uhr etwa mit der halben Geschwindigkeit laeuft. - User-Forward. Siehe Dokumentation im Anhang - Verschiedene Boxrufzeichen (mycall) werden verschieden ausgewertet: 1. Rufzeichen: wie bisher 2. Rufzeichen: Connects werden stets als FWD-Box beantwortet, wird fuer User-Forward zur Box verwendet. 3. Rufzeichen: Connects werden stets als User-Login behandelt, auch fuer eingetragene Forwardpartner 4. Rufzeichen: wie erstes, also normaler Login bzw. Fwd. Beim Login vom Bildschirmfenster (mit CTRL-F3) kann als 2ter Parameter das gewuenschte Mycall der Box angegeben werden. - Datum bei Quit (fuer Option -q) wird nicht auf das Quit-Datum sondern auf das Login-Datum gesetzt. Dadurch wird beim naechsten Login bei LIST alles ausgegeben, was seit dem letzten LOGIN angekommen ist und nicht seit dem letzten LOGOUT. Bei letzterem wurden zwischenzeitlich angekommene Nachrichten verschluckt. - Beim Lesen von Nachrichten verhindert die Option -g, dass das Lesen in der Nachricht vermerkt wird. Dies geht jedoch nur, wenn der Leser Eigentuemer der Nachricht oder Sysop ist. - Temporaere Files fuer Run-Utilities werden im Verzeichnis "temp" abgelegt - Ist ein MYBBS-Eintrag aelter als ein halbes Jahr, so wird bei einem Login in der Heimatbox der Eintrag global aufgefrischt. - Im version-Befehl werden die freien Speicherplaetze je nach Groessenordnung in kB oder MB angezeigt - Die Befehle SLOG ELOG UNKNOWN SLEEP SF sind nun auch fuer normale Benutzer (nicht nur Sysop) freigegeben, weil dies die Transparenz erhoeht und kein Schaden damit angerichtet werden kann. - Neu sind die Befehle F> schaltet auf forward-Modus um FINGER wie USERS (fuer Gewohnheitstiere) MAN wie HELP (dito) EXIT wie QUIT (dito) LOGOUT wie QUIT (dito) - STATUS LIMITS zeigt Informationen ueber die Auslastung des Systems und zugehoerige Maximalwerte. Beispiel: Item Current Maximum boardnames 777 5000 Gesamtanzahl der Rubriken (incl. TMP) convnames 324 5000 Eintraege in convname.bcm convlifes 19 5000 Eintraege in convlife.bcm fwdpartners 24 50 Eintraege in fwd.bcm fwddestlen 2106 10000 Belegung der Forward-Zielliste in Bytes h-addrs 3261 65535 Eintraege in hadr2.bcm (Boxen-Datenbank) bids 245311 500000 Eintraege in bids2.bcm (maximum => "maxbids") users 53727 65535 Eintraege in users.bcm infomails 144117 - Anzahl der gespeicherten Bulletins u-mailcalls 14392 50000 Anzahl der Benutzer, fuer die Mails vorliegen languages 28 40 Anzahl der verfuegbaren Sprachen - Die maximale Anzahl von Sprachen (im 'msg'-Directory) wurde von 30 auf 40 erhoeht. - Die Lifetime 999 funktioniert nun wirklich (also unendliche Speicherzeit), hier war immer noch ein Bug enthalten (ab 1.36h behoben) - Ist in einer Nachricht die Folge /ACK (bzw. /ack) enthalten, so wird von der Ziel-Mailbox (also die Box, die in der @adresse steht) eine Bestaetigung zurueckgeschickt, dass die Nachricht angekommen ist. Solche ACK-Nachrichten tragen im Betreff "ACK:..." und werden nicht mit den sonst ueblichen R:-Headerzeilen versehen. - Stimmt MYBBS nicht mit der Absenderbox ueberein, so wird beim Einspielen einer Nachricht eine Zeile mit "Reply-To: ...." generiert. Ist beim Einspielen kein password vorhanden, erfolgt eine Meldung: "X-Info: No login password" - PS-Befehl: -u gibt zusaetzlich den uplink-Digi aus -m gibt zusaetzlich das mycall aus, das connected wurde (wie u *) -r gibt zusaetzlich die momentan aktive Rubrik (wie im Prompt) aus - U * gibt zusaetzlich das Rufzeichen aus, zu dem der Connect erfolgt ist - Sysop-Befehl: note Schreibt eine Nachricht ins Syslog. Die Meldung erfolgt mit der Kennung #L (also ab tracelevel 1) und beginnt mit "note:". - Statt "next" kann man nun auch "next -r" oder "n -r" eingeben, dann kommt nicht die naechste, sondern die vorherige Nachricht. Es ist uebrigens kein Bug sondern Absicht, dass der next-Befehl auch durch den "name"-Befehl erreichbar ist, da dieser mit "n" abgekuerzt wird und ohnehin nur mit Parameter Sinn macht. Ich erwaehne dies, um mir kuenftige diesbezuegliche Anklagen zu ersparen. - Der Befehl COMMENT wirkt wie REPLY, sendet die Antwort aber in die Rubrik, in die auch die Nachricht selbst gesendet wurde. Auch der Verteiler und die Lifetime bleiben gleich. COMMENT ist nur fuer Nachrichten sinnvoll, die NICHT an das eigene Call gerichtet sind, da die Antwort an dieselbe Adresse geht wie die urspruengliche Nachricht. - Bei A PROMPT ohne Parameter wird der Defaultprompt eingestellt. - Als Fileende bei SEND wird auch /ex auf einer ansonsten leeren Zeile als File-Ende akzeptiert. - Lifetimes: Zusaetzlich zu einer maximalen Lifetime in einer Rubrik kann nun auch eine minimale Lieftime angegeben werden. Diese kann nur vom Sysop unterschritten werden. Dadurch kann verhindert werden, dass Nachrichten die durch Boxsysteme laufen die die durchlaufende Lifetime veraendern, zu frueh geloescht werden. Bei genug vorhandenem Speicherplatz werden oft Nachrichten frueher als erforderlich geloescht, dies kann damit verhindert werden. Zur Syntax: Die minimale Lifetime wird in bulletin.bcm hinter der schon bisher vorhandenen maximalen lifetime geschrieben. Dieser Wert wird per Default mit 0 vorbesetzt und kann durch Editieren der bulletin.bcm (geht nur bei abgeschalteter Box) oder mit dem "lifetime" Befehl veraedert werden. Syntax hier: lifetime [] Die Veraenderung in bulletin.bcm ist auch kompatibel zu aelteren bcm-Versionen. Beim Laden einer aelteren bcm gehen allerdings die minimalen lifetimes wieder verloren. - pwlog: Mitschreiben von Passwort-Ereignissen. In ein neues file "trace/pwlog.bcm" werden alle nennenswerten Ereignisse zu Passwort-Transaktionen mitgespeichert. Das sind folgende Punkte: - user veraendert sein userpw - user gibt userpw falsch ein - sysop gibt richtiges oder falsches sysop-pw ein - am tty-Port (seriell oder telnet) wird falsches passwort eingegeben - forward-passwort ist falsch Es wird jeweils Zeit, Call und Uplinkdigi dazu abgespeichert. Das File kann mit dem Befehl "pwlog" abgefragt werden. Dieser verhaelt sich wie die anderen Abfragebefehle slog,elog etc, so dass per default immer der letzte Teil des Logs ausgegeben wird. Durch Angabe eines Suchbegriffes kann im Log gesucht werden (Suchbegriff ist ein regulaerer Ausdruck wie bei grep ueblich). Der Befehl pwlog ist nicht nur fuer Sysops, sondern auch fuer Benutzer ausfuehrbar. - Bei Aenderungen des MYBBS werden die vorhandenen Nachrichten nicht mehr sofort nachgesendet. Es kam vor, dass die vorhandenen Nachrichten die Mybbs-Information ueberholt haben und dadurch im Kreis gelaufen sind. Vorhandene Nachrichten werden jetzt nur mehr vom postfwd-Prozess weitergeleitet. Dabei ist in Erinnerung zu rufen, dass in crontab.bcm unbedingt einmal taeglich postfwd enthalten sein sollte. Es gibt inzwischen einige Mechanismen, die sich darauf verlassen dass dieser regelmaessig aufgerufen wird. - Beim Forwarding fuehrt CTRL-X nicht mehr zum Abbruch des Files. - Bei der Usersuche wurden durch einen Bug Benutzer mit mehr als 65536 Logins nicht angezeigt. Ist behoben. - Neuer Befehl: DIR OUTSTANDING [] [] Abk: d o gibt alle ausstehenden Mails zur angegebenen Box aus. Die Anzeige kann mit einer Bereichsangabe eingeschraenkt werden. Es werden zunaechst Usermails, dann Bulletins ausgegeben, in der Reihenfolge, in der sie zum Forward anstehen. Ohne Parameter gibt der Befehl alle ausstehenden Files zu allen Nachboxen aus. Beispiel: d o db0fsg 1-20 gibt die naechsten 20 Mails aus, die fuer DB0FSG anstehen. - Usersuche, neue Optionen: u -w Eintraege, die fuer sich User-Forward gesetzt haben. u -y Eintraege, die NOPURGE gesetzt haben. u -d Eintraege, bei denen FHOLD gesetzt ist Bei der Ausgabe wird bei den Flags (neben PTHLRS) noch U -> Userfwd gesetzt und N -> Nopurge gesetzt ausgegeben. - Der TALK-Mode geht jetzt etwas besser als bisher. Die Pufferung der Daten erfolgt nun dynamisch, so dass auch mehrere Zeilen auf einmal abgesetzt werden koennen, ohne dass etwas ueberlaeuft. Allerdings kann die Funktion nach wie vor keinen ordentlichen Convers ersetzen sondern dient lediglich fuer schnellen Meldungsaustausch innerhalb der Box. - User-Nachrichten werden nicht mehr geloescht, wenn die beim Forwarding mit NO abgeleht werden. - Binaerfiles haben Probleme gemacht, wenn in der Zeile vor dem Start die Kennung #*DPLZHDP*# gestanden ist, ist nun behoben. - Bei Einstellung "tracelevel 0" werden zur leichteren Auffindbarkeit auch Meldungen mit hoeherem Level in das File syslog_r.bcm geschrieben. - Beim Transfer wird in den Titel der Nachricht der Hinweis "CP :" eingetragen, um die transferierte Nachricht leichter als solche erkennbar zu machen. Ist der Transferierer zugleich der Urheber der Nachricht, unterbleibt dieser Eintrag. - Beim Start von BCM wird "startup.bat" und "startup.imp" (beides nur wenn vorhanden) ausgefuehrt. - Wenn eine neue Nachricht eintrifft, wird nach der dazugehoerigen Meldung auch ein DIR-Auszug der Nachricht ausgegeben. - Purge-Variationsmoeglichkeiten mit dem globalen Box-Parameter "nopurge" Einzelne Bits dieses Parameters haben eine Bedeutung: nopurge 1 : wie bisher, nichts wird geloescht, auch fuer User und Sysops ist der Befehl "purge" wirkungslos. Dies ist die pauschale Einstellung "alles", die Kombination mit untenbeschriebenen Einstellungen ist wirkungslos. nopurge 2 : Jeder Benutzer kann fuer sich selbst "alter nopurge 0 | 1" setzen. (Andernfalls ist das Verstellen diesees Parameters wie bisher nur fuer den Sysop moeglich) nopurge 4 : Bulletins werden generell nicht geloescht nopurge 8 : Usermails werden generell nicht geloescht Die Einstellungen koennen kombiniert werden, sind jedoch nicht in jeder Kombination sinnvoll. Bei Boxen mit grosser Platte erscheint "nopurge 6" sinnvoll. Bulletins werden in dieser Einstellung garnicht geloescht und fuer Usermails kann es sich jeder selbst einstellen. - nur DOS-Version: Die Unterstuetzung von BayCom-L2 Version 1.54 und 1.55 ist nun nicht mehr enthalten. Der Betrieb ist nur noch mit FlexNet moeglich. Aenderungen, die nur die Linux-Version betreffen ------------------------------------------------ - Alle Executables sind jetzt als dynamisch gelinkte ELF generiert. Es muessen also die dafuer erorderlichen Voraussetzungen (ELF-Linker, .so-Libraries und Kernel) geschaffen sein. Abhaengigkeiten zu Libraries lassen sich mit "ldd bcm" herausfinden. - Neue Behandlung des Alarm-Signales zur Takterzeugung -> hoehere Stabilitaet - Makro-Interpreter. Dieser ist bis jetzt noch eine Baustelle, eine Dokumentation folgt nach Fertigstellung. - Bei Run-Utilities werden nun auch Eingaben akzeptiert. - Bei CHECK ohne Bereichsangabe werden mehr als die ersten 65536 Eintraege gelistet. (War eine Leiche von der DOS-Version) Ausserdem hat nun die Ausgabe eine korrekte Zeilenlaenge wenn die laufende Nummer ueber 100000 liegt. - Fuer den TCP-Loginsocket wird notfalls dieselbe Portnummer wiederverwendet, die bereits aktiv ist. Dies macht das programm beim Hochstarten robust gegen den Fehlerzustand "address already in use". - KISS-Mode geht nun ordentlich und mit Flexnet-CRC. CRC wird mittels "c" im Mode erzwungen, wie bei Flexnet. Sowohl AXIP als auch KISS koennen jetzt in mehreren Instanzen laufen. Damit lassen sich mehrere Rechnerkopplungen bzw. auch Kopplungen zu anderen Programmen gleichzeitig durchfuehren. Siehe auch dazu im File "linuxbcm.txt" - Auf der Systemconsole (bzw. nach stdout) werden nun alle Traces ausgegeben, unabhaengig von der Einstellung von tracelevel. - Ueber die crontab werden nun nicht nur Importfiles sondern auch shellscripts (bzw. ausfuehrbare Programme) direkt angestossen. Diese muessen allerdings DOS-like die Endung ".bat" haben. Das Skript zum Erzeugen von Backups kann also sinnvollerweise wie bei der DOS-Version "save.bat" heissen, ist jedoch dann ein ausfuehrbares sh-skript. Anhang: User-Forwarding ----------------------- Der Benutzer kann sich seine eigenen Nachrichten direkt und unverzueglich nach Hause liefern lassen. Auch ist ein automatisches Absenden von Nachrichten (Bulletins und Usermails) moeglich. Um dies zu ermoeglichen, muss folgendes eingestellt sein: - MYBBS wird zu der Box eingestellt, die die Nachrichten zum Endbenutzer schicken soll, also NICHT das eigene Rufzeichen. - Zum Aktivieren des Forwardings wird mit ALTER UFWD [] ein Connect-Pfad angegeben, zu dem der Verbindungsaufbau erfolgen soll. Die Syntax ist hier identisch zur Angabe des Forwardingwegs in fwd.bcm Das Rufzeichen, zu dem der Connect aufgebaut wird, ist ueblicherweise das eigene Rufzeichen mit einer entsprechenden SSID, unter der sich eine laufende Mailbox meldet. Es kann aber auch ein anderes Rufzeichen sein, z.B. das einer Clubstation die als OV-Mailbox dient oder aehnlich. Wichtig ist, dass sich dort ein System meldet, das Forwarding nach W0RLI beherrscht und moeglichst haeufig erreichbar ist. Das Forwarding zum Benutzer wird stets angestossen, wenn eine neue Nachrichrt eintrifft. Ist dessen Box in diesem Moment nicht erreichbar, so erfolgen keine weiteren Connectversuche. Allerdings wird bei jeder neuen Nachricht ein weiterer Connect versucht, auch wenn die Station beim letzten Versuch nicht erreichbar war. Schaltet der Benutzer seine Station ein, so kann er auch einen Forward-Poll durchfuehren. Dies erfolgt durch einen Connect, Anmeldung nach W0RLI und Richtungsumkehr durch "F>". Zu diesem Zweck ist die Box unter einer anderen SSID connectbar. Diese wird mit dem zweiten Rufzeichen im mycall-Befehl (file init.bcm) eingestellt. Ist nichts eingestellt, so wird ein Default boxcall-7 eingerichtet. Im Prinzip laeuft das Forwarding exakt wie zwischen normalen Mailboxen ab. Folgendes wird aus Sicherheits- bzw. Praktikabilitaetsgruenden jedoch eingeschraenkt: - Das Absetzen von Nachrichten ist nur unter dem Rufzeichen moeglich, unter dem der Login erfolgt. Ein < Operator mit nachgestelltem Rufzeichen fuehrt zu einem Ablehnen der Nachricht mit NO, wenn das Rufzeichen nicht dem Call des Partners entspricht. - Ankommende R:-Headerzeilen werden ignoriert. Dies erfolgt, damit als Rueckweg stets die "offizielle" Mailbox eingetragen ist und damit die H-Adress-Datenbanken der Mailboxen nicht zu viele Eintraege erhalten. - Das Absetzen von Bulletins ist nur zu in der Box vorhandenen Rubriken moeglich (ausser dort ist createboard=1 gesetzt) - Absetzen von Nachrichten in einbuchstabige Rubriken (so auch das Verteilen von erase- oder mybbs-Botschaften) ist nicht moeglich. Hat der Benutzer fuer sich ein login-Passwort eingestellt, so ist dies auch beim user-forwarding zwingend erforderlich. Der Mechanismus ist dabei wie beim normalen Login, jedoch wird der Platz hinter dem SID ("Hundemarke", also Austausch der Forwarding-Optionen) dafuer ausgenutzt. Beispiel: [BayCom-1.38-ADH$] 21 34 22 12 3 > [BayCom-1.38-ADH$] sajkdhfeufhndjffjdshfsdf > Dieser Mechanismus sollte auch z.B. bei der DP-Box so funktionieren. Alternativ kann auch ein Passwort nach dem DieBox-Verfahren benutzt werden. Dies wird dann wie zwischen normalen Forwardpartnern behandelt. Unterschiede bcm138j .. bcm138jx - Bei dir und list wird die MyBBS angegeben, falls keine (neuen) Nachrichten gefunden werden. - MID (=BID) wird bei allen Mails automatisch erzeugt. (Bisher nur bei Info-Mails. (SID "M" beim Forward). - Das Flag ob Bulletin oder Personal Mail wird ausgewertet und beim Forwarding auch richtig weitergegeben. Folgende Flags werden unterstuetzt: P...Personal B...Bulletin A...Acknowledge T...Traffic (formal) andere Flags werden abgelehnt. Die Einordnung der Mails in die Verzeichnispfade Info bzw. User erfolgt nach folgenden Kriterien: 'P' und 'A' mit Rufzeichen als Ziel unter User, alles andere unter Info. Beim Check-Befehl werden nur Mails mit dem Typ 'B' angezeigt. Wird das Flag bei der Maileingabe nicht explizit angegeben, so erfolgt die Zuordnung wie bisher entsprechend dem Zielrufzeichen. - Erweiterte reject-Meldungen werden unterstuetzt. (SID "R") -OK ..wie bisher -NO ..wie bisher -REJECT (FBB) ..aehnlich NO, Ablehung wegen Routing-Fehlers -LATER (W0RLI)..wie NO implementiert. (Bedeutung: Empfange Mail bereits) -HOLD (FBB) ..wie OK (Nachricht wird Sysop vorgelegt) -ERROR (FBB) ..wie NO (Fehler im Send-Befehl) Aktiv werden die Meldungen OK,NO und REJ unterstützt. - Die Bid und das Typ-Flag werden im Nachrichtenheader angegeben. Diese Funktion dient zum Debugging und wird event. wieder ausgebaut. (Kompatibel zu JNOS/W0RLI) - Bugfix:Mails mit dem Flag S (SS) werden nicht mehr akzeptiert. (Das sind Mails im X-Protokoll nach W0RLI, diese Mails wurden bisher akzeptiert, das Format ist aber nicht mit dem ASCII-Forward-Format kompatibel). - Div. Umbau in der Behandlung von fehlerhaft weitergeleiteten Usermails. Ziel ist es, dass Usermails weder doppelt ankommen, noch verloren gehen. Die Sache ist im Prinzip einfach, wird aber durch die verschiedenen Implementierungen in div. Programmen recht komplex. -Neues Format fuer list.bcm und check.bcm. Die Formatumwandlung erfolgt durch ein "reorg". Ein event. Rueckstieg auf eine aeltere Version ist moeglich, dort ist dann wieder ein "reorg" notwendig, ansonsten wird der Nachrichtentitel im "check" oder "dir" falsch angezeigt. Im neuen Format sind zusätzliche Flags möglich bzw. tw. bereits verwendet. - Bei status forward werden mehr als 1000 mails in "k" (1000) angegeben, etwa 12k statt bisher 12000. - Bin-Fwd wird nur zu BCM-Boxen gesendet, welche ein "D" im SID senden. Damit werden sehr alte BIN-fähige Versionen der BCM nicht mehr unterstuetzt. - Im Connect-Pfad beim Forward werden anhaengende Leerzeichen abgeschnitten. Es wird also nicht "C DB0ABC ", sondern "C DB0ABC" ausgesendet. - E/M-Mails werden nur an Boxen mit "D" im SID bzw. DieBoxen gesendet. - Beim http-Zugriff wird nun nicht mehr das TTY-Passwort abgefragt, sondern der eingetragene Name des Benutzers. Gross und Kleinschreibung werden dabei unterschieden. Vorsicht bei Umlauten! - ST-Mails werden im Forward nicht angenommen. - Typ A (Ack) Mails werden mit SA abgesendet sofern sie lokal generiert wurden bzw. mit Typ A empfangen wurden. - Im Check werden nur Mails mit dem Typ "Bulletin" ausgegeben. Mit der Option S kann zusaetzlich die Ausgabe von Nicht-Bulletins (zB. AUTO7P) im Check erreicht werden. In diesem Fall wird auch der Typ in einer eigenen Spalte ausgegeben. - Es sind ins. 16 neue Mail-Flags verfuegbar, 4 davon werden genutzt. - Mit reply beantwortete User-Mails werden bei gesetzter "K" dir/list-Option mit "r" statt "R" bzw ")" gekennzeichnet. Die Markierung bleibt auch nach einem reorg erhalten. BCM-Aenderungen 1.38 .. 1.38j (19.02.97): Aenderungen bei DOS- und Linux-Version -------------------------------------- - Lesefreundlichere Darstellung im STATUS FORWARD Befehl (OE3DZW) - Bei FWD-Polling wird kein Delay abgewartet. - Statt TRANSFER geht auch der Befehl CP - /ack geht auch grossgeschrieben /ACK - BADNAMES.BCM gilt nicht nur fr Ziel sondern auch fr Herkunft (OE3DZW) - Absturz bei langen Subjects in ACK: -Mails behoben - Absturz beim LIFETIME-Befehl ohne Zeitangabe behoben - Makro %w zeigt die gelesenen/gesendeten Bytes an (OE3DZW) Linux: ------ - Problem bei Pufferberlauf im Kissmode behoben, hat zu Eintragungen im Syslog und Abstrzen gefhrt - HTTP-Interface. In der Kommandozeile beim Start von bcm kann mit -h ein Port fuer HTTP-Service angegeben werden. Default ist Port 8080 Es sollte hierzu noch einiges dokumentiert werden. Die Bedienung ist jedoch weitestgehend selbsterklaerend, es sollte also auch ohne eigene Dokumentation jeder damit zurecht kommen. Technisch interessierte sollten einen Blick in den Quellcode werfen. Interessant sind jegliche Vorschlaege, das HTTP-Interface ueber Funk vernuenftig ansteuerbar zu machen. Derzeit wurde es ueberwiegend ueber Drahtlinks getestet. In einem Verzeichnis $BCMHOME/http lassen sich uebrigens files ablegen, die dann auch ueber HTTP abrufbar sind. Allerdings funktionieren nur die Endungen .htm (bzw. .html) .gif und .jpg Wird dort ein back.jpg abgelegt, so wird dies als Hintergrundbild eingeblendet.  bcm138jy - Bugfix: Bulletins werden abgewiesen, REJ. Abfrage wurde entfernt. - Bugfix: Falsche Option fuer REJ-Antwort bcm138l - Bugfix: bei der Auswertung der Bulletins, REJ-Abfrage wieder aktiviert. - Usereingabe von SA nicht moeglich. (Nur im Fwd bzw. vom Sysop) bcm138l1 - Bulletins mit Calls werden abgelehnt - Bugfix: Usereingaben SA,SB,SP sollten jetzt richtig gefiltert werden. - Bugfix: reply-Flag nur mehr bei Usermails und nur bei eingener Rubrik. - Ausgabe der Mybbs bei dir/list (leer) so wie bei usersuche bcm138l2 - Bugfix: Debug-Ausgabe bei st entfernt - Beim Einlesen eines neuen fwd-Files (Befehl new) wird nun eine Meldung ausgegeben. (Anzahl der FWD-Partner bzw. Fehlermeldung). - Bugfix: oldestfwd p statt b korr. - Die Fwd-Antwort REJ wird ausgewertet und fuehrt zum Setzen des HOLD-Flags Hold-Flags: "!"...Mail wird weitergeleitet "R"...Reject, Mail wurde vom FWD-Partner mit REJ abgelehnt (=Routing-Fehler) "S"...Size, Mail zu Gross (bei gesetzter "-b"-Option "B"...Binary, Forward-Partner unterstützt Auto-Bin nicht "E"...Error, Nachricht ist fehlerhaft (zB. fehlende BID bei Bulletins) "L"...Loop, Schleife (nur bei P) "N"...No obwohl noch nie angeboten (von Partner welcher nicht REJ unter- stuetzt). // U..unknown Zusaetzlich erfolgt eine Eintragung ins Syslog (bei REJ). - Forward (bzw. Postfwd) wirkt nur bei Mails mit nicht gesetztem Fwd-Hold-Flag. Beim "forward" Befehl kann mit der Option -h trotzdem die Eintragung in die Forward-Liste erzwungen werden. - -b bei Fwd (Maxbytes) wirkt nur wenn -b > 1kByte. - Lokal eingegebene Mails ohne Zielboxangabe an unbekannte Benutzer werden abgelehnt. - Persoenliche Mails welche bereits bei einem vorhergehenden Fwd-Versuch vom Partner mit "ok" akzeptiert wurden und anschliessend mit "NO" abgelehnt werden, werden geloescht. Es wird davon ausgegangen, das die Mail voll- staendig ankam und nur die Bestaetigung nicht mehr empfangen wurde. Wurde die Mail hingegen vorher nicht vorgeschlagen, so erfolgt eine Meldung. - Mit der Dir/List-Option "P" werden zusätzlich die neuen Flags angezeigt. Fuer Benutzer ist diese Anzeige ohne Bedeutung. - Bulletins fuer Verteiler welche lokal nicht weitergeleitet werden, werden erst gar nicht angenommen. Grund: Zwei Boxen sollten sich Bulletinverteiler jeweils gegenseitig (und nicht nur in eine Richtung) schicken, die Forwardfiles sollen also symmetrisch sein. Wenn die Box A der Box B den Verteiler BAYCOM anbietet, dann sollte das auch in der umgekehrten Richtung angeboten werden. Ansonsten koennen User zwar Mails lesen, aber nicht auf diese Verteiler entsprechend antworten. bcm138n - Bugfix bei Abfrage der Mailtype - B statt BayCom im SID - schnellfix entgegen DPBOX504-bug - Ausgabe der Mailtype bei Fehlermeldung - Ausgabe der RTT im Fwd-log bcm138o - wieder BayCom im SID, die DP-Box wurde ge-updated - Richtige Versionsnummer (war bei bcm138n noch bcm138m) - Bugfix: Angabe eines alternativen http-Ports hatte nicht funktioniert - Bugfix: Grund fuer Inkompatibilitaet gefunden - Neuer Parameter jetzt ganz hinten in der Liste. - IP-Nummer bei User und PS eingebaut, String in IP-Nummer. Funktioniert bei telnet, nicht aber bei http. Bei http sollte es zur Unterscheidung Amprnet/Internet-Login und damit PW dienen. bcm138o1 - Bugfix: Es werden nur 4 Flags geschrieben, die anderen Flags werden so gelassen, wie sie waren. Genaugenommen muessten alle 16 Flags eingelesen werden, dem ist aber bisher nicht so. bcm138o3 - RTT wird im st f angezeigt - Bugfix: Alle Flags werden ausgelesen und auch geschrieben - Bugfix: Bei reply/comment werden die Flags initialisert, und Mailtype auf "P" gesetzt (reply) bcm138o4 - Bugfix: listbcm wurde durch nicht initialisierte flag5-0 vermantschkert, werden jetzt initialisiert. bcm138o5 - Eine auf HOLD gesetzte Mail wird in unkown.bcm eingetragen. (ab bcm138r9 in eigene Datei trace/sfhold.bcm) bcm138p - Die Tatsache, dass es sich um eine Testversion handelt, wird im Syslog vermerkt. Damit sollten Missverstaendnisse vermieden werden. - Beim http-Zugriff werden folgende Passwoerter verwendet: + Zugriff ueber Amprnet/Loopback (44 bzw 127): Name des Users + Zugriff ueber andere Adressen: Eingestelltes TTY-PW (Kein Zugriff falls kein TTY-PW vom Sysop(!) eingestellt wurde. bcm138p1...bcm138p5 Testversionen, Aenderungen sind in bcm138q nicht enthalten: - Bei Status Limits wird auch ein geschaetzter Wert fuer die max. Anzahl an infomails angegeben. - Kommunikationsteil fuer DX-Spots eingebaut, Verbindungsaufbau und Empfang funktionieren. - IP-Konvertierung neu gemacht, funktioniert jetzt mit allen IPs. bcm138q - Gleich mit bcm138p, Bugfix fuer IP-Konvertierung eingebaut. Falls nicht gravierende Probleme auftreten kann diese Version verwendet werden. bcm138r - Bug: Durch wiederholtes Umcodieren sind die Umlaute versaut worden. Das wirkt sich vor allem dort aus, wo es keine Kommentare sind. In mbinout.cpp und mbhttp.cpp werden die Umlaute jetzt in hex dargestellt. - Transfer binärer Mails funktioniert jetzt. - Header wird beim Transfer neu geschrieben. Noch dirty. bcm138r3 - Bugfix: Bei HTTP-Ausgabe 79 statt 80 Zeichen - Bugfix: Uplink in rundat.bcm bezieht sich auf das aktuelle Login, nicht auf das letzte Login lt. Userdaten. - Angabe der login-time als long-int (ansi-format) in rundat.bcm. Format: login_time 860486538 - Bugfix: Verteiler welche sich nur 2 Boxen teilen funktionierten nicht. (REJ- LOOP sollte nicht bei Bulletins greifen) - Befehl rprg gibt CRC aus. - Befehl rprg wartet nicht auf "ok". Funktioniert auch bei Mails so, sollte also kein Problem sein. - Befehl rprg und wprg mit schnellerer CRC-Berechnung. - Befehl rprg und wprg nicht nur ueber Funk. Nur tw. ueber telnet getestet. - Angabe der Uebertragungsrate bei rprg und wprg - wprg bricht ab, falls nicht #BIN# kommt (vorher Abbruch nur bei Eingabe von ^Z). - Bei wprg wird jetzt die CRC ueberprueft. Damit ist eine fehlergesichtete Ueber- tragung sowohl mit wprg wie auch mit rprg möglich. - Generell wurden binaere Ausgaben zugelassen. Kann moeglicherweise zu Problemen fuehren. Dzt. werden zu allen "io-ports" die Daten mit einer neuen Funktion bputv() transparent durchgereicht. Bei http-Ausgabe erfolgt Umlautkonvertierung. - Die Rubrik TMP wird automatisch angelegt. - Neue Bedeutung von createboard: Die Einstellung "0" bewirkt, dass Mails an nicht vorhandene Rubriken in die Rubrik TMP eingeordnet werden. Bei "1" wird wie bisher die entsprechende Rubrik unterhalb von TMP erzeugt. (Grund: Bei DOS-Boxen mit grosser Platte kam die Boardzahl knapp an das Maximum heran) - Kein http falls User-PW gesetzt wurde. bcm138r4 - Bugfix: Aktives Feld an flascher Position bei http-Ausgabe mit eingestelltem Parameter -P (Ausgabe der Mailflags). Die Mailflags sind nun direkt vor dem Nachrichtentitel angeordnet, damit ist das aktive Feld immer richtig. - Bei Linux wird im Trace-Fenster nur mehr "gefiltert" ausgegeben, nicht zulässige Zeichen werden durch einen Punkt ersetzt. Damit wird verhindert, dass VT100-Terminals auf den Grafikzeichensatz umschalten. Die Zeichen 0x0d 0x0c 0x20-0xf7 werden angezeigt, andere Zeichen werden durch einen Punkt ersetzt. - Reorg f fuehrt jetzt zusätzlich alle Reorgs des "normalen" Reorgs (ohne Parameter) durch. - Beim Reorg wird jetzt im PS angezeigt, welcher Reorg dzt. durchgefuehrt wird. - Bugfix: Beim Userfwd wurden Mails mit falscher Herkunft akzeptiert, umgekehrt wurden Mails ohne Herkunftsangaben nicht akzeptiert. Jetzt werden nur Mails mit Herkunft = Logincall oder keine Herkunftsangabe (dann wird das Logincall eingesetzt) akzeptiert). - Bugfix: Header bei Transfer wird bei persönlichen Mails jetzt sauber neu generiert, bei Bulletins bleibt er gleich. Div. Verschoenerungen eigener Schlampigkeiten im mbtrans.cpp - Bugfix: Bisher war auch /EX im Forward erlaubt, das ist jetzt nicht mehr so. Als Benutzereingabe ist /EX nach wie vor erlaubt. Im Forward kann damit eine Mail nur mehr durch ^Z beendet werden. - Bugfix: Beim Login ueber axip dauert das Disc sehr lange, es wird bei der Eingabe von return sofort durchgefueht. Aenderung im mbtnc.cpp. - Bei st l wird die geschaetzte max. Anzahl von Infomails angegeben. - Bei reject wird zusaetzlich die Mailtype ins trace geschrieben. Damit wird der Eintrag REJ SP DXC @ WW erst verständlich. - Einbau einiger Meldungen und wdelay() um herauszufinden, warum Detis Compilat am DB0AAB nicht funktionierte. Interessanterweise ist das Verhalten bei "disable" unterschiedlich von dem beim AAB. (Dort wurde cron - no valid boxaddress angezeigt und damit von cron automatisch auf disable geschaltet. Trotzdem war aber kein Login mehr moeglich. Durch den Einbau der Delays ist der Start etwas langsamer geworden. bcm138r8 - Bugfix: Beim AAB scheints an inkompatiblen Libs zu liegen, und nicht an irgendwelchen Problemen mit der BCM. Ich habe deshalb jedenfalls die div. zusätzlichen Delays wieder entfernt. - Bugifx: Die Verbindung wurde durch das Entfernen der Warteschleife beim Verbindungsabbau nun wirklich sofort abgebrochen. Ich habe jetzt ein etwas hoeheres Delay eingebaut. Damit sollte das nicht mehr so sein. Nur - wirkliche Loesung ist das keine, hier werden nicht die Ursachen kuriert. bcm138r9 - Folgende Flags werden dzt. beim Read-Befehl default gesetzt und koennten eigentlich auch fix auf "aktiv" gesetzt werden. Damit wäre die Flags fuer andere Dinge frei: Im Prinzip verfügbar: B D E M T Y Z - def. gesetzte Flags Dafuer gibt es noch nicht verwendete Flags: nicht verwendet: J Q S - def. nicht gesetzte Flags (keine Aenderung) - unter Linux wird eine #S-Meldung ausgegeben, falls ein tty-Port ohne CRC gestartet wurde. Damit sollte auffallen, dass etwas falsch konfiguriert wurde. (KISS ohne CRC verursacht Datenfehler!!!!) - Neuer Befehl SFHOLD gibt die Liste gehaltener Dateien aus. Diese Liste wird jetzt nicht mehr unknown.bcm hinzugefuegt, sondern in trace/sfhold.bcm abgelegt. - Bastelei bei -b/read bcm138ra - Mails an den lokalen Sysop (Ziel SYSOP) werden in die User-Rubrik in init.bcm eingetragenen Sysops gelegt. Damit ist es nun moeglich, an den Sysop einer Mailbox direkt Nachrichten zu senden, ohne den Sysop zu kennen. - In mail.h ist nun ein define DZW enthalten. Ist dieses define gesetzt, so werden nicht fertige Codeteile mituebersetzt. - Der Bin-Anteil einer Mail kann mit der Read-Option -q ("quiet") ausgegeben werden. Die Ausgabe erfolgt ohne Vor- und Nachspann. Damit können direkt etwa Dateien aus Mails extrahiert werden. Anwendungsbeispiel: export demo.lzh read -q baybox 123 BUG: !Manchmal kommt am Anfang ein 0x0a hinzu!! - Als Sysop kann man eine beliebige Datei an eine Mail anhängen. In der Mail kann mit dem Befehl mit ".attach Dateiname" eine beliebige binäre Datei an die Mail angehaengt werden. ".attach" muss klein geschrieben werden und darf nicht abgekuerzt werden. Beispiel: s dl8mbt @ db0aab Leseutility Anbei neuestes Util .attach src/util.tgz bcm138s2 - Dank DG9MHZ jetzt mit huffman.cpp. Reentrant, Speicher wird mit malloc angelegt. bcm138s4 - Createboard kompatibel zu 138j gestaltet: 0...alle nicht vorhandenen Rubriken werden in die Rubrik TMP gegeben. 1...alle nicht vorhandenen Rubriken werden als Subboard zu TMP abgespeichert. 2...alle im Rubrikensystem nicht enthaltenen Rubriken werden abgelehnt. Bei 0 und 1 wird jeweils die Rubrik TMP automatisch generiert, falls sie noch nicht extistiert. Default ist 0. bcm138s5 - Bei der SID-Auswertung wird "B1" bzw. "D1" erkannt und als o_d1 bzw. o_b1 abgespeichert. (Vorbereitung auf DP/FBB-Fwd) bcm138s6 - PW-Ueberpruefung bei HTTP ohne Unterscheidung Gross/Kleinschreibung. - Bugfix: http-pw fuer amprnet funktioniert jetzt auch, wenn das das PW abgeschaltet wurde. - Bugfix: Initialisierung von cookielogin in mbhttp (Zeile 610). - Im Connect-Pfad ist nun möglich, bei mehrstufigen Connects ein "=" als erstes Zeichen anzugeben. Damit wird der Text bis zum nächsten " /" transparent durchgereicht. Beispiel ...AAAA OE3XSR / =XCON F5ABC 3 / =BBS Baut die Verbindung zu OE3XSR auf, anschliessend wird "XCON F3ABC 3" ausgesendet, wenn diese Verbindung hergestellt ist, wird "BBS" ausgesendet. Die Antworten "connected" etc. muessen erkannt werden. Wird die Antwort nicht erkannt, bitte ich um ein Log, damit kann ich die Antwort dann in den Code aufnehmen. bcm138s7..8 - Begin von FBB-Forwarding. Alle mit FBB-Forwarding in Zusammenhang stehenden Codeteile sind mit define FBBFWD aktivierbar. Der fuer FBB-Fwd notwendige Code steht hauptsächlich im mbfbb.cpp bzw. mbfbb.h. bcm138t - Sowohl am DB0AAB als auch funktionierte das Forwarding bei der 1.38s nicht mehr. Grund war, das mbcron bereits beim Start an einem oshell haengen blieb - das pty lieferte nicht EOF und damit wurde die shell nicht beendet. Ursache duerfte sein, das die pty mehrfach geoeffnet war und deshalb am anderen Ende kein Fehler erkannt wurde. Loesungsversuch: Ein pty laesst sich nicht oeffnen, wenn das tty nicht vorher geoeffnet wurde, deshalb wird jetzt getestet (ad_linux.cpp), ob das oeffnen des Slave ohne Master nicht moeglich ist. Der Fehler tritt uebrigens nur im Zusammenhang mit Wampes auf, dort wird auch chmod und chown auf die pty angesetzt. Das sollte nicht so sein. Loesungsmoeglichkeit: Die letzten (zB 5) pty's fix auf owner bcm stellen und im Wampes das chown und chmod entfernen und dort zusaetzlich so wie in der BCM testen. Test bei OE3XSR - geht nicht, Kein oshell mehr moeglich. bcm138t1 - Jetzt wird nicht nur getestet, ob es ohne oeffnen der anderen Seite nicht moeglich ist, sondern ob es nach oeffnen der anderen Seite moeglich ist. Zusaetzlich wird beim letzten pty (und nicht beim ersten) begonnen. Verteilung an DL8MBT und DG9MHZ um einheitliche Versionen zu haben. bcm138t2 - Generierung einer Dos-Version. 4 Warnings in mbtrans.cpp und mbsysop.cpp entfernt. Damit keine Warnings, jedoch 13 Warnings im huffman.cpp. bcm138t3 - Bugfix: Beim Linuxkernel 2.0.0 kann sowohl Slave als auch Master eines pty's zuerst geoeffnet werden, damit funktioniert die oben eingebaute Routine nicht. Test entfernt. bcm138t4 - Bugfix: Der Aufruf von Run-Utils erfolgt immer in Kleinbuchstaben (bei Unix wesentlich). (mbinterf.cpp) - Boxadresse wird auf ".EURO" bzw ".#" abgefragt. Damit sollen fehler- hafte Einstellungen vermieden werden. (mbcron.cpp) - Bugfix: Angabe von Info/Userpath bei voller Platte war vertauscht. (mbcron.cpp) - Bugfix: Jetzt richtige FBB-SID im mbfwd.cpp - Erweiterungen im mbfbb.cpp (CMD-Line-Parser) - Nur mit der Option -b (binaer) wird ein Export transparent durchgefuerht, ansonsten erfolgt eine CR/LF-Konvertierung. Nur wesentlich in der DOS-Version, unter Linux macht das keinen Unterschied. Damit geht das exportieren einer Bin-Mail unter DOS folgendermassen: "export -b bla.lzh read -q oe3dzw 123" - wprg akzeptiert jetzt auch Leerzeilen vor dem Upload. Damit kompatibel zu alten bzw. falsch konfigurierten Versionen von WinGT. - Speicherersparnis - hardnewformat wird nicht mehr ausgefuehrt bcm138t5 - Die Funktionenen zur crc-Berechnung sollen in einer eigenen Klasse konzentriert werden. Statische crc-Tabellen. (mbcrc.h mbcrc.cpp) bcm138t6 - Bugfix: Flag 5 wurde ueberschrieben, funktioniert jetzt - Die Endekennungen fuer Mails werden jetzt nur mehr am Zeilenanfang einheitlich gross oder klein geschrieben akzeptiert. Damit kann es zB. nicht mehr vorkommen, das eine best. Zeichenfolge in einem 7plus-File als Mailende interpretiert wird. bcm318u - DOS-Version jetzt max. 30 statt bisher 15 offene Files moeglich. - crc fuer mbsysop,mbsend,mbfbb aus zentraler crc-Funktion. - Bugfix:Eintragung mit replog falls Mail abgelehnt wird, nicht mit serious. - Verzögerung beim Logout verstanden und jetzt sauberer gelöst: quit: sofortiges Logout, auch wenn noch Daten anstehen bye,exit,logout: Logout erst wenn alle Daten geschrieben, Verzögerung bis zu 30s möglich. - Bugfix: div. Verschoenerungen um alle Warnings zu eliminieren. Im huffman.cpp "sig"-Warnings durch pragma-Anweisung eliminiert. - Im Log wird nun fuer Userforwarding das Flag "U" gesetzt. Damit ist Userforwarding nun vom normalen Fwd unterschieden. - Beim Login ueber TCP/IP wird nun nicht mehr "TCP/IP" ins Log geschrieben, sondern die IP-Nummer direkt. Aus Platzgruenden erfolgt diese Ausgabe jedoch ohne "via" vorher. (bei der DOS-Version unwesentlich) - Funktion huffmem entfernt, damit weniger Speicherverbrauch in der DOS-Version - Die Funktion huffman-Funktion wird nur kompiliert, wenn FBBFWD aktiviert ist, damit wieder schlankere DOS-Version. - Huffman mit richtigem bcm-Malloc versehen, temp. Dateinamen sauber - Bei runutils werden nun die Parameter unter Linux ungefiltert aber mit "quotes" an die shell weitergegeben. Damit wird einerseits sicher verhindert, dass die shell die Eingabe interpretiert, andererseits werden alle Zeichen durchgereicht, also auch >, < und |. - Bei runutils wird nun testweise eine Datei zur Verfügung gestellt die im Usertask nach dem runutils quasi interaktiv zur Verfügung steht. Die Datei wird binaer gelesen. Dzt. wird diese Datei nicht (!) geloescht. Ausgaben von run-Utils sind jetzt mit der Endung ".run" versehen und koennen damit von anderen temp. Dateien unterschieden werden. - Versuchs-Bastelei fuer OE3BSS: Ein Flexnet-Knoten kann - sofern die Option "y" gesetzt ist, von der BayCom-Box aus konfiguriert werden. Dazu dient der Sysopbefehl "cfgflex ". Es wird als eigener Task eine Verbindung zu aufgebaut und anschliessend die Datei f_call.bcm an den Digi geschickt. - In der eingespielten DOS-Version wurde das cfgflex.cpp zum Laufen gebracht, in der Linux-Version ist es noch nicht lauffaehig, genauso nicht im Archiv. Die Funktion wurde in der Einspielung nicht dokumentiert. bcm138v - Kommentare in slow/fast logout Meldung im Syslog entfernt. - SYSOP-Mail hart an Sysop umgesetzt. - Infos fix als Vorspann zu Info eingebaut. - cfgflex in Linux repariert - Umbauten in mbsend.cpp - wantmail ersetzt Teil von mbsend(), weiteres in fbbfwd - Mail wird akzeptiert, Temp-Bid angelegt - Test von D-FBB-Proposals mit Protkollmitschnitt, Auswertung funktioniert, CRC hat Bytes vertauscht. - FBB-Fwd: Proposal Auswertung und Beantwortung fertig. - Falls bei der Mail keine Mailtype angegeben wurde, so wird nun automatisch "P" genommen, falls die Zieladresse eine Box ungeleich der eigenen Box ist. - Bugfix: kein @ ??? bei einer leeren Inforubrik - Bugfix: nn-nn im http-Interface jetzt ebenfalls am Zeilenanfang - Bei mehrfachen Replys wird "RE^n:" ausgegeben - Serious Bug-Fix: Bei der DOS-Version funktionierte der transfer-Befehl fuer BIN-Mails doch nicht, die Mail wurde im t-mode statt im b-mode bearbeitet. bcm138v1 - Bugfix: Neue Zuordnung Bulletin/Usermail hatte doch nicht richtig funktioniert, neue Funktion. - Re statt RE - grep im crontab moeglich, Syntax: crontab "suchbegriff" - Logoption -U gibt nur Userfwd aus, -G gibt nur Mailboxfwd aus. bcm138v2 Diese Version setzt auf bcm138v1 auf, bcm138w wird dzt. nicht weitergebastelt, die v1 hat sich im wesentlichen als stabil herausgestellt und laeuft an div. boxen seit einem monat. - Mailende jetzt nur am Zeilenende, nicht nur am Anfang. - Log funktioniert jetzt "scheinbar". Entweder zuvor geändert oder tritt scheinbar nicht immer auf. - Fwd-hold wird nicht mehr bei Bulletins gesetzt, wenn die Ursache "zu lange" oder "binaer" ist. bcm139 - Genauer Check beim reorg-Users hinzugefuegt - System geht bei 5 MB (Info/User) bzw. 10 MB (System) auf Disable - Generierung einer DOS/Linuxversion, Verteilung bcm139 -> bcm139r - Frames beim http-Interface, dh. effizientere Uebertragung (Tnx) - info-Befehl: Nun werden auch die verwendeten TCP/IP-Adressen ausgegeben, die Rufzeichen werden nun richtig ausgegeben. - Weichere Limits beim reorg l - ppconvers in die Linux-Version eingebaut: Voraussetzung ist, das der Ping-Pong-Convers von DG9FEF Version 3.12 am Linux-Rechner installiert ist (und funktioniert). Im Makefile von convers sind folgende Define's zu setzen: DEF7= -DSETLOGNAMES # allow users to set callsign with -l option CDEF9= -DNO_SHELL # uncomment this if you don't want !-commands Der convers kann dann etwa mit folgender Kommandozeile /usr/local/bin/convers -c 4719 -l oe3dzw testweise aufgerufen werden. In der bcm wird das Loginrufzeichen des Users automatisch hinzugefuegt, genauso der Kanal, falls angegeben cmdppconv convers -l %s -c %s Der convers wird mit dem Befehl "ppconverse [kanal]" aufgerufen. Wird vom User kein Kanal angegeben, so wird 4719 verwendet. Soll der ppconv-Aufruf deaktiviert werden, so ist cmdppconv off einzustellen (default). - Im Netz gibt es mehrere Convers-Netze, am bekanntesten sind der Deutschland-Convers und der weltweit-Convers. Um insbesondere letzeren zu unterstuetzen ist der Befehl "wwconverse" implementiert. Er funktioniert genauso wie der Befehl "ppconverse", konfiguriert wird er durch den Parameter cmdwwconvers -l %s -c %s - Usermails werden jetzt auch dann im Forward akzeptiert, wenn sie in der Empfangsbox unbekannt sind. - Bugfix: Sicherheitsluecke beim User-PW entfernt - Bugfix: User-forward zu Userboxen welche Bin nicht unterstuetzen funktionierte nicht richtig. - Im sfhold.bcm wird die Hold-Ursache durch eine Raute markiert. - DOS-Version: Groesseres Trace-Fenster, dafuer kleineres Monitorfenster. (Anmerkung: so sollte es jedenfalls sein, in der verteilten Version berlappen sich die Fenster etwas. Das wird korrigiert, hat aber keine Auswirkung auf die Funktion der DOS-Box) - SMTP und POP3 Interface (genaue Beschreibung extra). (Many THANKS!) Damit kann die Mailbox genauso wie ein "Internet-Server" mit einem E-Mail-Programm bedient werden (zB. Netscape). Am IP-Port 8025 lauscht ein "smtp"-Server, am Port 8110 ein "pop3"-Server. Die Ports können beim Start der BCM durch Komandozeilenparameter verändert werden: -m 8025 SMTP-Port -s 8110 POP3-Port -t 4719 Telnet-Port (ACHTUNG: Neues Flag -t !!) -h 8080 HTTP-Port Damit ist es nun moeglich mit div. Email-Readern Packet-Mails zu lesen. Im Reader (zB. Netscape-Mail) ist dazu der Rechnername mit Portnummer anzugeben, also etwa: bbs.oe3xsr.ampr.org:8025 oder db0aab-bbs.ampr.org:8110 Bei POP werden mehrfache Empfaenger unterstuetzt (max. 100). Es koennen sowohl persoenliche Nachrichten, wie auch Bulletins mit smtp verschickt werden. - MIME-Header-Generierung fuer http- und pop3-Interface. BIN-Files koennen nun auch via http ausgelesen werden. - Verbesserte Moeglichkeit unerwuenschte Nachrichten zu filtern: Die Datei badnames.bcm hat nun folgendes Format: Flag Keyword Wobei das Flag entweder < ..... Absender > ..... Emfpaenger @ ..... Zielmailbox $ ..... Bid ist. Im Keyword selbst sind die Wildcards ? und * erlaubt, ? ersetzt ein beliebiges Zeichen, * ersetzt alles rechts stehende. Beispiel: -------------badnames.bcm < dh3vy > bild* > win* > fuck $ ??????DY0AAA @ DF0AR ------------- - Beim smtp, pop3 und telnet-Zugriff wird im Log ein entsprechendes Flag gesetzt. Dieses Flag kann beim Auslesen des Logs ebenfalls abgefragt werden: Protokoll Flag Option pop3 P -p telnet T -t smtp E -e zB. Abfrage aller smtp-Zugriffe in der letzten Woche: log -awe - Die Datei badnames.bcm kann mit dem Befehl badnames [suchbegriff] abgefragt werden. - Der Sysopbefehl ".attach" beim Schreiben einer Mail speichert nun auch den Dateinamen mit ab. Das Datum wird nicht gesetzt, der im BIN-Header stehende Zeitpunkt ist ein Dummy. - Ein Nachtrag, geht bereits seit der bcm1.39: cfgflex [flexcall] Schickt eine Flexnet-Konfigurationsdatei an den durch "flexcall" angegebenen Flexnet-Digi. Die Konfigurationsdatei muss im Boxverzeichnis stehen und heisst "cfgflex.bcm". Voraussetzung: Die Box muss am Link zum Flexnet-Digi ein "y" eingetragen haben. Beispiel: ------------ cfgflex.bcm w c Sternberg - Dein Digi / e x w l Neue Box installiert / e x ------------- Achtung: Zeilenumbrche werden 1:1 gesendet, im PR ist als Zeilentrenner blich, unter DOS , unter Linux . - Neu "sf all" startet das fwd zu allen fwd-partnern. - Bugfix: Monitorfenstergroesse - Traceausgabe BADNAME als report, vorher replog - Neue Positon des uwin, genau in das Monitorfenster passend. - "Alpha" in der Versionsangabe entfernt. Changes bcm139x15 .. bcm140 bcm139x15..bcm139x16 - Serv for Linux/Win32 is optional, project not finished yet. - removed unneeded fwd-log "too many fields ignoring" - added check for "file was erased" - added conok to st f - was removed - added number of incoming/outgoing connects to st f bcm139x16..bcm139x17 - fixed format of st f - fixed cpu-id for 486 supporting ID-command - fixed double trace for non #R in syslog_r - when no path for user-fwd text is "passive" instead of "disabled", that caused qrm. - now checking crc of file when using crc-fbb - crc on rx of proposal in D1-mode obligatory bcm139x17..bcm139x18 - if mybbs-time > 30days in advance -> remove mybbs at all - task "login" -> "system" - cfgflex - reads input, no RNR, waits before disc, text-mode - fixed umlaute in mbedit.cpp - tracelevel 0 at startup bcm139x18..bcm139x19 - fixed: no err-msg when mail was erased - fixed: double bytesum on usersf bcm139x19..bcm139x20 - added 7plus-decoding-table in crctab.h - fwd-trigger: fwd mails will be removed - fwd-proposal: already erased mails will not be proposed - added crc-check-function for line-crc of 7plus-mails - fixed: wrong crc under DOS on fbb-rx bcm139x20..bcm139x21 (not distributed) - added check for correct 7p-line, file is not accepted if not ok - 7p-files will be marked in listing - several debugging-sessions, but no results bcm139x21..bcm139x22 - corrected crc-check, now accepts "FB" without B1D1 - fixed s_fsetopt - was set, even when file was not open - rute fix to seg-fault when reading sid - just accept 80chars as before - changed socket for linux, tnx dg2fef - removed sigpipe-handler - fixed: problem with too long fwd-pwd bcm139x22..bcm139x23 - fix: initialize msgty to default bcm139x23..bcm139x24 - fix: removed ^z from fwd-log - removed ssid from reply-to line (makes no sense in an address) - fix: empty proposal in fbb-fwd - fix: removed return of void fn in mbsend.cpp - hrx: added "twin" - window (dos) with ps output, updated twice a second - hrx: added dashes in ps-output - hold will generate return mail for user-mails - another check for allready received bids bcm139x24..bcm139x25 - usermails which can not be forwarded will be held in fbb-fwd too. - added type-casts to mbtimecvt (warnings under dos) ! do no use, there is bug in the function above! bcm139x25..bcm139x26 - corrected previous version, bulletins were erased, too when bulletin was rejected with "no". - added loop to win32 that should output the whole file even if the output is interupted by a page-stop. - commandbuffer from 79 to 130 chars, now "alter reject" can be used up to its max. length of 80 chars for rejected boards. - change of kiss-interface, tnx dg2fef - sigpipe-handler removed, tnx dg2fef - mbsocket updated, tnx dg2fef - fixed: comment to mail when addr was not given -> "@ #" was used - fixed: a ur +n was not working any more - fixed void for ax25_set_pid - fixed: check for mailtype in reject.bcm did not work correctly - reject.bcm more robust, comments may be on any position, lines with < 3 chars and ^Z will be ignored bcm139x26..bcm139x27 - bugfix: 7plus-headerlines and crc on fbb-rx were no recognised correctly under win32 (typecast) - when reading mail from file stopped on 0x00..0x00, fixed - on fwd-logout, number of "tnc" is shown in fwd-log (was 0) - in fbb-fwd "later" will no longer remove that mail from the fwd-queue - help for tgrep (Syntax: ...) - kopf/head will output r-lines in long form - will generate "hold"-mail when personal mail not accepted in fwd with "no". - new baycom.h - will compile under new linux-gcc-compiler bcm139x27..bcm139x28 - added typecast mbtimecvt.cpp (no more warnings under dos) - added ifdef msdos for mailserver under dos (still using "old" mbtask.cpp because new version from jonny does not work correctly - added "%"for fwd.bcm-connect path. "%" will actvivate f-pac connect strings instead of Flexnet/BayCom/Netrom-Connect-Strings eg: f6kif a...a f6kup f6kwp /% f6kif-1 f6kif-11 651501 will perform an l2-connect to f6kup via f6kwp, when connected it will send "C F6KIF-1 F6KIF-11 651501" and will then wait for the FPAC-connect string. Note: I tested this with the responses I received from FPAC, there might be situations where this does not work correctly - personal mails sysop @ will be accepted - mails > 100 000 bytes will be shown in kbytes in check - on transfer - old r-lines will be ignored - will generate new bid when personal mail for bbs with mybbs different from own bbs - cd without parameter will change to users "home" directory (implizit test for own call) - fwd-path "**" will match any h-adress (no flood) bcm139x28..bcm139y - removed debug-output of above version - timout-code in fbb-fwd was unreachable - e-mails @ flood did not work, removed again from above version - grep fuer check-suchbegriffe - dir option -r -> output of held messages only bcm139y..bcm139y1 (oe3dzw) - initfwdlist - removed output when no logincall - update_rline - remove trailing \r from line - win32 - small fixes for the compiler - fixed bug - e-mails were generated for usermails, not for bulletins - mail put to rejectlog if bad bin-crc - better, shorter info "lastcmd" bcm139y..bcm139y1 (dg9mhz) - added support for Kernel AX25 of Linux bcm139y1..bcm139y2 - merged bcm139y1 from oe3dzw and dg9mhz, no changes bcm139y2..bcm139y3 - fixed FPAC-check, added SV-texts - fixed timeout for fbb-fwd in sendonemail - added support for oscar-satellite callsigns eg KO23 - alter default leer usercache aus, deto bei alter delete - removed path from yapp-filename (on tx) - added rbin,wbin - added sysop-cmd "append" bcm139y3..bcm139y8 - added select to mbax25k.cpp - added line,file to trace (for debugging) - added select to mbsocket.cpp - no more "hanging" connections via tcp/ip - fixed bug with brocken fwd-triggerfiles - support for sysop-pw in md2/md5 format, commands md2,md5 format: 2nd,3rd line in passwd.bcm bcm139y9 - fixed check for bad lines in triggerfile bcm139y10 - fixed killfwded - fixed win32-tcp/ip - fixed fwdssid in mbinit.cpp - added support for md-pw (just a begin, not finished) bcm139y11 - fixed http-send, subject longer > ca. 50chars - added logbook for http-access again - added pwlog for http-access - check for contentlength - max. 10MB - added vendor-id to version-cmd - fixes to ax25kernel-support (dg9mhz) - fix: correct log-data for fbb-fwding bcm139y12 (the day after daylightsaving) - linux - utcoffset was wrong when daylightsaving active bcm139y13 - dos - when pcisutc=0 -> cmos-clock (dos) was set into wrong direction - ascii-fwd-log - lines with ctrl-z were missing (eg e/m-lines) - dos would not compile - mbtask-changes for ax25kernel-support - added md2/md5-passwort supported as option (only in Win32/Linux) DOS: +ca.9 kBytes new: alter loginpwtype, fwdpwtype 0 (default) BayCom 1 MD2 2 MD5 else PW disabled bcm139z - fixes to md2&md5 pw (distributed with md2/md5 inactive) bcm139z1 (dg4mmi) - fixes to md-pw bcm139zd (oe3dzw) - mail.h: zielen+1,zielboard+1 in task-variables (fixed bug in fbb-fwd - segf when invalid proposal) - removed debug-output "not this one" (fbb-fwd) - removed hold-msg not in user-fwd - removed bug with "nothing to send", has to be tested carfully! bcm139ze (oe3dzw) - rprg - no files with 0 bytes (hrx) - send - err-msg on sendcmd w/o call - ttyfwding - added option by hrx - support for guests by hrx (not finished) - ps -n will show name, too bcm139z2 (oe3dzw) - merged bcm139ze & bcm139z1 by dg4mmi - mails > 2 MBytes will show correct size in kBytes (up to 1 GByte) bcm139z3 - included update by hrx: autotrcwin,checkcount,trcwin new macro "e" (checkcount) - all included as options - now "read -5" works correctly (shows last 5 msges) - fix to "priv" - hope this helps - fwd should always be started when receiving mail - ssid should not become > 15 - alter reject-string could become too long, fixed - better check of users.bcm (at reorg of users.bcm) - Update Prj-File dos,win32 - Fixed serious security problem with serial login - When serial login - no longer sysop by default bcm139z4 - updated fileserver - now supports drive-letters for DOS/Win32 Drive letters MUST be supported when using DOS/Win32!! (dg4mmi) - fixed sysop-password bug in bcm139z2-z3 (dg4mmi) - fixed old grep-bug - could hang bcm (oe3dzw) bcm139z5 - fix fileserver: sysops have access to all drives (dg4mmi) - fix diebox-pwd - added space before pwd (dg4mmi) - option for autofwd (hrx), inactive - fixes for hrx-options, inactive - status sema will show option (erase on kill/close) - status ipsockets (new) will show current state of ip sockets - fwdlog will show taskid (not tnc-number) bcm139z6 - new command ? = help - updated fileserv: correct slash/backslashes now under DOS/Win32 mkdir/rmdir fixed change of drive with c:-command help-command now uses standard help of bcm all texts in english bcm139z7 - updated fileserv - works under Win32 now - removed dashed from ps and status forward - status forward shows "Total" only when at least one mail in queue - md2/md5 sysop-pwd-fn will not tell if md2/md5 pw is set - mbmailsv will only show userlist in mail when users < 50 - no hold/unknown mails for copied mails (subject starts with "CP ") - removed long R:-line header for kopf/head (df3vi) checked format of passwd.bcm: 1st line baycom-password (default-password) 2nd line md2-password (optional) 3rd line md5-password (optional) xth line callsign (of remote station, termqso) x+1 line baycom/old rmnc-password of remote station bcm139z8 - alter sfpwtype instead of fwdpwtype (was confused with alter forward) - corrected texts when setting new sfpwtype - new command "DIR HOLDUSERS" shows all usermails held - added alter newcall - stores new callsign (usefull for license update) - hold due to loop only if no loop before - rej/no-msg w/o dash if no reason given - rejlog only for bulletins (no longer for usermails which are actually not rejected for bad 7+-lines. added report-msg instead - newcall will be used for msges sent or transfered - server msg when updating call in fwd - reorg l will report deleted users as deleted and not as errors - user -q will show users with newcall set - pw-command will show current password settings - pwline will be reset when pw is erased, can only be set when pw is set - new forward-option -u will not wait in fbb-forwarding - Reply will show "Re^n" in http-Mode (was RE:RE..) - Mailserver now also under DOS bcm139z9 (oe3dzw) - version and OS in stop-msg (for dg9mhz), user typing shutdown is logged - .euro will be treated as .eu => no diffence in forward between these two addresses - fixed max. stringlength for conversion in http - updated autofwd.cpp (hrx) - updated mbmailsv (dg4mmi) - several changes/fixes to mbmailsv - added ps -n again, was left out in z8 - fixed dir hold - ANSI-page-up will repeat last command (for telnet-connections) - alter sfpwtype/loginpwtype will only show types available (no md when not compiled in) - added check for max. length of path/filename in fileserver (dg4mmi) - fixes for DOS-version of mailserver(2nd update by dg4mmi) - user_imp will be executed correctly under dos/win32, file will be deleted (dg4mmi) - flag "(7+)" will be saved when a mail is transfered - "guestcall" activated in distributed version autofwd not activated, to be discussed with hrx (slow response, algorithm should be discussed with hrx, comparision with path-cmd) checkcount - very slow, needs up to 1min on pentium with 200.000 bulletins, to be discussed with hrx - hopefully fixed bug which led to missing mblogout()-calls - added debug-code to sysop-baycom-pw - filenames may be up to 50(dos)/120(win32/linux) chars long - "X-Info: No login.. will be shown when pw is inactive or not set and the user is not sysop bcm139z9 (dg9mhz) - security fix for smtp: will only accept smtp from an ip-address/call which used pop before (max. 30min). before any station could send smtp. bcm139za (distributed, some bugs, but stable) - combined both bcm139z9 - fixed: autobin-tmp-filename was too short - accepting #ok# in filesurf-mode - status popdb will show current pop-database - pop-database will forget entries after 1 year - status ipsockets will show head only when sockets are found - error msg when command is not usefull under http - editor only when via console - http - logout -> remove cookie, back -> home, st l -> bcm news - added pwlog when smtp without pop before bcm139zb (tested at oe1xab,oe3xsr; new fwd-mechanism is not stable) - editor also via radio, fix did not work (was already fixed in distributed dos-binary) - fbb-status "defer" caused removal from fwd-list, will be delayed - will switch task when in fn kill-fwded *- fwd-triggerfile for bulletins/usermails will always have the following format: boardname/mailfname bytes time ^ board of mail ^internal filename ^size of mail in bytes ^earliest fwd of mail before time was optional * removed in bcm139zc alter fwddelay will set delay 0..60min alter fwdhold (sysop) will not fwd bulletins from an local user bcm139zc - removed new fwd from bcm139zb - fwd-trigger files should be rewritten from scratch. - added "fbb-status "defer" caused removal from fwd-list"-fix again - OE3DZW err-msg "no CRC" only when serial line - several bugs in mailserver, inactive in distributed version (task remains, hangs when mail to unknown user etc.) - removed fwd-option -o, was buggy - fs could not change to "home" directory under dos, fixed - fixed add-dir error-msg, empty file was not deleted - fs will show correct filetime - fixed timeout in socket-interface, should timeout only when no char in 1h, before it timed out after 60min (eg. max. poptime was 60min) - newcall should now work in forwarding, too bcm139zd (distributed by dg4mmi) - fixed mailserver for linux with ax25kernel - fixed mailserver when mail to nonexistent user bcm139ze - fixed alter readlock bcm139zf - user-fwd: not accepted mails will be erased - fwd: no mail to sender when "fwd reply no". - fixed: 0x00...0x00 in fwd-trigger-files will not hang forwarding - removed tcp/ip feature for db0rgb, obsolete - telnet-login: will use fwd-mode when 1st char of username is "*" bcm139zg - slr active when in fs-mode - increased limits for max-locked files and max-semaphores, reduced limit for max-convlifes under dos. - lockings for forwarded mails will be unlocked when all proposals of fbb-block have been forwarded successfully - no add_hold when special case of mail sysop@ bcm139zh - free space in kBytes (was Bytes). Now limit 4TBytes under Linux, 16 GBytes under DOS/Win32 - check will show correct tables up to max. 999 999 bulletins per board (before limit was at 9999 bulletins). if there are more than 9999 bulletins in a board, the boardname will be cut (to min. 6 chars) - bbs will be disabled when disk is full - killfwded will remove entries longer than 50chars (probably not correct) - purge will remove max. 10000 old bulletins (and abort then). this should save the rest if something will bulletin.bcm goes wrong - slr for fbb-fwd, detailed ps for fbb-tx - now correct language after setuser bcm139zi - fixed erase of not accepted usermails - fixed forward of personal mails, will generate new bid when re-routing - common (ascii,fbb-fwd) function fwdproc_reply - fixed dfree for dos/win32 - reorg users - only every 1000th user is put into the log (before 100th) bcm139zj - included updates from hrx, not active: . paclen - variable packet-length under flexnet/dos . asklogin - asks for data on new login . cfwd - additional createboardfwd . autofwd - creates an dynamic fwd-file These defines are not tested under Linux or Win32. - moved headerfiles from mbcheck.cpp and mbhadr.cpp to mail.h - fixed dfree under Win32 - above check-limit reduced to 99999 bulletins per board (dos16) - shows number of msg when saving mail - on fwd connects a tmp board will always be created independend from createboard 2. - fixed bug which lead to update of bid even for interactive logins - added fsintro-text again (msg/fsintro.gb) will be shown on startup of fs. - fs will show "help fs" at help w/o parameter bcm140 - let's go! bcm140->bcm140a (dh3mb) - cosmetics to the source - now also compiles w/o yapp and runutil-interface - fixes to upload of yapp (when not using baycom-interface) - new commands: cmdlist and scmdlist - show all user/sysop-commands bcm140a->bcm140b (dh3mb) - runutil.bcm - added option -d for win32 (fixed in bcm140d) - added environment-variable "DPBOXUSERIMPOUT" = user_imp - options in several lines - added seconds to version-cmd (removed in bcm140d, see time -a) - fix to ax25-kernel - cr shoud not be sent in extra frame bcm140b->bcm140c (dh3mb) - modifications for glibc - distributed dos-version bcm140b->bcm140d (oe3dzw) - fixed hang of fs (too long input line caused hang of system) - fixed: fbb-fwd stopped when a bin-file with wrong crc was received; reason: output of "|" which is fine in ascii-fwd but forbidden in fbb-forwarding. - fixed: no check for pw when parameter userpw was set to 0. - fixed: security: alter default only when user had not set "a pw off" before. - nice: now more flexible name-routine, eg. DOK-A34 will be accepted - nice: personal mails set to hold will be deleted after one month - fixed: guest will not hang on commands not available to guests - nice: changed text in hold-log from "fwdreply no" to "already rcvd" - fixed: correct flag in logbook for smtp/pop3-logins - nice: lastcmd - at top of pw-function - nice: thanks to jan wasserbauer: added header for beacon - text is read from optional file "beachead.bcm"; max. 150 chars - new: support of multpile ax25 interfaces. Documentation to above improvements by Jan * Linux BCM is unable to handle more than one AX25 kernel interface. I have made siple modification to MBAX25K.CPP for use of more interfaces, file is attached to this letter. It reads parameter ax25k_if from init.bcm as a list of interfaces separated by one space and using the one which has ' D' after it as default. It also puts message to syslog for each interface (just to make sysop sure that interfaces are set ok). * I have also modified MBDIR.CPP to add some header to mail-beacons it is attached to this letter. Name of file for head is defined by BEACONHEADNAME constant. I use beachead.bcm, but you may like some else name. If the file exists text is copied from it to first beacon frame with a newline after it (if there allready isn't one) and user-calls list normally following. If the file does not exist it works just like normal (unmodified) BCM. I also added users-count to syslog entry because with header it is impossible to simply test if mail frame is empty and when I once had user-count it seemed nice to put it in syslog. - fixed: bcm could not be compiled under Win32, fixed support of environment variables under Win32 - fixed: Warning addrlen was unsigned in bcm140b, should be signed - nice: Control-characters in init.bcm will be replaced by spaces eg. ignored (before tabs or linebreaks lead to strange results) - fixed: (hopefully) linebreaks with 0x0a in message.* lead to very strange effects. should not happen again, but NOT tested yet. So better use 0x0d 0x0a linebreaks (dos-like). - fixed: dir news sometimes "forgot" its headers (reason probably because wrong options were read du to undefined variable - nice: issue.bcm will be sent before login, eg. via telnet or serial (modem) line. It will not be sent via ax25. bcm140b->bcm1.40e (reserved to hrx, different tree) bcm140d,bcm140c->bcm1.40f (based on bcm1.40d, not on bcm1.40e!) - added md5-sums to Linux-Makefiles, md5sum needed - fixed bug which caused s_fclose not open error when generating a beacon - new: if beachead.bcm (header file for beacons) contains a makro (an ampersand followed by a char) it will be expanded, eg. uptime can be included into the beacon. (tnx dg0cdc) - fixed bug: comment on local mails (=with no @) - fixed bug: very old mails w/o bids could not be forwarded - new: resume for fbb-forwarding. the following files have been changed: mbfbb.cpp mbfbb.h huffman.h huffman.cpp; Data for resume will be stored in fwd/fbb/*.lhb lhb (and not lha) because the format is incompatible with standard lharc-archives (different header). .lhb call..call of forward-partner nr....serial number 1..99 old fragments will be erased when older than 1 week (every time a fwd is started, they will not be removed if the fwd-partner has been removed in the meantime. - fixed bug: putversion (cmd version) only showed last line of optional code when called again. (tnx dg0cdc) - added cputicks to version under linux with pentium - added parameter "savebroken" - will even save broken 7+files when set 0..default, do not save broken files 1..save only when received via "save" link (fbb) 2..always save broken files (not usefull!) broken 7+ files will be marked with "7-" instead of "7+" - users will usually not see temporary boards when using "d b" (but an explicit "d b tmp is possible). users are usully confused by a list of several 100 tmp boards. Of course this is not a fix against that "board is not removed on reject" bug. - header to dir/list of bulletin board may contain a short info about that board. new file: boardinf.bcm, format: now "alter pw disabled" because uses wanted to remove their password with "off". "alter pw off" no only removes password. (same as "alter pw") - removed bug in output-string of md-pw, was unterminated - "alter ufwd passive": no active fwd-connection form bbs (default, as before) - "alter ufwd off": no active userforwarding from bbs, even if there is an incoming connect/forwarding from users. (if someone wants to send mail but does not want bcm send him mails) bcm140j - distributed version tests show that fbb - at least when receiving mail via FA - converts LF or CR to CRLF. strange... Therefore forward if bin-mails through fbb will not work. bcm140j1 - fixed code for wx-station - first version with communication via serial port bcm140j2 - improved wx bcm140j3 - improved wx, now works correctly, added parameters for wx-station bcm140j4 - wx: diagramms for wind and air pressure added, recall any date - wx station code is now finished, tests at wx-station may begin bcm140j5 - received data from manufacturer of wx-station, updates some readings. first tests at wx-station on saturday - tests with http at db0aab show that it is running stable now ;-) - reports of instability of linux-bcm when running together with kiss-pty. - reports of instability with fs. recomended to deactivate fs. both problems are not related the the latest versions. bcm140j6 - wx is running at oe3xzr now, several fixes bcm140k - after several (internal) updates for wx-station distributed version. the makefile is configured w/o wx-station makefile.wx is the one with wx-station bcm140k1 - removed lefence lib from makefile - fixed some year 2000-bugs: + R-line had a "100" instead of "00" inside time-stamp + interpret "00" as 2000 (or 100 internally) and not as 00 (1900) + user/sysop-input of time will accept year with 4 digis (not only 2) eg. 1999, 99, 00, 2000 will be ok now. + replaced 2 digit output with 4 digit output where possible (not in check/list/dir/mailheader - own address/header will automatically be added to hadr-database - reorg bid/reorg users - reduced logging - if there are more than 100 error during reorg "user" - ouput will be stopped bcm140k2 - will no longer send binary personal messages to a fbb-bbs. it turned out that this system can not handle such messages correctly - new parameter "dirformat" will switch between standard (0) and improved (1) format. "improved": year with 4 digis, eg. 19990104 (dir,check,list,read) bcm140l - added kiss-patch received - changed (c) msg to 1999 - distributed bcm140l1 - fixed yapp bug bcm140l2 - removed error-msg "sigp occured" bcm140m - fixed header for localbbs, removed address - optional "convat.bcm" will convert adresses for mail sent by a user or received in user forward. it will not change any address of a mail received in from another bbs. format: eg: --------- convat.bcm ; Format: oedl dl dloe dl alle dl oeba dl all ww euro eu aut oe --------- So when a user sends a mail to "technik@oedl" it will actually be sent to "technik@dl". This should help sysops to get rid of old adresses. - New boxcommand "convat" will show convat.bcm. - When receiving a mail in s/f addressed to an "old" address it will be forwarded as it would be addressed to the new address. eg. "EU" is found in the forward file. So when a Mail to "technika@euro" is received it is forwarded as it would have been adressed to "eu". But When a local user sends such a msg it would be saved as "technika@eu". - "transfer" will generate same "New messages arrvied" mail as "send" command. Will also trigger user-fwd. bcm140m1 - internal test version - some tests with different user-interface (different style for read/dir command) - under dos: some tests with external huffman-compressor bcm140m2..9 (using bcm140m) - convat should not alter any mails received in forward. - added new ax25 kernel interface, support for several interfaces as designed by Jan. - removed carrige return character from log files under linux - trace-files may now be 130 characters long (before log was cut off at 80 chars.); really, text-consoles are no longer in use... - ax25k_if: trailing spaces will no longer be interpreted as "empty" interfaces - pw "randomized" ;-) - fileio (rprg,wyapp..) checks for existence of file name - fspath added to rundat.bcm (Parameter fspath) and environment (Variable BCMFSPATH). Output only if user has been in fs since login. - External huffman coder under dos when "WO_HUFFMAN" is defined in baycom.h. External coder can be compiled with "bc bcmhuf.prj". - As long as box has standard header-text set no automatic mails (unknown..) are generated. (for private/test-bcm's) bcm140ma - fixed bcmhuf (used wrong filename for crc), was already fixed in distributed dos bcm140m9 binary. - removed -O2 option from Linux makefile. Caused gcc (Suse6.0) to hang on an "internal compiler error". Problably saver without optimization. - on import only LOWER CASE "NNNN" at the start of line will be accepted as "end of mail" marker. Might cause troubles with some runutils. TO BE TESTED! - added new "W" feature. Documented in an extra "WP support of BCM" document (to be written). MyBBs and Erase infos will now be forwarded in a special format if . both partners support it ("W" inside SID) . the sender has "$WP" in its fwd.bcm If the partner does not support the new format, standard WP format will be used (MyBBS-Infos only). (rx,tx) The old "THEBOX" is no longer needed. - Instead of AA.. in fwd.bcm just "-" can be used which stands for "APAAAAAAAA..." - Will generate sample fwd.bcm if file is not existing - Linux/Win32 only: If there are no message-files, a default messages.gb file is generated automatically (Therefore no extra files are needed). - Linux/Win32 only: If "rhosts.bcm" does not exist, a sample rhosts.bcm file will be generated. (just 127.0.0.1). This file may contain comments. Lines with comments are ignored. Comments are marked with ";" bcm140n - Linux/Win32 only: If "init.l2" does not exist, a sample "init.l2" file will be generated. - New defaults for DOS: without mailserver/fileserver/guest - Removed obsolete define for "TELL" bcm140n1 - Fixed bug in mbbids - check for unique bid was broken - WPROT: no empty WP mail if triggerfile only contains non M-mails - WPROT: replaced "(null)" by "?" - WPROT: added ? for zip (currently not supported by bcm) - WPROT: added bid of erase-mail to bid-database (->prevent loops) bcm140n2 - added "lt" = setlifetime by dk2ui - added define for timeout tcp/ip by dk2ui - added zip,name,qth for WPROT - removed -g (no debugging, smaller executable) bcm140n3 - fixed mbwp - free() was missing - increased default/minium limit for maxbids - E/M-messages (whitepage messages in thebox-format) will no only be forwarded if $WP is found in the forwarding-file - userfile no longer limited to 64000 entries (32bit hash instead of 16bit hash) userhash.bcm -> userh2.bcm users.bcm is converted, but backwards compatible for old data. (if you change back to reorg l/reorg p) - increased limits for Linux/Win32 bcm140o - added Linux /proc/loadavg to "status cpu" command bcm140o1 - fixed bug with user s&f bcm140o2 - fixed bug with looping mails bcm140o3 - added radio-port bcm140o4 - radio port wampes/tnt "netcmd" compatible --- tnt-docu: The Netcmd-server works compatible to Wampes. So after connect to the socket, the server is in command mode and accepts three commands: ASCII, BINARY and CONNECT. Any other input or wrong arguments lead to a closing of the connection. ASCII selects a translation from line feed to carriage return before transmitting data on the AX25 side and vice versa. This is the default mode. BINARY selects a transparent connection without any character translation. CONNECT starts an AX25 connection (..). It needs additional parameters, the syntax is: CONNECT [source callsign] The only valid value for 'transport mode' is AX25, other modes will lead to a closing of the connection. The destination callsign must not contain any digipeaters. (...) After a successful link setup the server will switch to data mode, all received data will be sent to the socket, all data from the socket will be transmitted on the AX25 side. When the link setup was not successful, the socket connection will be simply disconnected without any further information. --- When connecting, the following connect-paths are used: ------ l2path.bcm ; comments are ignored (start with ;) ; format: : db0clx: db0clx oe1xlr ha5dxx: ha5dxc oe1xlr oe3xpr ------ - bug fix: old style em-messages were sent not only to $EM (but original addr.) - gnu-extension (not ansi-c): using snprintf instead of sprintf in mbwp.cpp,mbradio.cpp,mbfbb.cpp bcm140o5 - if BayCom-Password contains "DUMMY" http/pop3 Logins will be accepted (with name as password). Note: Allowing this is a security whole. - on smtp @-addr will not be removed eg. test@ww will be sent at ww. but: hierarchical addresses will be cut at dot. eg "oe3xsr.#oe3.aut.eu" will become "oe3xsr" and "oe3xsr.ampr.org" will become "oe3xsr",too. - debug output for "getline/socket" (removed in bcm140o7) bcm140o7 - added st c - Output of min. Watchdog timer & lastcommand - checked strncpy usage in complete source for 0-byte at end, found several bugs there, might have caused some errors - "monitor" will also monitor binary i/o - before only ascii. (eg. fbb-fwd) - radio interface now optional - define RADIOIF in baycom.h bcm140o8 - changed Copyright from "DL8MBT" to DL8MBT at al - changed Copy policy to GNU GPL (agreed with DL8MBT) - using select on rx-code for wx-station bcm140p (distributed) - linebreak at login-text when ctext is not found - bcm32 dsp,plg - added mbradio.cpp - remove snprintf for ad_win32 - removed debug-output from mbradio.cpp - old e/m-trigger files will be removed automatically when using new format bcm140p1 - fbb-proposal will always include at-address - mybbs-updates only if different or setting older than one week - wp-updates only if at least 24 updates waiting (or last update older 1 day). bcm140p2 - after it had turned out that db0aab died on a watchdog-reset due to a bug in mblogout, that function-call was disabled. now a bug in that code was found (brace was set wrong, but indention hided that bug), hopefully aab will run correctly even after re-activation of mblogout. fixes for imports: (caused problems with mailserver/wp) - start import will be delayed until purge/reorg is finished - if "send" inside an import files fails, task is removed - a "send" inside an import is delayed when "sendlock" is active - parameter eraselog: 64 .. log erase of wp-mails - logout of smtp/pop3 will no longer be logged in clog - status forward: replaced obsolete "E/M" by "WP", mail will be 1 or 0, can not be higher. - fixes in wp-code bcm140p3 - changes by jonny: anbei ein Patch bezogen auf 1.40p, bitte übernehmen. Geänderte Sachen: - MD2 und MD5 in Klassen verpackt, damit das Zeug auch für andere Sachen nutzbar ist. - Sysop-Befehle "MD2SUM" und "MD5SUM", sind wohl selbstredend - Funktionen zum Berechnen von MD2/MD5-Hash einer Datei in bc_util.cpp - CRCthp und CRCfbb habe ich auf unsigned short int umgebaut, weil es ja auch nur 16bit-Werte sind. Es hat mich immer tierisch genervt, wenn ich für CRCs unsigned short ints verwenden wollte, der Compiler dann aber die Methoden nicht gefunden hat, weil diese ja einen unsigned long int wollten; ich habe nach der Änderung den FBB-Forward, AutoBIN und 7plus-Prüfung getestet, diese funktionieren noch, andere Teile sollten nicht betroffen sein - Die Passwort-Routinen aus mbsysop.cpp habe ich nach mbpw.cpp verschoben, da passen sie meiner Meinung nach besser hin -- - Implemented fix for mailserv similar to "Import" bcm140q - cosmetic changes (removed debug-output) bcm140q1 Subject: BCM fixes, modifs and so From: jan.wasserbauer@spsselib.hiedu.cz Changes in mbax25k.cpp: - fixed ax25k_checklogin() - due to badly placed FIONBIO accept() was always set blocking and caused BCM to hang strangely in logind sometimes when connect request came (at least on our BBS .. I was unable to reproduce it on my home system) accept() must be between FIONBIO's to work - FIONBIO's are not needed in BCM though (this was really a nasty bug) - fix for paclen - added b->pacbytes = 0 in ax25k_flush() Changes in mbdir.cpp: - modified boardinfo to be written after directory name in DIR and D B (ie. "Directory of SYSOP - Information for sysops:") It seems nicer to me. Final decision is of course up to you. Summary of changes Fixed bug in "transfer" command - message flags (binstart etc.) were not correctly written after using transfer command - bug was invisible to users but was confusing runutils. -> added writemailflags() Fixed bug in "alter default" (linux only) - function defaultuser() in mbusers.cpp was designed for DOS user_t struct and messed up Linux user_t -> changed algorithm of saving "nextsamehash" and "filepos" variables. Cleaned up HTML syntax in mbhttp.cpp and improved noframe support. Added support for 7+ file download in HTTP - changed testreadbin() Netscape now offers correct file name when saving bin-files - slashes '/' in binread path are being replaced by double-dots ':' (few experiments are needed to understand this) Added paclen support for Linux and fixed paclen - added variable pacbytes into tvar_t struct which is counter of bytes ready to TX in next packet I think that configurable packet length is a nice feature especially on a bad links and could be included in normal distribution. Improved YES/NO question (function janein()) - character for "YES" is taken from m_yesnoquestion message - first character after '(' Added qsort into cmdlist - this way cmdlist is much more usefull, unsorted list of commands is not very good .. E-Mail: jan.wasserbauer@spsselib.hiedu.cz URL: http://www.spsselib.hiedu.cz/~wasserba -- bcm141f2 - added mbafwd.cpp, cfgflex.cpp, mbserial, mbsysop from JJ see documentation below - added changes from JJ in rest of code Note: all source code from JJ has been inclued but only some features have been activated (defined in baycom.h) by default. - new fwd option -k .. no fwd of 7plus/bin bulletins - -l .. no fwd of 7plus/bin usermails (user mails 7plus/binary will be set on hold => they get lost this way. only usefull for non-transparent gateways!) - ps -b shows bytes - ps shows "s" in first column is task has sysop status - activated paclen: Only sysop (!!) may set a limit on paclen for specific uses; Only usefull for forwarding via extremly bad links, eg. short-wave. Syntax: setuser paclen 40..255|0 (0 disables paclen-limit) "alter " will show current setting if sysop and if set. --- Original documentation by JJ: [Note: All CB-specific or untested features are not activated in this version - see baycom.h] ------------------------------------------------------------------- - _ASKLOGIN aktiviert MBLOGIN.CPP Asklogin fr„gt einen User beim Einloggen nach Name und Home-bbs, falls nicht vorhanden, sowie dannach, ob er Freigeschalten werden soll (downloadlimit, status). Der Sysop erh„lt bei positiver Antwort eine Nachricht. - _AUTOFWD aktiviert, AFWD.CPP komplett neu hinzugefgt in "MAIL.H" folgende Routinen freigegeben und in MBHADR.CPP "static" und "near" entfernt: uclose(void); hadr_tryopen(void); loadhadr(char *hadrcall,hadr_t *u,int anlegen); mbsysop.cpp fwdlist freigeschalten Autofwd errechnet Pfade fr Usermails selbst, bei ausreichender Datenbank sind kaum Eintr„ge in der FWD.BCM notwendig. Befehle: autofwdtime (INIT.BCM) bestimmt das gltige Alter eines Links, das zur Berechung verwendet wird, in Tagen. autopath zeigt Pfadberechnung an, Optionen siehe MSG-File fwdlist Berechnet Debugging-Datei unter temp/awd1.tmp - _PACLEN aktiviert (auch speicherbar unter linux, bisher sonst ohne funktion) Jeder User kann sich mit ALTER PACLEN die Packetl„nge selbst setzen, in der INIT.BCM l„át sich mit "paclen" der Standardwert einstellen. bugfix in MBINOUT.CPP - _CFWD aktiviert Mit "checkcount" kann die Anzahl der neuen Nachrichten seit dem letzten CHECK ausgegeben werden. Zus„tzlich existiert ein Testmakro %e, das in CTEXT.DL usw verwendet werden kann. - 7plus fwd-unterdrckung (MBFWD.CPP unter scanheader()) wird in der FWD.BCM die Option -K angegeben, werden keine Autobin und 7plus-Dateien an den Fwd-Partner verschickt - downlink bei MAIL.H "typedef struct tvar_t : public task_t" downlink hinzugefgt in MBINTERF.CPP bei listprozess() Befehle hinzugefgt - autosysop bei MAIL.H unter "MBUTIL.CPP" und in MBUTIL.CPP autosysop() hinzugefgt erm”glicht Sysopberechtigung bei bestimmten Links Eintrag in ASYSOP.BCM, Format pro Zeile: call uplink downlink z.B. DJJ812 none none (Direkteinstieg) z.B. DJJ812 DBO812-2 DBO812-2 (wenn das SSID des Ports ber den man einsteigt 2 ist) sind alle Bedingungen erfllt, ist man automatisch Sysop. Soll der Up- oder Downlink nichts enthalten, wird "none" angegeben. ACHTUNG: - Der Uplinkdigi ist leicht f„lschbar, der Downlinkdigi nie, da es sich um den eigenen handelt. - Im Uplink befindet sich bei HTTP- und Telnetlogins die IP-Adresse, sie kann ebenfalls verwendet werden. - Wird bei beiden "none" angegeben, handelt es sich um einen Direktconnect ohne Node(FlexNet mini). Entsteht nur bei Systemen ohne Node oder bei getrenntem Box- und Noderechner, ohne ber den Noderechner zu linken. - Besitzt der Einstiegsport das SSID 0 oder kein SSID(Linkkanal), entsteht beim Downlink das eigene Noderufzeichen ohne SSID. - Bei Einstieg ber den eigenen Node entspricht der Uplink dem Downlink, hier auf SSID achten(und wie leicht es sich bei Flexdigi 3.3e von auáen noch „ndern l„át - ab Flexdigi 3.3g gefahrensicher, neues Paáwortver- fahren). - sysopid in MBTASK.CPP bei listprocess() einige Befehle hinzugefgt vor Tasknummer bei "ps" erscheint neben "*" nun auch "s" wenn der Task Sysopberechtigung hat - _TTY aktiviert - mail.h ttystatustext ttywin ttywatch fr rts/cts ttyautologin - mbserial.cpp (komplett bernehmen) - mbsysop.cpp tty-part ttystatus ttywin - mbtask.cpp eingelogt() fixed, jetzt wird auch task-name berprft, nicht nur logincall, wichtig fr TTY-schleife! - mbinout.cpp putf(), bputf() tty-ausgabe ver„ndert - mbinterf.cpp getlogin() - mblogin.cpp mblogin() , uplink bei dialup erhalten MBSERIAL.CPP komplett neu getlogin() in MBLOGIN.CPP erweitert CARRIER wird unabh„ngig von Textausgaben erkannt, Hangup erfolgt mit DTR LOW. in MBTASK.CPP und TASKING.H taskexists() hinzugefgt, berprft ob ein Task noch existiert. - Telefonforward wird bisher nur von der DOS-Version mit TTY-Port ab V1.40d_cb2 untersttzt. Alle hier aufgefhrten Hinweise gelten nur dort. - Getestet wurde der FWD bisher nur zw. BCM<->BCM im ASCII und FBB-Mode. - TTYDEVICE muá mindestens auf 2 stehen, die letzten 4 TTYMODE-Parameter auf "N,8,1,E". - Die TTY-Paáw”rter mssen bei beiden FWD-Partnern identisch sein, ebenso wie beim AX25-Forward die normalen Paáw”rter. - Das angeschlossene Analog-Modem muá den AT-Befehlssatz untersttzen. - Ein Fehlerprotokoll bei der šbertragung besteht NICHT. Bei CRC-Fehlern wird dies erst am Ende der šbertragung einer Datei bemerkt, und die Datei nochmals verschickt. Sollte dies ”fter auftreten, Schnittstellengeschwindigkeit zurcksetzen. - TTY verwendet zur Fluákontrolle RTS/CTS. - Ist das Modem nicht empfangsbereit, k”nnen keine Befehle abgeschickt werden. Dies gilt auch fr AT-Befehle. - Gestartet wird der Forward mit "TTYDIAL " manuell, bzw falls in der FWD.BCM eingetragen mit "SF ". Automatisch w„hlt die Box bei FWD-Zeitparameter "D". Steht dort nur "A", sendet die Box nur wenn sie angerufen wird. z.B. DBO812 AADDAAAAAAAAAAAAAAAAAAAA DBO812 TTY 0W7823456 (Senden bei Anruf immer, um 2.00 wird Nummer mit Amtsvorwahl gew„hlt) - Der Eintrag fr automatischen Forward muá in der FWD.BCM so eingestelt werden: Anstelle des Connect-Calls(hinter den FWD-Zeiten) "CALL TTY " angeben. z.b. "DBO812 AAAA...............AAAAA DBO812-8 TTY 0W2356" Der ATD-Befehl wird automatisch verschickt, ansonsten gelten die fr das Modem aktivierten Zeichen, z.b. 0W bei Wahl ins Amt bei Nebenstellen- anlagen. - Sofortiges auflegen erfolgt durch "killen" des fwd-Tasks oder mit "TTYHANGUP". Dabei wird die DTR-Leitung auf LOW gesetzt. - "TTYSTATUS" zeigt Status aller serieller Leitungen an. "TTYWIN" in einem eigenen Fenster. Hier gibt es zus„tzlich folgende Eintr„ge: TTY Modus, in dem sich der TTY-Port befindet. POS 0 wait for ring (wartet auf "RING", sendet dann "ATA") 1 busy (tty-port gerade benutzt, z.b. hangup) 2 ring, wait connect (wartet auf "CONNECT") 3 dialup, wait connect (wartet auf "CONNECT") 4 wait for login (login:) 5 eingeloggt (eigener Task ”ffnet sich) /0 /1 dialup inaktiv/aktiv CALL Rufzeichen, das auf dem TTY-Port eingelogt ist TASK Nummer des Tasks, der den TTY-Port benutzt CMD Zeigt an, ob sich das Modem im Kommandomodus befindet. RX Zeigt an, wieviel RX-Bytes sich im seriellen Puffer befinden. mit > ist die Eingabe gestoppt. TX Zeigt an, wieviel TX-Bytes sich im seriellen Puffer befinden. mit > ist die Ausgabe gestoppt. LINE Baudrate der Telefonleitung ECH Echo-Modus 0 kein Echo 1 normales Echo 2 "*" werden zurckgegeben(Paáwortabfrage) Desweiteren wird noch die Onlinezeit und einige Umgebungsvariablen, sowie TTY-Portfehler angezeigt. - bei CARRIER-Verlust wird der Task und der Connect gel”scht und wieder in den LOG-Mode 0 gesprungen. - Modembefehle k”nnen mit "TTYCMD" abgesetzt werden, es erfolt keine rckmeldung("OK") an die Console. Dies ist nur m”glich, wenn der CMD-Mode auf "1" steht. - Konfigdatei INITTTY.BCM mit folgenden Parametern: comadr 0 Adresse des COM-Ports, bei 0 wird COM-Nummer aus der INIT.BCM bernommen und Adresse ersetzt comirq 0 Interrupt (IRQ) des COM-Ports, bei 0 wird default- IRQ fr COM-Nummer aus der INIT.BCM verwendet cmdatz ATZ Befehl zur Modeminitialisierung cmdata ATA Befehl zum Abnehmen des Modems bei Anruf cmdatd ATD Befehl zum W„hlen ringindicator RING Code vom Modem bei Anruf connectindicator CONNECT Code vom Modem bei erfolgreichem Verbindungsaufbau dailprefix Vorangestellte Codes vor Telefonnummer, z.b. fr Durchwahl bei Nebenstellenanlagen mit "0W" dailsuffix Code, der an die Telefonnmmer angeh„ngt wird ringtimeout 30 Wartezeit auf CONNECT, bei Anruf dailtimeout 40 Wartezeit fr den W„hlvorgang, bis abgebrochen wird z.B. wenn Gegenstation nicht abnimmt daildelay 0 Wartezeit bis zum n„chsten W„hlvorgang connectdelay 0 Wartezeit bis zum n„chsten erfolgreichen Verbindungsaufbau maxcontime Zeitraum fr "maxcons", bei 0 inaktiv maxcons 0 Anzahl der W„hlvorg„nge im Zeitraum "maxcontime" bei 0 unbegrenzt Zeitangaben in Sekunden - Soll die BCM selbst bei einer anderen Box anrufen, muá als Zeitparameter "D" benutzt werden(FWd.BCM). Entspricht ansonsten "A". - Wird die Box angerufen nimmt sie grunds„tzlich ab - Neue Option in der FWD.BCM. mit dem Parameter -C kann eingestellt werden, welche Mails mit welchem Callformat an die Nachbarbox laufen -C1 z.b. fr Callformat 1, bedeutung der Ziffern siehe CALLFORMAT. Dies ist z.B. ntzlich, wenn die Nachbarbox nur auf Mails mit angemeldeten DAK-Rufzeichen besteht. (Diese Funktion wurde auf dem letzten Sysoptreffen in Haar besprochen) - Neue Option fr "PS": -c gibt jetzt die bereits Empfangenen und Verschickten Bytes an s„mtliche Žnderungen sind mit "// JJ" im Quellcode markiert ----------------------------------------------------------- bcm141f - - fixed 7plus-filename on pop3 - added MACRO define - was left out in bcm1.40q bcm141 - strlwr in "CONNECT" - using seperate line for boardinfo - wp/w files 24->50 lines min - added check at mblogout - fixed name of .bak file (user) - ctrlz in subject should no longer hang fwd (win32) - sfhold on "already rcvd" only for mails addressed to users bcm141a - fixed ^z-bug (above fix was a problem for e/m-mails) - import locked when sendlock, not during full purge/reorg - fixed "fname empty" bug - fixed log for 9a0xx (call starting with number) bcm141a - internet-version - (this is a bug!) never will do that again - same version, but different code - and the difference is a bug - old M-triggerfiles will be deleted i promise.. bcm141c - fixed above bug, m-files will be deleted, but triggerfiles will be deleted after fwding - fixed security bug (won't tell..) - next will show next mail even if following mail is deleted - newcall on transfer - parameter was missing, caused hangs - smtp - correct output (static string was incorrect) - when forwarding - newcall will only be used when mail is received at destinationm-bbs, but not between. - fwd may be started by all users (not only sysop) bcm141d - dh3mb's fix was a bug: s&f-pw fixed, now forwarding is possible again - md2/5 will also accept upper case characters on receive, on send only lowercase characters are generated. bcm141e - late night fix for s&f-pw - distributed bcm141f - fix: convers could hang bbs on strange input - cosmetic changes for convers (kernel-ax25 - flush, long lines) - newcall - another fix.. - added filewfd from Jan, see his docu below: --- Summary of changes: - Added FBB compatible file-forward support. (enabled by option _FILEFWD in baycom.h) Commands fwdexport and fwdimport with same parameters - fwd-partner and fwd-file - ie. "fwdexport " Fwd-partners are written in fwd.bcm as usual with no fwd-time (all '.') By option "-i" in fwd.bcm one may specify that fwd-partner is BCM - this enables binary fwd (Auto-bin files) and W format for WPs .. (normally ABin is not sent and WP format is used - FBB compatibility) WP messages are sent/received through this fwd. E/M messages should be received but are never sent. This may be used for fwd or for some external utilities maybe for backup .. Even some FBB utilities will work with this (I use it with a bit improved mailgw). - Function writetext modifd to work with NULL input file (used to skip rejected msgs in filefwd) - init.bcm parameter "paclen" is now not only DOS16, defaultuser() sets paclen - Fixes to paclen and one more 10000L replaced with HOMEDISKFULL (was in previous patch) 73s .. Jan --- (the latter changes had been included in earlier versions of bcm) The init.bcm-Parameter for paclen has been included with _INIT_PACLEN. - New "alter unsecuresmtp" 0 (default): needs pop before smtp 1 : no pop before smtp needed Only visible is user sets this parameter - fixed another y2k-bug: reorg did not recognise mails > 2k (tnx jonny) - fixed boardnum-bug - reason was finddir() which returned 0 on single letter boards. bcm141f1 (OE3DZW) - removed paclen from init (different define), was not used in rest of code. - fixed fbb-resume for > 1MB (now variable length) bcm141g (distributed by OE3DZW) bcm141g1 (DH3MB) (only patch to distributed version) - fix for reorg, check for isdir added bcm141g2 (OE3DZW) - some tests, forget it.. bcm141g3 (OE3DZW) (only patch to distributed version) - fixed problem with maxlogins, bug due to patch by JJ bcm141h (DH3MB) - Changed "protected" to "private" in some class definitions - Changed MD2/MD5 functions to OOP - Changed CRC functions to OOP - Received AutoBIN-header within a mail will not be modified, only the CRC field is inserted, if not received - More statistics after AutoBIN-rx/tx - VERSION shows unix-time - Removed "glibc" from the VERSION features; glibc support isn't a feature... - Compiler is called as "g++", reactivated O2-optimizing - Splitted mbfwd.cpp into mbfwd.cpp and mbfwdrli.cpp - Renamed mbfbb.cpp to mbfwdfbb.cpp - Cleaned up the forward code - Removed trailing blank from "Password removed."-pwlog-entry - Changed file transfer facilities to OOP - Some improvements to the YAPP protocol - If box is disabled, sysop-authentication is now possible using md2/md - Changed filesize related variable types to off_t whereever i found it - Moved old serial interface (DOS only) to mbserold.cpp - Serial interface in DOS version is now optional (define FEATURE_SERDOS in baycom.h) bcm141i (DH3MB) - fixes - fixes - fixes bcm141j (DH3MB) - New: ALTER BINMODE AUTOBIN|YAPP|DIDADIT Determines which protocol is used for sending binary parts of mails (inactive[dzw]) bcm141k (OE3DZW) - intermediate version, unfinished code of bcm141l bcm141l (OE3DZW) - new bbs-database, more detailed. update is done automatically on startup. - added WP-forward of bbs-infos: AX25-Address,Sysopcall - WP infos will now be forwarded if triggerfile reaches a certain limit or if no WP-fwd has been established for 12hs or since startup. - added alias commands: CAT=RTEXT, DATE=TIME - Somehow Jonny added a lot of DOS-linebreaks.., removed - new util "cr" will remove cr's (to be included) - new convedit or cedit (systems where built-in dos editor is no longer compiled in): convedit add convedit del convedit list [] convname.bcm is updated automatically, sorted alphabetically, invalid entries are removed, entries are limited to max. 6 digits. - user can not set mybbs to own call any more. only allowed if full hadress is known to the bbs or given by user. - version: removed ansi-time, see time -a - dir/list/cd changes to convname-equivalent board - merge with latest changes by Jonny, nice our changes did not interfere.. at least "patch" did not notice (private versions, not distributed: bcm1.41hz, bcm1.41hz1) - finished conversion of hadr-database, conversion is done at startup. old files will not be deleted. (for backwards compatibility) bcm 1.41l1,2,3 - fixed delete for empty convname-file - typedef to remove warnings of msvcpp - removed external hufman coder from source code, obsolete - fixed bug - purge stopped on tmp-board bcm 1.41l5 - corrected Win32-Project-Files bcm1.41l7 - fixed mbtree - convedit add caused hang under dos - fixed mbfileio - correct path under dos/win32 - fixed cmdlist/scmdlist bcm1.41m bcm1.41m1 - fixed header in rprg, tnx F1ULQ bcm1.41m2 - fixed wtext, incorrect check for existing file - shorter summary on rprg/wprg (only hex, only bit/s, not byte/s) - removed "timeout" from syslog (only in syslog_r now) - removed "WP" from "status forward" - added timeout-counter to status forward, shows number of timeouts during forwarding (happens usually when waiting for the SID on a broken link). - fixed convedit for single-letter-boards - mailserver no longer terminates on unknown users - mailserver does not add user/maintainer when call is unknown bcm1.41n - fixing wtext again - wtext now also accepts ^A as eof-marker (eg. VT100) - removed obsolete files - added linebreak before start of runutil - removed timeout_counter again, code was buggy (b structure was not available in tasking..) bcm1.41n1 - reject did no longer work with rli-fwd, fixed - fixed text im mbfileio/abin - fixed filename in rprg - Old board only warning now... (convedit) bcm1.41o - This should become a new - stable - version, therefore only bug-fixes are included here. This version should become 1.42 if no ugly bugs are found. - fixed warning of linker, virtual was missing in mbfileio.h - mbtask: fixed bug (Jan) - fixed rfc-date, added to time -a - fixed: nameconvert - now conversion to single letter-board is no longer hiding orginal board. eg: convname meinung -> z "meinung" is still readable, but mail is saved in z meinung -> humor "meinung" is still readable, but if there is no board "meinung" user will see content of board "humor" - old bug fixed: user sends to "meinung"-> tmp (now refused) - included cr.cpp - status limits - wider tabs (aab has too many mails..) - ps - now seperate column for "s"(sysop)-flag and "*" active process flag. bcm1.41p - This are tests for post 1.42!!! - included latest patch by jan: + cleaned up baycom.h, configuration now in config.h (new!) + removed useless tasks + some more fixes to filefwd (fwdimport,fwdexport) [not finished] + implemented telnet-fwd: path: "telnet:44.143.48.2 4719" port number is required, password for login - ttypw, for active connects "a pw"-def'd pw + new parameter (init.bcm) "defstatus" - status of "new" users/calls new status 3 => user gets ctat3-text & disconnect, sysop gets mail (for users using fake calls) + FEATURE_SERIAL implemented (replaces FEATURE_SERDOS) + beta feature _AX25K_ONLY not finished + improved flush/connect for ax25k + defaultuer() preserves status (fixed bug) + fixed asklogin/guest (CB-version) + "forward" command only for sysop now - new APOP-feature by DH3WW, Wolfgang; tnx pop with authentication, not supported by Netscape/IE but by fetchmail. implementation according to RFC????. - fixes by JJ + new docu of new CB-specific commands + on fwd - will search for SSID in first 11 lines of text bcm 1.41o1 - fix: ps now limited to 80 chars again, was 81 - added ps option -w => wide (unlimited) output of ps - added ps option -k => shows timeout of task - cosmetic changes to "ps" tabs - removed warning in mbwp.cpp (newer compilers only) - fix: e-msg were not fwded any more (tnx jan!) - fix: convname.bcm - buffer now 80 bytes (before header line was interpreted as first boardname) bcm 1.41o2 - removed cosmetic changes to ps, removed ps -w, ps -k (no, this time i will not add new features, no bugs, just fix them; new features will appear in >1.41p (post 1.42 test-version) - fixed ugly bug in mbbids.cpp - some correct bids were removed - Fix: removed ax25kshutdown from post-mortem (mbtask.cpp) bcm 1.42: - distributed version bcm1.42a - included latest patch by jan: + cleaned up baycom.h, configuration now in config.h (new!) + removed useless tasks + some more fixes to filefwd (fwdimport,fwdexport) [not finished] + implemented telnet-fwd: path: "telnet:44.143.48.2 4719" port number is required, password for login - ttypw, for active connects "a pw"-def'd pw + new parameter (init.bcm) "defstatus" - status of "new" users/calls new status 3 => user gets ctat3-text & disconnect, sysop gets mail (for users using fake calls) + FEATURE_SERIAL implemented (replaces FEATURE_SERDOS) + beta feature _AX25K_ONLY not finished + improved flush/connect for ax25k + defaultuer() preserves status (fixed bug) + fixed asklogin/guest (CB-version) + "forward" command only for sysop now - new APOP-feature by DH3WW, Wolfgang; tnx pop with authentication, not supported by Netscape/IE but by fetchmail. implementation according to RFC????. - fixes by JJ + new docu of new CB-specific commands + on fwd - will search for SSID in first 11 lines of text Docu by JJ: (in German) CB Spezifische Dokuemtation bcm141f2+ Asklogin -------- Asklogin frägt einen User beim Einloggen nach Name und Home-bbs, falls nicht vorhanden, sowie dannach, ob er Freigeschalten werden soll (downloadlimit, status). Der Sysop erhält bei positiver Antwort eine Nachricht. Autorouter ---------- Es gibt neben der Möglichkeit, Forward-wege selbst in der FWD.BCM einzutragen, auch die, sämtliche Pfade von der Mailbox selbst errechnen zu lassen. Man kann auch beide Funktionen kombinieren, indem man weiterhin bestimmte Adressen in der FWD.BCM einträgt. Diese haben automatisch Vorrang. Der Autorouter wird durch den Parameter "autofwdtime" inder INIT.BCM aktiviert. Hier gibt man die Anzahl der Tage an, die eine Nachricht maximal alt sein darf, um für die Berechnung benutzt zu werden. Abgestellt wird der Autorouter mit "autofwdtime 0". Um sich einen Überblick darüber zu verschaffen, was der Autorouter eigentlich alles berechnet, kann man den Befehl "fwdlist" benutzen. Wird dieser gestartet, erhält man nach mehr oder weniger langer Wartezeit die Anzahl der vorhandenen Boxen und der dazu gefundenen Pfade. Genauere Informationen enthält die Datei "afwd1.tmp" im "temp"-verzeichnis der Mailbox, welche folgendes Format besitzt: Man kann sich auch gezielt den Pfad zu einer Mailbox mit dem Befehl "autopath" anzeigen lassen. Die externen Runutils BCMPATH.EXE, FWDLIST.EXE und AUTOFWD.EXE sind somit nicht mehr notwendig. Da der Autorouter die Daten direkt aus dem Netz bezieht, ist es erst sinnvoll ihn einzusetzen, wenn ausreichend Daten in der Infomail-Datenbank vorhanden sind. Auch sollte man den Parameter "autofwdtime" sinnvoll wählen, da evtl. zu alte Pfade oder tote Links sonst zu unerwünschten ergebnissen führen können. Der Autorouter berechnet den Pfad, indem er die Anzahl der dazwischen- liegenden Mailboxen und der Übertragungsdauer abwägt. Autosysop -------- Autosysop ermöglicht automatische Sysopberechtigung bei bestimmten Links sofort nach dem Login. Passworteingabe ist nicht notwendig. Die Einstellungen können in der ASYSOP.BCM vorgenommen werden und sollten gut bedacht werden. Format der ASYSOP.BCM: call uplink downlink z.B. DJJ812 none none (Direkteinstieg) z.B. DJJ812 DBO812-2 DBO812-2 (wenn das SSID des Ports über den man einsteigt 2 ist) Soll der Up- oder Downlink nichts enthalten, wird "none" angegeben. Der Downlink ist das Rufzeichen des Nodes bzw. Digipeaters, der der Mailbox am nächsten liegt. Der Uplink ist das Rufzeichen des Nodes, der am weitesten von der Mailbox entfernt ist, bzw. über den der User ins Netz einsteigt. ACHTUNG: Der Uplinkdigi ist leicht fälschbar, der Downlinkdigi theoretisch nie, da es sich meist um den eigenen handelt. Allerdings sollte man darauf achten, daß sich dieser nicht auch durch Eingriffe von Außen verstellen läßt. Bei Einstieg über den eigenen Node entspricht der Uplink dem Downlink, hier auf SSID achten(und wie leicht es sich bei Flexdigi 3.3e von außen noch ändern läßt - ab Flexdigi 3.3g sicherer, da es ein neues Paßwortver- fahren gibt). Tipps: - Im Uplink befindet sich bei IP-Logins die IP-Adresse, sie kann ebenfalls verwendet werden. - Wird bei beiden "none" angegeben, handelt es sich um einen Direktconnect ohne Node oder Digipeater dazwischen. - Besitzt der Digi das SSID 0 oder kein SSID, gilt das Rufzeichen ohne SSID. TTY-Forward via Telefon, Einstellungen -------------------------------------- Telefonforward mit der BCM ist mit einigen Einstellungen leicht zu realisieren. Kenntnisse vom AT-Modembefehlssatz und den Parametern in der INIT.BCM und FWD.BCM setze ich vorraus. Notwendig hierzu ist nur ein Telefonmodem und ein freier serieller Anschluß, dessen IRQ noch nicht belegt wird. Es ist auch möglich, mit ISDN-Karten zu arbeiten, die eine Modememulation besitzen. Als erstes muß die Schnittstelle eingestellt werden. Dazu gibt es in der INIT.BCM zwei Parameter. TTYMODE wird nach wie vor gleich behandelt wie bei früheren BCM-Versionen. TTYDEVICE legt die Art des angeschlossenen Gerätes fest. Damit der Forward funktionieren kann, muß der Parameter mindestens auf 2 stehen. Der Forward über Nullmodem ist zwar möglich, aber nicht zu empfehlen. Der Forward über eine KISS-Verbindung ist hier vorzuziehen. Die letzten 4 Parameter von TTYMODE müssen "N,8,1,E" sein. TTYDEVICE 0 Terminalendstelle(wie bisher, default) 1 Nullmodemlink(Master, Slave bleibt 0) 2 Telefonmodem Ist ein Modem angeschlossen, wird es nach jedem Loginzyklus initialisiert. Bei "RING"-Meldung hebt die BCM ab. Nach erfolgreicher "CONNECT"-Meldung verhält sich TTY wie bei normalem Terminal. Bei "NO CARRIER" wird der Login jeweils abgebrochen. Wird ein Login beendet (mit "quit","exit" ... oder "NO CARRIER") legt das Modem durch setzen der DTR-Leitung auf LOW auf, ebenso nach 3 missglueckten Versuchen, dass TTY-Paßwort oder das Usercall einzugeben. 3 Telefonmodem mit Check Wie 2, jedoch wird "getty" automatisch beendet, falls das Modem nicht mehr antwortet oder kein Hangup über die DTR-Leitung möglich ist. Als nächstes müssen die Einstellungen in der INITTTY.BCM vorgenommen werden(Parameter mit jeweiligem Beispiel als default-Werte): comadr 0 Dezimal-Adresse(nicht HEX!) des COM-Ports, bei 0 wird COM-Nummer aus der INIT.BCM übernommen und die Adresse automatisch ersetzt. comirq 0 Interrupt (IRQ) des COM-Ports, bei 0 wird default- IRQ für COM-Nummer aus der INIT.BCM verwendet cmdatz ATZ Befehl zur Modeminitialisierung cmdata ATA Befehl zum Abnehmen des Modems bei Anruf cmdatd ATD Befehl zum Wählen ringindicator RING Code vom Modem bei Anruf connectindicator CONNECT Code vom Modem bei erfolgreichem Verbindungsaufbau dailprefix Vorangestellte Codes vor Telefonnummer dailsuffix Code, der an die Telefonnmmer angehängt wird ringtimeout 30 Wartezeit zw. Abnehmen und CONNECT bei Anruf in Sek. dailtimeout 40 Wartezeit für den Wählvorgang, bis abgebrochen wird z.B. wenn Gegenstation nicht abnimmt in Sek. daildelay 0 Wartezeit bis zum nächsten Wählvorgang in Sek. connectdelay 0 Wartezeit bis zum nächsten erfolgreichen Verbindungsaufbau in Sekunden maxcontime 0 Zeitraum für "maxcons", bei 0 inaktiv in Sekunden maxcons 0 Anzahl der Wählvorgänge im Zeitraum "maxcontime" bei 0 unbegrenzt Zeitangaben in Sekunden Bei Nebenstellenanlagen kann man bei "dailprefix" normalerweise mit "0W" das Amt anwählen, mehr dazu siehe in der Anleitung zum Modem und/oder der Telefonanlage. Mit den Befehlen "maxcontime" und "maxcons" kann man die Wählversuche stark beeinflussen. Möchte man z.B. nur einmal pro Stunde einen Forward starten, stellt man "maxcontime" auf 3600 und "maxcons" auf 1. Jetzt steht dem FWD oder dem Userlogin via Telefon nichts mehr im Wege. Für den automatischen FWD müssen allerdings noch einige FWD-spezifische Dinge eingestellt werden: - Die TTY-Paßwörter müssen bei beiden FWD-Partnern identisch sein, ebenso wie beim AX25-Forward die normalen Paßwörter. - Der Eintrag für automatischen Forward muß in der FWD.BCM so eingestelt werden: Anstelle des Connect-Calls und Digis(hinter den FWD-Zeiten) " TTY " angeben. Das Call dabei ohne SSID. z.b. "DBO812 AAAA...............AAAAA DBO812 TTY 2356" Automatisch wählt die Box bei FWD-Zeitparameter "D". Steht dort nur "A", sendet die Box nur wenn sie angerufen wird. z.B. DBO812 AADDAAAAAAAAAAAAAAAAAAAA DBO812 TTY 7823456 - Wird die Box angerufen nimmt sie grundsätzlich ab. Dies kann mit einer Zeitschaltuhr für das Modem verhindert werden. Gestartet wird der Forward mit "TTYDIAL ". Ist der TTY-Forward in der FWD.BCM eingetragen, funktioniert auch "SF ". Dann wählt die Box zu den angegebenen Zeiten in der CRONTAB.BCM auch automatisch, wenn die "maxcontime" und "maxcons" wieder abgelaufen sind. Dies kann man wiederum mit "TTYSTATUS" abfragen. TTY verwendet zur Flußkontrolle RTS/CTS. Ein etwas schnellerer Rechner ist für den Forward via Telefon nicht unbedingt notwendig, aber empfehlenswert. Bei einem 486SX kann die Komprimierung der Daten unter umständen länger dauern als die Übertragung ansich(ab 144er Modem), deshalb sollte man hier den FFB-Forward abschalten und wieder ASCII-Forward benutzen. Ein normales Telefonmodem kann im Normalfall auch selbst online komprimieren. TTY-Forward via Telefon, Betrieb -------------------------------- Zur Kontrolle der Vorgänge können verschiedene Befehle eingesetzt werden. Die Ein- und Ausgaben können auf dem "getty"-task mit dem Befehl "monitor" beobachtet werden. Hier ist nur der Login-Bildschirm sichtbar, ist ein User oder eine andere Mailbox eingeloggt, muß man den passenden Task dazu monitoren. "TTYSTATUS" zeigt den Status des seriellen Anschlusses an. "TTYWIN" zeigt die Ausgaben in einem eigenen Fenster an. Hier gibt es folgende Einträge: TTY Modus, in dem sich der TTY-Port befindet. POS 0 wait for ring (wartet auf "RING", sendet dann "ATA") 1 busy (tty-port wird gerade benutzt, z.b. beim hangup) 2 ring, wait connect (wartet auf die "CONNECT"-Meldung vom Modem) 3 dialup, wait connect (wartet auf die "CONNECT"-Meldung vom Modem) 4 wait for login (wartet auf die Eingabe des Rufzeichens und des Passwortes) 5 eingeloggt (eigener Task öffnet sich) /0 /1 dialup (Box wurde angerufen oder wählt selbst) CALL Rufzeichen, das auf dem TTY-Port eingelogt ist TASK Nummer des Tasks, der den TTY-Port benutzt CMD Zeigt an, ob sich das Modem im Kommandomodus befindet. RX Zeigt an, wieviel RX-Bytes sich im seriellen Puffer befinden. mit > ist die Eingabe gestoppt. TX Zeigt an, wieviel TX-Bytes sich im seriellen Puffer befinden. mit > ist die Ausgabe gestoppt. LINE Baudrate der Telefonleitung(wird aus der "CONNECT"-Meldung gewonnen) ECH Echo-Modus 0 kein Echo 1 normales Echo 2 "*" werden zurückgegeben(Passwortabfrage) Desweiteren wird noch die Onlinezeit und einige Umgebungsvariablen, sowie TTY-Portfehler angezeigt. Sofortiges auflegen erfolgt durch "killen" des fwd-Tasks oder mit "TTYHANGUP". Dabei wird die DTR-Leitung auf LOW gesetzt. Das Modem muß so eingestellt sein, das es bei DTR-Low auch wirklich auflegt. Ist dies nicht der Fall, zeigt die Mailbox eine Fehlermeldung und friert "getty" ein bzw. beendet "getty", bis der Fehler behoben ist. Modembefehle können mit "TTYCMD" abgesetzt werden. Dies ist nur möglich, wenn sich das Modem im Kommandomodus befindet. Ist das Modem nicht empfangsbereit, können keine Befehle abgeschickt werden. TTY-Forward via Telefon, Problemlösungen ---------------------------------------- - Mailbox wählt nicht, kann aber angerufen werden Die Parameter "maxcons", "maxcontime" und die Forward-Zeiten in der CRONTAB.BCM überprüfen. - Mailbox läßt keinen einloggen. Man benötigt zum einloggen über den TTY-Port ein eigenes Passwort, das gesetzt werden muß. - Das Modem reagiert nicht. Bitte die eingestellen Schnittstellenparameter überprüfen, oder versuchen, ob das Modem überhaupt mit einem normalen Terminal- Programm funktioniert. In "TTYSTATUS" finden sich evtl auch einige Hinweise. - Die Mailbox nimmt ab und legt sofort wieder auf. Das Modem darf nicht selbst abnehmen, da die Box den Befehl an das Modem schickt. Hierzu mehr in der Anleitung zum Modem. --------------- End of docu by JJ - added ps option -w => wide (unlimited) output of ps - added ps option -k => shows timeout of task - fix: e-msg were not fwded any more (tnx jan!) - fix: convname.bcm - buffer now 80 bytes (before header line was interpreted as first boardname) - added Jans fixes (see below/TO BE ADDED!) - added new option to reject.bcm (tnx dh3ww) A -> local mails will only be accepted if user has a password set. - added fix by f1ulq (win32,dos) - included mbmorse-code: unfinished, buggy, unusable.. (oe3dzw) bcm1.42b - development version bcm1.42c (incl. 1.42b): Jan: - fixed very serious security holes in http/pop3/nntp & others. - major clean-up in http/nntp/pop3 (nntp works again) - removed (now)useless buffer[1024] from http/nntp/pop3/smtp/serv - pop3 closes connection on too long cmd (> 80 chars) (not needed after clean-up but ...) - telnet/pop3 always ask for pw even if username is incorrect - moved pop3/nntp read code to mbread, nntp now supports binary files (uses code for pop3) - removed terrible testreadbin(), now sendbin() and sendencbin() (send encoded bin - for http/pop3/nntp) now does not(!) check for bin header, has to be called when fpos==binstart - eingelogt() new parm count, defines whether count number of logins or just return true/false, sysop&non-radio logins are not ignored for true/false - changed date parsing so now "D A 11.11 baybox" works - new cmdnotavail() prints not avail msg in mbmain (improves guest/http/convers) - preliminary charset selection support, new bgetv(), new charset.cpp (now just to clean-up inet-interfaces which every had own conversion) - convert beacon linebreaks to \r before sending (was flexnet only) - some changes in afwd, fwdlist now generates AFWD.BCM (not used yet), temp2 now contains list of partners and reversed shortaddrs (debug, will be removed) - fixed fwdimport, file was opened in text-mode, bin now - fixed (my) bug in put/getv_sock, IAC (0xFF) codes now telnet-only, new processtype P_TELNET - PACLEN now includes INIT_PACLEN (default "paclen" in init.bcm, user may set paclen if init paclen!=0), removed INIT_PACLEN - new ALT_BOARDINF - other style of printing boardinfo - moved FEATURE_BINSPLIT & FEATURE_DIDADIT under beta options where they belong - fixed "-k" fwd opt (no bin/7+ bulletin fw), was "half activated" (strange) - activated "-v" read-opt - wait for #OK# - minor changes to telnetfwd - now could work on NT (PSE test/fix) - new b->via_radio - defines whether login is through radio, no maxlogin for non-radio logins (currently only inet, could be used for TTY) - get_ttypw/httppw check if user status < 2 - io_memory only ifdef MACRO, nothing else use it - added some #ifdef __FLAT__ in mbinout&mbread, smaller dos executable - HTTP read now normal cmd, better read(head) of multiple msgs (http "R -10") - PATH prints "(AutoFwd)" when path was auto-found - removed paramsg.h and mouse.h, not used Included some DF3VI's changes: - new talk cmd '!' - execute BBS cmd - SP SYSOP@local_adr now handled correctly in FBBfwd (sent to sysop) - added subsuject to help index (ie. "H I STATUS" works) - nameconvert() handles unk boards (converts to "TMP" if !createboard, sets b->boardpath) bcm1.42d - included win32-fixes for 1.42 (rprg) bcm1.42e2 - local update of mybbs will always be sent to fwd-partners - remote update of mybbs will create mail, local mybbs will not be changed if password was set. - cosmetic changes to mbwp (uninitialized vars in trace) - wp-triggerfiles will only be generated if fwd-time for bulletins - check 3-3 not changed, else check 3 would not be ok - fixed "dir -g " (before range was ignored) - fixed overflow on diskfree (ad_win32) on 13GByte disk. Untested. - fixed mon -r/-s on fbb-fwd recv/send (before option was ignored) - mybbs will only be re-sent to the network after 6 months at _homebbs_ (before: any bbs was resending setting) - trace(#R) for ack-messages - fixed ".attach" occasionally showed negative crc - cleaned up "eingelogt" - fixed transfer did not close file when transfer failed - added conv.cpp by df3vi - saved conv-data in mbreply and mbread - changed back to md5-pw for APOP (makes sense here!) - MID will be sent, even then there is no "M" in SID of fwd-partner - fixed y2k-problem with DieBox-pw in S&F NOTE: The DieBox-PW should not be used in forward between BCM's and DPBOXes! - re-definition of user-status numbers may be added 0..normal user 1..no quota limits ("member") 2..locked out ("bad guy") 4..locked out, sysops will be informed on first login ("new user") user receives "cstat4.xx", xx=language, eg. cstat4.gb 8..user is not allowed to transfer mail or use the fileserver ("spamer") - included patches by dk2ui and dh8ymb: - Option "UI_LDN" (default OFF): value of LastDirNews is only set to user database if user leaves box with 'quit' command. if he leaves with disconnect/link failure etc, next 'd n' shows again last mails... Zitat DK2UI: "lastdirnews wird erst mit quit in die user Datei geschrieben so kann man steuern, ob man check nochmal sehen will d.h. wenn man nur disconnectet, wird der letzte 'd n' aufruf nicht gespeichert" - included QT - this is a quit without quit (lastquit is set to current time), important when dk2ui-option is used - added em/wp in st f again (originally UI_STF option) - added UI_HLL option, does not show help-level on connect if help level is set to 0. need different messages.xxx - Option "UI_REP" (default OFF): removes 'Reply to' from mailheader if user writes a mail in another bbs then homebbs As some bbs (eg.bcm) uses the reply-to address for the return-mail this might case problems on replys. not recommended. - fix: postfwd changed bid's on userwails even when address was not changed. fixed. bcm142e3 - changed YEAR to 2000 (baycom.h) - commented out BINMODE (protocol used for download of binary attachments) because implementation has not been finished by dh3mb - included new negative-lists for guest,http,spamer,tell,convers in mbmain.cpp - replaced strcpy by safe_strcpy where possible in mbread.cpp - fixed mailserver, should no longer trash lists and/or hang bbs when mailing lists are modified - bid -f (without leading $) uses bid-hash to find a bid; shows mailfilename and if found from/to/at/type of mail. on e/m-mails linked mail is shown - recognises some more 7plus-flags: 7plus-text, 7plus-info and html, the latter only if the start-tag is at start of line. this is against the html-specification but else text would easily be recognised as html (and on the other hand all html-editors put that tag at start of line. The tags are: (7inf) (7txt) and (html) bcm142e4 - included tell-server/client by df3vi as mbtell.cpp - parameter tellmode = 0..inactive, 1..send, 2..send/receive - added mbextract (extracted from mbread,df3vi) extracts 7plus/bin-files out of mails. not finished Syntax: extract - added eraseinfo, should one day replace b->geloescht - eraselog, redefinition of #W..mails deleted by local server, eg. WP,mailserver or tell. (before WP only) - when a mail is erased after beeing forwarded (erase flag F), it will be set to hold (hold-flag F). After unerase it will not be forwarded again bcm1.42e5 - new sysop-command "hold" will set the hold-flag of a mail Syntax: hold [-u] Option -u removes a hold flag. Sysop: "X" will be used as flag. - read -h shows X-Flag: line including all mail-flags (as defined in mail.h) - (F1ULQ) minor changes to compile on Sparc-Linux (defines, so not relevant on Intel-Machines) - fix: Forward-Option -u was set when -u was not set and vv. (there was no fwd-send-delay on default). - fixes to "nothing to send" problem; reason was that chkforward performs a simple check while getfwdlistentry also scans the relevant user-files. Usually there is no difference in between, but if there is a mail locked etc. the latter function returns 0 while the first function believes that something is waiting for fwd. the current solution is a little hack, it only loops once, after that the send-session is ended. it would be better implement the chkforward function into getfwdlistentry (same criteria in both functions). bcm1.42f - fixed bug in tellmode (dzws bug) - fixed bugs in tell, move mbtell.cpp to mbserver.cpp - added PING server, sends a copy of mail when a mail to PING is received. Rather compatible to ping server by OH3NWQ, 1992 example: SP PING @ DB0AAB (subject and body are ignored) - crlf-removal from sysop-md2/5-pw - added warning when used >30d bcm1.42f1 - fixed dos-warnings && problems bcm1.42g - updated BC-project-file - fixed Win32-warnings && problems - new code for dfree() under Win32, will return 1GBytes if test fails. bcm1.42g1 - new option "path -saf[e]": path -f will show if mail will be forwarded (incl. partner) path -fe will only show errors - "new": when reading fwd.bcm above check (path -safc) will generate a short statistic about fwd. bcm1.42g2 - swapped time and talk commands, "t" should start talk - not show time (tnx f1ulq) - corrected tabs on "ps" (tnx df3vi) - fixed http-server, did not recognise http10; changes to logout (did not remove cookie before) - fixed mybbs-warning, did not work at all bcm1.42g3 - fixed bcm32.rc (was corrupted) - fixed pathlen in mbdir (strcpy destroyed stack) - renamed "path -sfe" to "path -sfn" ("e" is also used for edit, repaced it in this content to "n") bcm1.42g4 - Fix for y2k-incompatible bioses (DOS only) by F1ULQ activate with BIOS_Y2K in config.h bcm1.42g5 - added some comments to FEATURE_SERIAL (includes ttymode under Linux) to config.h (eg. ttymode /dev/tty7 allows a direct login into bcm (user bcm needs to have access-rights to /dev/tty7, eg. be owner of that device). Included as default under Linux/Win32 - fixed /ex as EOF-marker for wtext - added inverse match to reject.bcm !..reverse match R >!^SYSOP$ ... only mails to sysop are allowed, rest is forbidden R <^DF0AR$ >!^OE3DZW$ ... df0ar is only allowed to send mail to oe3dzw - implemented new "actions" to reject.bcm H .. message will be set on hold on receive, unconditionally L .. " if entered locally P .. " if entered locally without password before: R .. rejected A .. rejected if entered locally without password eg: P .B .... hold all bulletins which are entered locally without pw - Fix http also accepts http 1.1 (before only 1.0) - sender (herkunft) in user-mode; new rules + different sender will not be ignored, mail not be accepted if in usermode oder in userfwd-mode + sender will only assumed to be logincall in user-mode eg. SP OE3DZW < HB9JNX will be accepted if logincall is HB9JNX, else this message will not be accepted but SP OE3DZW .. (without <) will not be accepted in userfwd/fwd-mode Before the following scenario could happen: A FBB is fwd-partner of a BCM, one day that FBB is removed from the fwd-file. The FBB goes on sending mails, BCM accepts, but modifies sender-field. Not nice. But: The new solution is incompatible to the original specification of W0RLI, but it it not forbidden to become more clever... (at least I hope that the new solutions is better) bcm1.42g6 - added Jan's fixes (afwd,mbhttp,mbread,mbutil): . http10 - problem with isalpha() - returns 2048 (bug glibc) . dot -> eof-marker, quote with dot dot at start of line (nntp,smtp) . afwd (own hadr ignored) "afwd.bcm is still incorrect when to sub-areas are fwded to different neighbours (ie. XX.YY wfd to A; XX.ZZ fwdedto B will result in XX.YY fwded to A (correct) but XX (without .ZZ) fwded to B) bcm1.42h - added function homeadr(), used in mbread,mbsend - postfwd will no longer change the address of a mail which has not arrived at its destination (if it has not been sent here) - r:-lines will no longer be modified by postfwd - activated fwd-by-size again - removed "!" command in convers, needed too much stack under DOS - rewrote parser of reject.bcm, now more detailed output - added macro %j - sysop "#" else ">" (Sysopprompt) - fixed mailserver, semalock was deadlock - removed limit of user listed "not all listed" - fixed bid -f (segv) - added sysop-command "ping", Syntax: PING (sends PING-mail) - added win32-fix again, forgot to include it, now testet up to 76 GB bcm1.42h1 - Fixed bug which corrupted output of data when ax25-kernel under Linux was used (bug was introduced between 1.42 and 1.42g) bcm1.42h2 - Included Patch by DK2UI, fixed problems NOTE: THE PATCH ITSELF IS NOT TESTED BY OE3DZW IF YOU WANT TO USE ANY OPTION PSE CONTACT DK2UI PLEASE: If you change things without option, pse add an info-file!! Patches by DK2UI: (in default config.h no patch is activated). ----- Changes (DK2UI-Patch) fuer bcm 1.42h1 - 'ui' in 'version' command if any ui_option is activated (default value: ON) - Option "UI_CVT" (default ON): convert.bcm instead of convname.bcm and convlife.bcm including title scan for better automatic transfer/lifetime management of mails, 'convert' is shown in 'version' command if activated syntax example: ; convert.bcm for baybox mailbox ; ; comment lines starting with ';' ; max line lenght without comment is 54 bytes else 80! ; modes: < @ $ % ^ ; ; the order is important, because the first match is token. ; LT must have 3 digits (no blanks) for function nexttoken(). ; ; examples: ;------------------------------------------------------------------------- ;from to LT mode/scan title ; comment also possible here * Z 002 DF3VI > DH8YMB 11.12.99 22:43 9 Lines 364 Bytes #120 (0) @DB0EA.#NRW.DEU.EU -------- 2 LT-fields in headerline, one from user(0 if none) needed for forward, 2nd value is lifetime in this mailbox. Zitat DK2UI: "die lifetime Verwaltung ist geaendert indem jetzt in der Kopfzeile zwei lifetime-Felder vorhanden sind. im ersten steht wie bisher die vom Absender eingegebene lifetime, 0 wenn keine eingeben wurde, die auch per forward weitergereicht wird. im zweiten Feld steht nun die lifetime des files in der jeweiligen Box, die ja individuell gesetzt werden kann. bei der Ausgabe sieht ein Leser nun hinter der restlichen Liftime in Klammern die originale lifetime-Eingabe des Absenders. bei einem reorg geht die individuelle lifetime nun nicht mehr verloren wie bisher. der alte Dateibestand mit nur einer lifetime in der Kopzeile funktioniert weiter wie bisher mit der lifetime aus bulletin.bcm. die minLT ueberschreibt die userLT wenn sie groesser ist die maxLT ueberschreibt die userLT wenn sie kleiner ist" - Option "UI_LDN" (default ON): value of LastDirNews is only set to user database if user leaves box with 'quit' command. if he leaves with disconnect/link failure etc, next 'd n' shows again last mails... Zitat DK2UI: "lastdirnews wird erst mit quit in die user Datei geschrieben so kann man steuern, ob man check nochmal sehen will d.h. wenn man nur disconnectet, wird der letzte 'd n' aufruf nicht gespeichert" - Option "UI_FTO" (default OFF): FROM and TO of mailheader in one line, example: >from: DK2UI @ DB0SM.#NDS.DEU.EU (Wolfgang) to: DH8YMB @ DB0EA.#NRW.DEU.EU Note: mailspy terminal soft have problem with new syntax, better use old format and leave this feature OFF. - Option "UI_TOF" (default OFF): original board is always shown in LIST/DIR, also when it's transfered by sysop or convname/convert. If you don't want become irritated, better leave this feature OFF. Zitat DK2UI: "in list.bcm wird die directory eingetragen, in der das jeweilige list.bcm steht. dies Feld kann besser genutzt werden, indem dort das originale to-field eingetragen wird, denn bei transferierten files stimmt das to-field nicht mit der directory ueberein. nach meinem Mailbox Verstaendnis sollte einem Leser die originalen Eintraege des Absenders auf allen Ebenen zugaenglich sein. Somit kann man bei DIR oder LIST transferierte files erkennen, wenn der Leser +E konfiguriert hat." - Option "UI_PAT" (default OFF): short path - if ON, 'Subj: ' in mailheader title is not shown. In mailheader pathline '!' is replaced by '<' to better show direction of mailfwd. Note: mailspy terminal soft have problem with new syntax of title without 'Subj: ', so better use leave this feature OFF. - Option "UI_REP" (default OFF): removes 'Reply to' from mailheader if user writes a mail in another bbs then homebbs --- Neues seit dem Patch für 1.42: * Bei dem ab der 1.42h uebernommenen Option UI_LDN ist ein Tippfehler, funktioniert mit diesem Patch dann aber wieder. * die LT aus convert.bcm wurde nicht uebernommen bei Ziel * * bei UI_CVT ohne UI_LT wurde bei LT 000 die default LT nicht gefunden * convert.bcm: mode % sah den 'user forward' nicht, jetzt user und user forward * convert.bcm: neu mode & user und user forward ohne Passwort * Hold per convert.bcm/fwd.bcm: Beispielzeile in convert.bcm: H 002 & ; & received from a user without passwd mit *H in fwd.bcm kann das als HOLD benutzt werden. sysops koennen dann mit 'transfer' solche mails in den forward schicken * nach manuellem transfer sollte man 'reorg c' machen, sonst stimmt die check-Liste nicht, ist auch in der Original bcm so. * es werden keine leeren directories mehr in TMP angelegt ----- (eof docu dk2ui) - fixed problem with -p in fwd/nothing to send again (mbfwdfbb) bcm1.42h3 - added sema-locking to getfwdlistentry, now personal mail should not be proposed twice - fixed incorrect uplink for 9A0XDA-2 (was A0XDA-2), hope this helps bcm1.42i - cleaned up httpd (removed obsolete check for http-version) - fixed afwd (afwd.bcm generated by "fwdlist" should now be correct) - "path -sfn" rpints number of afwded BBS (if AFWD is enabled) - removed cmdnotavail() in mbmain, not used - fixed cbcallok(), call length check (?) - fixed obviously wrong ifdef __sparc__ in config.h bcm1.42i1 - added fwd-option -e: second "OK" for pavilion cluster-software - fixed bin-fwd-problem on DOS/Win32; fix is dangerous, to be tested bcm1.42j - commented out AUTOFWD from config.h (now inactive as default) - increased lifetime of WP-mail (was 1 day, now 4 days) - added trace for ping-response - nntp-port is alway saved, even when set to 0 (else might cause problems on systems with multiple bbs) - removed fix for uplink, was incorrect, to be fixed later - fixed serious all-bcms resetting problem with old E/M-mails - corrected bios-y2k-fix bcm1.42j1 - fixed time in utc under Linux. Was incorrect when environment variable TZ was set (eg. export TZ=MEZ-1MESZ). (problem found by dg0lp) - added 1 byte in user-variable in mbpop3.h (tnx dh3ww) - fixed transfer, was broken due to typo in latest version - included fix by dk2ui (fixes problems inside ui-patch) - corrected stop-flags for 7plus (tnx df3vi) - fixed board (now empty board) in path -sf (might have caused hang on new-cmd in win32-version - "new -q" skips statistics on "new" (so if obove fix does succeed, this can be a workaround. might also be usefull on very slow computers. - Autobin-summary now consistent on fileio and on mail read/send (crc in hex, without prefix, transferrate in bit/s) - fixed define for PING in mbsend.cpp (was _TELL) - added debug-"lastcmd"-output on fwd-rx, should help to find problem - commented out mailsflags for check-file in writemailflags - added fwd-check for eingeloggt, rxprop again - commented out "nothing to send" bcm1.42j2 - test at oe1xab bcm1.42k - commented out fulldate in "time -a" bcm1.42k1 - added new parameter "disableuser", disables interactive-userlogins. Sends "msg/nousr." if existing and disconnects user then. Login under sysopcall is still allowed. bcm1.42l - added jan's patch: From: Honza - CZ4WAY Hello once again :) - autofwd finished: sysop command "afwdlist" generates AFWD.BCM same new crontab task "afwdlist", should be called abt. once a day/week or so.. INIT.BCM parameter "autofwdtime" sets number of days after which old entries are ignored. I use 30. "autofwdtime 0" -> afwd disabled. Forward of mail is decided by: 1.) checking FWD.BCM as usual 2.) checking AFWD.BCM 3.) looking up @adress in HADR database (makes sense only for really new adresses otherwise it should be found in afwd.bcm. Hoever it is quite fast so no need to disable that.) Autofwd decision algorithm is quite simple .. it needs to be tested (see mbafwd.cpp). I think some simple algorithm will suffice. We don't need complex/incomprehensible thing. Changed: "afwdlist" command was "fwdlist" before. Different format of temp file (external utils ?!?). - sendbin/sendencbin check whether they are really at binstart and trace a message if not. Could be removed some day .. but those things are not very speed sensitive .. - IP-adresses are always logged in '[' ']' brackets. Easier log checking. - removed useless smtp partnername. (using string given at HELO for anything is broken. anyone can fake that - apart from checking if it is really partners addr and warning if it's not) - removed s_fsetopt(b->outputfile,1); from "fwdexport" .. shouldn't this delete output file at disconnect ? I used "export" as a base for "fwdexport" so it remained (it should not be in fwdexport) .. but it does not delete file even on "export" Jan bcm1.42m - cleaned up tgz - added url of baycom-page in "version" bcm1.42n - added minor fix by Jan bcm1.42n1 changes by DF3VI ---------------- Erl„uterungen zur CONFIG.H: #define DF3VI // df3vi-optionen und bug-fixes Eine Reihe kleiner Verbesserungen und Fehlerbereinigungen sind ohne jeweils eigenen Compilerschalter eingebaut. Sie sollten grunds„tzlich in die BCM bernommen werden. Auch die meisten anderen Optionen sollten zur festen Einrichtung werden, oder gibts dies nur fr Žnderungen, die von OE3DZW selber kommen, hi? #define DF3VI_FWD // neue fwd-struktur Schon Ende 1999 auf Anregung von Oe3DZW entstanden, geht diese Struktur deutlich effizienter mit dem Speicherplatz um und findet Eintr„ge zum Forward auch detlich schneller. Durch die Dynamisierung der beiden FWD-Felder wurde fr DOS viel Platz im Segment frei, es muá nicht mehr um jede statische Variable gek„mpft werden. Auáerdem ist es die Basis zum: #define DF3VI_FWD_EDIT // fwd-editor Statt immer das ganze FWD-BCM hin- und herzuschieben, k”nnen mit einigen Befehlen (s. HILFE) alle Žnderungen direkt vorgenommen werden. #define DF3VI_PWOK // pw-verfahren nach DPBOX Passwort-Verfahren nach DPBOX: Die PW-Abfrage erfolgt nicht schon beim Login, sondern erst, wenn der Benutzer Senden, L”schen oder Einstellungen ver„ndern m”chte. Benutzern, die sich nicht privilegiert haben, stehen nicht alle Befehle zur Verfgung. Dieser Modus wird mit "USERPW 2" (init.bcm) eingeschaltet. Auch wenn er nicht aktiviert ist, wird in der Variable b->pwok der Userpriv-Zustand festgehalten. Er ist u.a. Kriterium fr den --> HOLD-Mechanismuá, der sich auch absttzt auf: #define DF3VI_REJECT // neue reject-struktur Auff„lligste Žnderung: Statt einer Zahl wird der Buchstabe zurckgegeben, das verringert Verwechselungsfehler, hi. Fr --> HOLD werden bestimmte Bedingungen abgeprft. Ein neuer Parser prft die Plausibilit„t der Reject-Eintr„ge, Auch bei der Online-Eingabe mit dem: #define DF3VI_REJ_EDIT // reject.bcm-editor Im Prinzip wie der CONVEDIT, nur fr REJECT.BCM, sttzt sich bei der Eingabe auf den Reject-Parser ab. #define DF3VI_HOLD // pw&hold, nur mit pwok-option! Hold ist nun weitgehend implementiert. Es k”nnen (s. HILFE) verschiedene HOLD-Aktionen realisiert werden, auch sehr spezifische. Mit dem Parameter HOLDTIME wird die Haltezeit in STUNDEN eingestellt. Nachrichten auf HOLD k”nnen mit DIR HOLD aufgelistet werden. Die Entscheidung darf auch NICHT, wie im bisherigen Ansatz, in MBSEND realisiert werden, da ansonsten ein Hold mit Transfer oder Forward umgangen werden kann. #define DF3VI_REJ_LT // LT reduzieren bei abgelehnten usermails Im Fwd abgelehnte Usermails (REJ, NO) sollten nicht auf Dauer in der Box stehen bleiben und den Usermail-Bereich aufbl„hen. Daher werden fr diese F„lle kurze (NO = ist schon auf anderem Wege unterwegs) und nicht ganz so kurze (REJ = ist nicht erwnscht, sollte ggf umgeleitet werden) Lifetimes gesetzt. #define DF3VI_NO_UNK // wie DP-Box: keine mails mit unbek. adresse annehmen Wie auch die DP-Box, nimmt BCM im FWD keine Mails an, die sie nicht weiterleiten kann. Eine UNKNOWN-Benachrichtigung wird weiterhin versandt. #define DF3VI_CONVERS // erweiteter convers Erweiterung des Convers-Mode um TALK-Befehl und Ausfhrung von BBS-Befehlen. Fr DOS ist hierzu eine Erweiterung des Taskstacks auf 2k5 n”tig. #define DF3VI_TELL // remote command execution Tell-Funktion wie in DieBox/DP. READ-Befehle sind auf EINE Nachricht mit maximal 530 Zeilen (reicht fr ein groáes 7plus-Teil) begrenzt. #define DF3VI_EXTRACT // extract-befehl Einbau des bekannten externen Run-Utilities. Es ist brigens ein FEATURE, daá auch FFR-markierte Infos vor BIN-Teilen erkannt werden... #define DF3VI_UNREAD // rcksetzen "mail gelesen" Diese Funktion von markerased() war bisher verkmmert ;-) #define DF3VI_CHECK_REJ // alter reject auf absender, verteiler erweitert siehe HILFE #define DF3VI_SF_ONLY // param: reine fwd-mailbox siehe HILFE #define DF3VI_USRTIMEOUT // timeout fr user Einstellbares Timeout fr abgefaulte Links und tatenlose User, vor allem fr DOS-Boxen oft gewnscht. Das externe Utility krankte an der Abh„ngingkeit vom Aussehen der PS-Ausgabe... #define DF3VI_PS // kosmetik am prozess-status Kleinere Žnderungen am Ausgabeformat ("p" fr PW-Status, Uplink-Anzeige, gestaffelte Byte-Anzeige) #define DF3VI_SHOW_SENDPATH// Bei Send Pfade fr Adresse/Verteiler anzeigen Von DP-Box abgeguckt :-) #define DF3VI_COMMENT // org. Absender im Betr. bei Comment-Befehl, generierten Betr. anzeigen Viele machen es sowieso manuell, also automatisiert. Es wird nur dann der Absender eingefgt, wenn noch KEIN RE im Titel steht. so sieht man, wer der Ausl”ser der RERERERE-Debatte war. #define DF3VI_CRC // CRC-Darstellung dezimal das BIN-Protokoll benutzt die DEZIMALE Darstellung der CRC, viele TErminalprogramme auch. Wieso BCM dann HEX??? #define DF3VI_NAMECONV // reply/comment auch auf TMP-board, read auf konvertiertes board Ein Reply auf TMP-Dateien funktionierte bisher nicht. Auf Grund vieler Seiteneffekte in der BCM-Behandlung globaler Variablen war diese Žnderung leider sehr tckisch. Diese Konverteirung muá daher intern parametrierbar sein, so daá sie nur an zul„ssigen Stellen ausgefhrt wird. #define DF3VI_CONVFROM // convfrom.bcm, wenn ohne convert.bcm Eigentlich nur fr DOS, wo es kein CONVERT.BCM gibt (zu groáer speicherhunger). #define DF3VI_TR // Div. Bugfixes und Optimierungen bei Transfer Statt bei jedem einzelnen Transfervorgang erneut auf Plausibilit„t zu prfen, reicht es aus, vor der Ausfhrung einmal zu Prfen. Ansonsten bekommt der User ggf. so viele Meldungen, daá die Box abschmiert :( #define DF3VI_MS_LIST // add/del list of users in mailserver Das Hinzufgen oder L”schen mehrerer Eintr„ge war bisher nicht m”glich, bzw fhrte zu sinnlosen Eintr„gen. Hinweis: Da eine Befehlseingabezeile maximal 79 Zeichen hat, k”nnen nie mehr als 40 Argeumente entstehen. #define DF3VI_MS_LT // pass on lifetime from original mail Die Lifetime der Mail an den Maillistserver wird fr die erzeugten Nachrichten bernommen. #define DF3VI_MEM_SRT // sortierte ausgaben bei memory-befehl Vor allem fr Debugging unter DOS interessant, aber auch sonst. #define DF3VI_DIR_OUTST // keine gel”schten mails, selektor nur user/info Die Anzeige schon anderweitig geforwardeter Nachrichten ist m.E. sinnlos. "D O" kann deutlich effektiver ber die FWD-Struktur arbeiten, anstatt im Verzeichnis nach Dateien zu suchen. #define DF3VI_DIR_UNK // unbekannte usermails anzeigen Pendant zu DIR HOLDUSERS (das nun DIR HOLD heiát). #define DF3VI_A_PS // alter PS statt alter GREP Der PS-Befehl wird immer m„chtiger, und ALTER GREP ist eigentlich berflssig. Daher umgebaut; GREP-Funktionen haben weiter "-I" als Default. #define DF3VI_ST_F // st f mit e/m/wp anzeigen Z„hlung der E/M/WP-Zeilen, gestaffelte Byte-Anzeige #define DF3VI_MSG_P // ein msg-pointer statt fr jede sprache einer Die BCM legte unn”tigerweise fr jede Sprache einen eigenen Eintrag in der Speicherstruktur an - l„stig vor allem bei MEM, aber auch uneffizient. #define DF3VI_KILL // unterscheidung kill/discon in slog Es wird im syslog_r unterschieden, ob der user discon hat oder rausgewurfen wurde. Dazu wird ein zus„tzlkicher Parameter durch mehrere Funktionen gereicht. Noch ungetestet bzw. Baustellen: //#define DF3VI_M_FILTER // Aufruf eines Filter-Prgs nach empfangener Mail //#define DF3VI_POGSAG // PocSag-Server-Benachrichtigungen //#define DF3VI_READ_ACK // ACK-Mail fr gelesene Nachrichten ============================================================================= Erweiterungen der HILFE-Dateien (HELP.DL, HELP.XDL): ----------------------------------------------------------------------------- \\ALTER.PS Syntax: Alter PS Setzt Optionen fuer den PS-Befehl. Jede Option entspricht einem Buchstaben. Wird er angegeben, so wird die Option gesetzt. Optionen koennen einzeln duch Angabe von + oder - gesetzt/geloescht werden. Beispiel: A PS UR Siehe auch HELP OPTION.PS \\ALTER.REJECT ... NEU: Auáer einer Rubrik k”nnen auch Absender oder Verteiler ausgeschlossen bzw. selektiert werden. Absender sind mit vorangestelltem "<", Verteiler mit "@" zu kennzeichnen. Beispiel: A R MEINUNG ----------------------------------------------------------------------------- \\DIR.HOLD Syntax: Dir Hold Zeigt alle Mails mit gesetztem HOLD-Flag an. Bulletins werden seit dem letzten Check ausgegeben, aber das Last-Check-Datum wird nicht ver„ndert! Usermails werden komplett angezeigt. Kurzform fr : D -P -N -H -E -V- -Q- M;D -P -N -H -E -V- -Q- U M \\DIR ... Unterbegriffe: DETAIL (Genauere Beschreibung des DIR-Befehls) AFTER BOARDS MESSAGES NEWS OUTSTANDING PATH SENT USERS HOLD UNKNOWN DESTINATIONS \\DIR.DESTINATIONS Syntax: Dir Dest Listet alle eingestellten Forward-Eintr„ge (H-Adressen, Verteiler, etc) auf. Mit "D D +" werden zus„tzlich auch alle Forward-Partner angezeigt. Mit Suchbegriff werden nur Eintr„ge angezeigt, die den Suchbegriff enthalten. Beispiel: D D .FRA, D D DL \\DIR.OUTSTANDING Syntax: Dir Outstanding [|] [] ... Statt eines Boxcalls kann auch ein Message-Typ angegegben werden. MIT D O U werden nur Usermails, mit D O I nur Infomails ausgegeben. ... \\DIR.UNKNOWN Syntax: Dir Unknown Zeigt alle Usermails, deren Adresse nicht diese Mailbox ist. Kurzform fr : D -N -H -E -V- -Q- U M ----------------------------------------------------------------------------- \\EXTRACT (Sysop) Syntax: EXTRACT [] [] Extract schneidet BIN, 7PLUS und mit go/stop-Markierung versehen Dateien aus einem Mailbox-File aus und schreibt diese ins TEMP-Verzeichnis. Bei BIN und 7PLUS-Dateien wird ohne Rckfrage berschrieben! Fehlt bei einer BIN-Datei der Dateiname, wird ein neuer erzeugt. Die go/stop-Markierung werden NICHT geschrieben. Bestehende Dateien werden nicht berschrieben, sondern die Extension hochgez„hlt. ----------------------------------------------------------------------------- \\FEDIT (Sysop, nur DOS-Version) Syntax: FEdit Kurzkommando. Entspricht EDIT FWD.BCM Anschliessend nicht vergessen NEW einzugeben wenn die Aenderungen uebernommen werden sollen. Ist der interne Editor nicht compiliert, wird FWDEDIT ausgefhrt. \\FWDEDIT (Sysop) Syntax: FWDEDIT [[Eintr„ge] Boxcall] Mit diesem Befehl k”nnen die Forward-Eintr„ge ge„ndert und in FWD.BCM gespeichert werden. Siehe dazu auch HELP FWD . Es existieren folgende Kommandos: FWDEDIT ADD FWDEDIT BACKUP FWDEDIT CALL FWDEDIT DELETE FWDEDIT NEW FWDEDIT PATH FWDEDIT REMOVE FWDEDIT TIME Die Žnderungen werden in FWD.BCM gespeichert und sind sofort wirksam. \\FWDEDIT.ADD Syntax: FWDEDIT ADD Fgt Boxcall die angegebenen Eintr„ge hinzu. Eintr„ge, die schon vorhanden sind, werden abgewiesen. Hinweis: Bei der Option -B muá die Bytebegrenzung OHNE Leerzeichen angeh„ngt sein. Beispiel: FWD ADD -B19999 DB0AAB \\FWDEDIT.BACKUP Syntax: FWDEDIT BACKUP Kopiert den Inhalt von FWD.BAK auf FWD.BCM und liest die Fwd-Daten ein. \\FWDEDIT.CALL Syntax: FWDEDIT CALL Žndert das Rufzeichen eines Forwardpartners von Oldcall auf Newcall. Beispiel: FWD CALL DB0ME DB0IZ \\FWDEDIT.DELETE Syntax: FWDEDIT DELETE L”scht die angegebenen Eintr„ge unter Boxcall. Eintr„ge, die nicht vorhanen sind, werden abgewiesen. Beim L”schen der Option -B braucht keine Zahl angegeben zu werden. Es ist nicht m”glich, den Forward-Eintrag zum Boxcall selbst zu l”schen. \\FWDEDIT.NEW Syntax: FWDEDIT NEW Erzeugt einen neuen FWD-Eintrag fr Newcall. Die FWD-Zeit wird wie bei "-" vorgegeben. Es wird kein Pfad erzeugt. Als Forward-Eintrag ist Newcall bereits vordefiniert. \\FWDEDIT.PATH Syntax: FWDEDIT PATH Žndert den AX25-Pfad zu Newcall. Es sind maximal 50 Zeichen m”glich, Schr„gstriche fr mehrstufigen Aufbau werden mit Leerzeichen umgeben. Beispiel: FWD PATH DB0ME-8/DB0RWI DB0ME wird zu: DB0ME AAAAAAAAAAAAAAAAAAAAAAAA DB0ME-8 / DB0RWI \\FWDEDIT.REMOVE Syntax: FWDEDIT REMOVE L”scht Boxcall aus der FWD-Liste, mitsamt allen Eintr„gen. Rckg„ngigmachen ist nur durch Laden von FWD.BAK (mit FWD BACKUP) m”glich! \\FWDEDIT.SAVE Syntax: FWD SAVE Schreibt alle Žnderungen in FWD.BCM. Die vorherige Datei wird in FWD.BAK zum Zurckholen mit FWD BACKUP gespeichert. \\FWDEDIT.TIME Syntax: FWDEDIT TIME Žndert die Forwardzeiten fr Boxcall. "-" wird zu "APAAAAAAAAAAAAAAAAAAAAAA" expandiert. Es mssen nicht alle 24 Zeichen eingegeben werden, ggf. wird so lange vervielfacht bis 24 erreicht sind (nur bei 1, 2, 3, 4, 6, 8, 12 Zeiten). Beispiel: FWD T AUP DB0HOM wird zu: DB0HOM AUPAUPAUPAUPAUPAUPAUPAUP DB0HOM-8 ----------------------------------------------------------------------------- \\MAILSERVER Syntax: MAILLISTS Der Mailserver dient zum Verteilen einer persoenlichen Nachricht an mehrere - vorher definierte - Empfaenger. Soll eine Nachricht an einen bestehenden Mailserver geschickt werden, so ist die Nachricht an die Adresse der Mailbox mit dem Titel "mailto Subj" zu senden. Siehe auch HELP MAILLISTSERV Zur Konfiguration des Mailservers stehen folgende Befehle zur Verfuegung: HELP MAILServer +L : Liste hinzufgen HELP MAILServer -L : Liste entfernen HELP MAILServer DESCR : Listenbeschreibung erstellen HELP MAILServer OPTION : Listen-Optionen setzen HELP MAILServer +U : User hinzufgen HELP MAILServer -U : User l”schen HELP MAILServer +M : Maintainer hinzufgen HELP MAILServer -M : Maintainer l”schen HELP MAILServer Info : Listen ausgeben HELP MAILServer RESET : Listenz„hler zurcksetzen HELP MAILServer SUBSC : Liste abbonieren HELP MAILServer UNSUB : Listenabbo beenden HELP MAILServer SETNUM : Listenz„hler setzen \\MAILSERVER.+U Syntax: MAILServer +U [ ...] Fuegt ein oder mehrere Rufzeichen zur Liste hinzu. \\MAILSERVER.-U Syntax: MAILServer -U [ ...] Entfernt ein oder mehrere Rufzeichen aus der Liste. ----------------------------------------------------------------------------- \\MEM Syntax: MEM [Sortierung] ... Es kann nach der jeweiligen Anzeigespalte sortiert werden: -S = Gr”áe -A = Adresse -T = Tasknummer -N = Blockname Ohne Option wird nach der laufenden Blocknummer sortiert. Beispiel: MEM -A ----------------------------------------------------------------------------- \\OPTIONEN.FORWARD ... -o Eintr„ge werden nach Nachrichtengr”áe sortiert (kleine zuerst) ... ----------------------------------------------------------------------------- \\REDIT (Sysop, nur DOS-Version) Syntax: REDit Kurzkommando. Entspricht EDIT REJECT.BCM Anschliessend nicht vergessen NEW einzugeben wenn die Aenderungen uebernommen werden sollen. Ist der interne Editor nicht compiliert, wird REJECTEDIT ausgefhrt. \\REJECTEDIT (Sysop) Syntax: REJECTEDIT [parameter] Mit diesem Befehl k”nnen die Eintr„ge in REJECT.BCM ge„ndert werden. Siehe dazu auch HELP REJECTEDIT . Es existieren folgende Kommandos: REJECTEDIT LIST [Suchbegriff] REJECTEDIT ADD REJECTEDIT DELETE Ist kein interner Editor vorhanden, geht auch REDIT. \\REJECTEDIT.LIST Syntax: REJECTEDIT LIST [Suchbegriff] Sucht die Datei REJECT.BCM nach einem Suchbegriff ab. Ohne Suchbegriff wird die komplette Datei ausgegeben. \\REJECTEDIT.ADD Syntax: REJECTEDIT ADD [Reject-Zeile] Fgt den angegebenen Reject-Eintrag hinzu. Das Format einer Rejct-Zeile ist: [dest] [$bid] [@at] [.type] Mindestens eines der Kriterien muá angegeben werden. Die Eingabe wird auf syntaktische Korrektheit geprft. Es sind folgende Aktionen zul„ssig: R = Nachricht wird immer abgewiesen G = Nachricht wird abgewiesen, wenn lokal ohne Userpw eingegeben F = Nachricht wird nicht geforwarded, wenn S&F nicht PW-geschtzt H = Nachricht wird nie geforwarded L = Nachricht wird nicht geforwarded, wenn lokal eingegeben P = Nachricht wird nicht geforwarded, wenn ohne Userpw eingegeben \\REJECTEDIT.DELETE Syntax: REJECTEDIT DELETE [Suchbegriff] L”scht die erste Zeile in REJECT.BCM, auf die der angegebene Suchbegriff paát. ----------------------------------------------------------------------------- \\STATUS.FORWARD ... - E/M : Anzahl ausstehender Mybbs- und Erase-Zeilen - Bytes: Zum Forward anstehende Datenmengen (ggf. in KB oder MB) ... \\TALK ... W„hrend des Conversmodus sind folgende Befehle m”glich: /Quit /Bye /User /Who /Talk /Msg /Chat /Send ! Quit, Bye: Beenden des Conversmodus User, Who: Anzeigen der Benutzerliste Talk, Msg, Chat, Send: - Es kann mit /T ein Text an einen weiteren Benutzer gesendet werden. - Mit /T wird der Converspartner gewechselt, alle Eingaben gehen nun an das angegebene !: Das angegebene Kommando wird ausgefhrt, wie am Boxprompt. Es wird jedoch kein Prompt ausgegeben. ... ----------------------------------------------------------------------------- \\SFONLY (Sysop, init.bcm) SFONLY 0: Normaler Box-Betrieb SFONLY 1: Forward-Mailbox, das Sysop-Call hat freien Zugang, andere Benutzer nur nach Eingabe des Sysop-Paáwortes ----------------------------------------------------------------------------- \\TELL Syntax: TELL Der Benutzer kann wie bei DieBox mit TELL einen TELL-Befehl ausloesen, der dann von der angegebenen Box ausgefhrt und die Ausgabe als Userfile zurckgesendet wird. Dabei sind Befehle, die Ver„nderungen bewirken (z.B. Alter, Erase) oder Eingaben erfordern (z.B. Send) ausgeschlossen. Der Lesebefehl ist auf EINE Datei mit maximal 530 Zeilen begrenzt. Eine Ausgabe von BIN-Dateien ist NICHT m”glich. \\TELLMODE (Sysop, Init.bcm) TELLMODE 0: Box untersttzt kein Tell TELLMODE 1: Eingabe von Befehlen erlaubt, aber keine Ausfhrung TELLMODE 2: Eingabe und Ausfhrung von Befehlen frei (Standard) ----------------------------------------------------------------------------- \\UNREAD Syntax: UNREAD [] [] Markiert Nachrichten als ungelesen. ----------------------------------------------------------------------------- \\USERPW ... USERPW 2 ... ----------------------------------------------------------------------------- \\USRTIMEOUT (Sysop, init.bcm) Syntax: USRTImeout Wenn vom Benutzer mehr als nichts empfangen wurde, wird die Verbindung abgebaut. Die minimale Zeit betr„gt 60 Minuten, 0 schaltet die Funktion ab. Beispiel: USRTIMEOUT 90 ----------------------------------------------------------------------------- In der Datei CHANGES.3VI sind noch folgende Hilfetexte zu erg„nzen: \\DIR.DESTINATIONS Syntax: Dir Dest [+|] Listet alle eingestellten Forward-Eintr„ge (H-Adressen, Verteiler, etc) auf. Mit "D D +" werden zus„tzlich auch alle Forward-Partner angezeigt. Mit Suchbegriff werden nur Eintr„ge angezeigt, die diesen enthalten. Beispiel: D D .FRA, D D DL "+" statt "*" als allgemeiner Suchgbegriff wurde gew„hlt, damit man auch nach Eintr„gen mit * (Rubriken) suchen kann. \\HOLDTIME (Sysop, init.bcm) Syntax: HOLDTIME Mit dem Parameter HOLDTIME wird die Haltezeit in Stunden eingestellt fr Nachrichten, die ein Hold-Kriterium (HFLP) in REJECT.BCM erfllen. Siehe auch HELP REJECT. \\OPTIONEN.GREP Folgende Befehle sind bei Grep-Funktionen (z.B. TGREP, SLOG, u.a.) gltig: -q Quick (einfacher String-Vergleich statt regul„rem Ausdruck) -i Groá/Keinschreibung ignorieren (voreingestellt, Unterscheidung mit -i-) -v Match invertieren -r Pattern ausgeben -n Zeilennummern ausgeben -c Nur Zeilen z„hlen -x Zeilenzahl nicht ausgeben wobei -x nur mit -c zusammen wirkt und -c praktisch rckg„ngig macht (es wird zwar gez„hlt, aber nicht ausgegeben). ---------------- bcm1.42n2 by DH8YMB and CZ4WAY: - added cb-call format check for use of much more cb-callformats - fix for E/M-mails doing fwdimport (bcm crashes because of CR/LF) bcm1.42n3 ... bcm1.42n5 by DK2UI - some options from DF3VI are integrated as standard (not any more in config.h): #define DF3VI_CRC #define DF3VI_COMMENT #define DF3VI_SENDPATH #define DF3VI_TR - some minor corrections for DK2UI options. - CRC output is now decimal and hexadecimal. - all ouput of dates and times are made new because there was a chaos. they now have a common basis. - set your hardware clock to UTC and TZ="UTC" in the start script. if this is not possible, set TZ to the differenz to UTC. Example: TZ="MES-2" for central european summertime, then bcm is running internal on UTC. - BIN extract and upload files are set to file time from #BIN# !!!!!!!!!!!!! Attention! you must make changes in all files msg/message.* otherwise bcm crashes no text changes, only format changes replace %s %s -> %s Example for msg/messages.dl: ----------------------------------------------------------- ... "Aktuell vom %s:\n" "Kein aktueller Text geladen.\n" "hallo %s, " "Helplevel=%u, Zeilen=%u, " "letzter Login %s" "erster Login." "\nBitte die Heimatmailbox mit A F eingeben!\n" ... "Datum: %s\n" ... ----------------------------------------------------------- changed messages.zip are added. bcm1.42n5 ... bcm1.42n9 by DK2UI - local time output if PC is set to local time and TZ is set correct all internal times are in UTC, except in mbserial.cpp (TODO ?) - many bug fixes ... ----------------------------------------------------------- Zeiteinstellungen fuer die Baybox von DK2UI, 2000-05-25 die von jeder Box eingfuegte R:-Zeile macht es zwingend erforderlich, dass jede Box die Zeit in UTC irgend woher kennt. dies geschieht am einfachsten, indem der Rechner auf UTC eingestellt wird und die 'enviroment variable' im Startscript TZ="" oder TZ="UTC" ist. ist dies nicht moeglich oder nicht erwuenscht, so muss TZ im Startscript auf die Differenz zu UTC eingestellt werden. Beispiel: TZ="MES-2" fuer mitteleuropaeische Sommerzeit oder TZ="MET-1" fuer Winterzeit. damit laeuft dann die Baybox intern auf UTC. alle internen Zeitangaben muessen auf dem gleichen Zeitniveau sein, damit Zeitvergleiche ueberhaupt einen Sinn machen. fuer DOS hat die bcm eine interne Umschaltung von Sommer/Winterzeit ("TZ=MET-1"). Bei Linux gibt es die Moeglichkeit, die 'hardware clock' (RTC) auf UTC einzustellen und die Systemzeit auf lokale Zeit MET, die sich automatisch auf Sommer/Winterzeit umstellt. Baybox liest die Zeit von der Systemzeit des Betriebssystems. fuer die Zeitausgabe ist geplant diese wahlweiswe als lokal oder UTC auszugeben. die Datumsausgabe, nicht nur der Baybox, sondern fast aller in DL entstandenen Programme, ist auf die deutsche Schreibweise programmiert. das Datum hat fast in jedem Land der Welt eine andere Schreibweise. dies mag mit ein Grund sein, weshalb DL-Programme international nur wenig akzeptiert werden, obwohl sie sonst meistens besser sind. es gibt schon seit sehr langer Zeit ein internationale Norm fuer die Schreibweise von Datumsangaben (ISO 8601) und eine gleichlautende Europanorm (EN28601) und auch eine gleichlautende DIN-Norm. diese Normen sollten fuer jeden inernationalen Schriftverkehr und Datenaustausch verwendet werden. dies scheint allen Programmierern bisher unbekannt zu sein. aber nur ueber das Vorbild weit verbreiteter Programme kann sich die Norm bekannt machen und durchsetzen. ----------------------------------------------------------- bcm142n6 by DK2UI - DF3VI_FWD geht jetzt unter Linux, ging bisher nicht. - Datumsausgaben in local time, wenn der PC local time hat, bcm intern alles auf UTC. - DF3VI/DH8YMB: 'changes' Doku aktualisiert bcm142n7 by DK2UI - Implementierung der DF3VI-Optionen aus config.h unter Linux: mit allen bisherigen Varianten von DF3VI_FWD stuerzt die bcm bei dem Sysop-Befehl 'new' ab, 'new -q' geht aber. also stuerzt die bcm durch die Funktion 'browse_hadr("")' ab, aber nur bei DF3VI_FWD. bcm142n8 by DK2UI DF3VI-Optionen und Linux: mit dem DOS-BC-Compiler kann man offenbar auf fremde Speicherbereiche zugreifen, und solange dieser nicht anderweitig benutzt wird, stimmt das Ergebnis auch. bei Linux fuehrt jeder Zugriff auf fremden Speicher zum Absturz. habe deshalb weiterleiten4() komplett ueberarbeitet. habe noch nicht alle DF3VI-Optionen durchprobiert, es muss also bei Linux damit mit weiteren Problemen gerechnet werden... bcm142n9 by DK2UI - DF3VI_FWD_EDIT option now runs under Linux - changed again: all time outputs are marked with 'l' for local or 'z' for UTC except in check, list and dir bcm142na by DK2UI - logbuch() make too long lines with peerip, not supportet by putlogauszug() putlogauszug() output limit to 80 bytes - parse_time() moves pointer behind string end, corrected - localtime for filenames for compability with older saved files - changed help.xdl to match changes from DF3VI bcm142nc by DK2UI - in weiterleiten4(): beware compares from empty strings - path and path edit are working correct now - changes in DF3VI_FWD Options to compile under linux bcm142nd by DK2UI - the following options are integrated as standard after successfull tests: CZ4WAY option for file forward and import DF3VI_UNREAD, DF3VI_MS_LIST, DF3VI_MS_LT, DF3VI_DIR_OUTST DF3VI_DIR_UNK, DF3VI_CHECK_REJ, DF3VI_MEM_SRT, - Lifetime in R-line, only in first box and writing back this Lifetime if found - completition of rubrik names for send/read/dir/list bcm142o by DK2UI - public release - small fix in box mailheader Notes / Compile Options: DF3VI_REJECT: crashes under Linux, bug not found (regex_match ?) DF3VI_NO_UNK: do not enable! rejects unknown addresses if you have only forgotten an address in fwd.bcm, the box do not receive all these messages. better look at unknown addresses and correct them. bcm142o1 by DK2UI - Korrekturen fuer: telnet forward, autoforward, dirformat, localtime - bei Verwendung von lokaler Zeit wird jetzt fuer TZ im start script akzeptiert: export TZ="" export TZ=MET export TZ=CET export TZ=MET-1MES-2 export TZ=CET-1CES-2 export TZ=MET-1MES-2,M3.4.6/M10.4.6 export TZ=CET-1CES-2,M3.4.6/M10.4.6 alle vorstehenden Angaben haben das gleiche Ergebnis und automatische Umschaltung Sommer-/Winter-Zeit. fuer Rechner die keine automatische Umschaltung haben muss TZ anders lauten und beim Zeitwechsel geaendert werden und die bcm neu starten. export TZ=MET-1 # Winterzeit export TZ=MES-2 # Sommerzeit export TZ=CET-1 # Winterzeit export TZ=CES-2 # Sommerzeit export TZ=UTC # Rechner hat nur UTC an Hand der Beispiele laesst sich leicht jede andere Zeitzone einstellen. bcm142o2 by DK2UI - der patch aendert bei ALTER REJECT die Rubriknamenlaenge wieder auf 8 Zeichen, wie es bei 142n war, wurde von DF3VI auf 6 Zeichen begrenzt. - die Ergaenzung von Rubriknamen wurde sicherer und eindeutiger gestaltet. bcm142o3 by DK2UI - completition of rubrik names corrected, ignore case and main board - invertet reject added to DF3VI_REJECT bcm142o4 by DK2UI - limit to parseline() via global define of MAXPARSE - forward to boxcalls not in pool was not ok, uses now input address - minor bugfixes bcm142o5 by DK2UI - DF3VI_USRTIMEOUT intregated - invertet reject removed from DF3VI_REJECT, was not ok - path with unkown calls produces garbage output, corrected - new function cut() to remove space and ctrl-chars from line end - convert works now also with main boards, was only for sub boards bcm142o6 by DK2UI - correction of byte count in fbb forward proposal - some cleaning up (remove DOS parts from Linux code) bcm142p1 by DK2UI - added from CZ4WAY, Jan, changes to _AUTOFWD (CB-option) and - restore H-address if unknown and telnet forward fixed - also from Jan numsort option of mem - remove some unused code for cleaning up - DF3VI_MSG_P integrated - corrections to 'forward -f', H-address was changed from dirline() bcm142p2 by DK2UI - modifications for WIN32 Compiler - corrections for AUTOFWD - corrections for DIDADIT - unread for users resets only R-flag, syops removing also all calls - crontab.bcm now with local time, was on UTC bcm142p3 by DK2UI - DF3VI_FWD intregated, removing old forward parts - oshell work with command stack - some corrections for WIN32 Compiler bcm142p4 by DK2UI - oshell corrected - set mbserial.cpp to bcm common time base - filetime() returns 0L if not a regular file (e.g. a dir) bcm142p5 by DK2UI - new function file_isreg() for regular files because filetime() is need to find directories this corrects fs access to subdirs bcm142p6 by DK2UI - corrections for WIN32 - one letter boards removed from check for users - date/time transfer to Netscape/pop3 corrected - regular file find for whole BCM bcm142p7 by DK2UI - for WIN32 set 'TZ=GDT+2' in autoexec.bat (from DL1GHN) - option -Y for dir/list/check/read corrected - move some internal messages to messages.* so they can be multilingual - correction for one letter boards and check again, was option dependent bcm142p8 by DK2UI - uimport() normally not needed (import DieBox user data), so it is available only as an option in config.h saves space for DOS - list via HTTP changed to boardname instead of to-field so list and dir works with UI_TOF on HTTP bcm142p9 by DK2UI - DF3VI_REJECT corrected bcm142q by DK2UI, DO1MJJ, DH3MB - DF3VI_REJECT corrected again, works now also with regular expressions - added regular expression match to convert - newbid() resets counter itself and not from crond - DF3VI_SHOW_SENDPATH, DF3VI_KILL, DF3VI_A_PS, DF3VI_CONVERS and PING integrated - several small options integrated - new command convert for output of convert.bcm - sign for word match in "convert.bcm" changed from ^ to ~ because ^ is used for regular expression - interactive runutils can now also used if they are marked with option -A in runutil.bcm and not called together with other commands. a user must see, which runutils are interactive, so mark them in runutil.bcm - moved some internal messages to messages.*, so new messages.* are needed - correction for AUTOFWD in mbfwd.cpp, was ignored - patch from JJ for DOS-tty phone modem (CB) included - many source cleaning up done - include new DIDADIT Spec v0.9.1 from DH3MB/DG4IAD - DIDADIT corrected, compiles now also with DOS/WIN32 - AUTOFWD limit corrected and size for destinations improved bcm142q1 by DK2UI, DG4IAD - patch from DG4IAD for DIDADIT included bcm142q2 by DK2UI - AUTOFWD corected again (in weiterleiten4()) - date output without option Y corrected bcm142q3 by DK2UI - correction for mkdir (compiler dependendent) bcm142q4 by DG4IAD - patch from DG4IAD for DIDADIT included bcm142q5 by DK2UI, DG4IAD - corrections for DIDADIT - added debug option in mbdidadi.cpp - regular expression search also for dir and list bcm142q6 by DK2UI - correction for DIDADIT for WIN32 - added missing starttime for DIDADIT - added user options to mailserver - cleaning up code for minimum warnings with compiler option -Wall bcm142q7 by DK2UI - cleaning up code for minimum warnings with compiler options -Wswitch, -Wshadow and -Wuninitialized, only 4 warnings left - compiler switch OLD_SHELL in ad_dos.cpp for test bat-files in runutils - complier switch OLD_FLUSH in mbax25k.cpp (100% CPU load with new flush) - correction to http bin read - dosinput in init.bcm only for DOS bcm142q8 by DK2UI - login time stored at login in users3.bcm, was at logout bcm142q9 by DK2UI - corrected 2 typing errors - bug in mailflaigs corrected - DIDADIT corrections bcm143pre1 by DK2UI - Tippfehler bei user Daten beseitigt - http Bilder auslesen boardname korrigiert - disable ohne argument bcm143pre2 by DK2UI - time output of fs dir corrected - no FBB proposal of erased mails - typing error in pop3 corrected - accept /EX only at line start in text rx - typing error in smtp corrected - wtext ending only with '/ex' at line start or CTRL-Z, so it is 7plus compatible - newbid loop for unique BID - send file is closed in scanheader() for writemailflags() - cut off illegal input to mailserver bcm143pre3 by DK2UI - telnet login corrected - pop3 corrections, see source bcm143pre4 by DK2UI - pop3 R:-lines evaluation corrected bcm143pre5 by DK2UI - talk input corrected - DieBox password login time corrected to UTC - R: lines output with -h option was missing linefeed bcm143pre6 by DK2UI - correction to daylight saving time (tm_isdst) - a typing error corrected - some cleaning up - timezone for DOS adapted - transfered personal mails causes a problem pop3, corrected bcm143 by DK2UI - use of function subst() where possible - new function subst1() replaces many strchr() calls - new function lastfunc() to locate crash position - further cleaning up - test boxcall with BID in add_em() - correct typing error in fwdrli - timezone for DOS corrected in mbcron - in bc_axuti.cpp index goes below 0, corrected - RFC-time in UTC - save_em() changes address of b->betreff, corrected - max age of incoming mybbs 30 days - headline of dir option o_w and LF corrected bcm143a by DK2UI - correction in some functions, skip, scanr, see source - corrections for tty console bcm143b by DK2UI - bugfix for 'comment' and 'reply' bcm143c by DK2UI - bugfix for 'talk' - correction for max. forward partners bcm143d by DK2UI - further correction for max. forward partners - CB only with option _CB enabled in config.h bcm143e by DK2UI - bidlen for forward and postfwd commands corrected - after an empty check output users could read one letter bulls, corrected - on passwords login the CR of the returned password causes abort of the users login command, CR is grabbed now bcm143f by DK2UI - on login CR is grabbed only if available - forward and postfwd working now also on old mails with short forward line - remote erase could not find converted and transfered bulls, corrected bcm143g by DK2UI - typing error in transfer corrected - problem with one-letter-boards corrected - further cleaning up code bcm143h by DK2UI - bug correction for 'forward -h' - bug correction for remote erase in check.bcm - new: evaluation of from and to for swap mails, swapped mails are logged in trace/swaplog.bcm and get a lifetime of 2 days - sysop command 'swaplog' to read trace/swaplog.bcm - new function log_entry for trace log files bcm143i-k by DK2UI - corrections for from and to evaluation bcm143l by DK2UI - bug correction for 'forward -h' and postfwd in change_address() - correction for a DOS compiler bug (no automatic cast to unsigned) in hufman.cpp function update() bcm143m by DK2UI - reject in dir and list from DF3VI (compiler option) - no hold on pw&hold for import - from and to evaluation now as compiler option - corrections from DF3VI in putdirkopf() and modify_list() - line length limit to expandmakro() - own log file for m_filter bcm143n by DF3VI - help index length changed to %1.37s - no reject in dir and list on personal mails (DK2UI) - POCSAG server included - dir options j and s - attach during import now possible - correction of fwd-line in mail header after fwd command - correction of parameter pointer in sidauswert() - correction of line length in fwdlog() bcm143o by DF3VI - correction for multiple forward of user mails and auto forward - return message for unread user mails after lifetime ending - acknowledge message after first read if /ack (not on option -g) - lifetime request on send command (compiler option) - some minor corrections bcm143p by DK2UI - WIN32 version correction from DG0MG for shell and run utils - correction of mistakes in patch 143o (log and cast) - correction of DF3VI_READ_ACK option from DF3VI - correction for POGSAC info from DF3VI - parameter separation now a comma can be used alternative to a blank - option OLDTIMEFMT gives time output without timezone (grrrrr) - some minor kosmetic corrections - corrections in mail server (DF3VI/DG0MG) bcm144 by DK2UI - kosmetic space to tab saves much source space - length of file names limited to 50, was 120, because there is no more place in BIN header - correction for forward with *board in fwd.bcm - correct file size on DIDADIT resume - file names > 50 are shortend with extension saved example: testname~.zip (not with .attach) - options which can enabled/disabled in init.bcm not in config.h - some corrections in POCSAG server - DIDADIT with CRC in BIN header - .attach with CRC in BIN header - option DF3VI_HOLD changed to DF3VI_REJECT bcm144a by DK2UI - "dir -s " lists all subboards - longer length of path for DIDADIT upload bcm144b by DK2UI - very long filenames for DIDADIT upload - dir news with convert board name loss corrected bcm144c by DK2UI - path for DIDADIT mistake corrected bcm144d by DK2UI - with TRANSFER "check.bcm" is corrected - SEND and TRANSFER to not existing subboards of TMP bcm144e by DK2UI - lifetime correction in TRANSFER bcm144f by DK2UI - lifetime correction in TRANSFER also for "check.bcm" bcm144g by DH8YMB/DF3VI et al - < in header for first passed bbs removed - no abort when transfer of ACK mails - corrected @ of receiver bbs output - correction for new linux compilers (variable not) - mbalter: correction of display_parameter - DEBUG_DIDADIT and DF3VI_NO_UNK again in config.h bcm144h by DH8YMB - repaired TRANSFER in same board - repaired LIST in userdirs bcm144i by DH8YMB - repaired boardname in CHECK when mails are transfered bcm144j by DH8YMB - repaired 'a f -l' bcm144k by DH8YMB - converted TAB to spaces for 'p -s' header bcm144l by DH8YMB - CHECKCOUNT Macro %e fest eingebaut - Fehlermeldungen bei waitconnect (syslog_r.bcm) hinzu, Definition veraendert - Return bei HADR Statistik Ausgabe "new" hinzu - neue Parameter in init.bcm reduzieren config.h Optionen: - "ALTBOARDINFO 0/1": 0=Boardinfotextausgabe mit Return, 1=ohne Return - "TIMEOUTWARNING 0/1": 0=Timeout ohne Vorwarnung, 1=mit Vorwarnung - "ASKLOGIN 0/1": 0=keine Loginabfrage bei neuen Usern, 1=mit Abfrage - "SMOOTHHEADER 0/1": 0=bekannter Mailheader (dies sollte benutzt werden!) 1=reduzierter Mailheader mit diversen DK2UI Optionen - "NOUNKNOWNROUTE 0/1": 0=alle Mails akzeptieren, 1=Mails mit unbekannter Route werden abgelehnt bcm144m by DH8YMB - changed YEAR (version) to 2002 (baycom.h) - "From:" instead of "from:" (mailheader) - m_filter (init.bcm) parameter fixed for all os: "m_filter /off" (default: off) With M_FILTER a program can be defined in file "init.bcm" which is executed each time a mail is received. If value is set to "off" this function is disabled. This program can examine the mail, e.g. forbidden words etc. The program must return a value after examining the mail. It depends on the value what happens with the mail: 0: nothing happens 1: the mail will be deleted 2: the mail is being hold All M_FILTER calls are logged in file "trace\mfilter_log". - added some spaces between user and bbs-calls (removed formerly by DK2UI) - setfiletime on DIDADIT and YAPP receive to original filetime (by DK2UI, tnx) - setfiletime for WIN32 (by DK2UI, tnx!) - Fixed _TTY under DOS (telephone forward) - Paclen fixed (by DK2UI, tnx!) bcm146 by DH8YMB Due to circumstances that there are a lot of inofficial releases of 1.45xx versions in the network, i decide to increase number of this OFFICIAL release to 1.46, the content is the same as 1.44m! ============================================================================ All later releases are called "OPENBCM" and versions begins again from v1.0! ============================================================================