Share

Amateurfunk-Funkruf-Server

File Release Notes and Changelog

Release Name: V0.99p

Notes:
Version 0.99or - 0.99os => 0.99ot
=================================

- In der Datei /etc/services muessen die ggf. eingetragenen Service-Namen
  geaendert werden:

		rpp    		=>	frm
 		rpp_smtp 	=>	frm_smtp
		rpp_fwd		=>	frm_fwd
		rpp_http	=>	frm_http

	
Version 0.99oq => 0.99or
========================

- Wegen der Umbenennung des Programms in frmaster muessen einige Dateien 
  umbenannt werden. Dazu einmal "make rename" ausfuehren.

  Achtung: Bei make rename wird auch ein neues Startskript start_frmaster
  installiert. Dieses muss ggf. individuell angepasst werden.


Version 0.99nw - 0.99op => 0.99oq
=================================

- Digi- und Linkstatistik heisst jetzt Digi- und Linkstatus. Bitte
  "make config" ausfuehren und an entsprechender Stelle mit "JA" oder "NEIN"
  antworten.
  Nach dem Start des FRMaster als Sysop "DIGI ENABLE" eingeben.
  Die Dateien "digi-statist" und "link-statist" sollten aus dem Rubriken-
  verzeichnis geloescht werden.


Version 0.99of - 0.99ok => 0.99ol
=================================

- Korrektur bei der Benennung der Logfiles. Durch einen Fehler in der
  Dateinamenerzeugung wurden bisher falsche Dateinamen erzeugt, die
  ggf. Sonderzeichen enthielten. Wenn weiter auf die alten Logfiles zugegriffen
  werden soll, muessen diese umbenannt werden. Es gilt jetzt folgendes
  Benennungsschema:

                              log_JMT
                                  |||
                                  ||+--- Tag im Monat (1..9, A..V )
                                  ||
                                  |+---- Monat (1..9, A..C )
                                  |
                                  +----- Jahr (0 = 2000, 1 = 2001 ... )


Version 0.99oc - 0.99oe => 0.99of
=================================

- Neue Parameter fuer AXHTP-Interface

  AXHTP_SERVER muss auf JA gesetzt werden, wenn der AXHTP-Server gestartet 
  werden soll.

  AXHTP_PORT ist der AX25-Port auf dem der AXHTP-Server Verbindungen erwarten
  soll. Es muss sich um einen Port handeln, der in /etc/ax25/axports 
  definiert wurde.

  AXHTP_CALL ist das Rufzeichen unter dem der AXHTP-Server ansprechbar sein 
  soll. Typischerweise ist dies das Rufzeichen des FunkrufMasters mit der 
  SSID 13.


Version 0.99o8 - 0.99ob => 0.99oc
=================================

- Neue Parameter fuer HTTP-Interface

  HTMLDIR gibt das Verzeichnis an, in dem Binaerdateien liegen muessen, die
          ueber das HTTP-Interface erreichbar sein sollen.

  HTML_BACKGROUND gibt den Hintergrund an, der fuer HTML-Ausgaben verwendet
                  wird. Fuer die Konfiguration gibt es zwei Moeglichkeiten

  1. Hintergrundfarbe: 
  Die Hintergrundfarbe ist als Hexadezimalzahl anzugeben. Fuer einen weissen
  Hintergrund z.B.

  HTML_BACKGROUND=FFFFFF

  2. Hintergrundbild
  Die URL des Hintergrundbildes ist als Parameter anzugeben. Wenn die
  Grafikdatei vom HTTP-Server des FunkrufMaster bereit gestellt werden soll, 
  muss sie sich in dem durch HTMLDIR bezeichneten Verzeichnis befinden. Der 
  Pfad ist absolut zu $HTMLDIR anzugeben. 

  Beispiel:

  HTMLDIR=/usr/local/funkruf/lib/html/

  Die Grafikdatei fuer das Hintergrundbild befindet sich unter 
  /usr/local/funkruf/lib/html/hinter.gif, dann muss folgendes konfiguriert
  werden:

  HTML_BACKGROUND=/hinter.gif

                  ^Der Schraegstrich ist hier unbedingt mit anzugeben


Version 0.99o6 - 0.99o7 => 0.99o8
=================================

- Neue Parameter fuer Exportfunktion

  EXPORTDIR gibt das Verzeichnis an, in das Exportdaten geschrieben werden
            sollen. Dieser Parameter ist erforderlich!

  EXPORTMASK gibt an, bei welchen Ereignissen Daten exportiert werden sollen.
             
  sofern die Exportfunktion nicht verwendet wird, sollte EXPORTMASK=0 gesetzt
  sein. 

Version 0.99nw - 0.99o5 => 0.99o6
=================================

