Hallo Martin,

ich habe mir gerade nochmal angesehen, warum der SSL-Fehler mit der
Postbank, wegen dem man ForceSSLv3 aktivieren muss, nur so versteckt auf
der Kommandozeile zu erkennen ist:

> I just upgraded qbankmanager and now it won't connect anymore to my bank
> (Postbank Deutschland). The logs show a quite clear reason:
> 
> [EMAIL PROTECTED]:~$ qbankmanager 
> 3:2008/01/04 11-34-37:QBankManager(13133):cppgui.cpp:  519: Checking cert
> 5:2008/01/04 11-34-37:QBankManager(13133):cppgui.cpp:  528: Automatically 
> accepting certificate [3C:59:D5:18:30:CE:A6:58:0B:CD:AB:39:BA:94:B3:4C]
> 3:2008/01/04 11-34-37:gwen(13133):io_tls.c:  932: gnutls_record_recv: -9 (A 
> TLS packet with unexpected length was received.)
> 3:2008/01/04 11-34-37:gwen(13133):io_tls.c: 1210: gnutls_bye: -10 (The 
> specified session has been invalidated for some reason.)
> 3:2008/01/04 11-34-37:aqhbci(13133):outbox.c: 1359: Error performing queue 
> (-1002)
> 5:2008/01/04 11-34-37:aqbanking(13133):banking_online.c:  125: Error 
> executing backend's queue
> 5:2008/01/04 11-34-39:QBankManager(13133):jobview.cpp:  154: Error -4

Wenn ich das richtig sehe, liefert die GWEN_IO_LAYER_DECODE_FN() in
diesem Fall korrekterweise einen Fehler (GWEN_ERROR_IO) zurück. In der
Funktion GWEN_Io_LayerCodec_WorkOnReadRequest() wird bei einem solchen
GWEN_ERROR_IO Fehler jedoch nur der IO_LAYER terminiert und freigegeben
und ein GWEN_Io_Layer_WorkResultOk zurück gegeben:

GWEN_IO_LAYER_WORKRESULT
GWEN_Io_LayerCodec_WorkOnReadRequest(GWEN_IO_LAYER *io) {
  GWEN_IO_LAYER_CODEC *xio;
  int doneSomething=0;
  [...]

  if (xio->readRequestIn) {
    [...]
    rv=GWEN_Io_LayerCodec_Decode(io, dst, maxBytes);
    if (rv<0) {
      if (rv!=GWEN_ERROR_TRY_AGAIN) {
        xio->readRequestIn=NULL;
        GWEN_Io_Request_Finished(r, GWEN_Io_Request_StatusFinished, rv);
        GWEN_Io_Request_free(r);
-        doneSomething=1;
+        return GWEN_Io_Layer_WorkResultError;
      }
    }
    else {
      doneSomething=1;
      [...]
    }

  return (doneSomething==0) ?
          GWEN_Io_Layer_WorkResultBlocking:GWEN_Io_Layer_WorkResultOk;
}

Sollte statt dessen nicht ein GWEN_Io_LayerWorkResultError zurückgegeben
werden (siehe integrierter "Patch" in Zeile 565)?

Oder hat ein GWEN_Io_LayerWorkResultError eine andere Bedeutung als ich
glaube?

Schöne Grüße
  Micha

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Aqbanking-devel mailing list
Aqbanking-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aqbanking-devel

Reply via email to