ReadMe
1SSH package for U++
2--------------------
3SSH package is a flexible, easy-to-use, yet powerful libssh2 wrapper for Ultimate++.
4It supports both console and GUI-based applications on POSIX-compliant operating systems and
5MS Windows (tm).
6
7Classes:
8--------------------
9
10- Base (core) class -> Ssh
11 - Ssh session -----> SshSession
12 - Sftp subsystem -----> SFtp
13 - SFtp Stream interface -----> SFtpStream
14 - File system transparency -----> SFtpFileSystemInfo
15 - Ssh channel -----> SshChannel
16 - Scp channel -----> Scp
17 - Exec channel -----> SshExec
18 - Real-time interactive shell -----> SshShell
19 - X11 forwarding -----> SshShell (as operation mode)
20 - Tcp/IP and port forwarding -----> SshTunnel
21- Known hosts manager -> SshHosts
22
23Features and Highlights:
24--------------------
25
26- Ssh-derived classes have pick semantics, based on RAII principle, support RTTI, and allow
27 polymorphism (i.e. different classes can be stored in the same array, etc.) through a common
28 interface.
29- Uses U++'s memory manager (Native manager (malloc) is also a compile-time option)
30- Uses OpenSSL by default.
31- Supports multithreading.
32- Supports 3rd-party network proxies.
33- Supports known hosts verification mechanism.
34- Supports password, public key, host-based, and keyboard-interactive authentication methods.
35- Supports ssh-agents.
36- Supports real-time interactive command line (shell) interface with both console and GUI integration
37 (SshShell works on both Windows and Posix-compliant OSes)
38- Supports X11 forwarding.
39 (A single SShShell instance is capable of handling multiple X11 requests simultaneously.)
40- Supports Tcp/IP and port forwarding.
41- Supports stream operations on SFTP objects.
42- Supports access to sftp folder hiearcy in a file-system-agnostic (transparent) way.
43- Supports detailed (full) debug logging.
44
45Reference examples:
46-------------------
47
48- SshBasics: Demonstrates basic capabilities of SSH package.
49- SFtpFileSel: Demonstrates FileSel integration of SFtp class, using FileSystemInfo interface.
50- SFtpBrowser: Demonstrates a basic sftp browser with GUI.