1// Copyright (C) 2011 Richard J. Moore <rich@kde.org>
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QSSLCERTIFICATEEXTENSION_H
6#define QSSLCERTIFICATEEXTENSION_H
7
8#include <QtNetwork/qtnetworkglobal.h>
9#include <QtCore/qnamespace.h>
10#include <QtCore/qshareddata.h>
11#include <QtCore/qstring.h>
12#include <QtCore/qvariant.h>
13
14QT_BEGIN_NAMESPACE
15
16class QSslCertificateExtensionPrivate;
17
18class Q_NETWORK_EXPORT QSslCertificateExtension
19{
20public:
21 QSslCertificateExtension();
22 QSslCertificateExtension(const QSslCertificateExtension &other);
23 QSslCertificateExtension &operator=(QSslCertificateExtension &&other) noexcept { swap(other); return *this; }
24 QSslCertificateExtension &operator=(const QSslCertificateExtension &other);
25 ~QSslCertificateExtension();
26
27 void swap(QSslCertificateExtension &other) noexcept { d.swap(other&: other.d); }
28
29 QString oid() const;
30 QString name() const;
31 QVariant value() const;
32 bool isCritical() const;
33
34 bool isSupported() const;
35
36private:
37 friend class QSslCertificatePrivate;
38 QSharedDataPointer<QSslCertificateExtensionPrivate> d;
39};
40
41Q_DECLARE_SHARED(QSslCertificateExtension)
42
43QT_END_NAMESPACE
44
45
46#endif // QSSLCERTIFICATEEXTENSION_H
47
48
49

source code of qtbase/src/network/ssl/qsslcertificateextension.h