AusweisApp
Lade ...
Suche ...
Keine Treffer
TlsServer.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include <QByteArray>
12#include <QPointer>
13#include <QSslConfiguration>
14#include <QSslError>
15#include <QSslPreSharedKeyAuthenticator>
16#include <QSslSocket>
17#include <QTcpServer>
18
19namespace governikus
20{
21
23 : public QTcpServer
24{
26
27 private:
29 QByteArray mPsk;
30
31 void incomingConnection(qintptr pSocketDescriptor) override;
32 virtual QSslConfiguration sslConfiguration() const = 0;
33
34 private Q_SLOTS:
35 void onPreSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator* pAuthenticator) const;
36 void onError(QAbstractSocket::SocketError pSocketError);
37 virtual void onSslErrors(const QList<QSslError>& pErrors) = 0;
38 virtual void onEncrypted() = 0;
39
40 protected:
42 [[nodiscard]] const QByteArray& getPsk() const;
43
44 public:
45 TlsServer();
46 ~TlsServer() override;
47 void setPsk(const QByteArray& pPsk);
48 void stopListening();
49 virtual bool startListening(quint16 pPort) = 0;
50 [[nodiscard]] bool hasPsk() const;
51
53 void fireNewConnection(QTcpSocket* pSocket);
55 void fireSocketError(QAbstractSocket::SocketError pSocketError);
56};
57
58} // namespace governikus
Definition TlsServer.h:24
void stopListening()
Definition TlsServer.cpp:44
const QPointer< QSslSocket > & getSslSocket() const
Definition TlsServer.cpp:115
void firePskChanged(const QByteArray &pPsk)
void setPsk(const QByteArray &pPsk)
Definition TlsServer.cpp:34
TlsServer()
Definition TlsServer.cpp:15
virtual bool startListening(quint16 pPort)=0
void fireNewConnection(QTcpSocket *pSocket)
bool hasPsk() const
Definition TlsServer.cpp:51
~TlsServer() override
Definition TlsServer.cpp:25
void fireSocketError(QAbstractSocket::SocketError pSocketError)
const QByteArray & getPsk() const
Definition TlsServer.cpp:109
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:17
QSharedPointer< T > decodeObject(const QByteArray &pData, bool pLogging=true)
Template function for decoding an OpenSSL type from DER encoded QByteArray.
Definition ASN1TemplateUtil.h:114