diff --git a/README.md b/README.md index 74b63bd..1c7665e 100644 --- a/README.md +++ b/README.md @@ -247,10 +247,10 @@ periodic diagnostics refresh the TAP unicast IP so DHCP results that arrive after bridging starts become visible in later status lines. Each snapshot also emits short user-facing lines such as relay/gateway connection status, relay-route and TAP readiness warnings, DHCP address presence, relay RTT, and -broadcast-flow confirmation when those signals are observed. Malformed TAP -frames, jumbo frames, and TAP frames whose encoded datagrams exceed the +broadcast-flow confirmation when those signals are observed. Malformed frames +read from TAP, jumbo frames, and TAP frames whose encoded datagrams exceed the negotiated QUIC budget are counted and dropped before relay send without -stopping the bridge. +stopping the bridge; TAP device read/write errors still stop the bridge. Relay lifecycle events are logged as they arrive, including gateway joins and peer leaves. The client remembers peer identities from join and catch-up events so later leave logs can identify a disconnected LAN gateway or client MAC when diff --git a/crates/lanparty-client-win/src/main.rs b/crates/lanparty-client-win/src/main.rs index 8753287..775f6ca 100644 --- a/crates/lanparty-client-win/src/main.rs +++ b/crates/lanparty-client-win/src/main.rs @@ -1019,9 +1019,7 @@ fn read_and_relay_tap_frame( relay_io: &ClientRelayIo, buffer: &mut [u8], ) -> Result<()> { - let len = tap - .read_ethernet_frame(buffer) - .context("failed to read TAP Ethernet frame")?; + let len = tap.read_frame(buffer).context("failed to read TAP frame")?; match relay_io .send_ethernet_with_outcome(&buffer[..len]) .context("failed to send TAP Ethernet frame to relay")?