Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
SecureListenSocket.h
Go to the documentation of this file.
1/*
2 * Deskflow -- mouse and keyboard sharing utility
3 * SPDX-FileCopyrightText: (C) 2025 Deskflow Developers
4 * SPDX-FileCopyrightText: (C) 2015 - 2016 Symless Ltd.
5 * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
6 */
7
8#pragma once
9
10#include "net/SecurityLevel.h"
11#include "net/TCPListenSocket.h"
12
13#include <set>
14
15class IEventQueue;
17class IDataSocket;
18
20{
21public:
23 IEventQueue *events, SocketMultiplexer *socketMultiplexer, IArchNetwork::AddressFamily family,
25 );
26
27 // IListenSocket overrides
28 std::unique_ptr<IDataSocket> accept() override;
29
30private:
31 const SecurityLevel m_securityLevel;
32};
SecurityLevel
This enum is used to set how the client and server will communicate.
Definition SecurityLevel.h:14
@ PlainText
Definition SecurityLevel.h:15
AddressFamily
Supported address families.
Definition IArchNetwork.h:57
Data stream socket interface.
Definition IDataSocket.h:20
Event queue interface.
Definition IEventQueue.h:32
SecureListenSocket(IEventQueue *events, SocketMultiplexer *socketMultiplexer, IArchNetwork::AddressFamily family, SecurityLevel securityLevel=SecurityLevel::PlainText)
Definition SecureListenSocket.cpp:24
std::unique_ptr< IDataSocket > accept() override
Accept connection.
Definition SecureListenSocket.cpp:35
Socket multiplexer.
Definition SocketMultiplexer.h:26
TCPListenSocket(IEventQueue *events, SocketMultiplexer *socketMultiplexer, IArchNetwork::AddressFamily family)
Definition TCPListenSocket.cpp:25