Adapt new shadowsocks library.

1. Modify ss/ssu handler and connector
2. Add users to metadata of ss and ssu handler
This commit is contained in:
RMT
2025-11-05 21:26:24 +08:00
committed by ginuerzh
parent d2cc07d3ac
commit 0c97db3c05
12 changed files with 372 additions and 192 deletions
+11
View File
@@ -8,6 +8,7 @@ import (
"github.com/go-gost/core/bypass"
mdata "github.com/go-gost/core/metadata"
"github.com/go-gost/go-shadowsocks2/core"
mdutil "github.com/go-gost/x/metadata/util"
"github.com/go-gost/x/registry"
)
@@ -26,6 +27,8 @@ type metadata struct {
privateKey crypto.PrivateKey
alpn string
mitmBypass bypass.Bypass
users []core.UserConfig
}
func (h *ssHandler) parseMetadata(md mdata.Metadata) (err error) {
@@ -34,6 +37,14 @@ func (h *ssHandler) parseMetadata(md mdata.Metadata) (err error) {
h.md.readTimeout = 15 * time.Second
}
usersMap := mdutil.GetStringMapString(md, "users")
for name, pass := range usersMap {
h.md.users = append(h.md.users, core.UserConfig{
Name: name,
Password: pass,
})
}
h.md.key = mdutil.GetString(md, "key")
h.md.hash = mdutil.GetString(md, "hash")