|
libsshpp v0.1.7
Modern C++17 wrapper for libssh
|
#include <forwarding.hpp>
Classes | |
| struct | Options |
Public Member Functions | |
| SocksProxy (Session &, Options) | |
| ~SocksProxy () | |
| SocksProxy (const SocksProxy &)=delete | |
| SocksProxy & | operator= (const SocksProxy &)=delete |
| Result< void > | try_start () |
| Result< void > | try_run_until_stopped () |
| void | stop () noexcept |
| bool | running () const noexcept |
| TcpEndpoint | local_endpoint () const noexcept |
| ForwardStats | stats () const noexcept |
Dynamic forwarding (ssh -D): a minimal local SOCKS4/5 proxy tunnelling CONNECT requests over direct-tcpip channels. libssh has no SOCKS support; this is ours. See docs/design/07 ยง7.6.
Hardening: SOCKS5 only by default (allow_socks4 opts in), no auth method advertised other than "no auth" (the listener is loopback-only by default), hostnames are forwarded to the SSH server rather than resolved locally (matches ssh -D, avoids local DNS leaks), strict length checks on every field of the request, and a hard cap on in-flight connections.
| SSHPP_INLINE sshpp::SocksProxy::~SocksProxy | ( | ) |
|
delete |
|
delete |
| SSHPP_INLINE Result< void > sshpp::SocksProxy::try_start | ( | ) |
| SSHPP_INLINE Result< void > sshpp::SocksProxy::try_run_until_stopped | ( | ) |
|
noexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
noexcept |