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