![]() |
Qt 6.x
The Qt SDK
|
Namespace containing onternal types that TLS backends implement. More...
Classes | |
class | QSecureTransportContext |
struct | SchannelCipherInfo |
class | TlsCryptographOpenSSL |
class | TlsCryptographSchannel |
class | TlsCryptographSecureTransport |
class | TlsKey |
TlsKey is an abstract class, that allows a TLS plugin to provide an underlying implementation for the class QSslKey. More... | |
class | TlsKeyBase |
class | TlsKeyGeneric |
class | TlsKeyOpenSSL |
class | TlsKeySchannel |
class | TlsKeySecureTransport |
class | X509Certificate |
X509Certificate is an abstract class that allows a TLS backend to provide an implementation of the QSslCertificate class. More... | |
class | X509CertificateBase |
class | X509CertificateGeneric |
class | X509CertificateOpenSSL |
class | X509CertificateSchannel |
class | X509CertificateSecureTransport |
Typedefs | |
using | X509ChainVerifyPtr = QList< QSslError >(*)(const QList< QSslCertificate > &chain, const QString &hostName) |
using | X509PemReaderPtr = QList< QSslCertificate >(*)(const QByteArray &pem, int count) |
using | X509DerReaderPtr = X509PemReaderPtr |
using | X509Pkcs12ReaderPtr = bool(*)(QIODevice *device, QSslKey *key, QSslCertificate *cert, QList< QSslCertificate > *caCertificates, const QByteArray &passPhrase) |
Enumerations | |
enum class | Cipher { DesCbc , DesEde3Cbc , Rc2Cbc , Aes128Cbc , Aes192Cbc , Aes256Cbc } |
Variables | |
QT_WARNING_PUSH QT_WARNING_DISABLE_DEPRECATED std::array< SchannelCipherInfo, 44 > | schannelCipherInfo |
UNICODE_STRING | cbcChainingMode |
UNICODE_STRING | gcmChainingMode |
static const uint8_t | dhparam [] |
Namespace containing onternal types that TLS backends implement.
(Network-private)
This namespace is private to Qt and the backends that implement its TLS support.
using QTlsPrivate::X509ChainVerifyPtr = typedef QList<QSslError> (*)(const QList<QSslCertificate> &chain, const QString &hostName) |
Definition at line 144 of file qtlsbackend_p.h.
using QTlsPrivate::X509DerReaderPtr = typedef X509PemReaderPtr |
Definition at line 147 of file qtlsbackend_p.h.
using QTlsPrivate::X509PemReaderPtr = typedef QList<QSslCertificate> (*)(const QByteArray &pem, int count) |
Definition at line 146 of file qtlsbackend_p.h.
using QTlsPrivate::X509Pkcs12ReaderPtr = typedef bool (*)(QIODevice *device, QSslKey *key, QSslCertificate *cert, QList<QSslCertificate> *caCertificates, const QByteArray &passPhrase) |
Definition at line 148 of file qtlsbackend_p.h.
|
strong |
QT_WARNING_POP const SchannelCipherInfo * QTlsPrivate::cipherInfoByOpenSslName | ( | const QString & | name | ) |
Definition at line 207 of file qtls_schannel.cpp.
References schannelCipherInfo.
Referenced by cryptoSettingsForCiphers().
QList< QSslCipher > QTlsPrivate::ciphersByName | ( | QStringView | schannelSuiteName | ) |
Definition at line 395 of file qtls_schannel.cpp.
References QList< T >::append(), QStringLiteral, QT_WARNING_DISABLE_DEPRECATED, QT_WARNING_POP, QT_WARNING_PUSH, schannelCipherInfo, QSsl::TlsV1_2, and QSsl::TlsV1_3.
Referenced by defaultCiphers(), and QTlsPrivate::TlsCryptographSchannel::sessionCipher().
bool QTlsPrivate::containsTls13Cipher | ( | const QList< QSslCipher > & | ciphers | ) |
Definition at line 459 of file qtls_schannel.cpp.
References QList< T >::cbegin(), and QList< T >::cend().
QList< CRYPTO_SETTINGS > QTlsPrivate::cryptoSettingsForCiphers | ( | const QList< QSslCipher > & | ciphers | ) |
Determines which algorithms are not used by the requested ciphers to build up a black list that can be passed to SCH_CREDENTIALS.
Definition at line 233 of file qtls_schannel.cpp.
References QList< T >::append(), BCRYPT_ECDH_ALGORITHM, BCRYPT_ECDSA_ALGORITHM, QList< T >::begin(), cbcChainingMode, QList< T >::cbegin(), QList< T >::cend(), characters, cipherInfoByOpenSslName(), QListSpecialMethodsBase< T >::contains(), QLatin1StringView::contains(), defaultCiphers(), QList< T >::end(), gcmChainingMode, info, method, and settings.
QList< QSslCipher > QTlsPrivate::defaultCiphers | ( | ) |
Definition at line 425 of file qtls_schannel.cpp.
References QList< T >::append(), ciphersByName(), qCWarning, and QSsl::TlsV1_3.
Referenced by cryptoSettingsForCiphers().
QByteArray QTlsPrivate::doCrypt | ( | QSslKeyPrivate::Cipher | cipher, |
const QByteArray & | data, | ||
const QByteArray & | key, | ||
const QByteArray & | iv, | ||
bool | enc | ||
) |
Definition at line 411 of file qtlskey_openssl.cpp.
References Aes128Cbc, Aes192Cbc, Aes256Cbc, QByteArray::constData(), DesCbc, DesEde3Cbc, i, QTlsBackendOpenSSL::logAndClearErrorQueue(), output, q_EVP_aes_128_cbc(), q_EVP_aes_192_cbc(), q_EVP_aes_256_cbc(), q_EVP_CIPHER_CTX_ctrl(), q_EVP_CIPHER_CTX_free(), q_EVP_CIPHER_CTX_new(), q_EVP_CIPHER_CTX_reset(), q_EVP_CIPHER_CTX_set_key_length(), q_EVP_CipherFinal(), q_EVP_CipherInit(), q_EVP_CipherInit_ex(), q_EVP_CipherUpdate(), q_EVP_des_cbc(), q_EVP_des_ede3_cbc(), q_EVP_rc2_cbc(), and Rc2Cbc.
Referenced by QTlsPrivate::TlsKeyOpenSSL::decrypt(), QTlsPrivate::TlsKeySchannel::decrypt(), QTlsPrivate::TlsKeyOpenSSL::encrypt(), and QTlsPrivate::TlsKeySchannel::encrypt().
QList< QByteArray > QTlsPrivate::fetchSslCertificateData | ( | ) |
Definition at line 28 of file qsslsocket_openssl_android.cpp.
References QList< T >::append(), i, and QList< T >::reserve().
Referenced by systemCaCertificates().
QTlsPrivate::Q_GLOBAL_STATIC_WITH_ARGS | ( | OidLengthMap | , |
oidLengthMap | , | ||
(createOidMap()) | |||
) |
Definition at line 87 of file qtlskey_generic.cpp.
References Aes128Cbc, Aes192Cbc, Aes256Cbc, QTlsPrivate::TlsKey::algorithm(), QByteArray::back(), QByteArray::data(), QTlsPrivate::TlsKey::decodeDer(), QPasswordDigestor::deriveKeyPbkdf1(), QPasswordDigestor::deriveKeyPbkdf2(), DES_CBC_ENCRYPTION_OID, DES_EDE3_CBC_ENCRYPTION_OID, DesCbc, DesEde3Cbc, QSsl::Dh, DH_ENCRYPTION_OID, QSsl::Dsa, DSA_ENCRYPTION_OID, QSsl::Ec, EC_ENCRYPTION_OID, hash, HMAC_WITH_SHA1, HMAC_WITH_SHA224, HMAC_WITH_SHA256, HMAC_WITH_SHA384, HMAC_WITH_SHA512, HMAC_WITH_SHA512_224, HMAC_WITH_SHA512_256, i, QAsn1Element::IntegerType, items, QCryptographicHash::Md5, QAsn1Element::NullType, QAsn1Element::ObjectIdentifierType, QAsn1Element::OctetStringType, QSsl::Opaque, PKCS5_MD5_DES_CBC_OID, PKCS5_MD5_RC2_CBC_OID, PKCS5_PBKDF2_ENCRYPTION_OID, PKCS5_SHA1_DES_CBC_OID, PKCS5_SHA1_RC2_CBC_OID, Q_ASSERT, Q_LIKELY, Q_UNIMPLEMENTED, Q_UNLIKELY, qWarning, RC2_CBC_ENCRYPTION_OID, Rc2Cbc, QByteArray::right(), QSsl::Rsa, RSA_ENCRYPTION_OID, QAsn1Element::SequenceType, QCryptographicHash::Sha1, QCryptographicHash::Sha224, QCryptographicHash::Sha256, QCryptographicHash::Sha384, QCryptographicHash::Sha512, QByteArray::size(), QList< T >::size(), QList< T >::toList(), QByteArray::truncate(), QTlsPrivate::TlsKey::type(), and QList< T >::value().
|
static |
Definition at line 212 of file qtls_openssl.cpp.
References hint(), QTlsPrivate::TlsCryptographOpenSSL::pskClientTlsCallback(), q_SSL_get_ex_data(), and QTlsBackendOpenSSL::s_indexForSSLExtraData.
|
static |
Definition at line 219 of file qtls_openssl.cpp.
References Q_ASSERT, q_SSL_get_ex_data(), and QTlsBackendOpenSSL::s_indexForSSLExtraData.
int QTlsPrivate::q_X509Callback | ( | int | ok, |
X509_STORE_CTX * | ctx | ||
) |
Definition at line 116 of file qtls_openssl.cpp.
References QTlsPrivate::X509CertificateOpenSSL::errorEntryFromStoreContext(), QTlsPrivate::TlsCryptographOpenSSL::errorOffsetInExData, ok, Q_ASSERT, q_SSL_get_ex_data(), q_SSL_get_ex_data_X509_STORE_CTX_idx(), q_X509_STORE_CTX_get0_store(), q_X509_STORE_CTX_get_ex_data(), q_X509_STORE_get_ex_data(), qCWarning, QTlsBackendOpenSSL::s_indexForSSLExtraData, and QTlsPrivate::TlsCryptographOpenSSL::socketOffsetInExData.
int QTlsPrivate::q_X509CallbackDirect | ( | int | ok, |
X509_STORE_CTX * | ctx | ||
) |
Definition at line 172 of file qtls_openssl.cpp.
References ok, q_SSL_get_ex_data(), q_SSL_get_ex_data_X509_STORE_CTX_idx(), q_X509_STORE_CTX_get_ex_data(), qCWarning, QTlsBackendOpenSSL::s_indexForSSLExtraData, and QTlsPrivate::TlsCryptographOpenSSL::socketOffsetInExData.
QSslCipher QTlsPrivate::QSslCipher_from_SSLCipherSuite | ( | SSLCipherSuite | cipher | ) |
Definition at line 26 of file qtlsbackend_st.cpp.
References QSslCipher_from_SSLCipherSuite(), and QSsl::TlsV1_2.
Referenced by QSecureTransportBackend::ensureInitialized(), QSslCipher_from_SSLCipherSuite(), and QTlsPrivate::TlsCryptographSecureTransport::sessionCipher().
void QTlsPrivate::qt_AlertInfoCallback | ( | const SSL * | connection, |
int | from, | ||
int | value | ||
) |
Definition at line 327 of file qtls_openssl.cpp.
References connection, q_SSL_get_ex_data(), qCWarning, QTlsBackendOpenSSL::s_indexForSSLExtraData, and QTlsPrivate::TlsCryptographOpenSSL::socketOffsetInExData.
Referenced by QTlsPrivate::TlsCryptographOpenSSL::startHandshake().
SSLContextRef QTlsPrivate::qt_createSecureTransportContext | ( | QSslSocket::SslMode | mode | ) |
Definition at line 166 of file qtls_st.cpp.
References context, qCWarning, and QSslSocket::SslServerMode.
Referenced by QSecureTransportBackend::ensureInitialized().
int QTlsPrivate::qt_X509Callback | ( | int | ok, |
X509_STORE_CTX * | ctx | ||
) |
Definition at line 355 of file qx509_openssl.cpp.
References QTlsPrivate::X509CertificateOpenSSL::errorEntryFromStoreContext(), QTlsPrivate::TlsCryptographOpenSSL::errorOffsetInExData, ok, q_SSL_get_ex_data(), q_SSL_get_ex_data_X509_STORE_CTX_idx(), q_X509_STORE_CTX_get0_store(), q_X509_STORE_CTX_get_ex_data(), q_X509_STORE_get_ex_data(), qCWarning, and QTlsBackendOpenSSL::s_indexForSSLExtraData.
Referenced by QTlsPrivate::X509CertificateOpenSSL::verify().
QList< QSslCertificate > QTlsPrivate::systemCaCertificates | ( | ) |
Definition at line 357 of file qtlsbackend_openssl.cpp.
References QList< T >::append(), cert, QList< T >::count(), QSsl::Der, directory, fetchSslCertificateData(), file, QSslCertificate::fromData(), QSslCertificate::fromPath(), QSet< T >::insert(), it, QSsl::Pem, qCDebug, QStringLiteral, QDir::setNameFilters(), QDir::setPath(), QTimer::start(), timer, and QSslSocketPrivate::unixRootCertDirectories().
Referenced by QTlsBackendOpenSSL::systemCaCertificates(), and QSecureTransportBackend::systemCaCertificates().
UNICODE_STRING QTlsPrivate::cbcChainingMode |
Definition at line 217 of file qtls_schannel.cpp.
Referenced by cryptoSettingsForCiphers().
|
static |
Definition at line 199 of file qtls_st.cpp.
UNICODE_STRING QTlsPrivate::gcmChainingMode |
Definition at line 223 of file qtls_schannel.cpp.
Referenced by cryptoSettingsForCiphers().
QT_WARNING_PUSH QT_WARNING_DISABLE_DEPRECATED std::array<SchannelCipherInfo, 44> QTlsPrivate::schannelCipherInfo |
Definition at line 155 of file qtls_schannel.cpp.
Referenced by cipherInfoByOpenSslName(), and ciphersByName().