From 51d350a212c7cb820766342409db0dd4c692d244 Mon Sep 17 00:00:00 2001 From: Benoit Chesneau Date: Fri, 3 Apr 2026 16:34:18 +0200 Subject: [PATCH] Close transport after WebSocket close handshake completes --- gunicorn/asgi/websocket.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gunicorn/asgi/websocket.py b/gunicorn/asgi/websocket.py index dbb2d2c4..0ff695bd 100644 --- a/gunicorn/asgi/websocket.py +++ b/gunicorn/asgi/websocket.py @@ -163,6 +163,9 @@ class WebSocketProtocol: self.closed = True self._close_event.set() + # Close the transport after close handshake + self.transport.close() + async def _send_accept(self, message): """Send WebSocket handshake accept response.""" # Get Sec-WebSocket-Key from headers