+// VxlanAddDelTunnelV2 defines message 'vxlan_add_del_tunnel_v2'.
+type VxlanAddDelTunnelV2 struct {
+ IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"`
+ Instance uint32 `binapi:"u32,name=instance,default=4294967295" json:"instance,omitempty"`
+ SrcAddress ip_types.Address `binapi:"address,name=src_address" json:"src_address,omitempty"`
+ DstAddress ip_types.Address `binapi:"address,name=dst_address" json:"dst_address,omitempty"`
+ SrcPort uint16 `binapi:"u16,name=src_port" json:"src_port,omitempty"`
+ DstPort uint16 `binapi:"u16,name=dst_port" json:"dst_port,omitempty"`
+ McastSwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=mcast_sw_if_index" json:"mcast_sw_if_index,omitempty"`
+ EncapVrfID uint32 `binapi:"u32,name=encap_vrf_id" json:"encap_vrf_id,omitempty"`
+ DecapNextIndex uint32 `binapi:"u32,name=decap_next_index" json:"decap_next_index,omitempty"`
+ Vni uint32 `binapi:"u32,name=vni" json:"vni,omitempty"`
+}
+
+func (m *VxlanAddDelTunnelV2) Reset() { *m = VxlanAddDelTunnelV2{} }
+func (*VxlanAddDelTunnelV2) GetMessageName() string { return "vxlan_add_del_tunnel_v2" }
+func (*VxlanAddDelTunnelV2) GetCrcString() string { return "4f223f40" }
+func (*VxlanAddDelTunnelV2) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *VxlanAddDelTunnelV2) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 1 // m.IsAdd
+ size += 4 // m.Instance
+ size += 1 // m.SrcAddress.Af
+ size += 1 * 16 // m.SrcAddress.Un
+ size += 1 // m.DstAddress.Af
+ size += 1 * 16 // m.DstAddress.Un
+ size += 2 // m.SrcPort
+ size += 2 // m.DstPort
+ size += 4 // m.McastSwIfIndex
+ size += 4 // m.EncapVrfID
+ size += 4 // m.DecapNextIndex
+ size += 4 // m.Vni
+ return size
+}
+func (m *VxlanAddDelTunnelV2) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeBool(m.IsAdd)
+ buf.EncodeUint32(m.Instance)
+ buf.EncodeUint8(uint8(m.SrcAddress.Af))
+ buf.EncodeBytes(m.SrcAddress.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(uint8(m.DstAddress.Af))
+ buf.EncodeBytes(m.DstAddress.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint16(m.SrcPort)
+ buf.EncodeUint16(m.DstPort)
+ buf.EncodeUint32(uint32(m.McastSwIfIndex))
+ buf.EncodeUint32(m.EncapVrfID)
+ buf.EncodeUint32(m.DecapNextIndex)
+ buf.EncodeUint32(m.Vni)
+ return buf.Bytes(), nil
+}
+func (m *VxlanAddDelTunnelV2) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.IsAdd = buf.DecodeBool()
+ m.Instance = buf.DecodeUint32()
+ m.SrcAddress.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.SrcAddress.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.DstAddress.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.DstAddress.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.SrcPort = buf.DecodeUint16()
+ m.DstPort = buf.DecodeUint16()
+ m.McastSwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.EncapVrfID = buf.DecodeUint32()
+ m.DecapNextIndex = buf.DecodeUint32()
+ m.Vni = buf.DecodeUint32()
+ return nil
+}
+
+// VxlanAddDelTunnelV2Reply defines message 'vxlan_add_del_tunnel_v2_reply'.
+type VxlanAddDelTunnelV2Reply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
+}
+
+func (m *VxlanAddDelTunnelV2Reply) Reset() { *m = VxlanAddDelTunnelV2Reply{} }
+func (*VxlanAddDelTunnelV2Reply) GetMessageName() string { return "vxlan_add_del_tunnel_v2_reply" }
+func (*VxlanAddDelTunnelV2Reply) GetCrcString() string { return "5383d31f" }
+func (*VxlanAddDelTunnelV2Reply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *VxlanAddDelTunnelV2Reply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 4 // m.SwIfIndex
+ return size
+}
+func (m *VxlanAddDelTunnelV2Reply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ return buf.Bytes(), nil
+}
+func (m *VxlanAddDelTunnelV2Reply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ return nil
+}
+
+// VxlanAddDelTunnelV3 defines message 'vxlan_add_del_tunnel_v3'.
+type VxlanAddDelTunnelV3 struct {
+ IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"`
+ Instance uint32 `binapi:"u32,name=instance,default=4294967295" json:"instance,omitempty"`
+ SrcAddress ip_types.Address `binapi:"address,name=src_address" json:"src_address,omitempty"`
+ DstAddress ip_types.Address `binapi:"address,name=dst_address" json:"dst_address,omitempty"`
+ SrcPort uint16 `binapi:"u16,name=src_port" json:"src_port,omitempty"`
+ DstPort uint16 `binapi:"u16,name=dst_port" json:"dst_port,omitempty"`
+ McastSwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=mcast_sw_if_index" json:"mcast_sw_if_index,omitempty"`
+ EncapVrfID uint32 `binapi:"u32,name=encap_vrf_id" json:"encap_vrf_id,omitempty"`
+ DecapNextIndex uint32 `binapi:"u32,name=decap_next_index" json:"decap_next_index,omitempty"`
+ Vni uint32 `binapi:"u32,name=vni" json:"vni,omitempty"`
+ IsL3 bool `binapi:"bool,name=is_l3,default=false" json:"is_l3,omitempty"`
+}
+
+func (m *VxlanAddDelTunnelV3) Reset() { *m = VxlanAddDelTunnelV3{} }
+func (*VxlanAddDelTunnelV3) GetMessageName() string { return "vxlan_add_del_tunnel_v3" }
+func (*VxlanAddDelTunnelV3) GetCrcString() string { return "0072b037" }
+func (*VxlanAddDelTunnelV3) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *VxlanAddDelTunnelV3) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 1 // m.IsAdd
+ size += 4 // m.Instance
+ size += 1 // m.SrcAddress.Af
+ size += 1 * 16 // m.SrcAddress.Un
+ size += 1 // m.DstAddress.Af
+ size += 1 * 16 // m.DstAddress.Un
+ size += 2 // m.SrcPort
+ size += 2 // m.DstPort
+ size += 4 // m.McastSwIfIndex
+ size += 4 // m.EncapVrfID
+ size += 4 // m.DecapNextIndex
+ size += 4 // m.Vni
+ size += 1 // m.IsL3
+ return size
+}
+func (m *VxlanAddDelTunnelV3) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeBool(m.IsAdd)
+ buf.EncodeUint32(m.Instance)
+ buf.EncodeUint8(uint8(m.SrcAddress.Af))
+ buf.EncodeBytes(m.SrcAddress.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(uint8(m.DstAddress.Af))
+ buf.EncodeBytes(m.DstAddress.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint16(m.SrcPort)
+ buf.EncodeUint16(m.DstPort)
+ buf.EncodeUint32(uint32(m.McastSwIfIndex))
+ buf.EncodeUint32(m.EncapVrfID)
+ buf.EncodeUint32(m.DecapNextIndex)
+ buf.EncodeUint32(m.Vni)
+ buf.EncodeBool(m.IsL3)
+ return buf.Bytes(), nil
+}
+func (m *VxlanAddDelTunnelV3) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.IsAdd = buf.DecodeBool()
+ m.Instance = buf.DecodeUint32()
+ m.SrcAddress.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.SrcAddress.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.DstAddress.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.DstAddress.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.SrcPort = buf.DecodeUint16()
+ m.DstPort = buf.DecodeUint16()
+ m.McastSwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.EncapVrfID = buf.DecodeUint32()
+ m.DecapNextIndex = buf.DecodeUint32()
+ m.Vni = buf.DecodeUint32()
+ m.IsL3 = buf.DecodeBool()
+ return nil
+}
+
+// VxlanAddDelTunnelV3Reply defines message 'vxlan_add_del_tunnel_v3_reply'.
+type VxlanAddDelTunnelV3Reply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
+}
+
+func (m *VxlanAddDelTunnelV3Reply) Reset() { *m = VxlanAddDelTunnelV3Reply{} }
+func (*VxlanAddDelTunnelV3Reply) GetMessageName() string { return "vxlan_add_del_tunnel_v3_reply" }
+func (*VxlanAddDelTunnelV3Reply) GetCrcString() string { return "5383d31f" }
+func (*VxlanAddDelTunnelV3Reply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *VxlanAddDelTunnelV3Reply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 4 // m.SwIfIndex
+ return size
+}
+func (m *VxlanAddDelTunnelV3Reply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ return buf.Bytes(), nil
+}
+func (m *VxlanAddDelTunnelV3Reply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ return nil
+}
+