{"version":"2.1.222","anchor":"tunnel-sockets-are-destroyed-on-protocol-violations","canonical_anchor":"tunnel-sockets-are-destroyed-on-protocol-violations","heading":"Tunnel sockets are destroyed on protocol violations","tier":"notice","area":"Elsewhere","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.222\/e\/tunnel-sockets-are-destroyed-on-protocol-violations","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.222","markdown":"### Tunnel sockets are destroyed on protocol violations\n\nMisbehaving tunnel connections are torn down properly instead of leaving stuck half-open sockets behind.\n\n**What**\n\nThe local tunnel now treats data arriving before HELLO_ACK as a protocol error and tears the socket down.\n\n**Details**\n\n- Error and close paths destroy the socket rather than half-closing it.\n- This applies whether or not the connection negotiated v2, so a stuck half-open socket is no longer left behind.\n\n**Evidence**\n\n`server sent data before HELLO_ACK`\n\n- Area: Elsewhere\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 0\/5"}