- Neue Parameter fuer HTTP-Interface :
  
  AKTUELL_HTML  zeigt auf AKTUELL-Datei im HTML-Format
  CTEXT_HTML    zeigt auf Connect-Text im HTML-Format
  INFO_HTML     zeigt auf Info-Text im HTML-Format

  Die Angegebenen Dateinamen werden automatisch um den suffix 
  .<language> erweitert. Damit ist jetzt auch moeglich verschiedene
  Texte, abhaengig von der gesetzten Sprache auszugeben.

  (Achtung, dies war bislang falsch beschrieben. Es wird nicht, wie bisher
  faelschlicherweise hier beschrieben, der Suffix ".html.<language>" erweitert,
  sondern nur ".language". Ein moegliches ".html" muss in den Parameter mit
  aufgenommen werden.)

  Die Texte aus diesen Dateien werden vom FunkrufMaster in html- und Body-
  Tags eingebettet, Diese Tags sollten also nicht in der Datei enthalten sein.


  <html>
  <head> .. </head>
  <body>

    "Text aus Datei"

  </body>
  </html>

  In diesen HTML-Dateien koennen die ueblichen Textmakros des FunkrufMasters
  enthalten sein.
 
- Mit "make html" wird ein spezielles Unterverzeichnis fuer HTML-Texte und 
  darin Templates fuer Aktuell-, Info- und Connecttext in deutscher 
  Sprach angelegt.

Version 0.99nu => 0.99nw
========================
- 2 neuer Compiler-Schalter fuer Compiler sowie Digi- und Linkstatistik.
  Bitte "make config" ausfuehren

Version 0.99n2 - 0.99nh => 0.99ni
=================================

- Es muessen weitere Unterverzeichnisse fuer die Logdateien angelegt werden.
  Diese befinden sich im "Hauptlogverzeichnis". Das Anlegen der Verzeichnisse
  kann mit "make log" geschehen.

- Es muss der neue Konfigurationsparameter SPOOLLOGMASK hinzugefuegt werden. 
  Wenn als Startwert 0 verwendet wird, werden keine Funkrufe geloggt.

Version 0.99m - 0.99n1 ==> 0.99n2
=================================

- Der Crontab-Prozess "messages" sollte deutlich haeufiger, am besten Halb-
  stuendlich ausgefuehrt werden.


