Add reserved to WireGuard config

Fixes https://github.com/XTLS/Xray-core/issues/1730
This commit is contained in:
RPRX 2023-03-02 16:55:42 +00:00 committed by GitHub
父節點 6526e74d49
當前提交 ccba465590
沒有發現已知的金鑰在資料庫的簽署中
GPG key ID: 4AEE18F83AFDEB23
共有 5 個文件被更改,包括 34 次插入12 次删除

查看文件

@ -52,6 +52,7 @@ type WireGuardConfig struct {
Peers []*WireGuardPeerConfig `json:"peers"`
MTU int `json:"mtu"`
NumWorkers int `json:"workers"`
Reserved []byte `json:"reserved"`
}
func (c *WireGuardConfig) Build() (proto.Message, error) {
@ -90,6 +91,11 @@ func (c *WireGuardConfig) Build() (proto.Message, error) {
// we don't need to process fallback manually
config.NumWorkers = int32(c.NumWorkers)
if len(c.Reserved) != 0 && len(c.Reserved) != 3 {
return nil, newError(`"reserved" should be empty or 3 bytes`)
}
config.Reserved = c.Reserved
return config, nil
}