Qt 6.x
The Qt SDK
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/QFlags>
14
16
17
18namespace QSsl {
19 enum KeyType {
22 };
23
26 Der
27 };
28
35 };
36
41 };
42
44 TlsV1_0 QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
45 TlsV1_1 QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
49
50 TlsV1_0OrLater QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
51 TlsV1_1OrLater QT_DEPRECATED_VERSION_X_6_3("Use TlsV1_2OrLater instead."),
53
54 DtlsV1_0 QT_DEPRECATED_VERSION_X_6_3("Use DtlsV1_2OrLater instead."),
55 DtlsV1_0OrLater QT_DEPRECATED_VERSION_X_6_3("Use DtlsV1_2OrLater instead."),
58
61
63 };
64
65 enum SslOption {
74 };
75 Q_DECLARE_FLAGS(SslOptions, SslOption)
76
77 enum class AlertLevel {
78 Warning,
79 Fatal,
81 };
82
83 enum class AlertType {
86 BadRecordMac = 20,
87 RecordOverflow = 22,
88 DecompressionFailure = 30, // reserved
90 NoCertificate = 41, // reserved
91 BadCertificate = 42,
97 UnknownCa = 48,
98 AccessDenied = 49,
99 DecodeError = 50,
100 DecryptError = 51,
101 ExportRestriction = 60, // reserved
102 ProtocolVersion = 70,
104 InternalError = 80,
106 UserCancelled = 90,
107 NoRenegotiation = 100,
108 MissingExtension = 109,
110 CertificateUnobtainable = 111, // reserved
111 UnrecognizedName = 112,
113 BadCertificateHashValue = 114, // reserved
114 UnknownPskIdentity = 115,
118 };
119
121 {
122 Key,
124 Socket,
127 Dtls,
129 };
130
132 {
136 Ocsp,
137 Psk,
139 Alerts
140 };
141}
142
143Q_DECLARE_OPERATORS_FOR_FLAGS(QSsl::SslOptions)
144
146
147#endif // QSSL_H
The QSsl namespace declares enums common to all SSL classes in Qt Network.
SupportedFeature
Definition qssl.h:132
KeyType
Describes the two types of keys QSslKey supports.
Definition qssl.h:19
@ PublicKey
Definition qssl.h:21
@ PrivateKey
Definition qssl.h:20
ImplementedClass
Definition qssl.h:121
AlertLevel
Definition qssl.h:77
KeyAlgorithm
Describes the different key algorithms supported by QSslKey.
Definition qssl.h:29
@ Rsa
Definition qssl.h:31
@ Ec
Definition qssl.h:33
@ Opaque
Definition qssl.h:30
@ Dsa
Definition qssl.h:32
@ Dh
Definition qssl.h:34
EncodingFormat
Describes supported encoding formats for certificates and keys.
Definition qssl.h:24
@ Pem
Definition qssl.h:25
@ Der
Definition qssl.h:26
SslOption
Describes the options that can be used to control the details of SSL behaviour.
Definition qssl.h:65
@ SslOptionDisableSessionPersistence
Definition qssl.h:72
@ SslOptionDisableCompression
Definition qssl.h:68
@ SslOptionDisableSessionTickets
Definition qssl.h:67
@ SslOptionDisableServerNameIndication
Definition qssl.h:69
@ SslOptionDisableLegacyRenegotiation
Definition qssl.h:70
@ SslOptionDisableSessionSharing
Definition qssl.h:71
@ SslOptionDisableServerCipherPreference
Definition qssl.h:73
@ SslOptionDisableEmptyFragments
Definition qssl.h:66
AlternativeNameEntryType
Describes the key types for alternative name entries in QSslCertificate.
Definition qssl.h:37
@ IpAddressEntry
Definition qssl.h:40
@ EmailEntry
Definition qssl.h:38
@ DnsEntry
Definition qssl.h:39
AlertType
Definition qssl.h:83
@ BadCertificateStatusResponse
SslProtocol
Describes the protocol of the cipher.
Definition qssl.h:43
@ DtlsV1_2
Definition qssl.h:56
@ TlsV1_2OrLater
Definition qssl.h:52
@ TlsV1_3
Definition qssl.h:59
@ DtlsV1_2OrLater
Definition qssl.h:57
@ TlsV1_3OrLater
Definition qssl.h:60
@ QT_DEPRECATED_VERSION_X_6_3
Definition qssl.h:44
@ SecureProtocols
Definition qssl.h:48
@ TlsV1_2
Definition qssl.h:46
@ AnyProtocol
Definition qssl.h:47
@ UnknownProtocol
Definition qssl.h:62
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