IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau Discussion :

Erreurs pour des connexions sécurisées avec OpenSSL


Sujet :

Réseau

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut Erreurs pour des connexions sécurisées avec OpenSSL
    Bonjour,

    Je reçoit systématiquement les messages d'erreurs suivants lorsque je compile mon programme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    QSslSocket: cannot resolve TLSv1_1_client_method
    QSslSocket: cannot resolve TLSv1_2_client_method
    QSslSocket: cannot resolve TLSv1_1_server_method
    QSslSocket: cannot resolve TLSv1_2_server_method
    QSslSocket: cannot resolve SSL_select_next_proto
    QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
    QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
    Je sais que pour ça je doit ajouter openssl. J'ai installé la version 1.0.1 win64 et j'ai copié les trois fichiers dll
    libeay32.dll
    libssl32.dll
    ssleay32.dll
    dans le répertoire Debug de mon programme, dans le release, dans le dossier contenant mes fichiers programmes (.cpp, .qml), pas moyen, j'obtiens toujours ces erreurs. Je comprends pas. J'avais des erreurs LEAK avant, ça les a enlevé, c'est donc bien que ça a agit mais pourquoi ça résoud pas le problème?
    Merci de votre aide.

    cordialement

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut


    Déjà, ces messages apparaissent-ils à la compilation (peu probable, ça ne ressemble pas à la sortie d'un compilateur) ou à l'exécution ? As-tu compilé Qt avec OpenSSL (je ne pense pas que les versions disponibles sur le site officiel le soient) ? Utilises-tu bien les dernières versions (Qt 5.4.0, OpenSSL 1.0.1l ou 1.0.2) ? TLS 1.2 est la dernière version du protocole, peut-être l'une des parties est trop ancienne pour la prendre en compte ou a des modifications de l'ABI rendant le chargement des méthodes impossible, ça a semblé suffisant).

    Normalement, les DLL d'OpenSSL devraient être au même niveau que les DLL de Qt lors du déploiement (par exemple, dans le dossier de Qt tant que tu développes — je n'y vois pas de contre-indication). Sinon, ça ne devrait pas poser de problème pour ton application, puisque seule la résolution pose problème (pas l'exécution de code).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut
    Déjà, ces messages apparaissent-ils à la compilation (peu probable, ça ne ressemble pas à la sortie d'un compilateur) ou à l'exécution ?
    C'est à l'execution. Ces messages ressemblent plus à des warnings étant donné qu mon programme arrive à compiler.

    As-tu compilé Qt avec OpenSSL (je ne pense pas que les versions disponibles sur le site officiel le soient) ?
    J'ai juste installé OpenSSL et copié les librairies partout où je pouvais (dans les fichiers de mon programme) et j'ai essayé dans les fichers de Qt (C:\Qt\5.3\mingw482_32\bin)

    Utilises-tu bien les dernières versions (Qt 5.4.0, OpenSSL 1.0.1l ou 1.0.2) ?
    J'utilise Qt 5.3.2, j'avais pas vu qu'il y en avait une nouvelle version. Je suis en train de la télécharger. OpenSSL 1.0.1.

    TLS 1.2 est la dernière version du protocole, peut-être l'une des parties est trop ancienne pour la prendre en compte ou a des modifications de l'ABI rendant le chargement des méthodes impossible (dans http://stackoverflow.com/questions/2...t-method-error, ça a semblé suffisant).
    Je vais essayer si la mise à jour de Qt ne donne rien.

  4. #4
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Citation Envoyé par Avatar36 Voir le message
    OpenSSL 1.0.1.
    Juste pour faciliter les choses, les développeurs ajoutent une lettre pour les correctifs (et autres). Actuellement, c'est un l.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut
    J'ai téléchargé la version 5.4.0 de Qt. Maintenant j'ai le droit au message: Le programme s'est terminé subitement.
    J'ai fait: nettoyer/executer qmake/ recompiler, rien à faire. Pourtant ça marchait bien avec la version d'avant

  6. #6
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Ah … Bon, d'un côté, c'est rassurant, ça veut (probablement ?) dire qu'il tente maintenant d'appeler ces fonctions. Personnellement, je tenterais une compilation de Qt (en passant un -openssl-dynamic à configure, voire un -openssl-static pour éviter tout problème de déploiement — ça peut poser des problèmes de licence, si jamais tu envisages de redistribuer ton application compilée). Comme ça, tu es sûr que ta version de Qt connaît l'existence d'OpenSSL et que les versions correspondent. (Il faudra probablement recompiler tout Qt, du moins tous les modules que tu utilises, à cause de leur buildkey : impossible de charger un module qui n'a pas été compilé exactement de la même manière que les autres, ce qui évite pas mal de soucis à l'exécution en cas de mélange.)
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut
    Si je me souviens bien, j'avais déjà eu un problème de ce genre avant en changeant la version de Qt et que le problème venait de la version téléchargée. En regardant de plus près, j'ai téléchargé Qt 5.4 MinGW 4.9.1 (32 bits) OpenGL alors qu'avant j'avais Qt 5.3 MinGW 4.8.2 (32 bits), donc sans OpenGL. Je sais pas si ça change quelque chose mais j'ai pas le choix. J'ai aussi remarqué dans "A propos de Qt Creator" qu'il y a la mention: "Basé sur Qt 5.4.0 (MSVC 2010, 32 bits)". Pourquoi MSVC?? Je pensais utiliser MinGW.

    Pour ce que tu me propose, j'avoue n'avoir rien compris de la démarche que tu me propose.

    Cordialement

  8. #8
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Citation Envoyé par Avatar36 Voir le message
    Si je me souviens bien, j'avais déjà eu un problème de ce genre avant en changeant la version de Qt et que le problème venait de la version téléchargée. En regardant de plus près, j'ai téléchargé Qt 5.4 MinGW 4.9.1 (32 bits) OpenGL alors qu'avant j'avais Qt 5.3 MinGW 4.8.2 (32 bits), donc sans OpenGL. Je sais pas si ça change quelque chose mais j'ai pas le choix. J'ai aussi remarqué dans "A propos de Qt Creator" qu'il y a la mention: "Basé sur Qt 5.4.0 (MSVC 2010, 32 bits)". Pourquoi MSVC?? Je pensais utiliser MinGW.
    Qt 5 utilise beaucoup OpenGL pour l'affichage, sauf que les pilotes installés ne suivent pas : ANGLE implémente OpenGL sur DirectX (qui, lui, fonctionne très bien, y compris avec les pilotes par défaut de Windows) ; les téléchargements marqués OpenGL n'utilisent pas ANGLE. Depuis Qt 5.4, par défaut, le choix entre ANGLE et OpenGL se fait à l'exécution (sauf certains, qui sont toujours marqués ANGLE ou OpenGL). Tout ça pour dire que ça n'a rien à voir avec OpenSSL.

    Aussi, Qt Creator est compilé avec VC++ pour Windows, peu importe la version téléchargée, mais les bibliothèques que tu utilises sont bien compilées avec le compilateur indiqué lors du téléchargement (ici, MinGW 4.9).

    Citation Envoyé par Avatar36 Voir le message
    Pour ce que tu me propose, j'avoue n'avoir rien compris de la démarche que tu me propose.
    Un peu de doc, alors. http://arb.developpez.com/qt4/vc++/compilation/ (remplacer le terminal Visual C++ par Qt, nommé "Qt 5.4 for Desktop (MinGW 4.9 32 bit)" chez moi). Plus récent : http://qt-project.org/wiki/Building_...6ebb28e0cda430. Viens avec des questions plus précises si tu ne comprends pas ce qui s'y passe .
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  9. #9
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut
    Je suis repassé sous Qt 5.3 et ça recompile bien à nouveau. Par contre j'ai de nouveau les messages de warnings du début x)

    Reprenons depuis le début.
    Comment fait-on pour utiliser openSSL avec Qt? Est-ce qu'il y a autre chose à faire que ce que j'ai fait?
    Je n'utilise même pas d'url en https alors pourquoi est-ce que je reçoit ces erreurs?

  10. #10
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Si tu n'as pas besoin d'OpenSSL, pas besoin de réfléchir plus loin : tu peux simplement ignorer ces messages. Pour les désactiver, il faudra attendre Qt 5.4.1 : https://bugreports.qt.io/browse/QTBUG-43173. (D'ailleurs, en lien, il semble bien que ces erreurs soient causés par une différence de version d'OpenSSL : https://bugreports.qt.io/browse/QTBUG-42115.)
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  11. #11
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 218
    Points : 55
    Points
    55
    Par défaut
    D'accord bon et bien ça c'est réglé. Autre chose, quand je ferme l'application, j'ai aussi les warnings suivants:
    LEAK: 5 RenderObject
    LEAK: 1 Page
    LEAK: 1 Frame
    LEAK: 1 CachedResource
    LEAK: 6 WebCoreNode
    Je sais pas si c'est lié. Apparemment c'est causé par la mémoire mais j'ai pas réussi à en savoir plus.

  12. #12
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Ça semblerait indiquer des fuites de mémoire, du côté de WebKit : problème de Qt ou de la manière de supprimer les objets, probablement. Je n'en ai jamais eu, je ne saurais donc pas t'en dire plus…
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

Discussions similaires

  1. un pas a pas pour une connexion Firebird avec D2010
    Par SergioMaster dans le forum Bases de données
    Réponses: 2
    Dernier message: 03/03/2010, 16h38
  2. [MySQL] Connexion sécurisée avec SSL
    Par Emilie012 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 24/02/2009, 11h49
  3. Connexion sécurisée avec page web
    Par MatthieuL dans le forum C#
    Réponses: 0
    Dernier message: 15/12/2008, 13h19
  4. [SBS 2003] Mise en place d'un tunnel VPN pour des connexions RDP
    Par Miles Raymond dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 14/03/2008, 10h10
  5. ajout d'une description pour des fichiers listes avec apache
    Par deny dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 31/10/2007, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo