Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qwindowscarootfetcher_p.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
// Qt-Security score:significant reason:default
4
5
#
ifndef
QWINDOWSCAROOTFETCHER_P_H
6
#
define
QWINDOWSCAROOTFETCHER_P_H
7
8
#
include
<
QtNetwork
/
private
/
qtnetworkglobal_p
.
h
>
9
10
#
include
<
QtNetwork
/
qsslcertificate
.
h
>
11
#
include
<
QtNetwork
/
qsslsocket
.
h
>
12
13
#
include
<
QtCore
/
QtGlobal
>
14
#
include
<
QtCore
/
QObject
>
15
16
#
include
"../shared/qwincrypt_p.h"
17
18
//
19
// W A R N I N G
20
// -------------
21
//
22
// This file is not part of the Qt API. It exists purely as an
23
// implementation detail. This header file may change from version to
24
// version without notice, or even be removed.
25
//
26
// We mean it.
27
//
28
29
QT_BEGIN_NAMESPACE
30
31
class
QWindowsCaRootFetcher
:
public
QObject
32
{
33
Q_OBJECT
34
public
:
35
QWindowsCaRootFetcher
(
const
QSslCertificate
&
certificate
,
QSslSocket
::
SslMode
sslMode
,
36
const
QList
<
QSslCertificate
> &
caCertificates
= {},
37
const
QString
&
hostName
= {});
38
~
QWindowsCaRootFetcher
();
39
public
slots
:
40
void
start
();
41
signals
:
42
void
finished
(
QSslCertificate
brokenChain
,
QSslCertificate
caroot
);
43
private
:
44
QHCertStorePointer
createAdditionalStore()
const
;
45
46
QSslCertificate cert;
47
QSslSocket::SslMode mode;
48
// In case the application set CA certificates in the configuration,
49
// in the past we did not load missing certs. But this disables
50
// recoverable case when a certificate has Authority Information Access
51
// extension. So we try to fetch in this scenario also, but in case
52
// explicitly trusted root was not in a system store, we'll do
53
// additional checks, thus we need 'peerVerifyName':
54
QList<QSslCertificate> explicitlyTrustedCAs;
55
QString peerVerifyName;
56
};
57
58
QT_END_NAMESPACE
59
60
#
endif
// QWINDOWSCAROOTFETCHER_P_H
QWindowsCaRootFetcherThread
Definition
qwindowscarootfetcher.cpp:22
QWindowsCaRootFetcherThread::QWindowsCaRootFetcherThread
QWindowsCaRootFetcherThread()
Definition
qwindowscarootfetcher.cpp:24
QWindowsCaRootFetcherThread::~QWindowsCaRootFetcherThread
~QWindowsCaRootFetcherThread()
Definition
qwindowscarootfetcher.cpp:30
QWindowsCaRootFetcher
Definition
qwindowscarootfetcher_p.h:32
QWindowsCaRootFetcher::~QWindowsCaRootFetcher
~QWindowsCaRootFetcher()
Definition
qwindowscarootfetcher.cpp:102
QPlatformGraphicsBufferHelper
\inmodule QtGui
QHCertStorePointer
std::unique_ptr< void, QHCertStoreDeleter > QHCertStorePointer
Definition
qwincrypt_p.h:42
Q_GLOBAL_STATIC
Q_GLOBAL_STATIC(QWindowsCaRootFetcherThread, windowsCaRootFetcherThread)
qtbase
src
plugins
tls
openssl
qwindowscarootfetcher_p.h
Generated on
for Qt by
1.14.0