AusweisApp2
Lade ...
Suche ...
Keine Treffer
TlsConfiguration.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include <QByteArrayList>
12#include <QJsonObject>
13#include <QList>
14#include <QSslCipher>
15#include <QSslConfiguration>
16#include <QSslEllipticCurve>
17#include <QStringList>
18#include <QVector>
19
20
21class test_TlsConfiguration;
22
23
24namespace governikus
25{
26
27class SecureStorage;
28
29
31 : public QList<QSslCipher>
32{
33 public:
34 SslCipherList& operator +=(const QString& pCipherName);
35};
36
37
39 : public QVector<QSslEllipticCurve>
40{
41 public:
42 SslEllipticCurveVector& operator +=(const QString& pEllipticCurveName);
43};
44
45
47{
48 friend class SecureStorage;
49 friend class ::test_TlsConfiguration;
50 friend bool operator==(const TlsConfiguration& pLeft, const TlsConfiguration& pRight);
51
52 private:
53 QSslConfiguration mConfiguration;
54
56 ~TlsConfiguration() = default;
57
58 [[nodiscard]] QJsonArray readJsonArray(const QJsonObject& pConfig, const QLatin1String pName) const;
59 [[nodiscard]] QSsl::SslProtocol readSslProtocol(const QJsonObject& pConfig, const QLatin1String pName) const;
60 [[nodiscard]] bool readOcspStapling(const QJsonObject& pConfig, const QLatin1String pName) const;
61 [[nodiscard]] QByteArrayList readSignatureAlgorithms(const QJsonObject& pConfig, const QLatin1String pKey) const;
62
63 public:
64 void load(const QJsonObject& pConfig);
65
66 [[nodiscard]] QSsl::SslProtocol getProtocolVersion() const;
67 [[nodiscard]] bool getOcspStapling() const;
68 [[nodiscard]] QList<QSslCipher> getCiphers() const;
69 [[nodiscard]] QVector<QSslEllipticCurve> getEllipticCurves() const;
70 [[nodiscard]] QByteArrayList getSignatureAlgorithms() const;
71 [[nodiscard]] const QSslConfiguration& getConfiguration() const;
72};
73
74
75inline bool operator==(const TlsConfiguration& pLeft, const TlsConfiguration& pRight)
76{
77 return &pLeft == &pRight || (
78 pLeft.mConfiguration == pRight.mConfiguration);
79}
80
81
82inline bool operator!=(const TlsConfiguration& pLeft, const TlsConfiguration& pRight)
83{
84 return !(pLeft == pRight);
85}
86
87
88} // namespace governikus
Definition SecureStorage.h:33
Definition TlsConfiguration.h:32
SslCipherList & operator+=(const QString &pCipherName)
Definition TlsConfiguration.cpp:22
Definition TlsConfiguration.h:40
SslEllipticCurveVector & operator+=(const QString &pEllipticCurveName)
Definition TlsConfiguration.cpp:38
Definition TlsConfiguration.h:47
QSsl::SslProtocol getProtocolVersion() const
Definition TlsConfiguration.cpp:92
bool getOcspStapling() const
Definition TlsConfiguration.cpp:98
const QSslConfiguration & getConfiguration() const
Definition TlsConfiguration.cpp:128
QVector< QSslEllipticCurve > getEllipticCurves() const
Definition TlsConfiguration.cpp:110
void load(const QJsonObject &pConfig)
Definition TlsConfiguration.cpp:60
QList< QSslCipher > getCiphers() const
Definition TlsConfiguration.cpp:104
friend bool operator==(const TlsConfiguration &pLeft, const TlsConfiguration &pRight)
Definition TlsConfiguration.h:75
QByteArrayList getSignatureAlgorithms() const
Definition TlsConfiguration.cpp:116
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:16
bool operator!=(const CVCertificate &pLeft, const CVCertificate &pRight)
Definition CVCertificate.h:83
bool operator==(const CommandApdu &pLeft, const CommandApdu &pRight)
Definition CommandApdu.h:105