summaryrefslogtreecommitdiffstats
path: root/src/network/ssl/qsslcertificate.h
diff options
context:
space:
mode:
authorRichard Moore <rich@kde.org>2011-06-18 09:22:11 +0100
committerQt by Nokia <qt-info@nokia.com>2011-06-27 20:44:36 +0200
commit2cf935b43e41c6589159536652412dab443ff1f8 (patch)
tree95bcd7638f509c48d2b139920e3936a9d4e7e60c /src/network/ssl/qsslcertificate.h
parentcadbfc07b68513920bb877e2e0212988c43f1fa4 (diff)
Certificates can have each issuer and subject field many times
THIS COMMIT BREAKS SOURCE COMPATIBILITY BETWEEN Qt 4 AND Qt 5 Qt4 assumed that there was only one entry of each type in the subject and issuer of a certificate. This is incorrect (eg. you can have many common names). In addition, some of the fields required by RFC3280 were not suppport. This change modifiers the API to return a list of entries of each type and adds support for the missing fields. It also updates the commonname matching code for SSL connections to handle multiple entries. Change-Id: I9457266a205def0a07c13de47094ff56ead42845 Merge-request: 5 Reviewed-on: http://codereview.qt.nokia.com/796 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Diffstat (limited to 'src/network/ssl/qsslcertificate.h')
-rw-r--r--src/network/ssl/qsslcertificate.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/network/ssl/qsslcertificate.h b/src/network/ssl/qsslcertificate.h
index b942bd8a25..8abaa3f73e 100644
--- a/src/network/ssl/qsslcertificate.h
+++ b/src/network/ssl/qsslcertificate.h
@@ -76,7 +76,10 @@ public:
LocalityName,
OrganizationalUnitName,
CountryName,
- StateOrProvinceName
+ StateOrProvinceName,
+ DistinguishedNameQualifier,
+ SerialNumber,
+ EmailAddress
};
QSslCertificate(QIODevice *device, QSsl::EncodingFormat format = QSsl::Pem);
@@ -96,10 +99,10 @@ public:
QByteArray version() const;
QByteArray serialNumber() const;
QByteArray digest(QCryptographicHash::Algorithm algorithm = QCryptographicHash::Md5) const;
- QString issuerInfo(SubjectInfo info) const;
- QString issuerInfo(const QByteArray &tag) const;
- QString subjectInfo(SubjectInfo info) const;
- QString subjectInfo(const QByteArray &tag) const;
+ QStringList issuerInfo(SubjectInfo info) const;
+ QStringList issuerInfo(const QByteArray &tag) const;
+ QStringList subjectInfo(SubjectInfo info) const;
+ QStringList subjectInfo(const QByteArray &tag) const;
QMultiMap<QSsl::AlternateNameEntryType, QString> alternateSubjectNames() const;
QDateTime effectiveDate() const;
QDateTime expiryDate() const;