|
|
@@ -3,6 +3,7 @@ package v4
|
|
|
import (
|
|
|
"github.com/golang/protobuf/proto"
|
|
|
|
|
|
+ "github.com/v2fly/v2ray-core/v5/common/net/packetaddr"
|
|
|
"github.com/v2fly/v2ray-core/v5/common/protocol"
|
|
|
"github.com/v2fly/v2ray-core/v5/common/serial"
|
|
|
"github.com/v2fly/v2ray-core/v5/infra/conf/cfgcommon"
|
|
|
@@ -10,13 +11,14 @@ import (
|
|
|
)
|
|
|
|
|
|
type ShadowsocksServerConfig struct {
|
|
|
- Cipher string `json:"method"`
|
|
|
- Password string `json:"password"`
|
|
|
- UDP bool `json:"udp"`
|
|
|
- Level byte `json:"level"`
|
|
|
- Email string `json:"email"`
|
|
|
- NetworkList *cfgcommon.NetworkList `json:"network"`
|
|
|
- IVCheck bool `json:"ivCheck"`
|
|
|
+ Cipher string `json:"method"`
|
|
|
+ Password string `json:"password"`
|
|
|
+ UDP bool `json:"udp"`
|
|
|
+ Level byte `json:"level"`
|
|
|
+ Email string `json:"email"`
|
|
|
+ NetworkList *cfgcommon.NetworkList `json:"network"`
|
|
|
+ IVCheck bool `json:"ivCheck"`
|
|
|
+ PacketEncoding string `json:"packetEncoding"`
|
|
|
}
|
|
|
|
|
|
func (v *ShadowsocksServerConfig) Build() (proto.Message, error) {
|
|
|
@@ -42,6 +44,13 @@ func (v *ShadowsocksServerConfig) Build() (proto.Message, error) {
|
|
|
Account: serial.ToTypedMessage(account),
|
|
|
}
|
|
|
|
|
|
+ switch v.PacketEncoding {
|
|
|
+ case "Packet":
|
|
|
+ config.PacketEncoding = packetaddr.PacketAddrType_Packet
|
|
|
+ case "", "None":
|
|
|
+ config.PacketEncoding = packetaddr.PacketAddrType_None
|
|
|
+ }
|
|
|
+
|
|
|
return config, nil
|
|
|
}
|
|
|
|