From cb868c7411a7a5f17c08727a753e43befb243735 Mon Sep 17 00:00:00 2001 From: Yuzuki616 Date: Fri, 25 Aug 2023 12:42:47 +0800 Subject: [PATCH] complete original config support for sing, fix DelUsers for vless --- core/sing/sing.go | 12 ++++++++++++ core/sing/user.go | 2 ++ 2 files changed, 14 insertions(+) diff --git a/core/sing/sing.go b/core/sing/sing.go index c40bc31..30bece9 100644 --- a/core/sing/sing.go +++ b/core/sing/sing.go @@ -3,6 +3,7 @@ package sing import ( "context" "fmt" + "github.com/goccy/go-json" "io" "os" "runtime/debug" @@ -41,6 +42,17 @@ func init() { func New(c *conf.CoreConfig) (vCore.Core, error) { options := option.Options{} + if len(c.SingConfig.OriginalPath) != 0 { + f, err := os.Open(c.SingConfig.OriginalPath) + if err != nil { + return nil, fmt.Errorf("open original config error: %s", err) + } + defer f.Close() + err = json.NewDecoder(f).Decode(options) + if err != nil { + return nil, fmt.Errorf("decode original config error: %s", err) + } + } options.Log = &option.LogOptions{ Disabled: c.SingConfig.LogConfig.Disabled, Level: c.SingConfig.LogConfig.Level, diff --git a/core/sing/user.go b/core/sing/user.go index dd476e8..23e7eea 100644 --- a/core/sing/user.go +++ b/core/sing/user.go @@ -98,6 +98,8 @@ func (b *Box) DelUsers(users []panel.UserInfo, tag string) error { switch i.Type() { case "vmess": del = i.(*inbound.VMess) + case "vless": + del = i.(*inbound.VLESS) case "shadowsocks": del = i.(*inbound.ShadowsocksMulti) case "trojan":