Rabbit Remote Control
0.1.0-bate14
Toggle main menu visibility
Loading...
Searching...
No Matches
Plugins
SSH
PluginLibSSH.cpp
1
// Author: Kang Lin <kl222@126.com>
2
3
#include "OperateSSH.h"
4
#include "PluginLibSSH.h"
5
#ifdef HAVE_LIBSSH
6
#include "ChannelSSH.h"
7
#endif
8
#include <QLoggingCategory>
9
static
Q_LOGGING_CATEGORY(log,
"Plugin.SSH"
)
10
11
CPluginLibSSH
::
CPluginLibSSH
(QObject *parent) :
CPlugin
(parent)
12
{
13
}
14
15
CPluginLibSSH::~CPluginLibSSH()
16
{
17
qDebug(log) << Q_FUNC_INFO;
18
}
19
20
const
QString
CPluginLibSSH::Protocol
()
const
21
{
22
return
"SSH"
;
23
}
24
25
const
QString
CPluginLibSSH::Name
()
const
26
{
27
return
"SSH"
;
28
}
29
30
const
QString
CPluginLibSSH::DisplayName
()
const
31
{
32
return
tr(
"Secure Shell(SSH)"
)
33
#if defined(Q_OS_WIN)
34
+ tr(
"(Experimental)"
)
35
#endif
36
;
37
}
38
39
const
QString
CPluginLibSSH::Description
()
const
40
{
41
return
tr(
"Secure Shell(SSH): is a secure protocol and the most common way of safely administering remote servers. "
42
"Using a number of encryption technologies, "
43
"SSH provides a mechanism for establishing a cryptographically secured connection between two parties, "
44
"authenticating each side to the other, and passing commands and output back and forth."
45
"You can remotely execute programs, transfer files, "
46
"use a secure and transparent tunnel, "
47
"manage public keys and much more ..."
) +
"\n"
48
+ tr(
"It uses libssh: https://www.libssh.org ."
);
49
}
50
51
const
QIcon CPluginLibSSH::Icon()
const
52
{
53
return
QIcon::fromTheme(
"ssh"
);
54
}
55
56
const
CPlugin::TYPE CPluginLibSSH::Type()
const
57
{
58
return
TYPE::Terminal;
59
}
60
61
const
QString
CPluginLibSSH::Version
()
const
62
{
63
return
0;
64
}
65
66
const
QString
CPluginLibSSH::Details
()
const
67
{
68
QString szDetails;
69
szDetails +=
"- "
+ tr(
"Dependency libraries"
) +
"\n"
;
70
szDetails += COperateTerminal::Details();
71
#ifdef HAVE_LIBSSH
72
CChannelSSH
channel(
nullptr
,
nullptr
);
73
szDetails += channel.
GetDetails
();
74
#endif
75
76
return
szDetails;
77
}
78
79
COperate
*CPluginLibSSH::OnCreateOperate(
const
QString &szId)
80
{
81
if
(
Id
() == szId)
82
return
new
COperateSSH
(
this
);
83
return
nullptr
;
84
}
CChannelSSH
Definition
ChannelSSH.h:14
CChannelSSH::GetDetails
virtual QString GetDetails() override
Depend on information.
Definition
ChannelSSH.cpp:27
COperateSSH
Definition
OperateSSH.h:10
COperate
Operate interface.
Definition
Operate.h:51
CPluginLibSSH
Definition
PluginLibSSH.h:8
CPluginLibSSH::Protocol
virtual const QString Protocol() const override
Plugin Protocol.
Definition
PluginLibSSH.cpp:20
CPluginLibSSH::DisplayName
virtual const QString DisplayName() const override
The plugin display name.
Definition
PluginLibSSH.cpp:30
CPluginLibSSH::Description
virtual const QString Description() const override
Plugin description.
Definition
PluginLibSSH.cpp:39
CPluginLibSSH::Details
virtual const QString Details() const override
Display more information in About dialog or log.
Definition
PluginLibSSH.cpp:66
CPluginLibSSH::Version
virtual const QString Version() const override
Version.
Definition
PluginLibSSH.cpp:61
CPluginLibSSH::Name
virtual const QString Name() const override
This name must be the same as the project name (${PROJECT_NAME}). The translation file (${PROJECT_NAM...
Definition
PluginLibSSH.cpp:25
CPlugin
Plugin interface.
Definition
Plugin.h:15
CPlugin::Id
virtual const QString Id() const
ID. Default: Type() + ":" + Protocol() + ":" + Name().
Definition
Plugin.cpp:71
Author: Kang Lin (kl222@126.com)
Copyright (c) Kang Lin Studios All Rights Reserved