Skip to content

fix: honor proxy settings for relay websockets - #3284

Open
M4n5ter wants to merge 2 commits into
block:mainfrom
M4n5ter:fix/proxy-aware-relay-websockets
Open

fix: honor proxy settings for relay websockets#3284
M4n5ter wants to merge 2 commits into
block:mainfrom
M4n5ter:fix/proxy-aware-relay-websockets

Conversation

@M4n5ter

@M4n5ter M4n5ter commented Jul 28, 2026

Copy link
Copy Markdown

Summary

  • add a shared proxy-aware WebSocket connector that reads HTTP_PROXY, HTTPS_PROXY, ALL_PROXY, and NO_PROXY
  • discover static Windows and macOS system proxy settings, with HTTP CONNECT and SOCKS4/5 tunnel support
  • normalize Windows per-protocol ProxyServer lists before building the shared matcher
  • keep localhost and loopback relay URLs direct so the default local relay remains unchanged
  • use the shared connector across Desktop relay, pairing, huddle audio, buzz-acp, buzz-pairing-cli, and buzz-ws-client paths
  • keep proxy credentials out of connection errors and preserve DNS error classification through connector context

Related issue

Fixes #3281.

Testing

  • cargo fmt --all -- --check
  • cargo fmt --manifest-path desktop/src-tauri/Cargo.toml --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test -p buzz-ws-client
  • cargo test -p buzz-acp
  • cargo check -p buzz-pairing-cli -p buzz-cli
  • cargo deny check
  • cargo zigbuild -p buzz-ws-client --lib --target x86_64-pc-windows-gnu

The connector regression tests exercise direct loopback bypass, authenticated HTTP CONNECT without local target DNS, SOCKS5h remote DNS, proxy credential redaction, Windows per-protocol proxy parsing, and nested DNS error classification. Desktop Tauri compile/tests were not run locally because this WSL host lacks the required GTK/WebKit development packages.

@M4n5ter
M4n5ter requested a review from a team as a code owner July 28, 2026 08:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Desktop and buzz-acp relay WebSocket connections ignore proxy settings

1 participant