On Wed, May 05, 2004 at 09:41:18PM +0200, Gernot Hillier wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi!
Am Mittwoch, 5. Mai 2004 12:49 schrieb Michael Jandrey:
Beim Fax-Versand mit c2faxsend (Capi4Hylafax-Paket) wählt meine AVB B1 PCI-Karte die Nummer nur einmal kurz an und bricht dann ab.
(egal, ob an Analog-Fax, Telefon oder Computer-Fax).
Kannst du mal folgendes machen:
avmcapictrl trace on c2faxsend starten so bald wie möglich danach: "avmcapictrl trace off"
und das Ergebnis (den passenden Teil aus dem Syslog) dann, wenn es nicht zu groß ist hier, sonst an mich persönlich schicken.
Nicht notwendig, das Problem mit c2faxsend kann ich hier mit verschiedenen Karten nachvollziehen und die Ursache habe ich auch schon eingekreist, nur verstehen tu ich sie noch nicht, da sich eine grundlegene libc Function total falsch verhaelt. c2faxsend ist ein multithread Programm, dessen Hauptthread das Senden anstöst und dann mittels einem semaphore auf das Ende der Uebertragung wartet. Das passiert durch sem_wait(&sem); sem_wait sollte nur rückkehren, wenn der andere Thread ein sem_post(&sem); gemacht hat, d.h der Wert des sem != 0 wird. Leider kehrt sem_wait(&sem); aber schon vorher mit Fehler (-1) errno 4 (Interrupted Systemcall) zurück, was lt. man page falsch, ist: RETURN VALUE The sem_wait and sem_getvalue functions always return 0. All other semaphore functions return 0 on success and -1 on error, in addition to writing an error code in errno. Ich werde das klaeren. Komisch ist, ich habe capi4hylafax mit Sicherheit getestet, vielleicht nicht mit der Final, aber mit Sicherheit mit einer der letzten BETAs und da hat es funktioniert. -- Karsten Keil SuSE Labs ISDN development