diff options
Diffstat (limited to 'src/network/ssl')
-rw-r--r-- | src/network/ssl/qsslcertificate.cpp | 8 | ||||
-rw-r--r-- | src/network/ssl/qsslcertificate.h | 4 | ||||
-rw-r--r-- | src/network/ssl/qsslconfiguration.h | 5 | ||||
-rw-r--r-- | src/network/ssl/qsslsocket_schannel.cpp | 3 |
4 files changed, 11 insertions, 9 deletions
diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp index da952f6e6b..aa2f8fed02 100644 --- a/src/network/ssl/qsslcertificate.cpp +++ b/src/network/ssl/qsslcertificate.cpp @@ -564,12 +564,12 @@ QList<QSslCertificate> QSslCertificate::fromPath(const QString &path, int pos = -1; #if QT_CONFIG(regularexpression) - if (syntax == Wildcard) + if (syntax == PatternSyntax::Wildcard) pos = pathPrefix.indexOf(QRegularExpression(QLatin1String("[*?[]"))); - else if (syntax == RegExp) + else if (syntax == PatternSyntax::RegularExpression) pos = sourcePath.indexOf(QRegularExpression(QLatin1String("[\\$\\(\\)\\*\\+\\.\\?\\[\\]\\^\\{\\}\\|]"))); #else - if (syntax == Wildcard || syntax == RegExp) + if (syntax == PatternSyntax::Wildcard || syntax == PatternSyntax::RegExp) qWarning("Regular expression support is disabled in this build. Only fixed string can be searched"); return QList<QSslCertificate>(); #endif @@ -606,7 +606,7 @@ QList<QSslCertificate> QSslCertificate::fromPath(const QString &path, QList<QSslCertificate> certs; #if QT_CONFIG(regularexpression) - if (syntax == Wildcard) + if (syntax == PatternSyntax::Wildcard) sourcePath = QRegularExpression::wildcardToRegularExpression(sourcePath); QRegularExpression pattern(QRegularExpression::anchoredPattern(sourcePath)); diff --git a/src/network/ssl/qsslcertificate.h b/src/network/ssl/qsslcertificate.h index c46065160a..525642a809 100644 --- a/src/network/ssl/qsslcertificate.h +++ b/src/network/ssl/qsslcertificate.h @@ -84,8 +84,8 @@ public: EmailAddress }; - enum PatternSyntax { - RegExp, + enum class PatternSyntax { + RegularExpression, Wildcard, FixedString }; diff --git a/src/network/ssl/qsslconfiguration.h b/src/network/ssl/qsslconfiguration.h index 5732deaaef..1ce01dbee9 100644 --- a/src/network/ssl/qsslconfiguration.h +++ b/src/network/ssl/qsslconfiguration.h @@ -130,8 +130,9 @@ public: // Certificate Authority (CA) settings QList<QSslCertificate> caCertificates() const; void setCaCertificates(const QList<QSslCertificate> &certificates); - bool addCaCertificates(const QString &path, QSsl::EncodingFormat format = QSsl::Pem, - QSslCertificate::PatternSyntax syntax = QSslCertificate::FixedString); + bool addCaCertificates( + const QString &path, QSsl::EncodingFormat format = QSsl::Pem, + QSslCertificate::PatternSyntax syntax = QSslCertificate::PatternSyntax::FixedString); void addCaCertificate(const QSslCertificate &certificate); void addCaCertificates(const QList<QSslCertificate> &certificates); diff --git a/src/network/ssl/qsslsocket_schannel.cpp b/src/network/ssl/qsslsocket_schannel.cpp index 2db5c48ff2..c355abad73 100644 --- a/src/network/ssl/qsslsocket_schannel.cpp +++ b/src/network/ssl/qsslsocket_schannel.cpp @@ -1306,7 +1306,8 @@ void QSslSocketBackendPrivate::transmit() int totalRead = 0; bool hadIncompleteData = false; while (!readBufferMaxSize || buffer.size() < readBufferMaxSize) { - if (missingData > plainSocket->bytesAvailable()) { + if (missingData > plainSocket->bytesAvailable() + && (!readBufferMaxSize || readBufferMaxSize >= missingData)) { #ifdef QSSLSOCKET_DEBUG qCDebug(lcSsl, "We're still missing %lld bytes, will check later.", missingData); #endif |