Skip to content

Reduce the requirements for the websocket path#3548

Open
0031400 wants to merge 41 commits intoSagerNet:dev-nextfrom
0031400:dev-next
Open

Reduce the requirements for the websocket path#3548
0031400 wants to merge 41 commits intoSagerNet:dev-nextfrom
0031400:dev-next

Conversation

@0031400
Copy link

@0031400 0031400 commented Nov 11, 2025

When the Sing-Box WebSocket server is behind another HTTP server, the request path may have a prefix, such as /sing-box.
In this case, Sing-Box can simplify its WebSocket path check: instead of requiring an exact match, it only needs to verify whether the request path contains the prefix.

Zephyruso and others added 30 commits November 4, 2025 21:31
We mistakenly believed that `libresolv`'s `search` function worked correctly in NetworkExtension, but it seems only `getaddrinfo` does.

This commit changes the behavior of the `local` DNS server in NetworkExtension to prefer DHCP, falling back to `getaddrinfo` if DHCP servers are unavailable.

It's worth noting that `prefer_go` does not disable DHCP since it respects Dial Fields, but `getaddrinfo` does the opposite. The new behavior only applies to NetworkExtension, not to all scenarios (primarily command-line binaries) as it did previously.

In addition, this commit also improves the DHCP DNS server to use the same robust query logic as `local`.
We do not have the `com.apple.developer.networking.multicast` entitlement and are unable to obtain it for non-technical reasons.
@nekohasekai nekohasekai force-pushed the dev-next branch 6 times, most recently from dfdd296 to 0a8b7a3 Compare January 2, 2026 11:23
@nekohasekai nekohasekai force-pushed the dev-next branch 8 times, most recently from 1bd617e to 0028b06 Compare January 12, 2026 12:44
@nekohasekai nekohasekai force-pushed the dev-next branch 6 times, most recently from 237887d to 5d67c13 Compare January 17, 2026 11:21
@nekohasekai nekohasekai force-pushed the dev-next branch 9 times, most recently from 4d60ac3 to c1dc6cb Compare February 1, 2026 04:30
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.

5 participants