ACHTUNG: Nur für Kernel 1.3.71 ff.
Für ältere Kernels gibt es einen Patch 37-old, der _anstatt_ isdn-36-37.gz angewendet werden muß.
Weitere Patches (d.h. 37->38 ff) können Konflikte verursachen. Ich empfehle jedem, 1.3.71 zu installieren; das Teil ist um _einiges_ schneller als 1.2.13.
Anmerkung des Setzers: Hier gibt's keine Info zu. ?
Problem mit Euro-ISDN-Nebenstellenanlagen behoben.
Achtung: +000=00-0. in die DP-Zeile, der Punkt am Ende ist nicht ganz unwichtig.
Wichtig:UNBEDINGT INSTALLIEREN. Verbindungen werden nicht korrekt abgebaut!
Grr, ich solte diese Datei besser pflegen. :-/
Anmerkung des Setzers: Sollte er ;-) - Aber gleichzeitig auch nochmal DANKE fuer U-ISDN.
Funktioniert dip jetzt? Bitte testen.
Die Umstellungsprobleme sind nun (hoffentlich) endlich beseitigt.
Die Puffergrößen in den Datenströmen wurden drastisch reduziert. Wenn Datenverluste auftreten (zB beim Weiterleiten von IP-Paketen oder beim Empfang von Audiodaten, wenn das lesende Programm zu langsam ist), sollte ein " buffer "-Modul zwischengeschaltet und geeignet konfiguriert werden, sinnvollerweise hinter dem " reconn "-Modul (IP) bzw. direkt hinter transalaw (Audio).
Vernünftigeres Beartbeiten des Verbindungsauf/abbaus eingebaut. Unter Kernel 1.3.44: Experimenteller Code, der sk_buff-Blöcke zur Datenspeicherung verwendet, wird aktiviert. Wenn das Probleme macht -> meckern (abschaltbar in streams/stream.h, ganz oben).
In obskuren Faellen ist es vorgekommen, dass der Rechner stehenbleibt.
Meistens wacht er nach einer Minute oder so wieder auf; ich wuerde ganz
gerne wissen wo er stehenbleibt... AltGR-ScrollLock druecken, nach einer
Minute oder so sollten drei sehr kryptische Zeilen erscheinen. Die Zahl
in
Es kann sein, dass "echo at/BLA >/dev/isdn/isdnXX" nicht mehr funktioniert. Timingabhaengigkeit im Kernel, sorry. Abhilfe: cu verwenden.
Wenn es einen User "isdnmaster" gibt, darf dieser mit dem ISDN-Programm alles, was root auch darf. "isdnmaster" ist konfigurierbar.
WICHTIG: Im D-Kanal-Handling hat sich was geändert. Wenn Anrufe von manchen Leuten funktionieren, Anrufe mit identischen Dienstkennungen von anderen Leuten mit längerer / kürzerer / ohne Nummer (also analog) jedoch nicht, in cards/dumb/shell.c den #if 0...TELL ME (Zeile 1175) in #if 1 ändern; wenn es nach dieser Änderung (und bitte NUR diese Änderung!) wieder funktioniert, bitte bei mir melden.
Die CM-Zeilen sind weggefallen; die Treiber erkennen nun "frame" etc direkt. Dies als Vorbereitung auf das Erkennen von "frame x75 t70" und Handling desselben auf der Karte, wenn intelligente Karte.
Das Handling der Treibermodule hat sich geändert: Module vor "reconn" werden jetzt erst beim Verbindungsaufbau geladen; sinnvoll, wenn eine Gegenstelle mehr als eine Nummer hat und dort unterschiedliche Protokolle fährt. (Soll es ja geben...)
Ditto Bugfixes. Callback funktioniert wieder in beide Richtungen, und nicht nur mit U-ISDN oder mit einer Karte.
Das Teil ist bei mir im aktiven Einsatz als IP-Router. Also meckert nicht "es funktioniert überhaupt nix", das ist falsch. ;-)
Nein, ich werde nicht dafür bezahlt, dieses ISDN-Tier zu bauen. Folglich habe ich auch keine Zeit, dieses und jenes Feature in jedem neuen Release neu zu testen. Sorry, aber das ist so. Insbesondere habe ich hier nur noch einen Rechner unter 1.2.x laufen, und den fasse ich momentan nicht an; der Rest ist 1.3.40. Wenn das System nicht unter 1.2 zu kompilieren ist, dann ist das zwar scheußlich, aber ich erwarte, daß sich jemand aufrafft und mir einen diff schickt, weil ich es _nicht_ selber mache(n kann). Sorry, aber so ist es nunmal.
Bugfixes et al.
Standleitungen werden nun automatisch wieder aufgebaut, wenn sie als pf gekennzeichnet sind und das übliche reconn und :dI haben.
Der Kartentreiber meckert, wenn er die Leitung nicht hochkriegt. Abhilfe: an dieser Leitung (manuell) anrufen. Dieser doofe Chip war schonmal einfacher zu programmieren...
Kartentreiber weg- und wieder reinlinken ist noch problemaitsch. Das kann aber am GCC liegen, gcc 2.7.0 macht Mist mit -O2 -fomit-frame-pointer -m486. Ich habe alles mit -O -m386 gebaut (funktioniert) und für weitere Experimente im Moment keine Zeit (muß PPP für Binteckarten zum Laufen bekommen. Das ist einfach, die haben PPP bereits im Treiber eingebaut. PPP für passive Karten ist aufwendiger, leider).
Neues Flag ,X in der P-Zeile : es wird X-mal gewählt, bevor die Verbindung gekippt wird (Retry-Zähler).
Neues Flag ,X in der D-Zeile macht prioritätsgesteuertes Wählen: alle D-Zeilen mit kleinem X werden durchprobiert (bis der Retryzähler ereicht ist), dann alle mit nächsthöherem X. Fehlendes X wird wie Null behandelt, negative Werte sind verboten.
Mindestens drei Kartenhersteller bekundeten Interesse an einem Modul für meinen Treiber, und ließen dann nie wieder was von sich hören. You know who you are. Es wäre sinnvoll, wenn ein paar von euch die diversen Hersteller mal nerven würden, sie sollen mir eine Karte nebst Doku zur Verfügung stellen, auf daß es bald einen Treiber gebe. Anders wird das nämlich nix.
Den Sub-Makefiles wird ein -r verpaßt (ignoriere die eingebauten Regeln), weil es sonst in mindestens einem Fall passiert. daß die expliziten Regeln in make.rules ignoriert werden (weil die eingebaute Regel einen Schritt kürzer ist). Grummel.
Das Masterprogramm wird nun mit -static gelinkt, damit Libraries nicht rausgeswappt werden können. Grr.
Kleinere Bugfixes, insbesondere funktioniert das Senden von EAZ unter 1TR6 wieder...
Der Backoff-Algorithmus, wennn die Gegenstelle nicht antwortet, wurde von "konstant oder linear" auf "exponentiell" umgestellt. Sorry, aber das muß so sein -- sonst meckert die Telekomik.
Der Master spuckt jetzt seine ganzen Debugmeldungen auf stderr aus und protokolliert Statusmeldungen (Gebühreneinheiten) auf stdout. VORHER WAR DAS UMGEKEHRT, das hat manchen Benutzer durcheinandergebracht.
TM-Zeile . Eine angepasste isdn.conf gibt es demnaechst, wenn sie mir nicht jemand macht. ;-)
BINTEC-Karten. Getestet mit Einfach-BRI-Version; Vierfach-BRI sollte funktionieren, ist aber ungetestet; S2M demnächst, da muß noch was getan werden.
Neuer DL-Zeilen-Paramter :de.
Neuer Befehl AT/W: Loggt den D-Kanal-Datenaustausch als cu-Ausgabe mit.
Support fuer intelligente Karten ist _fast_ da, wo er hinsoll...
GCC 2.7.0 wird empfohlen. Support fuer intelligente Karten geht nicht ohne (wegen attribute((packed)); ich habe keine Lust, die CAPI-Datenstrukturen von Hand zusammenzuschrauben).
Ansonsten siehe unten. Feedback bitte!
Mit der Version für 1.2.0 hat sich die Syntax der cf-Datei leicht geändert:
Next Chapter, Previous Chapter
Table of contents of this chapter, General table of contents
Top of the document, Beginning of this Chapter