pub struct Args {Show 32 fields
pub host: IpAddr,
pub port: u16,
pub port_explicit: bool,
pub config: Option<PathBuf>,
pub api_key: Option<String>,
pub no_auth: bool,
pub require_auth: bool,
pub capabilities: Vec<String>,
pub preset: Option<String>,
pub no_rate_limit: bool,
pub tunnel: bool,
pub tunnel_command: Option<String>,
pub relay: bool,
pub relay_url: Option<String>,
pub enroll_token: Option<String>,
pub public_base: Option<String>,
pub device_name: Option<String>,
pub tls_cert: Option<PathBuf>,
pub tls_key: Option<PathBuf>,
pub tls_self_signed: bool,
pub relay_fingerprint: Option<String>,
pub relay_ca: Option<PathBuf>,
pub allow_hosts: Vec<String>,
pub audit_log: Option<PathBuf>,
pub audit_max_bytes: Option<u64>,
pub cors_allow_any: bool,
pub log_level: Option<String>,
pub version: bool,
pub help: bool,
pub check_update: bool,
pub update: bool,
pub no_update_check: bool,
}Expand description
Command-line arguments.
Fields§
§host: IpAddrHost address to bind to.
port: u16Port to listen on.
port_explicit: boolWhether the port was stated rather than defaulted.
A relay-attached device serves only itself on loopback, so the port is an implementation detail there — but only if the user did not ask for one.
config: Option<PathBuf>Path to configuration file.
api_key: Option<String>API key for authentication (overrides config file).
no_auth: boolDisable authentication.
require_auth: boolRequire authentication, auto-generating an API key if none is provided.
capabilities: Vec<String>Capability strings scoping the issued token(s) (empty = full-control).
preset: Option<String>Role preset scoping the issued token(s) (operator/read-only/full-control).
no_rate_limit: boolDisable rate limiting.
tunnel: boolExpose the server through a Cloudflare quick tunnel.
tunnel_command: Option<String>Expose the server through an arbitrary tunnel command.
relay: boolRun as a relay server (shell-tunnel relay) instead of a shell gateway.
relay_url: Option<String>Attach to this relay instead of publishing through a tunnel.
enroll_token: Option<String>Shared secret devices present to attach to this relay.
public_base: Option<String>Public base URL this relay is reachable at.
device_name: Option<String>Stable name to claim on the relay (keeps one URL across reconnects).
tls_cert: Option<PathBuf>PEM certificate chain for serving HTTPS directly.
tls_key: Option<PathBuf>PEM private key matching tls_cert.
tls_self_signed: boolGenerate a self-signed certificate when none is present.
relay_fingerprint: Option<String>Expect exactly this certificate fingerprint from the relay.
relay_ca: Option<PathBuf>Extra PEM certificate authority to trust when dialling a relay.
allow_hosts: Vec<String>Additional host names this server answers to.
audit_log: Option<PathBuf>Append an audit trail of executions and refusals to this file.
audit_max_bytes: Option<u64>Rotate the audit trail once it passes this many bytes.
cors_allow_any: boolAllow any CORS origin (permissive; opt-in for browser UIs).
log_level: Option<String>Log level (error, warn, info, debug, trace).
version: boolShow version and exit.
help: boolShow help and exit.
check_update: boolCheck for updates and exit.
update: boolPerform self-update and exit.
no_update_check: boolDisable automatic update check on startup.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Args
impl RefUnwindSafe for Args
impl Send for Args
impl Sync for Args
impl Unpin for Args
impl UnsafeUnpin for Args
impl UnwindSafe for Args
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.