mirror of
https://github.com/Lakr233/vphone-cli.git
synced 2026-10-02 08:04:32 +08:00
The branch did not compile: the socket-pair initialiser delegated with self.init without being a convenience initialiser, and three tests had errors of their own (a shadowed binding, an argument out of order, and self captured before the loopback server finished initialising). Once built, four tests failed for reasons in the tests, not the stack: two encoded the peer's MSS field where the SYN-ACK carries advertisedMSS, one read its "before" count after a synchronous feed had already sent the data it waited for, and one expected a frame to arrive with no known guest MAC although the responder learns the MAC from that same frame. On a real guest, vphone-vm died with signal 13 shortly after boot: a forwarded TCP connection was written to after the server closed it. Every tunnel socket now sets F_SETNOSIGPIPE, and vphone-vm and vphone-cli ignore SIGPIPE for the whole process so a write to any vanished peer fails with EPIPE instead of taking the guest down. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>