玉兔远程控制 0.1.0-bate11
载入中...
搜索中...
未找到
CChannelSSHTunnelForward类 参考

包括 SSH 隧道和用于转发数据的本地 SOCKET 服务。 实现通过本地 socket 与 SSH 隧道转发数据。适用于库没有实现传输层接口,只有 socket 的情况。 更多...

#include <ChannelSSHTunnelForward.h>

类 CChannelSSHTunnelForward 继承关系图:
CChannelSSHTunnelForward 的协作图:

Public 类型

enum class  SOCKET_TYPE { UnixSocket , Socket }

信号

void sigServer (QString szHost, quint16 nPort)
void sigServer (QString szUnixDomainSocket)
信号 继承自 CChannel
void sigConnected ()
 emit when the channel is connected.
void sigDisconnected ()
 emit when the channel is disconnected
void sigError (int nErr, const QString &szErr)
 emit when the channel is error
void sigSecurityLevel (CSecurityLevel::Levels level)
 当安全级别改变时触发
void sigSend (quint64 counts)
 Send data counts
void sigReceive (quint64 counts)
 Receive data counts

Public 成员函数

 CChannelSSHTunnelForward (CParameterSSHTunnel *parameter, CParameterNet *remote, CBackend *pBackend, QObject *parent=nullptr)
virtual bool open (OpenMode mode) override
virtual void close () override
virtual int Process ()
Public 成员函数 继承自 CChannelSSHTunnel
 CChannelSSHTunnel (CParameterSSHTunnel *parameter, CParameterNet *remote, CBackend *pBackend, bool bWakeUp=true, QObject *parent=nullptr)
int Process ()
virtual int DoWait (bool bWrite, int timeout)
int GetSocket ()
Public 成员函数 继承自 CChannelSSH
 CChannelSSH (CBackend *pBackend, CParameterSSH *pPara, bool bWakeUp=true, QObject *parent=nullptr)
virtual int WakeUp ()
virtual QString GetDetails () override
 依赖信息
Public 成员函数 继承自 CChannel
 CChannel (QTcpSocket *pSocket, QObject *parent=nullptr)
 CChannel

Private 成员函数

int CloseSocket (socket_t &s)
int AcceptConnect ()
int ReadConnect ()
int SSHReadyRead ()
int OpenSocket ()

Private 属性

socket_t m_Listen
socket_t m_Connector
SOCKET_TYPE m_SocketType
char * m_pBuffer
const int m_BufferLength = 1024

额外继承的成员函数

静态 Public 成员函数 继承自 CChannel
static int InitTranslation ()
 Initial translation
static int RemoveTranslation ()
 Remove translation
Protected 成员函数 继承自 CChannelSSHTunnel
virtual qint64 readData (char *data, qint64 maxlen) override
virtual qint64 writeData (const char *data, qint64 len) override
Protected 成员函数 继承自 CChannel
 CChannel (QObject *parent=nullptr)
virtual bool isSequential () const override
Protected 属性 继承自 CChannelSSH
ssh_session m_Session
ssh_channel m_Channel
CBackendm_pBackend
CParameterSSHm_pParameter
Channel::CEventm_pEvent

详细描述

包括 SSH 隧道和用于转发数据的本地 SOCKET 服务。 实现通过本地 socket 与 SSH 隧道转发数据。适用于库没有实现传输层接口,只有 socket 的情况。

注解
It is only used in CSSHTunnelThread
参见
CSSHTunnelThread

在文件 ChannelSSHTunnelForward.h22 行定义.

成员枚举类型说明

◆ SOCKET_TYPE

enum class CChannelSSHTunnelForward::SOCKET_TYPE
strong

在文件 ChannelSSHTunnelForward.h38 行定义.

构造及析构函数说明

◆ ~CChannelSSHTunnelForward()

CChannelSSHTunnelForward::~CChannelSSHTunnelForward ( )
virtual

在文件 ChannelSSHTunnelForward.cpp44 行定义.

成员函数说明

◆ AcceptConnect()

int CChannelSSHTunnelForward::AcceptConnect ( )
private

在文件 ChannelSSHTunnelForward.cpp241 行定义.

◆ close()

void CChannelSSHTunnelForward::close ( )
overridevirtual

重载 CChannelSSH .

在文件 ChannelSSHTunnelForward.cpp215 行定义.

◆ CloseSocket()

int CChannelSSHTunnelForward::CloseSocket ( socket_t & s)
private

在文件 ChannelSSHTunnelForward.cpp225 行定义.

◆ open()

bool CChannelSSHTunnelForward::open ( OpenMode mode)
overridevirtual
参数
pSocket所有者是这个类的实例

重载 CChannelSSH .

在文件 ChannelSSHTunnelForward.cpp201 行定义.

◆ OpenSocket()

int CChannelSSHTunnelForward::OpenSocket ( )
private

在文件 ChannelSSHTunnelForward.cpp51 行定义.

◆ Process()

int CChannelSSHTunnelForward::Process ( )
virtual
返回
  • >= 0: continue, Interval call time (msec)
  • = -1: stop
  • < -1: error

在文件 ChannelSSHTunnelForward.cpp372 行定义.

◆ ReadConnect()

int CChannelSSHTunnelForward::ReadConnect ( )
private

在文件 ChannelSSHTunnelForward.cpp276 行定义.

◆ SSHReadyRead()

int CChannelSSHTunnelForward::SSHReadyRead ( )
private

在文件 ChannelSSHTunnelForward.cpp324 行定义.

类成员变量说明

◆ m_BufferLength

const int CChannelSSHTunnelForward::m_BufferLength = 1024
private

在文件 ChannelSSHTunnelForward.h62 行定义.

◆ m_Connector

socket_t CChannelSSHTunnelForward::m_Connector
private

在文件 ChannelSSHTunnelForward.h49 行定义.

◆ m_Listen

socket_t CChannelSSHTunnelForward::m_Listen
private

在文件 ChannelSSHTunnelForward.h48 行定义.

◆ m_pBuffer

char* CChannelSSHTunnelForward::m_pBuffer
private

在文件 ChannelSSHTunnelForward.h61 行定义.

◆ m_SocketType

SOCKET_TYPE CChannelSSHTunnelForward::m_SocketType
private

在文件 ChannelSSHTunnelForward.h51 行定义.


该类的文档由以下文件生成: