diff options
Diffstat (limited to 'xray/inbound.go')
| -rw-r--r-- | xray/inbound.go | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/xray/inbound.go b/xray/inbound.go new file mode 100644 index 00000000..461c2ee7 --- /dev/null +++ b/xray/inbound.go @@ -0,0 +1,41 @@ +package xray + +import ( + "bytes" + "x-ui/util/json_util" +) + +type InboundConfig struct { + Listen json_util.RawMessage `json:"listen"` // listen 不能为空字符串 + Port int `json:"port"` + Protocol string `json:"protocol"` + Settings json_util.RawMessage `json:"settings"` + StreamSettings json_util.RawMessage `json:"streamSettings"` + Tag string `json:"tag"` + Sniffing json_util.RawMessage `json:"sniffing"` +} + +func (c *InboundConfig) Equals(other *InboundConfig) bool { + if !bytes.Equal(c.Listen, other.Listen) { + return false + } + if c.Port != other.Port { + return false + } + if c.Protocol != other.Protocol { + return false + } + if !bytes.Equal(c.Settings, other.Settings) { + return false + } + if !bytes.Equal(c.StreamSettings, other.StreamSettings) { + return false + } + if c.Tag != other.Tag { + return false + } + if !bytes.Equal(c.Sniffing, other.Sniffing) { + return false + } + return true +} |
