feat(net): accept relay hostnames
PLAN.md describes the first client flow as entering a relay domain and room code, but the client and gateway CLIs only accepted socket-address literals. Add a small shared RelayEndpoint parser so bare hosts default to UDP/443 while IP literals and explicit host:port values stay supported. The runtime configs still store resolved SocketAddr values. That keeps the Windows route-pinning path on a concrete relay IP before TAP activation while avoiding duplicated endpoint grammar between client and gateway. The relay listen config reuses the same default port constant so UDP/443 has one source. README examples now use lanparty-relay.local and document the shared endpoint syntax. Test Plan: - cargo fmt --check - cargo test -p lanparty-net - cargo test -p lanparty-client-win \ accepts_relay_domain_with_default_port -- --nocapture - cargo test -p lanparty-gateway \ accepts_iface_alias_for_gateway_interface -- --nocapture - cargo test -p lanparty-net -p lanparty-client-win -p lanparty-gateway - cargo clippy -p lanparty-net -p lanparty-client-win -p lanparty-gateway \ --all-targets -- -D warnings - cargo test --workspace - cargo clippy --workspace --all-targets -- -D warnings - git diff --check Refs: PLAN.md
This commit is contained in:
@@ -8,6 +8,7 @@ anyhow.workspace = true
|
||||
bytes.workspace = true
|
||||
clap.workspace = true
|
||||
lanparty-ctrl = { path = "../lanparty-ctrl" }
|
||||
lanparty-net = { path = "../lanparty-net" }
|
||||
lanparty-obs = { path = "../lanparty-obs" }
|
||||
lanparty-proto = { path = "../lanparty-proto" }
|
||||
quinn.workspace = true
|
||||
|
||||
@@ -6,12 +6,11 @@ use std::{
|
||||
};
|
||||
|
||||
use clap::Parser;
|
||||
pub use lanparty_net::DEFAULT_RELAY_PORT;
|
||||
use thiserror::Error;
|
||||
|
||||
use crate::DEFAULT_MAX_CLIENTS_PER_ROOM;
|
||||
|
||||
pub const DEFAULT_RELAY_PORT: u16 = 443;
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Eq, Parser)]
|
||||
#[command(
|
||||
name = "lanparty-relay",
|
||||
|
||||
Reference in New Issue
Block a user