OpenBCM V1.07b12 (Linux)

Packet Radio Mailbox

DB0FHN

[JN59NK Nuernberg]

 Login: GUEST





  
DK2GO  > DPTNT    10.01.10 01:03l 93 Lines 3435 Bytes #999 (0) @ DL
BID : KW04A4HB9EAS
Read: GUEST DL6DBA DL8SFG DO1SMK DG2NBN
Subj: DPBOX v6.00: "Loesungen fuer den 2010-Bug"
Path: DB0FHN<DB0MRW<DB0SIF<DB0IDN<DB0MW<DB0ZDF<DB0LHR<OK0NHD<HB9EAS
Sent: 100109/2239z @:HB9EAS.CHE.EU [Basel JN37TM] DP6.00 $:KW04A4HB9EAS
From: DK2GO @ HB9EAS.CHE.EU (Uli)
To:   DPTNT @ DL 

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hallo,

zum 1. Januar 2010 gab es eine unangenehme Ueberraschung mit der DPBOX. 
Ein Bug fuehrt bei der v6.00 dazu, dass alle Bulletin-Mails, die im S&F 
empfangen werden, irrtuemlich als "outdated" aussortiert werden. Diese 
Bulletins werden nicht weiter in den Forward gegeben und nach der 
Mindest-Lifetime geloescht. Das Problem wurde vor einer Woche in der 
Rubrik SYSOP beschrieben. Die technische Ursache des Bugs ist inzwischen 
bekannt (Zusammenfassung am Schluss).

Es gibt drei Moeglichkeiten, diesen Bug zu behandeln: Einen Workaround,
einen Bugfix von Thomas HB9XAR und einen Sammelpatch, der diesen Bugfix 
enthaelt.


1) Workaround
In der Datei config.box aendert man den Parameter BULLSFMAXAGE von 20 auf 
999999. Dadurch wird die Kontrolle auf veraltete Mails aus dem Forward 
quasi abgeschaltet. Als Box-Sysop gibt man Folgendes ein:

conf config.box BULLSFMAXAGE 999999
reload

Nachteil: Wirklich veraltete Bulletins werden nicht mehr abgefangen.


2) Bugfix von HB9XAR
Thomas hat einen Bugfix erstellt und ihn als Patch fuer v6.00.00 sowie als 
vollstaendigen Sourcecode geschrieben. Man compiliert den geaenderten 
Sourcecode neu (Befehle: make clean, make dep, make all) und speichert das 
neue Executable dpbox typischerweise im Verzeichnis /usr/local/sbin ab.

Download des Bugfixes von HB9XAR unter: http://hamradio.tuxworld.ch/dpbox/


3) Sammelpatch auf DPBOX v6.00.06
Ich habe vor einigen Jahren kleinere Verbesserungen der dpbox geschrieben 
und dabei vor allem Bugs beim Forward mit neueren FBB-Boxen behoben. Einen 
Sammelpatch inklusive dem neuen Bugfix von HB9XAR werde ich anschliessend 
als tar-Archiv in DPTNT @ DL einspielen.

Nach dem Patch erscheint als Version neu v6.00.06. Die einzelnen 
Aenderungen sind im Text-File release.600x (im tar-Archiv) kurz 
beschrieben. Zum Anwenden des Patches kopiert man das Patchfile in ein 
Source-Verzeichnis mit der v6.00.00 und gibt dann ein: 

patch < dpbox-diff-60000-60006.txt

Anschliessend neu compilieren (wie oben)


* Technische Ursache des 2010-Bugs *

Die Ursache des "2010-Bugs" ist die unvollkommene Behandlung des Y2K-Bugs
der FBB515-Boxen durch DPBOX. Bulletins mit Datumsstempeln ab dem Jahr 
2010 werden faelschlicherweise analog zu diesen FBB515-Bulletins 
behandelt. 

1) Die Variable txdate1 in box_file.c erfasst das Upload-Datum eines 
Bulletins. Sie wird durch die Funktion scan_hierarchicals berechnet. Man 
findet sie am Schluss von box_rout.c .

2) Die Funktion scan_hierarchicals ruft die Funktion get_headerdate auf. 
Sie ist im File box_scan.c definiert.

3) In der Funktion scan_hierarchicals wird der erwaehnte Y2K-Bug von 
FBB5.15 behandelt. Dieser Bug aeussert sich in Datumsstempeln wie 
"1000228/1201". Die DPBOX vermurkst nun wegen der Ziffer "1" am Anfang 
echte Header-Daten ab 2010, weil das Header-Datum fälschlicherweise analog 
zum Y2K-Bug von FBB5.15 behandelt wird. Der Bugfix von HB9XAR 
unterscheidet diese Faelle richtig:-)


Uebrigens, wer noch Verbesserungen des DPBOX-Codes gemacht hat oder machen 
moechte: Vielleicht ist das ja auch fuer andere Funkamateure interessant? 


73 de Uli, DK2GO


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: LinKT V0.6.99

iD8DBQFLSQWq5O7CfpGdskwRAiLXAJ9JE8u8EooGoZa1nnLGkJ0CLBM0pwCcCxD8
Hrx8/orb9VlzkYjJuBw7zoI=
=M5id
-----END PGP SIGNATURE-----


Read previous mail | Read next mail


 18.05.2024 22:33:38lGo back Go up