1 | /* |
2 | This file is part of the KDE libraries |
3 | SPDX-FileCopyrightText: 2007, 2008, 2010 Andreas Hartmetz <ahartmetz@gmail.com> |
4 | |
5 | SPDX-License-Identifier: LGPL-2.0-or-later |
6 | */ |
7 | |
8 | #ifndef KSSLD_H |
9 | #define KSSLD_H |
10 | |
11 | #include <KDEDModule> |
12 | #include <QList> |
13 | #include <QVariant> |
14 | #include <memory> |
15 | class QString; |
16 | class QSslCertificate; |
17 | |
18 | class KSslCertificateRule; |
19 | |
20 | class KSSLDPrivate; |
21 | class KSSLD : public KDEDModule |
22 | { |
23 | Q_OBJECT |
24 | public: |
25 | KSSLD(QObject *parent, const QVariantList &); |
26 | ~KSSLD() override; |
27 | |
28 | void setRule(const KSslCertificateRule &rule); |
29 | void clearRule(const KSslCertificateRule &rule); |
30 | void clearRule(const QSslCertificate &cert, const QString &hostName); |
31 | void pruneExpiredRules(); |
32 | KSslCertificateRule rule(const QSslCertificate &cert, const QString &hostName) const; |
33 | |
34 | private: |
35 | // AFAICS we don't need the d-pointer technique here but it makes the code look |
36 | // more like the rest of kdelibs and it can be reused anywhere in kdelibs. |
37 | std::unique_ptr<KSSLDPrivate> const d; |
38 | }; |
39 | |
40 | #endif // KSSLD_H |
41 | |