1/*
2 This file is part of the KDE libraries
3 SPDX-FileCopyrightText: 2007 Thiago Macieira <thiago@kde.org>
4 SPDX-FileCopyrightText: 2007 Andreas Hartmetz <ahartmetz@gmail.com>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8
9#ifndef KSSLERRORUIDATA_H
10#define KSSLERRORUIDATA_H
11
12#include <kiocore_export.h>
13
14#include <memory>
15
16template<typename T>
17class QList;
18class QNetworkReply;
19class QSslError;
20class QSslSocket;
21
22/**
23 * This class can hold all the necessary data from a QSslSocket or QNetworkReply to ask the user
24 * to continue connecting in the face of SSL errors.
25 * It can be used to carry the data for the UI over time or over thread boundaries.
26 *
27 * @see: KSslCertificateManager::askIgnoreSslErrors()
28 */
29class KIOCORE_EXPORT KSslErrorUiData
30{
31public:
32 /**
33 * Default construct an instance with no useful data.
34 */
35 KSslErrorUiData();
36 /**
37 * Create an instance and initialize it with SSL error data from @p socket.
38 */
39 KSslErrorUiData(const QSslSocket *socket);
40 /**
41 * Create an instance and initialize it with SSL error data from @p reply.
42 * @since 5.62
43 */
44 KSslErrorUiData(const QNetworkReply *reply, const QList<QSslError> &sslErrors);
45
46 KSslErrorUiData(const KSslErrorUiData &other);
47 KSslErrorUiData &operator=(const KSslErrorUiData &);
48 /**
49 * Destructor
50 */
51 ~KSslErrorUiData();
52
53 class Private;
54
55private:
56 friend class Private;
57 std::unique_ptr<Private> const d;
58};
59
60#endif // KSSLERRORUIDATA_H
61

source code of kio/src/core/ksslerroruidata.h