13static constexpr std::array<QSsl::SslOption, 8> SslOptions = {
14 QSsl::SslOptionDisableEmptyFragments,
15 QSsl::SslOptionDisableSessionTickets,
16 QSsl::SslOptionDisableCompression,
17 QSsl::SslOptionDisableServerNameIndication,
18 QSsl::SslOptionDisableLegacyRenegotiation,
19 QSsl::SslOptionDisableSessionSharing,
20 QSsl::SslOptionDisableSessionPersistence,
21 QSsl::SslOptionDisableServerCipherPreference
71void QQmlSslConfiguration::setCertificateFiles(
const QStringList &certificateFiles)
73 if (m_certificateFiles == certificateFiles)
76 m_certificateFiles = certificateFiles;
77 QList<QSslCertificate> certificates;
78 for (
const QString &fileName: m_certificateFiles) {
79 QFile certificateFile(fileName);
80 if (certificateFile.open(QIODevice::ReadOnly)) {
81 QByteArray cert = certificateFile.readAll();
82 certificates.append(QSslCertificate(cert));
84 qWarning() <<
"File: " << fileName <<
"is not found. It will be skipped.";
88 if (!certificates.isEmpty())
89 m_configuration.setCaCertificates(certificates);
91 qWarning() <<
"No certificates loaded.";
169void QQmlSslConfiguration::setCiphersList(
const QSslConfiguration &configuration)
171 Q_ASSERT(m_ciphers.isEmpty());
172 QList<QSslCipher> ciphers = configuration.ciphers();
173 for (
int i = 0; i < ciphers.size(); ++i) {
175 m_ciphers += QString::fromUtf8(
":");
177 m_ciphers += ciphers[i].name();
191QQmlSslDefaultDtlsConfiguration::QQmlSslDefaultDtlsConfiguration()
192 : QQmlSslConfiguration()
195 m_configuration = QSslConfiguration::defaultDtlsConfiguration();
197 qWarning() <<
"No dtls support enabled";
198 m_configuration = QSslConfiguration::defaultConfiguration();
200#if QT_REMOVAL_QT7_DEPRECATED_SINCE(6
, 11
)
201 setSslOptionsList(m_configuration);
203 setCiphersList(m_configuration);