This commit introduces a new option to specify the IP address where tunnels
will listen, which may be different from the control server's IP address.
A new flag `--tunnels-addr` can specify the IP addr to bind to. Default is set
to `0.0.0.0` which is the previous behavior.
This commit adds the ability to bind the control server to a specific network
interface via an additional flag `--control-addr`.
By default it listens on `0.0.0.0` which is the previous behaviour.
* using stream
* fix tests
* 💄
* 💄 fix review comments
* clean up buffered data
* 💄 fix review comments
* Refactor Delimited to be its own struct
* Add very_long_frame test to ensure behavior
Co-authored-by: Eric Zhang <ekzhang1@gmail.com>
* Deps: use specific Tokio features
* Deps: run `cargo update`
* Refactor: move CLI-parsing outside Tokio runtime
* Fix: use `parse` over `try_parse`
Clap does special things behind the scenes before it exits.
* Refactor: use `tokio::main` macro for convenience
* Add a configuration to allow forward to a different local host
* Minor documentation / formatting change
Co-authored-by: Eric Zhang <ekzhang1@gmail.com>
* Kill connections immediately on missing or close
* Add timeout to initial protocol messages
* Add low-level tracing for JSON messages
* Add timeout to initial TCP connections