Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qssl.h
Go to the documentation of this file.
1// Copyright (C) 2021 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4
5#ifndef QSSL_H
6#define QSSL_H
7
8#if 0
9#pragma qt_class(QSsl)
10#endif
11
12#include <QtNetwork/qtnetworkglobal.h>
13#include <QtCore/qobjectdefs.h>
14#include <QtCore/QFlags>
15
17
18
19namespace QSsl {
20 Q_NAMESPACE_EXPORT(Q_NETWORK_EXPORT)
21
27
33
42
49
51 TlsV1_0 QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
52 TlsV1_1 QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
56
57 TlsV1_0OrLater QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
58 TlsV1_1OrLater QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
60
61 DtlsV1_0 QT_DEPRECATED_VERSION_X_6_3("Use DtlsV1_2OrLater instead."),
62 DtlsV1_0OrLater QT_DEPRECATED_VERSION_X_6_3("Use DtlsV1_2OrLater instead."),
65
68
70 };
72
85
86 enum class AlertLevel {
87 Warning,
88 Fatal,
90 };
92
93 enum class AlertType {
96 BadRecordMac = 20,
97 RecordOverflow = 22,
98 DecompressionFailure = 30, // reserved
100 NoCertificate = 41, // reserved
101 BadCertificate = 42,
106 IllegalParameter = 47,
107 UnknownCa = 48,
108 AccessDenied = 49,
109 DecodeError = 50,
110 DecryptError = 51,
111 ExportRestriction = 60, // reserved
112 ProtocolVersion = 70,
114 InternalError = 80,
116 UserCancelled = 90,
117 NoRenegotiation = 100,
118 MissingExtension = 109,
120 CertificateUnobtainable = 111, // reserved
121 UnrecognizedName = 112,
123 BadCertificateHashValue = 114, // reserved
124 UnknownPskIdentity = 115,
128 };
130
132 {
133 Key,
135 Socket,
138 Dtls,
140 };
142
144 {
148 Ocsp,
149 Psk,
151 Alerts
152 };
154}
155
156Q_DECLARE_OPERATORS_FOR_FLAGS(QSsl::SslOptions)
157
159
160#endif // QSSL_H
The QSsl namespace declares enums common to all SSL classes in Qt Network.
SupportedFeature
Enumerates possible features that a TLS backend supports.
Definition qssl.h:144
KeyType
Describes the two types of keys QSslKey supports.
Definition qssl.h:22
@ PublicKey
Definition qssl.h:24
@ PrivateKey
Definition qssl.h:23
ImplementedClass
Enumerates classes that a TLS backend implements.
Definition qssl.h:132
AlertLevel
Describes the level of an alert message.
Definition qssl.h:86
KeyAlgorithm
Describes the different key algorithms supported by QSslKey.
Definition qssl.h:34
@ Rsa
Definition qssl.h:36
@ Ec
Definition qssl.h:38
@ Opaque
Definition qssl.h:35
@ Dsa
Definition qssl.h:37
@ Dh
Definition qssl.h:39
EncodingFormat
Describes supported encoding formats for certificates and keys.
Definition qssl.h:28
@ Pem
Definition qssl.h:29
@ Der
Definition qssl.h:30
SslOption
Describes the options that can be used to control the details of SSL behaviour.
Definition qssl.h:73
@ SslOptionDisableSessionPersistence
Definition qssl.h:80
@ SslOptionDisableCompression
Definition qssl.h:76
@ SslOptionDisableSessionTickets
Definition qssl.h:75
@ SslOptionDisableServerNameIndication
Definition qssl.h:77
@ SslOptionDisableLegacyRenegotiation
Definition qssl.h:78
@ SslOptionDisableSessionSharing
Definition qssl.h:79
@ SslOptionDisableServerCipherPreference
Definition qssl.h:81
@ SslOptionDisableEmptyFragments
Definition qssl.h:74
AlternativeNameEntryType
Describes the key types for alternative name entries in QSslCertificate.
Definition qssl.h:43
@ IpAddressEntry
Definition qssl.h:46
@ EmailEntry
Definition qssl.h:44
@ DnsEntry
Definition qssl.h:45
AlertType
Enumerates possible codes that an alert message can have.
Definition qssl.h:93
@ BadCertificateStatusResponse
SslProtocol
Describes the protocol of the cipher.
Definition qssl.h:50
@ DtlsV1_2
Definition qssl.h:63
@ TlsV1_2OrLater
Definition qssl.h:59
@ TlsV1_3
Definition qssl.h:66
@ DtlsV1_2OrLater
Definition qssl.h:64
@ TlsV1_3OrLater
Definition qssl.h:67
@ QT_DEPRECATED_VERSION_X_6_3
Definition qssl.h:51
@ SecureProtocols
Definition qssl.h:55
@ TlsV1_2
Definition qssl.h:53
@ AnyProtocol
Definition qssl.h:54
@ UnknownProtocol
Definition qssl.h:69
Combined button and popup list for selecting options.
#define Q_DECLARE_FLAGS(Flags, Enum)
Definition qflags.h:174
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
Definition qflags.h:194
static QT_BEGIN_NAMESPACE constexpr std::array< QSsl::SslOption, 8 > SslOptions
#define Q_ENUM_NS(x)
#define Q_NAMESPACE_EXPORT(...)