aboutsummaryrefslogtreecommitdiffstats
path: root/binapi/mpls/mpls.ba.go
diff options
context:
space:
mode:
Diffstat (limited to 'binapi/mpls/mpls.ba.go')
-rw-r--r--binapi/mpls/mpls.ba.go1126
1 files changed, 1126 insertions, 0 deletions
diff --git a/binapi/mpls/mpls.ba.go b/binapi/mpls/mpls.ba.go
new file mode 100644
index 0000000..4656a9a
--- /dev/null
+++ b/binapi/mpls/mpls.ba.go
@@ -0,0 +1,1126 @@
+// Code generated by GoVPP's binapi-generator. DO NOT EDIT.
+// versions:
+// binapi-generator: v0.4.0-dev
+// VPP: 20.05-release
+// source: /usr/share/vpp/api/core/mpls.api.json
+
+// Package mpls contains generated bindings for API file mpls.api.
+//
+// Contents:
+// 3 structs
+// 16 messages
+//
+package mpls
+
+import (
+ api "git.fd.io/govpp.git/api"
+ fib_types "git.fd.io/govpp.git/binapi/fib_types"
+ interface_types "git.fd.io/govpp.git/binapi/interface_types"
+ ip_types "git.fd.io/govpp.git/binapi/ip_types"
+ codec "git.fd.io/govpp.git/codec"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the GoVPP api package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// GoVPP api package needs to be updated.
+const _ = api.GoVppAPIPackageIsVersion2
+
+const (
+ APIFile = "mpls"
+ APIVersion = "1.1.1"
+ VersionCrc = 0xd83a030f
+)
+
+// MplsRoute defines type 'mpls_route'.
+type MplsRoute struct {
+ MrTableID uint32 `binapi:"u32,name=mr_table_id" json:"mr_table_id,omitempty"`
+ MrLabel uint32 `binapi:"u32,name=mr_label" json:"mr_label,omitempty"`
+ MrEos uint8 `binapi:"u8,name=mr_eos" json:"mr_eos,omitempty"`
+ MrEosProto uint8 `binapi:"u8,name=mr_eos_proto" json:"mr_eos_proto,omitempty"`
+ MrIsMulticast bool `binapi:"bool,name=mr_is_multicast" json:"mr_is_multicast,omitempty"`
+ MrNPaths uint8 `binapi:"u8,name=mr_n_paths" json:"-"`
+ MrPaths []fib_types.FibPath `binapi:"fib_path[mr_n_paths],name=mr_paths" json:"mr_paths,omitempty"`
+}
+
+// MplsTable defines type 'mpls_table'.
+type MplsTable struct {
+ MtTableID uint32 `binapi:"u32,name=mt_table_id" json:"mt_table_id,omitempty"`
+ MtName string `binapi:"string[64],name=mt_name" json:"mt_name,omitempty"`
+}
+
+// MplsTunnel defines type 'mpls_tunnel'.
+type MplsTunnel struct {
+ MtSwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=mt_sw_if_index" json:"mt_sw_if_index,omitempty"`
+ MtTunnelIndex uint32 `binapi:"u32,name=mt_tunnel_index" json:"mt_tunnel_index,omitempty"`
+ MtL2Only bool `binapi:"bool,name=mt_l2_only" json:"mt_l2_only,omitempty"`
+ MtIsMulticast bool `binapi:"bool,name=mt_is_multicast" json:"mt_is_multicast,omitempty"`
+ MtTag string `binapi:"string[64],name=mt_tag" json:"mt_tag,omitempty"`
+ MtNPaths uint8 `binapi:"u8,name=mt_n_paths" json:"-"`
+ MtPaths []fib_types.FibPath `binapi:"fib_path[mt_n_paths],name=mt_paths" json:"mt_paths,omitempty"`
+}
+
+// MplsIPBindUnbind defines message 'mpls_ip_bind_unbind'.
+type MplsIPBindUnbind struct {
+ MbMplsTableID uint32 `binapi:"u32,name=mb_mpls_table_id" json:"mb_mpls_table_id,omitempty"`
+ MbLabel uint32 `binapi:"u32,name=mb_label" json:"mb_label,omitempty"`
+ MbIPTableID uint32 `binapi:"u32,name=mb_ip_table_id" json:"mb_ip_table_id,omitempty"`
+ MbIsBind bool `binapi:"bool,name=mb_is_bind" json:"mb_is_bind,omitempty"`
+ MbPrefix ip_types.Prefix `binapi:"prefix,name=mb_prefix" json:"mb_prefix,omitempty"`
+}
+
+func (m *MplsIPBindUnbind) Reset() { *m = MplsIPBindUnbind{} }
+func (*MplsIPBindUnbind) GetMessageName() string { return "mpls_ip_bind_unbind" }
+func (*MplsIPBindUnbind) GetCrcString() string { return "48249a27" }
+func (*MplsIPBindUnbind) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsIPBindUnbind) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.MbMplsTableID
+ size += 4 // m.MbLabel
+ size += 4 // m.MbIPTableID
+ size += 1 // m.MbIsBind
+ size += 1 // m.MbPrefix.Address.Af
+ size += 1 * 16 // m.MbPrefix.Address.Un
+ size += 1 // m.MbPrefix.Len
+ return size
+}
+func (m *MplsIPBindUnbind) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.MbMplsTableID))
+ buf.EncodeUint32(uint32(m.MbLabel))
+ buf.EncodeUint32(uint32(m.MbIPTableID))
+ buf.EncodeBool(m.MbIsBind)
+ buf.EncodeUint8(uint8(m.MbPrefix.Address.Af))
+ buf.EncodeBytes(m.MbPrefix.Address.Un.XXX_UnionData[:], 0)
+ buf.EncodeUint8(uint8(m.MbPrefix.Len))
+ return buf.Bytes(), nil
+}
+func (m *MplsIPBindUnbind) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MbMplsTableID = buf.DecodeUint32()
+ m.MbLabel = buf.DecodeUint32()
+ m.MbIPTableID = buf.DecodeUint32()
+ m.MbIsBind = buf.DecodeBool()
+ m.MbPrefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.MbPrefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.MbPrefix.Len = buf.DecodeUint8()
+ return nil
+}
+
+// MplsIPBindUnbindReply defines message 'mpls_ip_bind_unbind_reply'.
+type MplsIPBindUnbindReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *MplsIPBindUnbindReply) Reset() { *m = MplsIPBindUnbindReply{} }
+func (*MplsIPBindUnbindReply) GetMessageName() string { return "mpls_ip_bind_unbind_reply" }
+func (*MplsIPBindUnbindReply) GetCrcString() string { return "e8d4e804" }
+func (*MplsIPBindUnbindReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsIPBindUnbindReply) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Retval
+ return size
+}
+func (m *MplsIPBindUnbindReply) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Retval))
+ return buf.Bytes(), nil
+}
+func (m *MplsIPBindUnbindReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = int32(buf.DecodeUint32())
+ return nil
+}
+
+// MplsRouteAddDel defines message 'mpls_route_add_del'.
+type MplsRouteAddDel struct {
+ MrIsAdd bool `binapi:"bool,name=mr_is_add" json:"mr_is_add,omitempty"`
+ MrIsMultipath bool `binapi:"bool,name=mr_is_multipath" json:"mr_is_multipath,omitempty"`
+ MrRoute MplsRoute `binapi:"mpls_route,name=mr_route" json:"mr_route,omitempty"`
+}
+
+func (m *MplsRouteAddDel) Reset() { *m = MplsRouteAddDel{} }
+func (*MplsRouteAddDel) GetMessageName() string { return "mpls_route_add_del" }
+func (*MplsRouteAddDel) GetCrcString() string { return "343cff54" }
+func (*MplsRouteAddDel) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsRouteAddDel) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 1 // m.MrIsAdd
+ size += 1 // m.MrIsMultipath
+ size += 4 // m.MrRoute.MrTableID
+ size += 4 // m.MrRoute.MrLabel
+ size += 1 // m.MrRoute.MrEos
+ size += 1 // m.MrRoute.MrEosProto
+ size += 1 // m.MrRoute.MrIsMulticast
+ size += 1 // m.MrRoute.MrNPaths
+ for j2 := 0; j2 < len(m.MrRoute.MrPaths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.MrRoute.MrPaths) {
+ s2 = m.MrRoute.MrPaths[j2]
+ }
+ size += 4 // s2.SwIfIndex
+ size += 4 // s2.TableID
+ size += 4 // s2.RpfID
+ size += 1 // s2.Weight
+ size += 1 // s2.Preference
+ size += 4 // s2.Type
+ size += 4 // s2.Flags
+ size += 4 // s2.Proto
+ size += 1 * 16 // s2.Nh.Address
+ size += 4 // s2.Nh.ViaLabel
+ size += 4 // s2.Nh.ObjID
+ size += 4 // s2.Nh.ClassifyTableIndex
+ size += 1 // s2.NLabels
+ for j3 := 0; j3 < 16; j3++ {
+ var s3 fib_types.FibMplsLabel
+ _ = s3
+ if j3 < len(s2.LabelStack) {
+ s3 = s2.LabelStack[j3]
+ }
+ size += 1 // s3.IsUniform
+ size += 4 // s3.Label
+ size += 1 // s3.TTL
+ size += 1 // s3.Exp
+ }
+ }
+ return size
+}
+func (m *MplsRouteAddDel) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeBool(m.MrIsAdd)
+ buf.EncodeBool(m.MrIsMultipath)
+ buf.EncodeUint32(uint32(m.MrRoute.MrTableID))
+ buf.EncodeUint32(uint32(m.MrRoute.MrLabel))
+ buf.EncodeUint8(uint8(m.MrRoute.MrEos))
+ buf.EncodeUint8(uint8(m.MrRoute.MrEosProto))
+ buf.EncodeBool(m.MrRoute.MrIsMulticast)
+ buf.EncodeUint8(uint8(len(m.MrRoute.MrPaths)))
+ for j1 := 0; j1 < len(m.MrRoute.MrPaths); j1++ {
+ var v1 fib_types.FibPath
+ if j1 < len(m.MrRoute.MrPaths) {
+ v1 = m.MrRoute.MrPaths[j1]
+ }
+ buf.EncodeUint32(uint32(v1.SwIfIndex))
+ buf.EncodeUint32(uint32(v1.TableID))
+ buf.EncodeUint32(uint32(v1.RpfID))
+ buf.EncodeUint8(uint8(v1.Weight))
+ buf.EncodeUint8(uint8(v1.Preference))
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 0)
+ buf.EncodeUint32(uint32(v1.Nh.ViaLabel))
+ buf.EncodeUint32(uint32(v1.Nh.ObjID))
+ buf.EncodeUint32(uint32(v1.Nh.ClassifyTableIndex))
+ buf.EncodeUint8(uint8(v1.NLabels))
+ for j2 := 0; j2 < 16; j2++ {
+ var v2 fib_types.FibMplsLabel
+ if j2 < len(v1.LabelStack) {
+ v2 = v1.LabelStack[j2]
+ }
+ buf.EncodeUint8(uint8(v2.IsUniform))
+ buf.EncodeUint32(uint32(v2.Label))
+ buf.EncodeUint8(uint8(v2.TTL))
+ buf.EncodeUint8(uint8(v2.Exp))
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *MplsRouteAddDel) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MrIsAdd = buf.DecodeBool()
+ m.MrIsMultipath = buf.DecodeBool()
+ m.MrRoute.MrTableID = buf.DecodeUint32()
+ m.MrRoute.MrLabel = buf.DecodeUint32()
+ m.MrRoute.MrEos = buf.DecodeUint8()
+ m.MrRoute.MrEosProto = buf.DecodeUint8()
+ m.MrRoute.MrIsMulticast = buf.DecodeBool()
+ m.MrRoute.MrNPaths = buf.DecodeUint8()
+ m.MrRoute.MrPaths = make([]fib_types.FibPath, int(m.MrRoute.MrNPaths))
+ for j1 := 0; j1 < len(m.MrRoute.MrPaths); j1++ {
+ m.MrRoute.MrPaths[j1].SwIfIndex = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].TableID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].RpfID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Weight = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].Preference = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.MrRoute.MrPaths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.MrRoute.MrPaths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.MrRoute.MrPaths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.MrRoute.MrPaths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.MrRoute.MrPaths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// MplsRouteAddDelReply defines message 'mpls_route_add_del_reply'.
+type MplsRouteAddDelReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ StatsIndex uint32 `binapi:"u32,name=stats_index" json:"stats_index,omitempty"`
+}
+
+func (m *MplsRouteAddDelReply) Reset() { *m = MplsRouteAddDelReply{} }
+func (*MplsRouteAddDelReply) GetMessageName() string { return "mpls_route_add_del_reply" }
+func (*MplsRouteAddDelReply) GetCrcString() string { return "1992deab" }
+func (*MplsRouteAddDelReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsRouteAddDelReply) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Retval
+ size += 4 // m.StatsIndex
+ return size
+}
+func (m *MplsRouteAddDelReply) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Retval))
+ buf.EncodeUint32(uint32(m.StatsIndex))
+ return buf.Bytes(), nil
+}
+func (m *MplsRouteAddDelReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = int32(buf.DecodeUint32())
+ m.StatsIndex = buf.DecodeUint32()
+ return nil
+}
+
+// MplsRouteDetails defines message 'mpls_route_details'.
+type MplsRouteDetails struct {
+ MrRoute MplsRoute `binapi:"mpls_route,name=mr_route" json:"mr_route,omitempty"`
+}
+
+func (m *MplsRouteDetails) Reset() { *m = MplsRouteDetails{} }
+func (*MplsRouteDetails) GetMessageName() string { return "mpls_route_details" }
+func (*MplsRouteDetails) GetCrcString() string { return "d0ac384c" }
+func (*MplsRouteDetails) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsRouteDetails) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.MrRoute.MrTableID
+ size += 4 // m.MrRoute.MrLabel
+ size += 1 // m.MrRoute.MrEos
+ size += 1 // m.MrRoute.MrEosProto
+ size += 1 // m.MrRoute.MrIsMulticast
+ size += 1 // m.MrRoute.MrNPaths
+ for j2 := 0; j2 < len(m.MrRoute.MrPaths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.MrRoute.MrPaths) {
+ s2 = m.MrRoute.MrPaths[j2]
+ }
+ size += 4 // s2.SwIfIndex
+ size += 4 // s2.TableID
+ size += 4 // s2.RpfID
+ size += 1 // s2.Weight
+ size += 1 // s2.Preference
+ size += 4 // s2.Type
+ size += 4 // s2.Flags
+ size += 4 // s2.Proto
+ size += 1 * 16 // s2.Nh.Address
+ size += 4 // s2.Nh.ViaLabel
+ size += 4 // s2.Nh.ObjID
+ size += 4 // s2.Nh.ClassifyTableIndex
+ size += 1 // s2.NLabels
+ for j3 := 0; j3 < 16; j3++ {
+ var s3 fib_types.FibMplsLabel
+ _ = s3
+ if j3 < len(s2.LabelStack) {
+ s3 = s2.LabelStack[j3]
+ }
+ size += 1 // s3.IsUniform
+ size += 4 // s3.Label
+ size += 1 // s3.TTL
+ size += 1 // s3.Exp
+ }
+ }
+ return size
+}
+func (m *MplsRouteDetails) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.MrRoute.MrTableID))
+ buf.EncodeUint32(uint32(m.MrRoute.MrLabel))
+ buf.EncodeUint8(uint8(m.MrRoute.MrEos))
+ buf.EncodeUint8(uint8(m.MrRoute.MrEosProto))
+ buf.EncodeBool(m.MrRoute.MrIsMulticast)
+ buf.EncodeUint8(uint8(len(m.MrRoute.MrPaths)))
+ for j1 := 0; j1 < len(m.MrRoute.MrPaths); j1++ {
+ var v1 fib_types.FibPath
+ if j1 < len(m.MrRoute.MrPaths) {
+ v1 = m.MrRoute.MrPaths[j1]
+ }
+ buf.EncodeUint32(uint32(v1.SwIfIndex))
+ buf.EncodeUint32(uint32(v1.TableID))
+ buf.EncodeUint32(uint32(v1.RpfID))
+ buf.EncodeUint8(uint8(v1.Weight))
+ buf.EncodeUint8(uint8(v1.Preference))
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 0)
+ buf.EncodeUint32(uint32(v1.Nh.ViaLabel))
+ buf.EncodeUint32(uint32(v1.Nh.ObjID))
+ buf.EncodeUint32(uint32(v1.Nh.ClassifyTableIndex))
+ buf.EncodeUint8(uint8(v1.NLabels))
+ for j2 := 0; j2 < 16; j2++ {
+ var v2 fib_types.FibMplsLabel
+ if j2 < len(v1.LabelStack) {
+ v2 = v1.LabelStack[j2]
+ }
+ buf.EncodeUint8(uint8(v2.IsUniform))
+ buf.EncodeUint32(uint32(v2.Label))
+ buf.EncodeUint8(uint8(v2.TTL))
+ buf.EncodeUint8(uint8(v2.Exp))
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *MplsRouteDetails) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MrRoute.MrTableID = buf.DecodeUint32()
+ m.MrRoute.MrLabel = buf.DecodeUint32()
+ m.MrRoute.MrEos = buf.DecodeUint8()
+ m.MrRoute.MrEosProto = buf.DecodeUint8()
+ m.MrRoute.MrIsMulticast = buf.DecodeBool()
+ m.MrRoute.MrNPaths = buf.DecodeUint8()
+ m.MrRoute.MrPaths = make([]fib_types.FibPath, int(m.MrRoute.MrNPaths))
+ for j1 := 0; j1 < len(m.MrRoute.MrPaths); j1++ {
+ m.MrRoute.MrPaths[j1].SwIfIndex = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].TableID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].RpfID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Weight = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].Preference = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.MrRoute.MrPaths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.MrRoute.MrPaths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.MrRoute.MrPaths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.MrRoute.MrPaths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.MrRoute.MrPaths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.MrRoute.MrPaths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// MplsRouteDump defines message 'mpls_route_dump'.
+type MplsRouteDump struct {
+ Table MplsTable `binapi:"mpls_table,name=table" json:"table,omitempty"`
+}
+
+func (m *MplsRouteDump) Reset() { *m = MplsRouteDump{} }
+func (*MplsRouteDump) GetMessageName() string { return "mpls_route_dump" }
+func (*MplsRouteDump) GetCrcString() string { return "935fdefa" }
+func (*MplsRouteDump) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsRouteDump) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Table.MtTableID
+ size += 64 // m.Table.MtName
+ return size
+}
+func (m *MplsRouteDump) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Table.MtTableID))
+ buf.EncodeString(m.Table.MtName, 64)
+ return buf.Bytes(), nil
+}
+func (m *MplsRouteDump) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Table.MtTableID = buf.DecodeUint32()
+ m.Table.MtName = buf.DecodeString(64)
+ return nil
+}
+
+// MplsTableAddDel defines message 'mpls_table_add_del'.
+type MplsTableAddDel struct {
+ MtIsAdd bool `binapi:"bool,name=mt_is_add,default=true" json:"mt_is_add,omitempty"`
+ MtTable MplsTable `binapi:"mpls_table,name=mt_table" json:"mt_table,omitempty"`
+}
+
+func (m *MplsTableAddDel) Reset() { *m = MplsTableAddDel{} }
+func (*MplsTableAddDel) GetMessageName() string { return "mpls_table_add_del" }
+func (*MplsTableAddDel) GetCrcString() string { return "57817512" }
+func (*MplsTableAddDel) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsTableAddDel) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 1 // m.MtIsAdd
+ size += 4 // m.MtTable.MtTableID
+ size += 64 // m.MtTable.MtName
+ return size
+}
+func (m *MplsTableAddDel) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeBool(m.MtIsAdd)
+ buf.EncodeUint32(uint32(m.MtTable.MtTableID))
+ buf.EncodeString(m.MtTable.MtName, 64)
+ return buf.Bytes(), nil
+}
+func (m *MplsTableAddDel) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MtIsAdd = buf.DecodeBool()
+ m.MtTable.MtTableID = buf.DecodeUint32()
+ m.MtTable.MtName = buf.DecodeString(64)
+ return nil
+}
+
+// MplsTableAddDelReply defines message 'mpls_table_add_del_reply'.
+type MplsTableAddDelReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *MplsTableAddDelReply) Reset() { *m = MplsTableAddDelReply{} }
+func (*MplsTableAddDelReply) GetMessageName() string { return "mpls_table_add_del_reply" }
+func (*MplsTableAddDelReply) GetCrcString() string { return "e8d4e804" }
+func (*MplsTableAddDelReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsTableAddDelReply) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Retval
+ return size
+}
+func (m *MplsTableAddDelReply) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Retval))
+ return buf.Bytes(), nil
+}
+func (m *MplsTableAddDelReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = int32(buf.DecodeUint32())
+ return nil
+}
+
+// MplsTableDetails defines message 'mpls_table_details'.
+type MplsTableDetails struct {
+ MtTable MplsTable `binapi:"mpls_table,name=mt_table" json:"mt_table,omitempty"`
+}
+
+func (m *MplsTableDetails) Reset() { *m = MplsTableDetails{} }
+func (*MplsTableDetails) GetMessageName() string { return "mpls_table_details" }
+func (*MplsTableDetails) GetCrcString() string { return "f03ecdc8" }
+func (*MplsTableDetails) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsTableDetails) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.MtTable.MtTableID
+ size += 64 // m.MtTable.MtName
+ return size
+}
+func (m *MplsTableDetails) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.MtTable.MtTableID))
+ buf.EncodeString(m.MtTable.MtName, 64)
+ return buf.Bytes(), nil
+}
+func (m *MplsTableDetails) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MtTable.MtTableID = buf.DecodeUint32()
+ m.MtTable.MtName = buf.DecodeString(64)
+ return nil
+}
+
+// MplsTableDump defines message 'mpls_table_dump'.
+type MplsTableDump struct{}
+
+func (m *MplsTableDump) Reset() { *m = MplsTableDump{} }
+func (*MplsTableDump) GetMessageName() string { return "mpls_table_dump" }
+func (*MplsTableDump) GetCrcString() string { return "51077d14" }
+func (*MplsTableDump) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsTableDump) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ return size
+}
+func (m *MplsTableDump) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ return buf.Bytes(), nil
+}
+func (m *MplsTableDump) Unmarshal(b []byte) error {
+ return nil
+}
+
+// MplsTunnelAddDel defines message 'mpls_tunnel_add_del'.
+type MplsTunnelAddDel struct {
+ MtIsAdd bool `binapi:"bool,name=mt_is_add,default=true" json:"mt_is_add,omitempty"`
+ MtTunnel MplsTunnel `binapi:"mpls_tunnel,name=mt_tunnel" json:"mt_tunnel,omitempty"`
+}
+
+func (m *MplsTunnelAddDel) Reset() { *m = MplsTunnelAddDel{} }
+func (*MplsTunnelAddDel) GetMessageName() string { return "mpls_tunnel_add_del" }
+func (*MplsTunnelAddDel) GetCrcString() string { return "e57ce61d" }
+func (*MplsTunnelAddDel) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsTunnelAddDel) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 1 // m.MtIsAdd
+ size += 4 // m.MtTunnel.MtSwIfIndex
+ size += 4 // m.MtTunnel.MtTunnelIndex
+ size += 1 // m.MtTunnel.MtL2Only
+ size += 1 // m.MtTunnel.MtIsMulticast
+ size += 64 // m.MtTunnel.MtTag
+ size += 1 // m.MtTunnel.MtNPaths
+ for j2 := 0; j2 < len(m.MtTunnel.MtPaths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.MtTunnel.MtPaths) {
+ s2 = m.MtTunnel.MtPaths[j2]
+ }
+ size += 4 // s2.SwIfIndex
+ size += 4 // s2.TableID
+ size += 4 // s2.RpfID
+ size += 1 // s2.Weight
+ size += 1 // s2.Preference
+ size += 4 // s2.Type
+ size += 4 // s2.Flags
+ size += 4 // s2.Proto
+ size += 1 * 16 // s2.Nh.Address
+ size += 4 // s2.Nh.ViaLabel
+ size += 4 // s2.Nh.ObjID
+ size += 4 // s2.Nh.ClassifyTableIndex
+ size += 1 // s2.NLabels
+ for j3 := 0; j3 < 16; j3++ {
+ var s3 fib_types.FibMplsLabel
+ _ = s3
+ if j3 < len(s2.LabelStack) {
+ s3 = s2.LabelStack[j3]
+ }
+ size += 1 // s3.IsUniform
+ size += 4 // s3.Label
+ size += 1 // s3.TTL
+ size += 1 // s3.Exp
+ }
+ }
+ return size
+}
+func (m *MplsTunnelAddDel) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeBool(m.MtIsAdd)
+ buf.EncodeUint32(uint32(m.MtTunnel.MtSwIfIndex))
+ buf.EncodeUint32(uint32(m.MtTunnel.MtTunnelIndex))
+ buf.EncodeBool(m.MtTunnel.MtL2Only)
+ buf.EncodeBool(m.MtTunnel.MtIsMulticast)
+ buf.EncodeString(m.MtTunnel.MtTag, 64)
+ buf.EncodeUint8(uint8(len(m.MtTunnel.MtPaths)))
+ for j1 := 0; j1 < len(m.MtTunnel.MtPaths); j1++ {
+ var v1 fib_types.FibPath
+ if j1 < len(m.MtTunnel.MtPaths) {
+ v1 = m.MtTunnel.MtPaths[j1]
+ }
+ buf.EncodeUint32(uint32(v1.SwIfIndex))
+ buf.EncodeUint32(uint32(v1.TableID))
+ buf.EncodeUint32(uint32(v1.RpfID))
+ buf.EncodeUint8(uint8(v1.Weight))
+ buf.EncodeUint8(uint8(v1.Preference))
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 0)
+ buf.EncodeUint32(uint32(v1.Nh.ViaLabel))
+ buf.EncodeUint32(uint32(v1.Nh.ObjID))
+ buf.EncodeUint32(uint32(v1.Nh.ClassifyTableIndex))
+ buf.EncodeUint8(uint8(v1.NLabels))
+ for j2 := 0; j2 < 16; j2++ {
+ var v2 fib_types.FibMplsLabel
+ if j2 < len(v1.LabelStack) {
+ v2 = v1.LabelStack[j2]
+ }
+ buf.EncodeUint8(uint8(v2.IsUniform))
+ buf.EncodeUint32(uint32(v2.Label))
+ buf.EncodeUint8(uint8(v2.TTL))
+ buf.EncodeUint8(uint8(v2.Exp))
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *MplsTunnelAddDel) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MtIsAdd = buf.DecodeBool()
+ m.MtTunnel.MtSwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.MtTunnel.MtTunnelIndex = buf.DecodeUint32()
+ m.MtTunnel.MtL2Only = buf.DecodeBool()
+ m.MtTunnel.MtIsMulticast = buf.DecodeBool()
+ m.MtTunnel.MtTag = buf.DecodeString(64)
+ m.MtTunnel.MtNPaths = buf.DecodeUint8()
+ m.MtTunnel.MtPaths = make([]fib_types.FibPath, int(m.MtTunnel.MtNPaths))
+ for j1 := 0; j1 < len(m.MtTunnel.MtPaths); j1++ {
+ m.MtTunnel.MtPaths[j1].SwIfIndex = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].TableID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].RpfID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Weight = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].Preference = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.MtTunnel.MtPaths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.MtTunnel.MtPaths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.MtTunnel.MtPaths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.MtTunnel.MtPaths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// MplsTunnelAddDelReply defines message 'mpls_tunnel_add_del_reply'.
+type MplsTunnelAddDelReply 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"`
+ TunnelIndex uint32 `binapi:"u32,name=tunnel_index" json:"tunnel_index,omitempty"`
+}
+
+func (m *MplsTunnelAddDelReply) Reset() { *m = MplsTunnelAddDelReply{} }
+func (*MplsTunnelAddDelReply) GetMessageName() string { return "mpls_tunnel_add_del_reply" }
+func (*MplsTunnelAddDelReply) GetCrcString() string { return "afb01472" }
+func (*MplsTunnelAddDelReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsTunnelAddDelReply) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Retval
+ size += 4 // m.SwIfIndex
+ size += 4 // m.TunnelIndex
+ return size
+}
+func (m *MplsTunnelAddDelReply) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Retval))
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ buf.EncodeUint32(uint32(m.TunnelIndex))
+ return buf.Bytes(), nil
+}
+func (m *MplsTunnelAddDelReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = int32(buf.DecodeUint32())
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.TunnelIndex = buf.DecodeUint32()
+ return nil
+}
+
+// MplsTunnelDetails defines message 'mpls_tunnel_details'.
+type MplsTunnelDetails struct {
+ MtTunnel MplsTunnel `binapi:"mpls_tunnel,name=mt_tunnel" json:"mt_tunnel,omitempty"`
+}
+
+func (m *MplsTunnelDetails) Reset() { *m = MplsTunnelDetails{} }
+func (*MplsTunnelDetails) GetMessageName() string { return "mpls_tunnel_details" }
+func (*MplsTunnelDetails) GetCrcString() string { return "f3c0928e" }
+func (*MplsTunnelDetails) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *MplsTunnelDetails) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.MtTunnel.MtSwIfIndex
+ size += 4 // m.MtTunnel.MtTunnelIndex
+ size += 1 // m.MtTunnel.MtL2Only
+ size += 1 // m.MtTunnel.MtIsMulticast
+ size += 64 // m.MtTunnel.MtTag
+ size += 1 // m.MtTunnel.MtNPaths
+ for j2 := 0; j2 < len(m.MtTunnel.MtPaths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.MtTunnel.MtPaths) {
+ s2 = m.MtTunnel.MtPaths[j2]
+ }
+ size += 4 // s2.SwIfIndex
+ size += 4 // s2.TableID
+ size += 4 // s2.RpfID
+ size += 1 // s2.Weight
+ size += 1 // s2.Preference
+ size += 4 // s2.Type
+ size += 4 // s2.Flags
+ size += 4 // s2.Proto
+ size += 1 * 16 // s2.Nh.Address
+ size += 4 // s2.Nh.ViaLabel
+ size += 4 // s2.Nh.ObjID
+ size += 4 // s2.Nh.ClassifyTableIndex
+ size += 1 // s2.NLabels
+ for j3 := 0; j3 < 16; j3++ {
+ var s3 fib_types.FibMplsLabel
+ _ = s3
+ if j3 < len(s2.LabelStack) {
+ s3 = s2.LabelStack[j3]
+ }
+ size += 1 // s3.IsUniform
+ size += 4 // s3.Label
+ size += 1 // s3.TTL
+ size += 1 // s3.Exp
+ }
+ }
+ return size
+}
+func (m *MplsTunnelDetails) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.MtTunnel.MtSwIfIndex))
+ buf.EncodeUint32(uint32(m.MtTunnel.MtTunnelIndex))
+ buf.EncodeBool(m.MtTunnel.MtL2Only)
+ buf.EncodeBool(m.MtTunnel.MtIsMulticast)
+ buf.EncodeString(m.MtTunnel.MtTag, 64)
+ buf.EncodeUint8(uint8(len(m.MtTunnel.MtPaths)))
+ for j1 := 0; j1 < len(m.MtTunnel.MtPaths); j1++ {
+ var v1 fib_types.FibPath
+ if j1 < len(m.MtTunnel.MtPaths) {
+ v1 = m.MtTunnel.MtPaths[j1]
+ }
+ buf.EncodeUint32(uint32(v1.SwIfIndex))
+ buf.EncodeUint32(uint32(v1.TableID))
+ buf.EncodeUint32(uint32(v1.RpfID))
+ buf.EncodeUint8(uint8(v1.Weight))
+ buf.EncodeUint8(uint8(v1.Preference))
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 0)
+ buf.EncodeUint32(uint32(v1.Nh.ViaLabel))
+ buf.EncodeUint32(uint32(v1.Nh.ObjID))
+ buf.EncodeUint32(uint32(v1.Nh.ClassifyTableIndex))
+ buf.EncodeUint8(uint8(v1.NLabels))
+ for j2 := 0; j2 < 16; j2++ {
+ var v2 fib_types.FibMplsLabel
+ if j2 < len(v1.LabelStack) {
+ v2 = v1.LabelStack[j2]
+ }
+ buf.EncodeUint8(uint8(v2.IsUniform))
+ buf.EncodeUint32(uint32(v2.Label))
+ buf.EncodeUint8(uint8(v2.TTL))
+ buf.EncodeUint8(uint8(v2.Exp))
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *MplsTunnelDetails) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.MtTunnel.MtSwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.MtTunnel.MtTunnelIndex = buf.DecodeUint32()
+ m.MtTunnel.MtL2Only = buf.DecodeBool()
+ m.MtTunnel.MtIsMulticast = buf.DecodeBool()
+ m.MtTunnel.MtTag = buf.DecodeString(64)
+ m.MtTunnel.MtNPaths = buf.DecodeUint8()
+ m.MtTunnel.MtPaths = make([]fib_types.FibPath, int(m.MtTunnel.MtNPaths))
+ for j1 := 0; j1 < len(m.MtTunnel.MtPaths); j1++ {
+ m.MtTunnel.MtPaths[j1].SwIfIndex = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].TableID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].RpfID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Weight = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].Preference = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.MtTunnel.MtPaths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.MtTunnel.MtPaths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.MtTunnel.MtPaths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.MtTunnel.MtPaths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.MtTunnel.MtPaths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// MplsTunnelDump defines message 'mpls_tunnel_dump'.
+type MplsTunnelDump struct {
+ SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index,default=%!s(float64=4.294967295e+09)" json:"sw_if_index,omitempty"`
+}
+
+func (m *MplsTunnelDump) Reset() { *m = MplsTunnelDump{} }
+func (*MplsTunnelDump) GetMessageName() string { return "mpls_tunnel_dump" }
+func (*MplsTunnelDump) GetCrcString() string { return "f9e6675e" }
+func (*MplsTunnelDump) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *MplsTunnelDump) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.SwIfIndex
+ return size
+}
+func (m *MplsTunnelDump) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ return buf.Bytes(), nil
+}
+func (m *MplsTunnelDump) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ return nil
+}
+
+// SwInterfaceSetMplsEnable defines message 'sw_interface_set_mpls_enable'.
+type SwInterfaceSetMplsEnable struct {
+ SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
+ Enable bool `binapi:"bool,name=enable,default=true" json:"enable,omitempty"`
+}
+
+func (m *SwInterfaceSetMplsEnable) Reset() { *m = SwInterfaceSetMplsEnable{} }
+func (*SwInterfaceSetMplsEnable) GetMessageName() string { return "sw_interface_set_mpls_enable" }
+func (*SwInterfaceSetMplsEnable) GetCrcString() string { return "ae6cfcfb" }
+func (*SwInterfaceSetMplsEnable) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *SwInterfaceSetMplsEnable) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.SwIfIndex
+ size += 1 // m.Enable
+ return size
+}
+func (m *SwInterfaceSetMplsEnable) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ buf.EncodeBool(m.Enable)
+ return buf.Bytes(), nil
+}
+func (m *SwInterfaceSetMplsEnable) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ m.Enable = buf.DecodeBool()
+ return nil
+}
+
+// SwInterfaceSetMplsEnableReply defines message 'sw_interface_set_mpls_enable_reply'.
+type SwInterfaceSetMplsEnableReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *SwInterfaceSetMplsEnableReply) Reset() { *m = SwInterfaceSetMplsEnableReply{} }
+func (*SwInterfaceSetMplsEnableReply) GetMessageName() string {
+ return "sw_interface_set_mpls_enable_reply"
+}
+func (*SwInterfaceSetMplsEnableReply) GetCrcString() string { return "e8d4e804" }
+func (*SwInterfaceSetMplsEnableReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *SwInterfaceSetMplsEnableReply) Size() int {
+ if m == nil {
+ return 0
+ }
+ var size int
+ size += 4 // m.Retval
+ return size
+}
+func (m *SwInterfaceSetMplsEnableReply) Marshal(b []byte) ([]byte, error) {
+ var buf *codec.Buffer
+ if b == nil {
+ buf = codec.NewBuffer(make([]byte, m.Size()))
+ } else {
+ buf = codec.NewBuffer(b)
+ }
+ buf.EncodeUint32(uint32(m.Retval))
+ return buf.Bytes(), nil
+}
+func (m *SwInterfaceSetMplsEnableReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = int32(buf.DecodeUint32())
+ return nil
+}
+
+func init() { file_mpls_binapi_init() }
+func file_mpls_binapi_init() {
+ api.RegisterMessage((*MplsIPBindUnbind)(nil), "mpls_ip_bind_unbind_48249a27")
+ api.RegisterMessage((*MplsIPBindUnbindReply)(nil), "mpls_ip_bind_unbind_reply_e8d4e804")
+ api.RegisterMessage((*MplsRouteAddDel)(nil), "mpls_route_add_del_343cff54")
+ api.RegisterMessage((*MplsRouteAddDelReply)(nil), "mpls_route_add_del_reply_1992deab")
+ api.RegisterMessage((*MplsRouteDetails)(nil), "mpls_route_details_d0ac384c")
+ api.RegisterMessage((*MplsRouteDump)(nil), "mpls_route_dump_935fdefa")
+ api.RegisterMessage((*MplsTableAddDel)(nil), "mpls_table_add_del_57817512")
+ api.RegisterMessage((*MplsTableAddDelReply)(nil), "mpls_table_add_del_reply_e8d4e804")
+ api.RegisterMessage((*MplsTableDetails)(nil), "mpls_table_details_f03ecdc8")
+ api.RegisterMessage((*MplsTableDump)(nil), "mpls_table_dump_51077d14")
+ api.RegisterMessage((*MplsTunnelAddDel)(nil), "mpls_tunnel_add_del_e57ce61d")
+ api.RegisterMessage((*MplsTunnelAddDelReply)(nil), "mpls_tunnel_add_del_reply_afb01472")
+ api.RegisterMessage((*MplsTunnelDetails)(nil), "mpls_tunnel_details_f3c0928e")
+ api.RegisterMessage((*MplsTunnelDump)(nil), "mpls_tunnel_dump_f9e6675e")
+ api.RegisterMessage((*SwInterfaceSetMplsEnable)(nil), "sw_interface_set_mpls_enable_ae6cfcfb")
+ api.RegisterMessage((*SwInterfaceSetMplsEnableReply)(nil), "sw_interface_set_mpls_enable_reply_e8d4e804")
+}
+
+// Messages returns list of all messages in this module.
+func AllMessages() []api.Message {
+ return []api.Message{
+ (*MplsIPBindUnbind)(nil),
+ (*MplsIPBindUnbindReply)(nil),
+ (*MplsRouteAddDel)(nil),
+ (*MplsRouteAddDelReply)(nil),
+ (*MplsRouteDetails)(nil),
+ (*MplsRouteDump)(nil),
+ (*MplsTableAddDel)(nil),
+ (*MplsTableAddDelReply)(nil),
+ (*MplsTableDetails)(nil),
+ (*MplsTableDump)(nil),
+ (*MplsTunnelAddDel)(nil),
+ (*MplsTunnelAddDelReply)(nil),
+ (*MplsTunnelDetails)(nil),
+ (*MplsTunnelDump)(nil),
+ (*SwInterfaceSetMplsEnable)(nil),
+ (*SwInterfaceSetMplsEnableReply)(nil),
+ }
+}