目录
1 概述
libssh是一个在客户端和服务器端实现SSHv2协议的多平台C库。使用libssh,您可以远程执行程序、传输文件、使用安全透明的隧道、管理公钥等等。本文描述的对libssh客户端功能的C++封装。
libssh下载地址
3 实现
3.4 SFtp
SFtp类型基于SFTP协议管理远程文件(通过Dir和File类型来管理)。
3.4.1 SFtp定义
class SFtpPrivate;
class Session;
class Channel;
class Dir;
class DirPtr;
class SFtp
{
public:
SFtp(Session const& session);
SFtp(Session const& session, Channel const& channel);
~SFtp();
typedef std::shared_ptr<SFtp> Ptr;
bool init();
unsigned int extension_count();
const char * extension_name(unsigned int index);
const char * extension_data(unsigned int index);
bool mkdir(const char* dirname);
DirPtr home() const;
DirPtr root() const;
DirPtr dir(const char* path) const;
const char* error();
private:
friend class Dir;
friend class File;
SFtp(SFtp const&);
SFtp & operator == (SFtp