Przeglądaj źródła

fix(shadowsocks): send per-user Account for SS-2022 runtime AddUser

SS-2022 user updates passed shadowsocks_2022.ServerConfig (the inbound-level
config) as the gRPC user account. The core rejects it with "Unknown account
type" because only shadowsocks_2022.Account implements AsAccount(), so live
AddUser failed and renewed/reset/added users stayed inactive until the 30s
auto-restart rebuilt the inbound from the DB.

Use shadowsocks_2022.Account{Key: password} (the per-user type, matching
xray-core's own multi-user builder) so changes apply immediately without a
restart.

Fixes #5597
MHSanaei 15 godzin temu
rodzic
commit
4c177f0cf1
1 zmienionych plików z 2 dodań i 3 usunięć
  1. 2 3
      internal/xray/api.go

+ 2 - 3
internal/xray/api.go

@@ -502,9 +502,8 @@ func (x *XrayAPI) AddUser(Protocol string, inboundTag string, user map[string]an
 				CipherType: ssCipherType,
 			})
 		} else {
-			account = serial.ToTypedMessage(&shadowsocks_2022.ServerConfig{
-				Key:   password,
-				Email: userEmail,
+			account = serial.ToTypedMessage(&shadowsocks_2022.Account{
+				Key: password,
 			})
 		}
 	case "hysteria":