Documentation
¶
Overview ¶
Package main is the outway command-line entry point. It wires up the CLI commands (run, start, restart, stop, ps, log, self) to the server, daemon, and self-update modules.
Directories
¶
| Path | Synopsis |
|---|---|
|
internal
|
|
|
config
Package config defines the configuration types for the outway server.
|
Package config defines the configuration types for the outway server. |
|
connect
Package connect implements outbound connection establishment with optional CIDR-based source address selection, fallback addresses/interfaces, and dual-stack UDP support.
|
Package connect implements outbound connection establishment with optional CIDR-based source address selection, fallback addresses/interfaces, and dual-stack UDP support. |
|
daemon
Package daemon implements Unix daemon management for outway: start, stop, restart, status (ps), and log commands.
|
Package daemon implements Unix daemon management for outway: start, stop, restart, status (ps), and log commands. |
|
ext
Package ext parses proxy username extensions (session / ttl / range) used to deterministically select outbound source addresses.
|
Package ext parses proxy username extensions (session / ttl / range) used to deterministically select outbound source addresses. |
|
oneself
Package oneself implements self-update (from GitHub releases) and uninstall functionality, mirroring the Rust oneself module.
|
Package oneself implements self-update (from GitHub releases) and uninstall functionality, mirroring the Rust oneself module. |
|
randx
Package randx provides fast pseudo-random number generators mirroring the Rust implementation's interface.
|
Package randx provides fast pseudo-random number generators mirroring the Rust implementation's interface. |
|
server
Package server holds the shared server runtime: context, bidirectional IO, and the run entry point.
|
Package server holds the shared server runtime: context, bidirectional IO, and the run entry point. |
|
server/http
Package http implements the HTTP/HTTPS proxy server, including Basic auth, self-signed certificate generation, TLS configuration, CONNECT tunneling, and HTTP request forwarding.
|
Package http implements the HTTP/HTTPS proxy server, including Basic auth, self-signed certificate generation, TLS configuration, CONNECT tunneling, and HTTP request forwarding. |
|
server/socks
Package socks implements the SOCKS5 proxy server, including the acceptor, connection handler, and the CONNECT / UDP ASSOCIATE / BIND command handlers.
|
Package socks implements the SOCKS5 proxy server, including the acceptor, connection handler, and the CONNECT / UDP ASSOCIATE / BIND command handlers. |
|
server/socks/proto
Package proto implements the SOCKS5 wire protocol primitives.
|
Package proto implements the SOCKS5 wire protocol primitives. |
|
server/socks/proto/handshake
Package handshake implements the SOCKS5 method-selection handshake.
|
Package handshake implements the SOCKS5 method-selection handshake. |
|
server/socks/proto/handshake/password
Package password implements the SOCKS5 username/password sub-negotiation (RFC 1929).
|
Package password implements the SOCKS5 username/password sub-negotiation (RFC 1929). |
|
serverbase
Package serverbase holds shared types and helpers used by the server package and its sub-packages (http, socks), breaking what would otherwise be an import cycle.
|
Package serverbase holds shared types and helpers used by the server package and its sub-packages (http, socks), breaking what would otherwise be an import cycle. |
Click to show internal directories.
Click to hide internal directories.