Xray-core/proxy
yuhan6665 42aea01fb5
Core: Add mutex to injection resolution (#4206)
* Revert "Add RequireFeaturesAsync() that works regardless order of app init"

* Add mutex to injection resolution

- Turns out we already support async DI resolution regardless of feature ordering
Previous code contain a race condition causing some resolution is lost
- Note that the new mutex cover s.pendingResolutions and s.features
but must not cover callbackResolution() due to deadlock
- Refactor some method names and simplify code

* Add OptionalFeatures injection

For example OptionalFeatures() is useful for fakedns module
2024-12-26 12:55:12 +00:00
..
blackhole Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00
dns Core: Add mutex to injection resolution (#4206) 2024-12-26 12:55:12 +00:00
dokodemo Chore: Generate *.pb.go files with protoc v5.28.2 2024-10-16 04:06:21 +00:00
freedom Chore: Generate *.pb.go files with protoc v5.28.2 2024-10-16 04:06:21 +00:00
http API: Add new Get Inbound User (#3644) 2024-11-03 00:25:23 -04:00
loopback Chore: Generate *.pb.go files with protoc v5.28.2 2024-10-16 04:06:21 +00:00
shadowsocks Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00
shadowsocks_2022 Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00
socks Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00
trojan Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00
vless Chore: Improved log messaging (#4050) 2024-11-25 11:16:29 -05:00
vmess Chore: Use a more direct and less error-prone return value (#4008) 2024-11-12 10:44:41 -05:00
wireguard WireGuard inbound: Add missing inbound session information back (#4126) 2024-12-06 23:50:26 +00:00
proxy.go Chore: Run gofmt (#3990) 2024-11-09 11:16:11 +00:00