mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-16 14:16:09 -06:00
|
|
||
|---|---|---|
| .. | ||
| libssh2 | ||
| src.tpp | ||
| Channels.cpp | ||
| Channels.h | ||
| Copying | ||
| Core.cpp | ||
| Core.h | ||
| Exec.cpp | ||
| Hosts.cpp | ||
| Hosts.h | ||
| Issues | ||
| libssh2upp.c | ||
| Malloc.cpp | ||
| ReadMe | ||
| Scp.cpp | ||
| Session.cpp | ||
| Session.h | ||
| SFtp.cpp | ||
| SFtp.h | ||
| SFtpStream.cpp | ||
| Shell.cpp | ||
| SSH.h | ||
| SSH.upp | ||
| Todo | ||
| Tunnel.cpp | ||
SSH package for U++
--------------------
SSH package is a flexible, easy-to-use, yet powerful libssh2 wrapper for Ultimate++.
It supports both console and GUI-based applications on POSIX-compliant operating systems and
MS Windows (tm).
Classes:
--------------------
- Base (core) class -> Ssh
- Ssh session -----> SshSession
- Sftp subsystem -----> SFtp
- SFtp Stream interface -----> SFtpStream
- File system transparency -----> SFtpFileSystemInfo
- Ssh channel -----> SshChannel
- Scp channel -----> Scp
- Exec channel -----> SshExec
- Real-time interactive shell -----> SshShell
- X11 forwarding -----> SshShell (as operation mode)
- Tcp/IP and port forwarding -----> SshTunnel
- Known hosts manager -> SshHosts
Features and Highlights:
--------------------
- Ssh-derived classes have pick semantics, based on RAII principle, support RTTI, and allow
polymorphism (i.e. different classes can be stored in the same array, etc.) through a common
interface.
- Uses U++'s memory manager (Native manager (malloc) is also a compile-time option)
- Uses OpenSSL by default.
- Supports multithreading.
- Supports 3rd-party network proxies.
- Supports known hosts verification mechanism.
- Supports password, public key, host-based, and keyboard-interactive authentication methods.
- Supports ssh-agents.
- Supports real-time interactive command line (shell) interface with both console and GUI integration
(SshShell works on both Windows and Posix-compliant OSes)
- Supports X11 forwarding.
(A single SShShell instance is capable of handling multiple X11 requests simultaneously.)
- Supports Tcp/IP and port forwarding.
- Supports stream operations on SFTP objects.
- Supports access to sftp folder hiearcy in a file-system-agnostic (transparent) way.
- Supports detailed (full) debug logging.
Reference examples:
-------------------
- SshBasics: Demonstrates basic capabilities of SSH package.
- SFtpFileSel: Demonstrates FileSel integration of SFtp class, using FileSystemInfo interface.
- SFtpBrowser: Demonstrates a basic sftp browser with GUI.