Bonjour à tous,

Je développe un client Qt (C++) avec GSoap, qui est sensé discuter avec un Web Service by Microsoft (WCF). J'utilise SOAP 1.1 des deux côtés.

Mon code client est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
    CustomBinding_USCOREISynchronisation service;
 
    soap_ssl_init(); /* init OpenSSL (just once) */
 
    soap_init2(service.soap, SOAP_IO_KEEPALIVE, SOAP_IO_KEEPALIVE);
    service.soap->max_keep_alive = 1000; // at most 100 calls per keep-alive session
    service.soap->accept_timeout = 6000; // optional: let server time out after ten minutes of inactivity
 
    if (soap_ssl_client_context(service.soap,
       SOAP_SSL_NO_AUTHENTICATION,
       NULL,	/* keyfile: required only when client must authenticate to server (see SSL docs on how to obtain this file) */
       NULL,	 /* password to read the key file (not used with GNUTLS) */
       NULL, /* cacert file to store trusted certificates (needed to verify server) */    NULL,	 /* capath to directory with trusted certificates */
       NULL	 /* if randfile!=NULL: use a file with random data to seed randomness */
    ))
    {
       soap_print_fault(service.soap, stderr);
       exit(1);
    }
 
    _ns1__Connect req;
    _ns1__ConnectResponse resp;
 
    std::string strLogin = "tata@gmail.com";
    std::string strPassword = "681982981298192891287B0A";
    bool bInternalUser = true;
 
    req.login = &strLogin;
    req.password = &strPassword;
    req.isInternalUser = &bInternalUser;
 
    int err = service.__ns1__Connect(&req, &resp);
    if (SOAP_OK == err)
        qDebug() << ":D";
    else
    {
        qDebug() << "Error : " << err;
        soap_print_fault(service.soap, stderr);
    }
 
    qDebug() << "Result of Connect : " << resp.ConnectResult;
Problème : quand j'exécute le tout, j'obtiens un SIGPIPE (Broken pipe) dans la fonction "tcp_disconnect" sur la ligne r = SSL_shutdown(soap->ssl); exactement.

Message d'erreur généré :
Error -1 fault: SOAP-ENV:Client [no subcode]
"End of file or no input: Operation interrupted or timed out"
Detail: [no detail]
Auriez-vous une idée de pourquoi ? Ça fait environ 4 jours "non-stop" que j'essaye de trouver le pourquoi du comment, en vain. Si vous avez besoin de ressources/informations supplémentaires, faites-le moi savoir !

Un grand merci d'avance,

Louep.