玉兔远程控制 0.1.0-bate10
载入中...
搜索中...
未找到
| Public 槽 | Public 成员函数 | Protected 成员函数 | Private 槽 | Private 成员函数 | 静态 Private 成员函数 | Private 属性 | 所有成员列表
CBackendSftpServer类 参考

The CBackendSftpServer class 更多...

#include <BackendSftpServer.h>

类 CBackendSftpServer 继承关系图:
Inheritance graph
[图例]
CBackendSftpServer 的协作图:
Collaboration graph
[图例]

struct  sBindData
 
struct  sClientData
 

Public 槽

virtual void slotDisconnect (const QString &szIp, const quint16 port) override
 
- Public 槽 继承自 CBackendServer
virtual void slotDisconnect (const QString &szIp, const quint16 port)=0
 Disconnect client
 

Public 成员函数

 CBackendSftpServer (COperateSftpServer *pOperate=nullptr, bool bStopSignal=true)
 
- Public 成员函数 继承自 CBackendServer
 CBackendServer (COperateServer *pOperate=nullptr, bool bStopSignal=true)
 
- Public 成员函数 继承自 CBackend
 CBackend (COperate *pOperate=nullptr, bool bStopSignal=true)
 CBackend
 
virtual int Start ()
 开始。根据 OnInit() 返回值来决定是否开始定时器来支持非 qt 事件
 
virtual int Stop ()
 停止
 

Protected 成员函数

virtual OnInitReturnValue OnInit () override
 初始化
 
virtual int OnClean () override
 清理
 
virtual int OnProcess () override
 具体操作处理
 
virtual int WakeUp () override
 唤醒后台线程。
 

Private 槽

void slotNewConnection ()
 

Private 成员函数

int Listen (const QString &szIp, qint16 nPort)
 
ssh_bind GetSshBind (QSocketNotifier *notifier)
 
bool InitHostKey (ssh_bind ssdBind)
 
int DeleteClient (sClientData *pClient)
 

静态 Private 成员函数

static int cbAuthPassword (ssh_session session, const char *user, const char *pass, void *userdata)
 
static int cbAuthPublickey (ssh_session session, const char *user, struct ssh_key_struct *pubkey, char signature_state, void *userdata)
 
static ssh_channel cbChannelOpen (ssh_session session, void *userdata)
 
static void SendBanner (sClientData *pClient, const QString &user)
 

Private 属性

CParameterSftpServerm_pPara
 
ssh_event m_event
 
QList< sBindData * > m_lstListen
 
QList< sClientData * > m_lstClients
 

额外继承的成员函数

- 信号 继承自 CBackendServer
void sigConnected (const QString &szIp, const quint16 port)
 emit when new client connected
 
void sigDisconnected (const QString &szIp, const quint16 port)
 emit when the client disconnected
 
- 信号 继承自 CBackend
void sigRunning ()
 当插件开始成功后触发。仅由插件触发
 
void sigStop ()
 需要通知用户停止时触发。仅由插件触发。 当从插件中需要停止时触发。例如:对端断开连接、重置连接或者连接出错。
 
void sigFinished ()
 停止成功信号。仅由插件触发
 
void sigError (const int nError, const QString &szError=QString())
 当有错误产生时触发
 
void sigInformation (const QString &szInfo)
 从后台线程中触发在主线程中显示信息,不阻塞后台线程
 
void sigShowMessageBox (const QString &szTitle, const QString &szMessage, const QMessageBox::Icon &icon=QMessageBox::Information)
 从后台线程中触发在主线程中显示消息对话框(QMessageBox),不阻塞后台线程
 
void sigBlockShowMessageBox (const QString &szTitle, const QString &szMessage, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton &nRet, bool &checkBox, QString checkBoxContext=QString())
 阻塞后台线程,并在前台线程中显示消息对话框(QMessageBox)
 
void sigBlockInputDialog (const QString &szTitle, const QString &szLable, const QString &szMessage, QString &szText)
 阻塞后台线程,并在前台线程中显示输入对话框 (QInputDialog)
 
void sigBlockShowWidget (const QString &className, int &nRet, void *pContext)
 阻塞后台线程,并在前台线程中显示窗口。
 
void sigSecurityLevel (CSecurityLevel::Levels level)
 当安全级别改变时触发
 
- Protected 类型 继承自 CBackend
enum class  OnInitReturnValue { Fail = -1 , Success = 0 , UseOnProcess = Success , NotUseOnProcess = 1 }
 
- Protected 槽 继承自 CBackend
virtual void slotTimeOut ()
 一个非 Qt 事件处理,它调用 OnProcess(),并根据其返回值开始新的定时器。 如果是不是一个非 Qt 事件循环(就是普通的循环处理), 可以重载它,或者 OnInit() 返回值 OnInitReturnValue::NotUseOnProcess
 

