diff options
| author | coletdjnz <coletdjnz@protonmail.com> | 2024-07-14 11:22:43 +1200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-14 11:22:43 +1200 |
| commit | 150ecc45d9cacc919550c13b04fd998ac5103a6b (patch) | |
| tree | 88f2e04b6e7fdc0d2f49a43984bc1ff0327773b3 /yt_dlp/networking/_websockets.py | |
| parent | 8b8b442cb005a8d85315f301615f83fb736b967a (diff) | |
[networking] Add `legacy_ssl` request extension (#10448)
Supported by Urllib, Requests and Websockets request handlers. Ignored by CurlCFFI.
Also added couple cookie-related tests.
Authored by: coletdjnz
Diffstat (limited to 'yt_dlp/networking/_websockets.py')
| -rw-r--r-- | yt_dlp/networking/_websockets.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/yt_dlp/networking/_websockets.py b/yt_dlp/networking/_websockets.py index 15db4fe43..492af1154 100644 --- a/yt_dlp/networking/_websockets.py +++ b/yt_dlp/networking/_websockets.py @@ -118,6 +118,7 @@ class WebsocketsRH(WebSocketRequestHandler): super()._check_extensions(extensions) extensions.pop('timeout', None) extensions.pop('cookiejar', None) + extensions.pop('legacy_ssl', None) def close(self): # Remove the logging handler that contains a reference to our logger @@ -154,13 +155,14 @@ class WebsocketsRH(WebSocketRequestHandler): address=(wsuri.host, wsuri.port), **create_conn_kwargs, ) + ssl_ctx = self._make_sslcontext(legacy_ssl_support=request.extensions.get('legacy_ssl')) conn = websockets.sync.client.connect( sock=sock, uri=request.url, additional_headers=headers, open_timeout=timeout, user_agent_header=None, - ssl_context=self._make_sslcontext() if wsuri.secure else None, + ssl_context=ssl_ctx if wsuri.secure else None, close_timeout=0, # not ideal, but prevents yt-dlp hanging ) return WebsocketsResponseAdapter(conn, url=request.url) |
