All changes since version 1.42 ------------------------------ 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! TODO: - DIDADIT may crash when using long filenames - DIDADIT incomplete rx with FIN causes an endless loop - investigate 64k-Data-Segment-Limit under DOS (Borland-C) - finish charsets - implement NNTP NEWGROUPS, NEWNEWS, (?POST) - (?) implement SMTP binrcv - add BID to forward files for identfication