详细描述

The CBackendSftpServer class

在文件 BackendSftpServer.h18 行定义.

构造及析构函数说明

◆ CBackendSftpServer()

CBackendSftpServer::CBackendSftpServer ( COperateSftpServer pOperate = nullptr,
bool  bStopSignal = true 
)
explicit

在文件 BackendSftpServer.cpp86 行定义.

◆ ~CBackendSftpServer()

CBackendSftpServer::~CBackendSftpServer ( )
virtual

在文件 BackendSftpServer.cpp94 行定义.

成员函数说明

◆ cbAuthPassword()

int CBackendSftpServer::cbAuthPassword ( ssh_session  session,
const char *  user,
const char *  pass,
void *  userdata 
)
staticprivate

在文件 BackendSftpServer.cpp436 行定义.

◆ cbAuthPublickey()

int CBackendSftpServer::cbAuthPublickey ( ssh_session  session,
const char *  user,
struct ssh_key_struct *  pubkey,
char  signature_state,
void *  userdata 
)
staticprivate

在文件 BackendSftpServer.cpp456 行定义.

◆ cbChannelOpen()

ssh_channel CBackendSftpServer::cbChannelOpen ( ssh_session  session,
void *  userdata 
)
staticprivate

在文件 BackendSftpServer.cpp508 行定义.

◆ DeleteClient()

int CBackendSftpServer::DeleteClient ( sClientData pClient)
private

在文件 BackendSftpServer.cpp521 行定义.

◆ GetSshBind()

ssh_bind CBackendSftpServer::GetSshBind ( QSocketNotifier *  notifier)
private

在文件 BackendSftpServer.cpp312 行定义.

◆ InitHostKey()

bool CBackendSftpServer::InitHostKey ( ssh_bind  ssdBind)
private

在文件 BackendSftpServer.cpp245 行定义.

◆ Listen()

int CBackendSftpServer::Listen ( const QString &  szIp,
qint16  nPort 
)
private

在文件 BackendSftpServer.cpp268 行定义.

◆ OnClean()

int CBackendSftpServer::OnClean ( )
overrideprotectedvirtual

清理

参见
Stop()

实现了 CBackend.

在文件 BackendSftpServer.cpp139 行定义.

◆ OnInit()

CBackend::OnInitReturnValue CBackendSftpServer::OnInit ( )
overrideprotectedvirtual

初始化

返回
  • OnInitReturnValue::Fail: 错误
  • OnInitReturnValue::Success/OnInitReturnValueUseOnProcess: 使用 OnProcess() (非 Qt 事件循环)
  • OnInitReturnValue::NotUseOnProcess: 不使用 OnProcess() (qt 事件循环)
参见
Start()

实现了 CBackend.

在文件 BackendSftpServer.cpp99 行定义.

◆ OnProcess()

int CBackendSftpServer::OnProcess ( )
overrideprotectedvirtual

具体操作处理

返回
  • >= 0: 继续。再次调用间隔时间,单位毫秒
  • = -1: 停止
  • < -1: 错误代码
参见
Start() slotTimeOut()

重载 CBackend .

在文件 BackendSftpServer.cpp184 行定义.

◆ SendBanner()

void CBackendSftpServer::SendBanner ( sClientData pClient,
const QString &  user 
)
staticprivate

在文件 BackendSftpServer.cpp547 行定义.

◆ slotDisconnect

void CBackendSftpServer::slotDisconnect ( const QString &  szIp,
const quint16  port 
)
overridevirtualslot

在文件 BackendSftpServer.cpp562 行定义.

◆ slotNewConnection

void CBackendSftpServer::slotNewConnection ( )
privateslot

在文件 BackendSftpServer.cpp321 行定义.

◆ WakeUp()

int CBackendSftpServer::WakeUp ( )
overrideprotectedvirtual

唤醒后台线程。

注解
调用者是主线程(UI线程)。

重载 CBackend .

在文件 BackendSftpServer.cpp163 行定义.

类成员变量说明

◆ m_event

ssh_event CBackendSftpServer::m_event
private

在文件 BackendSftpServer.h41 行定义.

◆ m_lstClients

QList<sClientData*> CBackendSftpServer::m_lstClients
private

在文件 BackendSftpServer.h61 行定义.

◆ m_lstListen

QList<sBindData*> CBackendSftpServer::m_lstListen
private

在文件 BackendSftpServer.h47 行定义.

◆ m_pPara

CParameterSftpServer* CBackendSftpServer::m_pPara
private

在文件 BackendSftpServer.h40 行定义.


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