This commit is contained in:
gVisor bot 2021-12-02 18:06:14 +08:00
parent 0b4e8e4bca
commit 4e0ae385a6

View File

@ -20,13 +20,14 @@ import (
)
var (
tcpQueue = make(chan C.ConnContext, 200)
udpQueue = make(chan *inbound.PacketAdapter, 200)
natTable = nat.New()
rules []C.Rule
proxies = make(map[string]C.Proxy)
providers map[string]provider.ProxyProvider
configMux sync.RWMutex
tcpQueue = make(chan C.ConnContext, 200)
udpQueue = make(chan *inbound.PacketAdapter, 200)
natTable = nat.New()
rules []C.Rule
proxies = make(map[string]C.Proxy)
providers map[string]provider.ProxyProvider
ruleProviders map[string]provider.RuleProvider
configMux sync.RWMutex
// Outbound Rule
mode = Rule
@ -57,9 +58,10 @@ func Rules() []C.Rule {
}
// UpdateRules handle update rules
func UpdateRules(newRules []C.Rule) {
func UpdateRules(newRules []C.Rule, rp map[string]provider.RuleProvider) {
configMux.Lock()
rules = newRules
ruleProviders = rp
configMux.Unlock()
}
@ -73,6 +75,10 @@ func Providers() map[string]provider.ProxyProvider {
return providers
}
func RuleProviders() map[string]provider.RuleProvider {
return ruleProviders
}
// UpdateProxies handle update proxies
func UpdateProxies(newProxies map[string]C.Proxy, newProviders map[string]provider.ProxyProvider) {
configMux.Lock()