Using QSslSocket with custom OpenSSL
-
It's in the docs:
sslLibraryBuildVersionString
is returning the version of the OpenSSL library used when building Qt.
sslLibraryVersionString
is returning the version of the OpenSSL library used at run time.By default OpenSSL is dlopened because some countries have restrictions about encryption related software and OpenSSL can't be distributed just like that.
-
Silly question but are you sure that you are using your self-build Qt in your kit ?
-
No, the Qt version used to build Qt Creator doesn't affect any any way the Qt version you are using with your kit.
Do you have another OpenSSL version installed on your system ?
-
@SGaist said in Using QSslSocket with custom OpenSSL:
on used to bui
no not installed like the precompiled OpenSSL Libraries. I searched the whole PC (Windows) for OpenSSL and libeay32.dll. I found many applications which are using OpenSSL but only one Application uses the specific OpenSSL version OpenSSL 1.0.2g 1 Mar 2016 i posted above. This Application is Adobe Lightroom.
Could this be the problem on building Qt that some shipped libeay32.dlls are used on build process?
-
@SGaist Sorry, i have the same problem.
When i print:
qDebug() << QSslSocket::supportsSsl(); ==> false
qDebug() << QSslSocket::sslLibraryBuildVersionString(); ==> "OpenSSL 1.0.2g 1 Mar 2016"
qDebug() << QSslSocket::sslLibraryVersionString(); ==> ""and i obtain these messages:
qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_errorI have instaled only Qt 5.7 on Windows 7 32. What can i do?
Thanks -
Hi,
Do you have OpenSSL installed ? Built with the same compiler as Qt ? In a folder known to your application ?
-
IIRC there was a renaming of the libraries of OpenSSL so you'll have to double check.