OXlook 4 – endlich benutzbar

So OXlook 4 erfolgreich getestet. laeuft super. Hat ein neues Programm im System-Tray dabei. Da sieht man jetzt mal direkt wenn was nicht richtig funzt. Und hat auch ein paar weitere nette Features (z.B. GUI fuer server side mail filtering, wahrscheinlich sieve, habs aber nicht ausprobiert.)

Migration UW-IMAP -> Cyrus: „Message contains invalid header“

So, jetzt habe ich mal obigen Problems angenommen. Nachrichten die ich per Hand von meinem alten UW Imap auf den neuen Cyrus verschoben habe, haben immer obigen Fehler produziert. Problem waren Zeilen in dieser Form: „; Fri, 18 Feb 2005 15:55:54 +0100“. Keine Ahnung ob die der spamd oder procmail in manchen Mails fabriziert haben. Auf jeden Fall habe ich alle mbox Files durch ein „| grep -v ^; > “ gejagt und alles war gut.

Der rcapid der i4l-utils

Eines Tages dachte ich mir: “Es wäre doch schon, wenn ich die ISDN Karte in meiner Firewall auch über eine RemoteCAPI an Windows PCs nutzen könnte”. Und siehe da, schon nach einem kurzen Webstreifzug fand ich heraus, daß der rcapid das richtige für mich sein müßte. Doch leider gibt es für das Teil extrem wenig Doku. Die README ist ca. 4 Zeilen lang und beschreibt gerade das nötigste und auch noch falsch. Ansonsten findet man gerade mal ein paar Mailinglisten Beiträge zu dem Thema.
Nach einigem herumprobieren läuft er aber nun zufriedenstellend.

Hier also die Anleitung:

1. Linux PC mit ISDN Karte für die eine CAPI zur Verfügung steht (AVM B1 oder AVM Fritz Card XXX). Funktionsfähiger inetd.

2. CAPI Treiber aufsetzen und mit capiinfo testen. Doku hierzu bei AVM oder im Web zu genüge.

3. I4L Utilities downloaden und den rcapid compilieren. Bei SuSE ist er bei der I4L Installation dabei.

4. rcapid in /usr/sbin kopieren und (falls noch nicht ausführbar) ausführbar machen (chmod ugo+x /usr/sbin/rcapid).

5. In die Datei /etc/inetd.conf folgende Zeile einfügen:

bintec-capi stream tcp nowait.9999 root /usr/sbin/rcapid rcapid

In der README des rcapid steht fälschlicherweise:
capi stream tcp nowait.9999 /usr/sbin/rcapid rcapid

Der Fehler ist, das “root” fehlt und der inetd dann versucht das ganze als User “/usr/sbin/rcapid” zu starten, den es natürlich nicht gibt. Im Windows Client kommt dann immer die Fehlermeldung User oder Passwort falsch.
Ich habe nicht, wie in der README des rcapid, einen neuen Service “capi” für Port 6000 in der /etc/services eingetragen, sondern den (bei mir) bereits vorhandenen Service bintec-capi auf Port 2662/tcp verwendet. Falls dieser fehlt, muß man Ihn manuell hinzufügen. Das hat den Vorteil, das man im Windows Client den Standard-Port? verwenden kann, außerdem horcht auf Port 6000 standardmäßig der X-Server?.

6. inetd neu starten.

7. Windows Client einrichten:

Ich habe den rcapi Client von Bintec verwendet (Brickware). Dieser ist zwar für die ISDN Router von Bintec gedacht, der rcapid wurde aber wohl für diesen Client geschrieben. Diesen also downloaden und installieren. Ich habe alle unterstützten Router angeklickt und nur den RCAPI Dienst installiert. Bei der Konfiguration die IP des Rechners mit dem rcapid eintragen, User und Passwort sind egal, und Werte übernehmen.
8. Fertig!! Das sollte es gewesen sein. Der RCAPI Client startet mit Windows automatisch mit. Alle ISDN Anwendungen, die auf CAPI aufsetzen, sollten jetzt laufen.

Anmerkung:

Bei Verwendung des xinetd legt man unter /etc/xinetd.d eine Datei binect-capi mit folgendem Inhalt an:

service bintec-capi
{
socket_type = stream
protocol = tcp
user = root
server = /usr/sbin/rcapid
wait = no
nice = 9999
}

(Vielen Dank für den Tip an Alexander Dalloz.)