Score:0

Problem with QNetwork request - Error creating SSL context

tz flag

I have an application which has a feature to display an overlay on a Google Maps display. In order to display a map overlay, my application has a dialog which downloads an xml file describing the map. The url for the xml file is obtained on the "David Rumsey Map Collection" website. Map page

David Rumsey Map Collection here you can click on a button to copy the link for the WTMS capabilities XML file; Web Map Tile Service (WMTS)

In My application the user pastes the url into an QEditControl which then passes it to this function: enter code here FileDownloader::FileDownloader(QUrl imageUrl, QObject parent) : QObject(parent)
{
qDebug() << "download " << imageUrl.toDisplayString();
connect(&m_WebCtrl, SIGNAL(finished(QNetworkReply
)), SLOT(fileDownloaded(QNetworkReply*)));
this->imageUrl = imageUrl;
QNetworkRequest request(imageUrl);
m_WebCtrl.get(request);
}

FileDownloader should download the requested xml file but instead it fails producing these messages:

Debug: download "https://maps.georeferencer.com/georeferences/79580f71-e50d-5267-afd1-b5f579515600/2015-05-25T18:52:26.021580Z/wmts?key=caj1mpUbIDuRGkUmcxkG&SERVICE=WMTS&REQUEST=GetCapabilities" (filedownloader.cpp:9, FileDownloader::FileDownloader(QUrl, QObject*))
Warning: QSslSocket: cannot resolve CRYPTO_num_locks ((null):0, (null))
Warning: QSslSocket: cannot resolve CRYPTO_set_id_callback ((null):0, (null))
Warning: QSslSocket: cannot resolve CRYPTO_set_locking_callback ((null):0, (null))
Warning: QSslSocket: cannot resolve ERR_free_strings ((null):0, (null))
Warning: QSslSocket: cannot resolve EVP_CIPHER_CTX_cleanup ((null):0, (null))
Warning: QSslSocket: cannot resolve EVP_CIPHER_CTX_init ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_new_null ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_push ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_free ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_num ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_pop_free ((null):0, (null))
Warning: QSslSocket: cannot resolve sk_value ((null):0, (null))
Warning: QSslSocket: cannot resolve SSL_library_init ((null):0, (null))
Warning: QSslSocket: cannot resolve SSL_load_error_strings ((null):0, (null))
Warning: QSslSocket: cannot resolve SSL_get_ex_new_index ((null):0, (null))
Warning: QSslSocket: cannot resolve SSLv3_client_method ((null):0, (null))
Warning: QSslSocket: cannot resolve SSLv23_client_method ((null):0, (null))
Warning: QSslSocket: cannot resolve SSLv3_server_method ((null):0, (null))
Warning: QSslSocket: cannot resolve SSLv23_server_method ((null):0, (null))
Warning: QSslSocket: cannot resolve X509_STORE_CTX_get_chain ((null):0, (null))
Warning: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_noconf ((null):0, (null))
Warning: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_conf ((null):0, (null))
Warning: QSslSocket: cannot resolve SSLeay ((null):0, (null))
Warning: Incompatible version of OpenSSL ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSLv23_client_method ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_CTX_new ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_library_init ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSLv23_client_method ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_CTX_new ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_library_init ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSLv23_client_method ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_CTX_new ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function SSL_library_init ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Warning: QSslSocket: cannot call unresolved function ERR_get_error ((null):0, (null))
Debug: download failed "https://maps.georeferencer.com/georeferences/79580f71-e50d-5267-afd1-b5f579515600/2015-05-25T18:52:26.021580Z/wmts?key=caj1mpUbIDuRGkUmcxkG&SERVICE=WMTS&REQUEST=GetCapabilities" "Error creating SSL context ()" (filedownloader.cpp:26, void FileDownloader::fileDownloaded(QNetworkReply*))

Here I should note that this feature was working as intended up until a few days ago. I occurred to me that perhaps the problem was with the David Rumsey web site but Firefox has no problem getting the url nor does curl or wget on the command line. Being that I was on Ubuntu 20.04 using a version1 OpenSSL, I upgraded my ubuntu to 22.04 and now with version 3 of OpenSSL, the problem persists! The version of Qt I am using is 5.15.2

Score:0
tz flag

Recompiling my app with Qt 5.15.2 instead of 5.11.3 solved the problem.

I sit in a Tesla and translated this thread with Ai:

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.