Websockets should prioritize SOCKS5 proxies over HTTP(S) proxies
Categories
(Core :: Networking: WebSockets, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox71 | --- | fixed |
People
(Reporter: bugzilla.mozilla.org, Assigned: michal)
References
(Regressed 1 open bug)
Details
(Whiteboard: [necko-triaged])
Attachments
(1 file)
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.4 Chrome/67.0.3396.87 Safari/537.36
Steps to reproduce:
- Configure HTTP, HTTPS, and SOCKS5 proxy in the Firefox proxy settings
- Use a websocket connection
2a. Visit: https://www.websocket.org/echo.html
2b. Click connect
Actual results:
Firefox uses the HTTP proxy, not the SOCKS5 proxy
Expected results:
Firefox should use the SOCKS5 proxy.
From RFC 6455, Section 4.1, requirement 3, page 15:
"NOTE: Implementations that do not expose explicit UI for selecting a proxy for WebSocket connections separate from other proxies are encouraged to use a SOCKS5 [RFC1928] proxy for WebSocket connections, if available, or failing that, to prefer the proxy configured for HTTPS connections over the proxy configured for HTTP connections."
This is critical in corporate environments where SOCKS5 may be an option, but web-traffic is traversing an HTTP/HTTPS proxy that is not compatable with Websockets.
Comment 1•5 years ago
|
||
Bugbug thinks this bug should belong to this component, but please revert this change in case of error.
Reporter | ||
Comment 3•5 years ago
|
||
I should also mention that the RFC also states that when using a proxy to connect, the "CONNECT" verb should be preferred over directly issuing the "GET" verb. Same section of the RFC.
This is the only form of WebSocket connectoin the Squid proxy can currently support.
Chromium prefers the SOCKS proxy, but also gets the CONNECT verb wrong: https://crbug.com/938977
Assignee | ||
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 4•5 years ago
|
||
Comment 6•5 years ago
|
||
bugherder |
Description
•