diff --git a/src/network/ssl/qdtls_openssl.cpp b/src/network/ssl/qdtls_openssl.cpp index 80b5179f69..fe6c8013c7 100644 --- a/src/network/ssl/qdtls_openssl.cpp +++ b/src/network/ssl/qdtls_openssl.cpp @@ -1273,7 +1273,7 @@ unsigned QDtlsPrivateOpenSSL::pskClientCallback(const char *hint, char *identity } QTlsBackend::setupClientPskAuth(&authenticator, hint ? identityHint.constData() : nullptr, - hint ? std::strlen(hint) : 0, max_identity_len, max_psk_len); + hint ? int(std::strlen(hint)) : 0, max_identity_len, max_psk_len); pskAuthenticator.swap(authenticator); } diff --git a/src/network/ssl/qdtls_openssl_p.h b/src/network/ssl/qdtls_openssl_p.h index 6e9e59cbd2..281e1133cd 100644 --- a/src/network/ssl/qdtls_openssl_p.h +++ b/src/network/ssl/qdtls_openssl_p.h @@ -58,6 +58,7 @@ #include #include +#include #include #include @@ -134,6 +135,13 @@ private: } // namespace dtlsopenssl +// The trick with 'right' ancestor in the tree overriding (only once) some shared +// virtual functions is intentional. Too bad MSVC warns me about ... exactly the +// feature of C++ that I want to use. + +QT_WARNING_PUSH +QT_WARNING_DISABLE_MSVC(4250) + class QDtlsClientVerifierOpenSSL : public QTlsPrivate::DtlsCookieVerifier, public QDtlsBasePrivate { public: @@ -236,6 +244,8 @@ private: QByteArray identityHint; }; +QT_WARNING_POP // C4250 + QT_END_NAMESPACE #endif // QDTLS_OPENSSL_P_H