AusweisApp2
RemoteTlsServer.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include <QByteArray>
10 #include <QPointer>
11 #include <QSslError>
12 #include <QSslPreSharedKeyAuthenticator>
13 #include <QSslSocket>
14 #include <QTcpServer>
15 
16 namespace governikus
17 {
18 
20  : public QTcpServer
21 {
22  Q_OBJECT
23 
24  private:
25  QPointer<QSslSocket> mSocket;
26  QByteArray mPsk;
27  void incomingConnection(qintptr pSocketDescriptor) override;
28 
29  private Q_SLOTS:
30  void onPreSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator* pAuthenticator);
31  void onError(QAbstractSocket::SocketError pSocketError);
32  void onSslErrors(const QList<QSslError>& pErrors);
33  void onEncrypted();
34 
35  public:
37  ~RemoteTlsServer() override;
38  bool listen();
39  void setPairing(bool pEnable = true);
40  [[nodiscard]] QSslCertificate getCurrentCertificate() const;
41 
42  Q_SIGNALS:
43  void newConnection(QTcpSocket* pSocket);
44  void firePskChanged(const QByteArray& pPsk);
45  void firePairingCompleted();
46 };
47 
48 } // namespace governikus
QSslCertificate getCurrentCertificate() const
Definition: RemoteTlsServer.cpp:210
void newConnection(QTcpSocket *pSocket)
Definition: RemoteTlsServer.h:19
void firePskChanged(const QByteArray &pPsk)
RemoteTlsServer()
Definition: RemoteTlsServer.cpp:23
void setPairing(bool pEnable=true)
Definition: RemoteTlsServer.cpp:192
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
bool listen()
Definition: RemoteTlsServer.cpp:42
~RemoteTlsServer() override
Definition: RemoteTlsServer.cpp:33