Deskflow
1.26.0.418
Keyboard and mouse sharing utility
Toggle main menu visibility
Loading...
Searching...
No Matches
ClientProxyUnknown.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) 2012 - 2016 Synergy App Ltd
5
* SPDX-FileCopyrightText: (C) 2004 Chris Schoeneman
6
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
7
*/
8
9
#pragma once
10
11
#include <string>
12
13
class
ClientProxy
;
14
class
EventQueueTimer
;
15
namespace
deskflow
{
16
class
IStream
;
17
}
18
class
Server
;
19
class
IEventQueue
;
20
21
class
ClientProxyUnknown
22
{
23
public
:
24
ClientProxyUnknown
(
deskflow::IStream
*stream,
double
timeout
,
Server
*server,
IEventQueue
*events);
25
ClientProxyUnknown
(
ClientProxyUnknown
const
&) =
delete
;
26
ClientProxyUnknown
(
ClientProxyUnknown
&&) =
delete
;
27
~ClientProxyUnknown
();
28
29
ClientProxyUnknown
&
operator=
(
ClientProxyUnknown
const
&) =
delete
;
30
ClientProxyUnknown
&
operator=
(
ClientProxyUnknown
&&) =
delete
;
31
33
34
36
41
ClientProxy
*
orphanClientProxy
();
42
44
deskflow::IStream
*
getStream
()
45
{
46
return
m_stream;
47
}
48
50
51
private
:
52
void
sendSuccess();
53
void
sendFailure();
54
void
addStreamHandlers();
55
void
addProxyHandlers();
56
void
removeHandlers();
57
void
initProxy(
const
std::string &
name
,
int
major,
int
minor);
58
void
removeTimer();
59
void
handleData();
60
void
handleWriteError();
61
void
handleTimeout();
62
void
handleDisconnect();
63
64
private
:
65
deskflow::IStream
*m_stream =
nullptr
;
66
EventQueueTimer
*m_timer =
nullptr
;
67
ClientProxy
*m_proxy =
nullptr
;
68
bool
m_ready =
false
;
69
Server
*m_server =
nullptr
;
70
IEventQueue
*m_events =
nullptr
;
71
};
name
static const struct sockaddr FAR * name
Definition
ArchNetworkWinsock.cpp:29
timeout
static fd_set FAR fd_set FAR fd_set FAR const struct timeval FAR * timeout
Definition
ArchNetworkWinsock.cpp:41
ClientProxyUnknown::ClientProxyUnknown
ClientProxyUnknown(ClientProxyUnknown &&)=delete
ClientProxyUnknown::operator=
ClientProxyUnknown & operator=(ClientProxyUnknown &&)=delete
ClientProxyUnknown::getStream
deskflow::IStream * getStream()
Get the stream.
Definition
ClientProxyUnknown.h:44
ClientProxyUnknown::orphanClientProxy
ClientProxy * orphanClientProxy()
Get the client proxy.
Definition
ClientProxyUnknown.cpp:58
ClientProxyUnknown::ClientProxyUnknown
ClientProxyUnknown(ClientProxyUnknown const &)=delete
ClientProxyUnknown::operator=
ClientProxyUnknown & operator=(ClientProxyUnknown const &)=delete
ClientProxyUnknown::ClientProxyUnknown
ClientProxyUnknown(deskflow::IStream *stream, double timeout, Server *server, IEventQueue *events)
Definition
ClientProxyUnknown.cpp:32
ClientProxy
Generic proxy for client.
Definition
ClientProxy.h:18
EventQueueTimer
Definition
EventQueueTimer.h:12
IEventQueue
Event queue interface.
Definition
IEventQueue.h:29
Server
Deskflow server.
Definition
Server.h:41
deskflow::IStream
Bidirectional stream interface.
Definition
IStream.h:22
deskflow
Definition
DaemonApp.h:18
src
lib
server
ClientProxyUnknown.h
Generated by
1.18.0