玉兔远程控制
0.1.0-bate11
Toggle main menu visibility
载入中...
搜索中...
未找到
Src
SSH
ChannelSSHTunnelForward.h
1
// Author: Kang Lin <kl222@126.com>
2
3
#ifndef CHANNELSSHTUNNELFORWARD_H
4
#define CHANNELSSHTUNNELFORWARD_H
5
6
#include "ChannelSSHTunnel.h"
7
22
class
CChannelSSHTunnelForward :
public
CChannelSSHTunnel
23
{
24
Q_OBJECT
25
public
:
26
explicit
CChannelSSHTunnelForward(
CParameterSSHTunnel
*parameter,
27
CParameterNet
*remote,
28
CBackend
*pBackend,
29
QObject *parent =
nullptr
);
30
virtual
~CChannelSSHTunnelForward();
31
32
// QIODevice interface
33
public
:
34
virtual
bool
open
(OpenMode mode)
override
;
35
virtual
void
close()
override
;
36
virtual
int
Process
();
37
38
enum class
SOCKET_TYPE{
39
UnixSocket,
40
Socket
41
};
42
43
Q_SIGNALS:
44
void
sigServer(QString szHost, quint16 nPort);
45
void
sigServer(QString szUnixDomainSocket);
46
47
private
:
48
socket_t m_Listen;
49
socket_t m_Connector;
50
51
SOCKET_TYPE m_SocketType;
52
53
int
CloseSocket(socket_t &s);
54
int
AcceptConnect();
55
int
ReadConnect();
56
int
SSHReadyRead();
57
int
OpenSocket();
58
#if defined(HAVE_UNIX_DOMAIN_SOCKET)
59
int
OpenUnixSocket();
60
#endif
61
char
* m_pBuffer;
62
const
int
m_BufferLength = 1024;
63
};
64
65
#endif
// CHANNELSSHTUNNELFORWARD_H
CBackend
后端接口。它由协议插件实现。 它默认启动一个定时器来开启一个非 Qt 事件循环(就是普通的循环处理)。 详见: Start()、 slotTimeOut()、 OnProcess() 。 当然,它仍然支...
定义
Backend.h:52
CChannelSSHTunnelForward::open
virtual bool open(OpenMode mode) override
定义
ChannelSSHTunnelForward.cpp:201
CChannelSSHTunnelForward::Process
virtual int Process()
定义
ChannelSSHTunnelForward.cpp:372
CParameterNet
网络连接参数接口。此类仅在插件内有效。 其界面为 CParameterNetUI
定义
ParameterNet.h:27
CParameterSSHTunnel
定义
ParameterSSH.h:28
作者:康林 (kl222@126.com)
版权所有(c) 康林工作室 保留所有权力