KDECore
ksslcertificatemanager.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _INCLUDE_KSSLCERTIFICATEMANAGER_H
00022 #define _INCLUDE_KSSLCERTIFICATEMANAGER_H
00023
00024 #include "ktcpsocket.h"
00025
00026 #include <QtNetwork/QSslCertificate>
00027 #include <QtNetwork/QSslError>
00028 #include <QtCore/QString>
00029 #include <QtCore/QStringList>
00030 #include <QtCore/QDate>
00031
00032 class QSslCertificate;
00033 class KSslCertificateRulePrivate;
00034 class KSslCertificateManagerPrivate;
00035
00036 class KDECORE_EXPORT KSslCertificateRule
00037 {
00038 public:
00039 KSslCertificateRule(const QSslCertificate &cert = QSslCertificate(),
00040 const QString &hostName = QString());
00041 KSslCertificateRule(const KSslCertificateRule &other);
00042 ~KSslCertificateRule();
00043 KSslCertificateRule &operator=(const KSslCertificateRule &other);
00044
00045 QSslCertificate certificate() const;
00046 QString hostName() const;
00047 void setExpiryDateTime(const QDateTime &dateTime);
00048 QDateTime expiryDateTime() const;
00049 void setRejected(bool rejected);
00050 bool isRejected() const;
00051 bool isErrorIgnored(KSslError::Error error) const;
00052 void setIgnoredErrors(const QList<KSslError::Error> &errors);
00053 void setIgnoredErrors(const QList<KSslError> &errors);
00054 QList<KSslError::Error> ignoredErrors() const;
00055 QList<KSslError::Error> filterErrors(const QList<KSslError::Error> &errors) const;
00056 QList<KSslError> filterErrors(const QList<KSslError> &errors) const;
00057 private:
00058 KSslCertificateRulePrivate *const d;
00059 };
00060
00061
00062 class KDECORE_EXPORT KSslCertificateManager
00063 {
00064 public:
00065 static KSslCertificateManager *self();
00066 void setRule(const KSslCertificateRule &rule);
00067 void clearRule(const KSslCertificateRule &rule);
00068 void clearRule(const QSslCertificate &cert, const QString &hostName);
00069 KSslCertificateRule rule(const QSslCertificate &cert, const QString &hostName) const;
00070
00071 void setRootCertificates(const QList<QSslCertificate> &rootCertificates);
00072 QList<QSslCertificate> rootCertificates() const;
00073
00074 static QList<KSslError> nonIgnorableErrors(const QList<KSslError> &);
00075 static QList<KSslError::Error> nonIgnorableErrors(const QList<KSslError::Error> &);
00076
00077 private:
00078 friend class KSslCertificateManagerContainer;
00079 KSslCertificateManager();
00080 ~KSslCertificateManager();
00081
00082 KSslCertificateManagerPrivate *const d;
00083 };
00084
00085
00086 #endif