fix: provider auto update

This commit is contained in:
Skyxim
2022-05-08 00:04:16 +08:00
parent 663bf4fbb0
commit 2fbbf7519f
6 changed files with 30 additions and 14 deletions

View File

@ -78,8 +78,8 @@ func ApplyConfig(cfg *config.Config, force bool) {
updateSniffer(cfg.Sniffer)
updateHosts(cfg.Hosts)
updateDNS(cfg.DNS)
loadProxyProvider(cfg.Providers)
loadRuleProvider(cfg.RuleProviders)
loadProviders(cfg)
updateGeneral(cfg.General, force)
updateIPTables(cfg)
updateTun(cfg.Tun, cfg.DNS)
@ -89,6 +89,12 @@ func ApplyConfig(cfg *config.Config, force bool) {
log.SetLevel(cfg.General.LogLevel)
}
func loadProviders(cfg *config.Config) {
P.NewInner(tunnel.TCPIn())
loadProxyProvider(cfg.Providers)
loadRuleProvider(cfg.RuleProviders)
}
func GetGeneral() *config.General {
ports := P.GetPorts()
var authenticator []string
@ -188,7 +194,7 @@ func loadProvider(pv provider.Provider) {
log.Infoln("Start initial provider %s", (pv).Name())
}
if err := (pv).Initial(); err != nil {
if err := pv.Initial(); err != nil {
switch pv.Type() {
case provider.Proxy:
{