mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Parse Connection header properly when checking for upgrade to WebSocket
This commit is contained in:
parent
d7180443da
commit
104e97367c
@ -269,10 +269,10 @@ class WebSocketConnection(HTTPConnection):
|
||||
self.stop_reading = False
|
||||
|
||||
def finalize_headers(self, inheaders):
|
||||
upgrade = inheaders.get('Upgrade', None)
|
||||
upgrade = inheaders.get('Upgrade', '')
|
||||
key = inheaders.get('Sec-WebSocket-Key', None)
|
||||
conn = inheaders.get('Connection', None)
|
||||
if key is None or upgrade.lower() != 'websocket' or conn != 'Upgrade':
|
||||
conn = {x.strip().lower() for x in inheaders.get('Connection', '').split(',')}
|
||||
if key is None or upgrade.lower() != 'websocket' or 'upgrade' not in conn:
|
||||
return HTTPConnection.finalize_headers(self, inheaders)
|
||||
ver = inheaders.get('Sec-WebSocket-Version', 'Unknown')
|
||||
try:
|
||||
|
Loading…
x
Reference in New Issue
Block a user