Highlights
🐛 RSD connections fail instead of hanging when the peer info never arrives
RemoteServiceDiscoveryService.connect() waited forever for the device's peer info, the first multi-KB reply on the connection. A tunnel that loses large packets got through the small RemoteXPC handshake and then stalled there without a word (#2068). It now raises RemoteXPCHandshakeTimeoutError after 10 seconds, like the handshake step before it.
🐛 The userspace tunnel says why a packet from the device was dropped
UserspaceTun.write() swallowed every error while handing a packet from the device to the userspace stack. A full buffer is still dropped silently, since TCP recovers. Any other error, such as EMSGSIZE, fails again on every retransmission and stalls the connection, so it is now logged once.
What's Changed
- 0dbd8c1 userspace_tunnel: Warn when a packet from the device can't reach the stack (#2069) (@doronz88)
- 43981fb remote_service_discovery: Time out when the peer info never arrives (#2069) (@doronz88)
Full Changelog: v11.40.0...v11.40.1