feat(client): add Windows route snapshot helper
Add `lanparty-client-route` as the Win32 boundary for route-table work. The first API is intentionally read-only: `best_route_to` wraps `GetBestRoute2` and returns the selected source address, next hop, route prefix, interface index/LUID, and route metric for a relay destination IP. This keeps the route-protection work separate from the QUIC client binary, so we can typecheck the Windows IP Helper calls on this Linux host without pulling in the `ring` build path that currently blocks full Windows binary checks. Actual route pinning and metric mutation remain later slices. Test Plan: - cargo fmt --check - cargo test --workspace - cargo clippy --workspace --all-targets -- -D warnings - cargo check -p lanparty-client-route --target x86_64-pc-windows-msvc - cargo clippy -p lanparty-client-route --target x86_64-pc-windows-msvc -- -D warnings - git diff --check Refs: PLAN.md
This commit is contained in:
@@ -8,6 +8,7 @@ Monorepo for a Layer 2 over QUIC LAN party bridge.
|
||||
- `lanparty-ctrl`: control-plane messages (join/hello/role/version).
|
||||
- `lanparty-obs`: shared diagnostics/logging event models.
|
||||
- `lanparty-client-core`: platform-agnostic client session state.
|
||||
- `lanparty-client-route`: Windows relay-route inspection.
|
||||
- `lanparty-client-tap`: TAP-Windows6 adapter discovery and frame I/O.
|
||||
- `lanparty-client-win`: Windows TAP + route/metric handling binary.
|
||||
- `lanparty-gateway`: Linux AF_PACKET gateway binary.
|
||||
@@ -48,6 +49,14 @@ Platform-neutral remote client relay session:
|
||||
- welcome/reject handling with assigned peer id and effective TAP MTU
|
||||
- Ethernet frame send/receive helpers over QUIC DATAGRAM
|
||||
|
||||
### `lanparty-client-route`
|
||||
|
||||
Windows route-table boundary:
|
||||
|
||||
- read-only best-route lookup for a relay destination IP
|
||||
- selected source address, next hop, interface index/LUID, prefix, and metric
|
||||
- non-Windows builds return a clear unsupported-platform error
|
||||
|
||||
### `lanparty-client-tap`
|
||||
|
||||
Windows TAP adapter boundary:
|
||||
|
||||
Reference in New Issue
Block a user