Changes: VERSION 0.99p ============= -- V 0.99ow - Bugfix: Wenn sich Logeintraege mit einer Zeilenlaenge von mehr als 250 Zeichen im Log befanden, stoppte die Ausgabe an dieser Stelle. Die Grenze wurde auf 999 Zeichen raufgesetzt, zudem wurde verhindert, dass laengere Zeilen vom Programm ins Log geschrieben werden koennen. - Bugfix: Unter bestimmten noch nicht ganz geklaehrten Umstaenden konnte es sein, dass bei jedem scheduler-Durchlauf eine "Error_while_accepting_connection"-Ausnahmebedingung auftrat. Das Programm war damit nicht mehr ansprechbar, das Log wurde vollgeschrieben. Das Auftreten dieser Ausnahmebedinung fuehrt nun zum sofortigen shutdown. - Bugfix: Beschrieftungsfehler im WEB-Formular "benutzerprofil" beseitigt -- V 0.99ov - Im Web-Formular zur Anzeige und Aenderung von Skyperrubriken kann jetzt auch eine Verweildauer und das Zielgebiet fuer die Aenderungen angegeben werden, wenn der Operator die Rechte fuer Eintraege in diese Skyperrubrik besitzt. -- V 0.99ou - Fehler beim Einlesen der Portnummern aus dem Config-File behoben. Siehe V0.99ob. - Einige verlorengegangene Ausgaben bei der Abfrage von Forwardpartnern und Funkrufsendern ueber's WEB-Interface wieder eingebaut. -- V 0.99ot - Namensaenderung der Servicenamen fuer die IP-Services des FunkrufMasters. Bei den Namen wurde rpp durch frm ausgetauscht - Aenderung der WEB-Ausgabe fuer Skyperrubriken. Beim Anklicken einer Rubrik wird jetzt der Inhalt eines Slots in vier Zeilen a 20 Zeichen formatiert angezeigt, sodass die Formatierung der auf dem Skyper entspricht. Sysops und Board-Operateure koennen an dieser Stelle auch gleich formatiert Aenderungen eingeben und diese Aussenden lassen. -- V 0.99os - Bugfix: In einigen Interfaces, die eingehende Verbindungen bearbeiteten wurde das path_finished-Flag nicht initialisiert. Dadurch wurde die erste eingehende Zeile nicht an das Interface, sondern an den AX25- Autorouter weiter geleitet. Betroffen waren : use_interface, fwd_interface und axhtp_interface. gefixt! Dieser Fehler fuehrte u.a. dazu, dass bei AX25-Connects gelegentlich der erste Befehl ignoriert wurde. - Noch ein Darstellungsfehler im Digi- und Linkstatus beseitigt. -- V 0.99or - Programm und Konfigurationsdatei wurde von pager bzw. pager.conf umbenannt in frmaster bzw. frmaster.conf. -- V 0.99oq - Textausgaben fuer Digi- und Linkstatistik verbessert. - Digi-Statistik heisst jetzt Digi-Status - Link-Statistik heisst jetzt Link-Status -- V 0.99op - Im Web-Formular "Benutzerprofil" wird jetzt in der Geraeteauswahl der in der Datenbank bekannte Pagertyp vorselektiert. - Im Webformular "Letzte Logins" wird jetzt die Datumsanzeige wirklich beachtet. Im Formular wird automatisch das aktuelle Datum vorselektiert. - Bugfix: Wenn dem SMTP-Interface in einem Datenframe mehr als eine Textzeile uebermittelt wurde, wurde die erste Zeile ausgewertet, alle weiteren Zeilen blieben jedoch im Input-Puffer und wurden nicht bearbeitet. gefixt! - Bugfix: Wenn das Exportverzeichnis nicht gesetzt ist, gibt es bei jeder eingehenden Clustermeldung, Nachricht, etc. eine Fehlermeldung im Log. gefixt! Das Exportverzeichnis wird jetzt nur bei gesetzter Exportmaske abgefragt. Wenn das Exportverzeichnis nicht konfiguriert wurde, wird nun nur noch eine Fehlermeldung ins Log geschrieben und dann die Exportmaske geloescht. Wenn die Exportmaske nicht definiert ist, wird sie ebenfalls automatisch auf 0 gesetzt und in die Konfiguration eingetragen. - Bugfix: DL9SAU beschrieb eine seltene Situation, in der accept() -1 zurueck lieferte. Diese Situation wurde bislang nicht abgefangen. Gefixt! - Bugfix: Bei einem TCP-Telnet-Login kam der Kommandoprompt nach dem Einloggen doppelt. gefixt. -- V 0.99oo - Bugfix: Im DL9SAU-Patch fuer die erleichterte Sysop-Authorisierung wurde ein Flag definiert, das gesetzt wird, wenn ein entsprechender IP-Connect (Siehe Version 0.99om) erkannt wurde. Dieses Flag wurde bei AX25-Verbindungen nicht korrekt initialisiert. gefixt! -- V 0.99on - Wird bei den Befehlen "PAGE", "GPAGE" oder "RUBRIK" kein Text eingegeben kommt die Aufforderung zur Eingabe des Textes. So sind auch laengere Texte moeglich, wenn das PR-Terminal Programm nach 80 Zeichen umbricht. -- V 0.99om - DL9SAU-Patch: erleichterte Sysop-Authorisierung wenn Connect von localhost mit Source-port < 1024. Das ist ein unix-standard, und zwar in der Form, das nur der user root einen port < 1024 als Source-Port nutzen kann. Beispiel: nc -p 99 localhost 4711 Wenn user dann "sys" sagt, wird er ohne Abfrage Funkruf-Sysop. - DL9SAU-Patch: im status "Callsign : " oder "Password : " bei telnet-Verbindungen nach 4711 gibt es keine korrekten Meldungen, wenn user in einen Timeout rennt (d.h. sich z.B. 30min lang nicht anmeldet). Vielmehr wird die Fehlermeldung ausgegeben, dass ein "schwerer Fehler in der Sprachdatei" fuer "Meldung 3" aufgetreten ist. Durch das praeventive Laden per 'mldg.load("dl");' ist die Sprache richtig initialisiert. - DL9SAU-PATCH: Logfile loggt source-dresse und source-port einer IP verbindung. doch der source-port war noch in network-order. so stimmte die geloggte zahl nicht mit der realen ueberein. htons(3) behebt diesen Fehler. -- V 0.99ol - Wenn der AXHTP-Server eingebunden wurde aber nicht gestartet wurde (AXHTP_SERVER=NEIN), blieb ein Zeiger uninitialisiert, was zu einer Speicherschutzverletzung fuehrte. gefixt! - Die Dateinamenerzeugung der Logfiles war fehlerhaft. Dadurch kam es zur Verwendung von Sonderzeichen bei den Logfiles. Dieser Fehler wurde gefixt. Leider kann das Programm dadurch nicht mehr korrekt auf aeltere Logfiles zugreifen. - Beim Auftreten eines Fehlers waehrend des Select-Systemaufrufs wird der FunkrufMaster jetzt sofort herunter gefahren. -- V 0.99ok - Ausgabe von benutzem und freiem Speicher vertauscht. => fixed. - Solange der Gruppenruf kein Zielgebiet kenn wird dieses bim HTTP-Interface ignoriert. -- V 0.99oj - Ausgabe der Infos von "GRUPPE <gruppe>" korregiert. -- V 0.99oi - etwas Kosmetik im Quellcode. - Slave-Statusaenderung korregiert. - Digi-Statistik-Anzeige verschoenert (Komando "DIGI"). - Ausrichtungsproblem bei "DIR" und "GROUP <Gruppe>" bei aktuellem GCC behoben. -- V 0.99oh - Optimierung des Forwardings - Anzeige einiger weiterer Parameter bei der Abfrage der Forwardparameter. -- V 0.99og - Anzeige der letzten Zeitkorrektur bei RPC-Karten korregiert. - Nicht initialisierte Variable im HTTP-Interface auf 0 gesetzt. - Anpassungen an Kernel 2.6: - Speicher wird in /proc/meminfo anders angegeben - Beim Senden von Datenpaketen > MTU-Size wurde der User abgeworfen. => Neues define "MTU_SIZE" in der globdef.h (default 255) => Todo: Auslesen der MTU-Size pro Interface -- V 0.99of - Weitere Funktionen im HTTP-Interface implementiert: Benutzer koennen jetzt auch ihr Benutzerprofil mit Namen, Locator, Sprach und Pagertyp ueber ein HTML-Formular setzen. Darueberhinaus koennen Sysops das Profil aller Benutzer ueber dieses Formular setzen. - Sysops koennen nun ueber ein HTML-Formular Rubrikenoperateure hinzufuegen und loeschen. - Um HTML-Seiten auch ohne den Overhead, der mit TCP/IP-Verbunden ist, ueber das Packet Radio-Netz uebertragen zu koennen, wurde ein Protokoll definiert, mit dem dies auch direkt ueber eine AX25-Verbindung geschehen kann. Dieses AX25 Hypertext Transfer Protokol, kurz AXHTP, wurde in den FunkrufMaster implementiert. - Beim Uebersetzen des Quellcodes kann nun konfiguriert werden, oder der SMTP-, der HTTP- und der AXHTP-Server mit uebersetzt werden sollen. Die Uebersetzung der HTML-Code-Erzeugung wird davon abhaengig gemacht, ob HTTP- oder AXHTP- Server eingebunden wurden. -- V 0.99oe - Bei der Abfrage der Slaves sowohl beim AX25-Zugang, als auch beim HTTP-Zugang wird wieder die Firmwareversion der RPC-Karten und die letzte Zeitkorrektur angezeigt. - Im HTTP-Interface funktioniert jetzt auch wieder die Aenderung des eigenen Passworts. Der entsprechende Dialog wurde bislang nicht angezeigt. -- V 0.99od - Durch eine Panne beim Einchecken des neuen HTTPd - Codes ins CVS sind die Exportfunktion und die Digiueberwachung weitgehend verlorengegangen. Dies sollte wieder hergestellt sein. -- V 0.99oc - Weitere Funktionen im HTTP-Interface implementiert: Aktuelles, Info, Suche in Logdateien, Funkrufsender, Benutzersuche - Das HTTP-Interface kann jetzt auch Binaerdateien uebertragen. Unterstuetzt werden zur Zeit die folgenden Formate: *.jpg, *.jpeg, *.gif, *.wav, *.txt, *.htm und *.html. Die Dateien muessen sich in einem speziellen HTML- Verzeichnis oder eines seiner Unterverzeichnisse befinden. - Zur Angabe des HTML-Verzeichnisses gibt es den neuesn Konfigurationsparameter HTMLDIR. - Der Hintergrund der HTML-Ausgabe ist nun mit dem Parameter HTML_BACKGROUND konfigurierbar. Es kann entweder eine Hintergrundfarbe in Hexadezimaler Form (z.B. Weiss = FFFFFF) oder die URL einer Hintergrundgrafik angegeben werden. - Bugfix: Wenn unter AX_25_SMTP_SENDER kein Rufzeichen konfiguriert war, fuehrte dies bei jedem AX25-Connect von aussen zu einer Fehlermeldung. Sollte jetzt gefixt sein. -- V 0.99ob - Digi-Statistik: Toter Link bei TNN wurde nicht richtig erkannt. Zusaetzlich ausgabe der Zeit in Digi-Statist. - Befehl "DIR <Rubrik>" macht jetzt hinter jeder gefuellten Zeile eine Leerzeile zur Trennung. - TCP-Ports werden bei "VERSION *" mit angezeigt. - TCP-Ports werden jetzt in der pager.conf mit gespeichert. Die Eintraege in der /etc/services koennen entfallen. Ebenso die Commandozeilenparameter. Reihenfolge: Default-Port => /etc/services => pager.conf => Cmd-Line -- V 0.99oa - Aenderung in der Implementierung des Forward-Protokolls. Bisher wurden beim Einlesen der Daten aus dem Spoolverzeichnis beim Start einer Forward- verbindung die vorhandenen Zeit und Zielgebietsnachrichten aussortiert und geloescht. Dies wurde nun auf den Destruktor des Interfaces verschoben. Dort werden jetzt auch alle noch vorhandenen Protokolleigenschaftsnachrichten geloescht, was beim Verbindungsstart nicht moeglich war. Das Ansammeln "ueberfluessiger" Eigenschafts-, Zeit- und Zielgebiets- nachrichten sollte damit vermieden werden. Es wird nur noch eine einzige Eigenschaftsnachricht ausgetauscht. -- V 0.99o9 - Erweiterung fuer die Config der Digi- und Linkstatistik: - Hinzufuegen von Digis mit "DIGI ADD <Call>", Loeschen mit "DIGI DEL <Call>" - Enable und Disable der gesamten Abfrage - Enable und Disable einzelner Digis (default ist DISABLE!) - Hinzufuegen und loeschen von Links mit "ADDLINK" und "DELLINK" -- V 0.99o8 - Einbau einer Exportfunktion Bei bestimmten Ereignissen koennen Informationen an andere Programm exportiert werden. Dazu werden Dateien in ein Verzeichnis geschrieben, das durch den Parameter EXPORTDIR festgelegt ist. Die Dateien haben den Namen EXPORT.<ereignis-id>.<nummer> Die Ereignis-IDs werden im folgenden beschrieben, die Nummer ist eine Zufallszahl zwischen 0 und 32767 Folgende Ereignisse gibt es: Ereignis-ID Beschreibung D DX-cluster-Meldungen. Es wird die Meldung geschrieben, so wie sie vom DX-Cluster empfangen wurde C DX-Ausbreitungsmeldungen. Es werden die Meldungen geschrieben, so wie sie vom DX-Cluster empfangen wurden. W Wettermeldungen. Es werden die von einer Wetterstation ausgelesenen Daten im ASYNOP-Format geschrieben (Achtung: Noch nicht vollstaendig implementiert) P Persoenliche Funkrufe. Es werden jeweise in einer Zeile die folgenden Daten in dieser Reihenfolge geschrieben: Rufzeichen des Masters (bei dem die Nachricht erzeugt wurde) Zeit der Erzeugung (Format : wtg, dd. Mon YYYY HH:MM:SS) F|L (Nachricht kommt aus dem Forward / Lokale Nachricht) Absender Zieladresse Zielgebiet Nachrichteninhalt Prioritaet B Skyper-Rubrikennachricht. Es werden jeweise in einer Zeile die folgenden Daten in dieser Reihenfolge geschrieben: Rufzeichen des Masters (bei dem die Nachricht erzeugt wurde) Zeit der Erzeugung (Format : wtg, dd. Mon YYYY HH:MM:SS) F|L (Nachricht kommt aus dem Forward / Lokale Nachricht) Boardnummer Slotnummer Zielgebiet Nachrichteninhalt Prioritaet - Neuer Befehl EXPORTMASK, mit dem die Exportereignisse bei denen Daten exportiert werden abgefragt oder gesetzt werden koennen. -- V 0.99o7 - Fehlendes "cr" bei Ausgabe von "CStatus". - Optik-Verbesserung in der Hilfe-Ausgabe. - Erweiterung fuer die Config der Digi- und Linkstatistik. -- V 0.99o6 - Umbau des HTTP-Interfaces. HTML-Codeerzeugung und HTTP-Server sind nun sauber voneinander getrennt. Die HTML-Codeerzeugung ist nun auch "Mehrsprachfaehig". -- V 0.99o5 - einige Fehler in der WX-Abfrage beseitigt. Sollte jetzt wieder laufen. -- V 0.99o4 - Erweiterungen fuer Digi-Statistik bzw. Link-Statistik - Neue Boards 91 und 92 fuer Digi- bzw. Linkstatistik (werden automatisch angelegt) - Kleine Aenderung im Makefile -- V 0.99o3 - Bei Schrittweisen FWD-Connect wurde der CText des letzten Digis faelschlicherweise als Meldung erkannt und der Fehlerzaehler lief hoch. -- V 0.99o2 - Erweiterung Digi-Statistik fuer XNET. - Statistik fuer PC-Flexnet lief nicht. -- V 0.99o1 - Zeiten fuer gescheiterte Verbindungsaufbauten werden nicht mehr bei neuem Connectversuch zurueckgesetzt. - Kosmetik im RPC-Interface Version 0.99o ============= - Nochmal Aenderung im SMTP-Teil wegen GROSS- und Kleinschreibung - Nichtinitialisierte Variablen unter anderem bei http initialisiert - Erweiterungen fuer die Digi-Statistik - Telnet-Login sollte wieder funktionieren (Passwort schlug fehl) - Web-Interface: Bei Fwd konnten keine Details von Calls mit zweistelligem Suffix per klick angezeigt werden. Fuehrendes Leerzeichen stoerte -- V 0.99nz - Erweiterungen fuer die Digi-Statistik -- V 0.99ny - Slave-Version wird bei "SLAVE" mit angezeigt. Bsp: (RPC-XOS 2.2.0pre32) - Letzter Slave-Zeiversatz wird bei "SLAVE <CALL>" mit angezeigt. - Bugfix beim Einlesen der Datenbank!! Alle Pager-Typen waren unbekannt. - Datenbank-Updateanforderungen funktionieren wieder. - Autorouter: Destination mit zu hoher Laufzeit werden ignoriert (siehe globdef.h) - Datenbank-Updates werden jetzt zusammengefuehrt. Ist Name, Locator oder Geraet lokal nicht gesetzt und in einem Update kommen zusatzliche Infos, werden diese Infos eingefuegt. -- V 0.99nx - SMTP-Server stuerzte beim Connectversuch unter GCC 3.3 ab. gefixt! - SMTP-Server unterschied GROSS- und Kleinschreibung beim Server. gefixt! - SMTP: Absender <dh6bb@db0fho.ampr.org> wurde nicht erkannt ("<DH6BB"). gefixt! -- V 0.99nw - Wno-deprecated im Makefile fuer gcc3 - Schreibfehler in der FWD-Anzeige beseitigt - Copyright-Ausgabe auf 2004 gesetzt - Debug-Meldungen teilweise verschoenert - Im Autorouter konsequent "-1." als Initialisierung - Ueberfluessige Leerzeichen am Ende eines Funkrufes werden entfernt - Ueberfluessige Leerzeichen bei "DIR" am Ende der Zeile entfernt - RubrikenOPs werden auch als nicht-Sysop angezeigt - Anfaenge fuer Digi- und Linkstatistik Anmerkung DH6BB: Compiliert und laeuft auch mit GCC 3.3.1 (SuSE 9.0) -- V 0.99nv - Beim Start des mit GCC 3.x uebersetzten Masters kam es zum Programmabbruch beim Einlesen der Datenbank, da Leerstellen in Locator, Name u.ae. zu Problemen fuehrte. Dies ist jetzt behoben. Anm. DH4DAI: Mit dieser Version ist es mir erstmals gelungen, das Programm mit GCC 3.2 zu uebersetzen _und_ zu starten. Ausfuehrliche Tests stehen jedoch noch aus. -- V 0.99nu - Bugfix: Der Aufruf von String::append(ostringstream& ) fuehrte zu einer Speicherschutzverletzung. gefixt! - Bei DB0IUZ ist erstmals die "Error_while_select" Exception aufgetreten, die bisher nicht abgefangen wurde und somit zum Programmabbruch fuehrte. Dies wird jetzt abgefangen. -- V 0.99nt - Sollte nun auch mit GCC 3.x zu uebersetzen sein. -- V 0.99ns - Bugfix: Bei Stringvergleiche wurden zwei unterschiedliche Strings als identisch erkannt, wenn der eine String Anfang des zweiten war. (z.B. PARA == PARA_2 ) Dies fuehrte an verschiedenen STellen zu Problemen. gefixt! - Bugfix: Dem Clusterinterface wurde ein falscher Sockettyp (IP statt AX25) uebergeben, sodass ein keine Korrekte Zeilentrennung durchfuehren konnte. gefixt! - Bugfix: Das Clusterinterface bearbeitete stets nur eine Zeile eines ein- gehenden Datensatzes. gefixt. - Bugfix: Im Importfilter wurden die Zeilen dem Benutzerinterface ohne Zeilenabschlusszeichen uebergeben, sodass dieses die Zeilen nicht aufloesen konnte. gefixt. - Bugfix: Vom Satellitenmodul wurden die Satellitennamen nicht richtig angezeigt. gefixt. -- V 0.99nr - Bugfix: Wenn beim Test, ob ein Teilstring in einem String enthalten ist, der Teilstring genau mit dem Ende des Strings uebereinstimmte wurde dies nicht erkannt. gefixt! -- V 0.99nq - Beim Weiter-connecten wird jetzt zwischen Puffereintraegen mit Zeilen-Ende und ohne Zeilenende unterschieden. Das Zeilenendezeichen ist abstrakt und wird entsprechend der IP- oder AX25-Verbindung ersetzt. - Bei Forwardverbindungen kann jetzt zu Debuggingzwecken der gesamte Daten- verkehr ins Logfile geschrieben werden. -- V 0.99np - Einige Umstellungen an den Stringfunktionen. Jetzt sollten auch '\0' Zeichen in String keine Probleme mehr machen. - Bugfix: Im RPC-Interface wurde bei mehreren gleichzeitig ankommenden Zeilen durch die Strukturumstellung nur noch die erste Zeile bearbeitet. gefixt. - Bugfix: Im Connect-Interface wurden die Daten aus dem Input-Buffer, die an den aufrufenden Thread weitergeleitet wurden, nicht wieder aus dem Input- Buffer geloescht. gefixt! - Bugfix: Wurde beim Aufbau einer Verbindung einmal das "wait_for_conenct"- Flag des Threads gesetzt, wurde dies nicht wieder geloescht. Dies fuehrte dazu, dass das Programm staendig den Outgoing-Socket dieses Threads angepollt hat, womit auch bei jedem Select-Aufruf sofort ein OK fuer diesen Thread zurueck kam. Das Programm wechselte somit nicht mehr in den Sleep- Modus und kam auch annaehernd 100% CPU-Auslastung. gefixt! - Bugfix: Falls mit dem Connect-Interface eine Verbindung zwischen einem IP und einem AX25-Thread hergestellt wurde, wurden die Zeilenendezeichen nicht konvertiert. gefixt! - Bugfix: Im Cluster-Interface wurden ebenfalls bei mehreren gleichzeitig eintreffenden Zeilen immer nur die erste bearbeitet. gefixt! -- V 0.99no - Weitere Umstellung des Programmablaufs. Die Aufspaltung der Eingabedaten in Textzeilen wurde jetzt in die Interfaces verlagert. Damit koennen Interfaces jetzt auch auf nicht Zeilenorientierte Daten reagieren. -- V 0.99nn - Bugfix: Das RPC-Interface sendete keine Daten nach aussen. Grund waren einige return-Statements bevor die geschriebenen Daten aus einem String- Stream in den Ausgabestring uebernommen wurden.. gefixt! -- V 0.99nm - Bugfix: Beim SMTP-Interface kam es durch die Anwendung des +-Operators auf char* und char zum Verschwinden einiger Zeichen. Die Antworten des Servers waren dadurch zerstoert. gefixt! - Bugfix: beim HTTP-Interface kam es ebenfalls zu fehlerhaften Server- Antworten. gefixt! - Bugfix: beim HTTP-Interface wurden Requests nicht richtig erkannt. Sie fuehrten stets zu einer String Index-Verletzung, die intern abgefangen wurde, aber die weiterverarbeitung verhinderte. gefixt! -- V 0.99nl - Bugfix: Wegen einer falschen Zeilenendeerkennung konnten keine Daten von AX25 Sockets gelesen werden. Sollte jetzt funktionieren. -- V 0.99nk - Als ersten Schritt, um das Programm auch mit dem GCC V > 3 uebersetzen zu koennen, wurde die Struktur der Socketprogrammierung vollstaendig ueberarbeitet. Die bisherigen Socketstreams wurde komplett beseitigt. Neu ist eine Datei socket.cpp / socket.h, in der die beiden Basisklassen client und server enthalten sind, die abstrakt alle Methoden enthalten, um eine Socketkommunikation durchzufuehren. Diese werden an Tochterklassen ax25_server/client und tcp_server/client vererbt. Durch diese Struktur konnten weite Teile des Programm deutlich vereinheit- licht werden. -- V 0.99ni - Bugfix: Bei einer ungraden Anzahl von eingerichteten Rubriken wurden bei der HTML-Ausgabe des Inhaltsverzeichnisses zweimal die ungraden Rubriken nebeneinander ausgegeben, statt links die ungraden und rechts die graden. Gefixt! - Die Strktur der Logdateien wurde komplett umgestellt. Fuer jedes Log gibt es im Hauptlogverzeichnis nun ein eigenes Unterverzeichnis. Innerhalb dieses Unterverzeichnisses wird fuer jeden Tag eine eigene Datei geoeffnet. Diese Logdateien haben stets einen Dateinamen nach dem folgenden Muster: log_JMT ||| ||+--- Tag im Monat (1..9, A..V ) || |+---- Monat (1..9, A..C ) | +----- Jahr (0 = 2000, 1 = 2001 ... ) - Es wurde ein weiteres Logverzeichnis hinzugefuegt, das alle gespoolten Funkrufe loggt. Dabei werden geloggt: - Zeit des Spoolens - Art des Funkrufs - Absender - Absender Master - Absendezeit - Zielgebiet - Prioritaet - Inhalt - Zum Ansehen des Spoollogs gibt es den neuen Befehl "SPLOG". - Zum Setzen der Spoollogmaske gibt es den neuen Befehl SPLOGMASK. Als einstellbare Optioneen gibt es: #P Private Funkrufe werden geloggt. #B Skyper-Rubrikenrufe werden geloggt. #R Wiederholgungen der Boardinhalte werden geloggt. #N Aussendungen der Rubrikennamen werden geloggt. - Bei allen Logbefehlen kann jetzt der Zeitraum des Logauszugs angegeben werden. Folgt direkt dem Logbefehl eine Zeitoption, wird diese verwendet. Folgende Zeitoptionen stehen zur Verfuegung: -h heute (Standard) -w letzte Woche -m letzter Monat -q letztes Quartal (3 Monate) -y letztes Jahr -d<datum> Statt des heutigen Datums wird das angegebene Datum als Ausgangspunkt verwendet. Das Datum wird in der Form TT.MM.JJ angegeben. Unberuehrt davon bleibt die maximale Anzahl von Eintraegen, die Standard- maessig bei 15 bleibt, bzw. separat angegeben werden kann. -- V 0.99nh - Intern sind alle Zielgebiete jetzt mit einer Pruefsumme versehen. Wird bei der Verwendung eines Zielgebietes eine Fehlerhafte Pruefsumme gefunden, wird dieses Zielgebiet nicht mehr verwendet und eine Fehlermeldung erzeugt. Tritt der Pruefsummenfehler in der Routingtabelle des Autorouters auf, wird die komplette Routingtabelle neu initialisiert. -- V 0.99ng - Bugfix: Wenn eine Skyper-Rubriken-Nachricht fuer eine lokal nicht vorhandene Rubrik zu einem Forwardpartner geschickt wird, mit dem diese Nachrichten als Funkrufnachrichten ausgetauscht werden muessen (Protokolloption B nicht aktiv), fuehrte dies zum Programmabbruch. gefixt! -- V 0.99nf - Verbesserung des Autorouters. Die Bildung von Schleifen und das Haengen- bleiben von Zielgebietseintraegen, die im Netz nicht mehr zu erreichen sind, sollte besser vermieden werden. -- V 0.99ne - Bugfix: Das loeschen von lokal angelegten Rubriken mit dem Delrub-Befehl funktionierte bisher nur, wenn der Boardname ausschliesslich aus Kleinbuch- staben und Ziffern bestand. gefixt! -- V 0.99nd - Bugfix. Beim Forward von Skyper-Rubrikennachrichten kam es zu Fehlern, wenn keine Lifetime eingegeben wurde. Da die Standardlifetime mit -1 codiert wird und an einigen stellen ein "unsigned int" verwendet wurde, kam es hier zu merkwuerdigen Ergebnissen. gefixt! -- V 0.99nc - Spezielle HTML Aufgabe fuer die Forwardtabelle und die Zielgebiete -- V 0.99nb - Parameter des Autorouters wurden leicht modifiziert. Verschlechterungen der Linksituation werden jetzt schneller weiter gegeben. - Mit Skyper-Rubrikennachrichten werden jetzt auch die Lifetimes dieser Nachrichten im Forward weiter geleitet. Notwendigerweise ist dies zu der bisherigen Uebertragungsweise inkompatibel. Daher erhaelt der Austausch von Skyper-Rubrikennachrichten jetzt die Protokolloption B. Die Version 0.99nb ist nicht mehr in der Lage solche Nachrichten im alten Format auszutauschen. Der Austausch von Skyper-Rubrikennachrichten mit aelteren FunkrufMaster- Versionen muss daher ueber normale Funkrufnachrichten erfolgen. - Wird bei der Eingabe einer Sykper-Rubrikennachricht ein Slot vorgegeben, so wird dieser jetzt auch im Forward weiter geleitet. Dies ist ebenfalls nur im neuen Format entsprechend der Protokolloption B moeglich. - Wurde dem Autorouter eine erfolgreiche Messung zu einem Nachbarn gemeldet, zu dem zuletzt keine erfolgreiche Verbindung aufgebaut werden konnte, wird zu diesem Nachbarn eine Initialisierungsnachricht geschickt. Diese Initialisierungsnachricht ist so aufgebaut, dass sie bei aelteren FunkrufMasterversionen ohne Effekt bleibt. - Wenn eine Initialisierungsnachricht empfangen wird, werden in allen bekannten Zielgebieten die Delays, die von diesem Nachbarn empfangen und zu diesem Nachbarn gesendet wurden zurueck gesetzt. Anschliessend werden entsprechend neue Zielgebietsnachrichten versendet. -- V 0.99na - Aenderungen an der DX-Cluster Konfiguration werden nun sofort gespeichert. - Bugfix: Wenn nach "setfwd enablear" oder "setfwd disablear" ein Parameter folgte, der kein gueltiges Rufzeichen war, fuehrte dies zum Programmabbruch. gefixt! - Bugfix: Beim Freigeben oder Sperren des Autoroutings zu einem einzelnen Forwardpartner wurde auch gleich der gesamte Autorouter mit reigegeben, bzw. gesperrt. gefixt! - Bugfix: Wenn man ueber das HTTP-Interface als Sysop angemeldet ist und den 15 Minuten-Timeout verstreichen laesst, wird ein internes Flag nicht wieder zurueck gesetzt. Folge ist, dass sich niemand mehr bis zum Neustart als Sysop anmelden kann. gefixt! -- V 0.99n9 - Im HTTP-Interface wird jetzt bei der Abfrage der momentanen Logins eine eche HTML-Ausgabe in einer Tabelle ausgefuehrt. -- V 0.99n8 - Eine Reihe von nicht mehr benoetigten DEBUG-Ausgaben wurden wieder beseitigt. - (langsame) dynamische Anpassung der Betriebsflussparameter beim Forwarding -- V 0.99n7 - Bugfix: In ganze seltenen Faellen kann es zum Empfang eines SIGPIPE- Signals kommen. Dazu muessen fuer eine Verbindung zu schreibende Daten anliegen und die Verbindung muss zwischen dem Aufruf der "select"- Funktion und dem Schreibversuch unterbrochen werden. Da diese Zeitspanne recht kurz ist, ist dies unwahrscheinlich. Bei einer hohen Anzahl offener Verbindungen nimmt die Zeitspanne und damit die Wahrscheinlichkeit zu. Vermehrt kann dieses Problem bei eingeschalteter Laufzeitmessung des Digipeaters auftreten, da hier eine hohe Connect-Frequenz gegeben ist und die Verbindung noch waehrend der Ausgabe des Conenct-Text getrennt wird. Das SIGPIPE-Signal wird jetzt abgefangen und protokolliert. Der entsprechende Thread wird entfernt, ohne das Programm zu beenden. -- V 0.99n6 - Bugfix: Beim Netscape-Navigator wurden der Inhalt einer Rubrik nicht angezeigt, weil im HTML-Code das letzte </table>-Tag fehlte. gefixt! - Die Erweiterungen des HTTP-Servers wurden jetzt auch fuer die Anzeige der Benutzergruppen vorgenommen. - Er werden jetzt auch die Signale SIGKILL und SIFPIPE behandelt. -- V 0.99n5 - Erweiterung des HTTP-Servers. Das Inhaltsverzeichnis der Skyper-Rubirken wird jetzt uebersichtlich in einer Tablle angezeigt. Die einzelnen Rubriken koennen angeklickt werden. Dabei wird dann der Inhalt dieser Rubrik angezeigt. -- V 0.99n3 - Bugfix: Die Aenderung aus Version 0.99n2 fuehrte beim Einlesen der Board- dateien im neuen Datenformat zu einem Pogrammabbruch. Behoben - Bugfix: Alte Boarddateien wurde zwar intern mit neuen Informationen zum Wiederholungsintervall versehen, aber nicht im neuen Format wieder abgespeichert. gefixt! -- V 0.99n2 - Verbesserung der Wiederholungsaussendung. Fuer jede Skyperrubrik wird jetzt ein Wiederholungsintervall gesetzt. Beim Crontabprozess wird jetzt ueberprueft, ob dieses Intervall seit der letzten Aussendung abgelaufen ist. Nur wenn dies der Fall ist, wird der Rubrikeninhalt erneut ausgesendet. Der Crontab-Prozess sollte daher jetzt wesentlich haeufiger, z.B. Halbstuend- lich aufgerufen werden. Standardmaessig wird jeder Rubrik ein im Quelltext vorgegebenes Wiederholungsintervall mitgegeben. - Zum Setzen des Wiederholungsintervalls gibt es den neuen Befehl setdir MSGREPEAT <rubrik> <intervall>, bzw. setdir WIEDERHOLUNG <rubrik> <intervall>. Das Wiederholungsintervall wird in beiden Faellen in Minuten angegeben. -- V 0.99n1 - Bugfix: Wenn eine Nachrichtendatei beim Wiedereinlesen eines Forward-Spool- Verzeichnisses nicht mehr lesbar ist, blieb sie bisher im Spoolverzeichnis unveraendert liegen und fuehrte bei jedem Versuch, sie wieder einzulesen, erneut zu einem Fehler. Solche Dateien werden jetzt geloescht.