summaryrefslogtreecommitdiffstats
path: root/binapi/ip
diff options
context:
space:
mode:
authormhalaj1 <matus.halaj@pantheon.tech>2021-08-26 13:10:48 +0200
committermhalaj1 <matus.halaj@pantheon.tech>2021-08-26 13:10:48 +0200
commitdebc52dea8a81417bb08ca5bb934c7876b6d65e0 (patch)
tree23909430d78d6b77c2b414814e843708a6bab08e /binapi/ip
parentc0da1f2999a6b08d003c0fed1a23e1ca60dd1571 (diff)
regenerate binapi
Signed-off-by: mhalaj1 <matus.halaj@pantheon.tech> Change-Id: I9bb6a5ca00aa542128bde0bfbbba7b57b9f16ed2
Diffstat (limited to 'binapi/ip')
-rw-r--r--binapi/ip/ip.ba.go1277
-rw-r--r--binapi/ip/ip_rpc.ba.go157
2 files changed, 1385 insertions, 49 deletions
diff --git a/binapi/ip/ip.ba.go b/binapi/ip/ip.ba.go
index ce8278c..fa9d1a0 100644
--- a/binapi/ip/ip.ba.go
+++ b/binapi/ip/ip.ba.go
@@ -1,15 +1,15 @@
// Code generated by GoVPP's binapi-generator. DO NOT EDIT.
// versions:
-// binapi-generator: v0.4.0
-// VPP: 20.05.1-release
+// binapi-generator: v0.3.5-56-gc0da1f2-dirty
+// VPP: 21.06-release
// source: /usr/share/vpp/api/core/ip.api.json
// Package ip contains generated bindings for API file ip.api.
//
// Contents:
-// 1 enum
-// 4 structs
-// 60 messages
+// 2 enums
+// 6 structs
+// 81 messages
//
package ip
@@ -33,8 +33,8 @@ const _ = api.GoVppAPIPackageIsVersion2
const (
APIFile = "ip"
- APIVersion = "3.0.1"
- VersionCrc = 0x765d74b1
+ APIVersion = "3.1.0"
+ VersionCrc = 0x972432b4
)
// IPReassType defines enum 'ip_reass_type'.
@@ -64,14 +64,87 @@ func (x IPReassType) String() string {
return "IPReassType(" + strconv.Itoa(int(x)) + ")"
}
+// IPFlowHashConfig defines enum 'ip_flow_hash_config'.
+type IPFlowHashConfig uint32
+
+const (
+ IP_API_FLOW_HASH_SRC_IP IPFlowHashConfig = 1
+ IP_API_FLOW_HASH_DST_IP IPFlowHashConfig = 2
+ IP_API_FLOW_HASH_SRC_PORT IPFlowHashConfig = 4
+ IP_API_FLOW_HASH_DST_PORT IPFlowHashConfig = 8
+ IP_API_FLOW_HASH_PROTO IPFlowHashConfig = 16
+ IP_API_FLOW_HASH_REVERSE IPFlowHashConfig = 32
+ IP_API_FLOW_HASH_SYMETRIC IPFlowHashConfig = 64
+ IP_API_FLOW_HASH_FLOW_LABEL IPFlowHashConfig = 128
+)
+
+var (
+ IPFlowHashConfig_name = map[uint32]string{
+ 1: "IP_API_FLOW_HASH_SRC_IP",
+ 2: "IP_API_FLOW_HASH_DST_IP",
+ 4: "IP_API_FLOW_HASH_SRC_PORT",
+ 8: "IP_API_FLOW_HASH_DST_PORT",
+ 16: "IP_API_FLOW_HASH_PROTO",
+ 32: "IP_API_FLOW_HASH_REVERSE",
+ 64: "IP_API_FLOW_HASH_SYMETRIC",
+ 128: "IP_API_FLOW_HASH_FLOW_LABEL",
+ }
+ IPFlowHashConfig_value = map[string]uint32{
+ "IP_API_FLOW_HASH_SRC_IP": 1,
+ "IP_API_FLOW_HASH_DST_IP": 2,
+ "IP_API_FLOW_HASH_SRC_PORT": 4,
+ "IP_API_FLOW_HASH_DST_PORT": 8,
+ "IP_API_FLOW_HASH_PROTO": 16,
+ "IP_API_FLOW_HASH_REVERSE": 32,
+ "IP_API_FLOW_HASH_SYMETRIC": 64,
+ "IP_API_FLOW_HASH_FLOW_LABEL": 128,
+ }
+)
+
+func (x IPFlowHashConfig) String() string {
+ s, ok := IPFlowHashConfig_name[uint32(x)]
+ if ok {
+ return s
+ }
+ str := func(n uint32) string {
+ s, ok := IPFlowHashConfig_name[uint32(n)]
+ if ok {
+ return s
+ }
+ return "IPFlowHashConfig(" + strconv.Itoa(int(n)) + ")"
+ }
+ for i := uint32(0); i <= 32; i++ {
+ val := uint32(x)
+ if val&(1<<i) != 0 {
+ if s != "" {
+ s += "|"
+ }
+ s += str(1 << i)
+ }
+ }
+ if s == "" {
+ return str(uint32(x))
+ }
+ return s
+}
+
// IPMroute defines type 'ip_mroute'.
type IPMroute struct {
- TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
- EntryFlags uint32 `binapi:"u32,name=entry_flags" json:"entry_flags,omitempty"`
- RpfID uint32 `binapi:"u32,name=rpf_id" json:"rpf_id,omitempty"`
- Prefix ip_types.Mprefix `binapi:"mprefix,name=prefix" json:"prefix,omitempty"`
- NPaths uint8 `binapi:"u8,name=n_paths" json:"-"`
- Paths []mfib_types.MfibPath `binapi:"mfib_path[n_paths],name=paths" json:"paths,omitempty"`
+ TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
+ EntryFlags mfib_types.MfibEntryFlags `binapi:"mfib_entry_flags,name=entry_flags" json:"entry_flags,omitempty"`
+ RpfID uint32 `binapi:"u32,name=rpf_id" json:"rpf_id,omitempty"`
+ Prefix ip_types.Mprefix `binapi:"mprefix,name=prefix" json:"prefix,omitempty"`
+ NPaths uint8 `binapi:"u8,name=n_paths" json:"-"`
+ Paths []mfib_types.MfibPath `binapi:"mfib_path[n_paths],name=paths" json:"paths,omitempty"`
+}
+
+// IPPathMtu defines type 'ip_path_mtu'.
+type IPPathMtu struct {
+ ClientIndex uint32 `binapi:"u32,name=client_index" json:"client_index,omitempty"`
+ Context uint32 `binapi:"u32,name=context" json:"context,omitempty"`
+ TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
+ Nh ip_types.Address `binapi:"address,name=nh" json:"nh,omitempty"`
+ PathMtu uint16 `binapi:"u16,name=path_mtu" json:"path_mtu,omitempty"`
}
// IPRoute defines type 'ip_route'.
@@ -83,6 +156,16 @@ type IPRoute struct {
Paths []fib_types.FibPath `binapi:"fib_path[n_paths],name=paths" json:"paths,omitempty"`
}
+// IPRouteV2 defines type 'ip_route_v2'.
+type IPRouteV2 struct {
+ TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
+ StatsIndex uint32 `binapi:"u32,name=stats_index" json:"stats_index,omitempty"`
+ Prefix ip_types.Prefix `binapi:"prefix,name=prefix" json:"prefix,omitempty"`
+ NPaths uint8 `binapi:"u8,name=n_paths" json:"-"`
+ Src uint8 `binapi:"u8,name=src" json:"src,omitempty"`
+ Paths []fib_types.FibPath `binapi:"fib_path[n_paths],name=paths" json:"paths,omitempty"`
+}
+
// IPTable defines type 'ip_table'.
type IPTable struct {
TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
@@ -257,7 +340,7 @@ type IPAddressDetails struct {
func (m *IPAddressDetails) Reset() { *m = IPAddressDetails{} }
func (*IPAddressDetails) GetMessageName() string { return "ip_address_details" }
-func (*IPAddressDetails) GetCrcString() string { return "b1199745" }
+func (*IPAddressDetails) GetCrcString() string { return "ee29b797" }
func (*IPAddressDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -338,7 +421,7 @@ type IPContainerProxyAddDel struct {
func (m *IPContainerProxyAddDel) Reset() { *m = IPContainerProxyAddDel{} }
func (*IPContainerProxyAddDel) GetMessageName() string { return "ip_container_proxy_add_del" }
-func (*IPContainerProxyAddDel) GetCrcString() string { return "91189f40" }
+func (*IPContainerProxyAddDel) GetCrcString() string { return "7df1dff1" }
func (*IPContainerProxyAddDel) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -419,7 +502,7 @@ type IPContainerProxyDetails struct {
func (m *IPContainerProxyDetails) Reset() { *m = IPContainerProxyDetails{} }
func (*IPContainerProxyDetails) GetMessageName() string { return "ip_container_proxy_details" }
-func (*IPContainerProxyDetails) GetCrcString() string { return "0ee460e8" }
+func (*IPContainerProxyDetails) GetCrcString() string { return "a8085523" }
func (*IPContainerProxyDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -560,7 +643,7 @@ type IPMrouteAddDel struct {
func (m *IPMrouteAddDel) Reset() { *m = IPMrouteAddDel{} }
func (*IPMrouteAddDel) GetMessageName() string { return "ip_mroute_add_del" }
-func (*IPMrouteAddDel) GetCrcString() string { return "f6627d17" }
+func (*IPMrouteAddDel) GetCrcString() string { return "0dd7e790" }
func (*IPMrouteAddDel) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -616,7 +699,7 @@ func (m *IPMrouteAddDel) Marshal(b []byte) ([]byte, error) {
buf.EncodeBool(m.IsAdd)
buf.EncodeBool(m.IsMultipath)
buf.EncodeUint32(m.Route.TableID)
- buf.EncodeUint32(m.Route.EntryFlags)
+ buf.EncodeUint32(uint32(m.Route.EntryFlags))
buf.EncodeUint32(m.Route.RpfID)
buf.EncodeUint8(uint8(m.Route.Prefix.Af))
buf.EncodeUint16(m.Route.Prefix.GrpAddressLength)
@@ -656,7 +739,7 @@ func (m *IPMrouteAddDel) Unmarshal(b []byte) error {
m.IsAdd = buf.DecodeBool()
m.IsMultipath = buf.DecodeBool()
m.Route.TableID = buf.DecodeUint32()
- m.Route.EntryFlags = buf.DecodeUint32()
+ m.Route.EntryFlags = mfib_types.MfibEntryFlags(buf.DecodeUint32())
m.Route.RpfID = buf.DecodeUint32()
m.Route.Prefix.Af = ip_types.AddressFamily(buf.DecodeUint8())
m.Route.Prefix.GrpAddressLength = buf.DecodeUint16()
@@ -733,7 +816,7 @@ type IPMrouteDetails struct {
func (m *IPMrouteDetails) Reset() { *m = IPMrouteDetails{} }
func (*IPMrouteDetails) GetMessageName() string { return "ip_mroute_details" }
-func (*IPMrouteDetails) GetCrcString() string { return "c1cb4b44" }
+func (*IPMrouteDetails) GetCrcString() string { return "c5cb23fc" }
func (*IPMrouteDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -785,7 +868,7 @@ func (m *IPMrouteDetails) Marshal(b []byte) ([]byte, error) {
}
buf := codec.NewBuffer(b)
buf.EncodeUint32(m.Route.TableID)
- buf.EncodeUint32(m.Route.EntryFlags)
+ buf.EncodeUint32(uint32(m.Route.EntryFlags))
buf.EncodeUint32(m.Route.RpfID)
buf.EncodeUint8(uint8(m.Route.Prefix.Af))
buf.EncodeUint16(m.Route.Prefix.GrpAddressLength)
@@ -823,7 +906,7 @@ func (m *IPMrouteDetails) Marshal(b []byte) ([]byte, error) {
func (m *IPMrouteDetails) Unmarshal(b []byte) error {
buf := codec.NewBuffer(b)
m.Route.TableID = buf.DecodeUint32()
- m.Route.EntryFlags = buf.DecodeUint32()
+ m.Route.EntryFlags = mfib_types.MfibEntryFlags(buf.DecodeUint32())
m.Route.RpfID = buf.DecodeUint32()
m.Route.Prefix.Af = ip_types.AddressFamily(buf.DecodeUint8())
m.Route.Prefix.GrpAddressLength = buf.DecodeUint16()
@@ -961,6 +1044,325 @@ func (m *IPMtableDump) Unmarshal(b []byte) error {
return nil
}
+// IPPathMtuDetails defines message 'ip_path_mtu_details'.
+type IPPathMtuDetails struct {
+ Pmtu IPPathMtu `binapi:"ip_path_mtu,name=pmtu" json:"pmtu,omitempty"`
+}
+
+func (m *IPPathMtuDetails) Reset() { *m = IPPathMtuDetails{} }
+func (*IPPathMtuDetails) GetMessageName() string { return "ip_path_mtu_details" }
+func (*IPPathMtuDetails) GetCrcString() string { return "ac9539a7" }
+func (*IPPathMtuDetails) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPPathMtuDetails) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Pmtu.ClientIndex
+ size += 4 // m.Pmtu.Context
+ size += 4 // m.Pmtu.TableID
+ size += 1 // m.Pmtu.Nh.Af
+ size += 1 * 16 // m.Pmtu.Nh.Un
+ size += 2 // m.Pmtu.PathMtu
+ return size
+}
+func (m *IPPathMtuDetails) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.Pmtu.ClientIndex)
+ buf.EncodeUint32(m.Pmtu.Context)
+ buf.EncodeUint32(m.Pmtu.TableID)
+ buf.EncodeUint8(uint8(m.Pmtu.Nh.Af))
+ buf.EncodeBytes(m.Pmtu.Nh.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint16(m.Pmtu.PathMtu)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuDetails) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Pmtu.ClientIndex = buf.DecodeUint32()
+ m.Pmtu.Context = buf.DecodeUint32()
+ m.Pmtu.TableID = buf.DecodeUint32()
+ m.Pmtu.Nh.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Pmtu.Nh.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Pmtu.PathMtu = buf.DecodeUint16()
+ return nil
+}
+
+// IPPathMtuGet defines message 'ip_path_mtu_get'.
+type IPPathMtuGet struct {
+ Cursor uint32 `binapi:"u32,name=cursor" json:"cursor,omitempty"`
+}
+
+func (m *IPPathMtuGet) Reset() { *m = IPPathMtuGet{} }
+func (*IPPathMtuGet) GetMessageName() string { return "ip_path_mtu_get" }
+func (*IPPathMtuGet) GetCrcString() string { return "f75ba505" }
+func (*IPPathMtuGet) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPPathMtuGet) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Cursor
+ return size
+}
+func (m *IPPathMtuGet) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.Cursor)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuGet) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Cursor = buf.DecodeUint32()
+ return nil
+}
+
+// IPPathMtuGetReply defines message 'ip_path_mtu_get_reply'.
+type IPPathMtuGetReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ Cursor uint32 `binapi:"u32,name=cursor" json:"cursor,omitempty"`
+}
+
+func (m *IPPathMtuGetReply) Reset() { *m = IPPathMtuGetReply{} }
+func (*IPPathMtuGetReply) GetMessageName() string { return "ip_path_mtu_get_reply" }
+func (*IPPathMtuGetReply) GetCrcString() string { return "53b48f5d" }
+func (*IPPathMtuGetReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPPathMtuGetReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 4 // m.Cursor
+ return size
+}
+func (m *IPPathMtuGetReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeUint32(m.Cursor)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuGetReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ m.Cursor = buf.DecodeUint32()
+ return nil
+}
+
+// IPPathMtuReplaceBegin defines message 'ip_path_mtu_replace_begin'.
+type IPPathMtuReplaceBegin struct{}
+
+func (m *IPPathMtuReplaceBegin) Reset() { *m = IPPathMtuReplaceBegin{} }
+func (*IPPathMtuReplaceBegin) GetMessageName() string { return "ip_path_mtu_replace_begin" }
+func (*IPPathMtuReplaceBegin) GetCrcString() string { return "51077d14" }
+func (*IPPathMtuReplaceBegin) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPPathMtuReplaceBegin) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ return size
+}
+func (m *IPPathMtuReplaceBegin) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuReplaceBegin) Unmarshal(b []byte) error {
+ return nil
+}
+
+// IPPathMtuReplaceBeginReply defines message 'ip_path_mtu_replace_begin_reply'.
+type IPPathMtuReplaceBeginReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *IPPathMtuReplaceBeginReply) Reset() { *m = IPPathMtuReplaceBeginReply{} }
+func (*IPPathMtuReplaceBeginReply) GetMessageName() string { return "ip_path_mtu_replace_begin_reply" }
+func (*IPPathMtuReplaceBeginReply) GetCrcString() string { return "e8d4e804" }
+func (*IPPathMtuReplaceBeginReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPPathMtuReplaceBeginReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *IPPathMtuReplaceBeginReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuReplaceBeginReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
+// IPPathMtuReplaceEnd defines message 'ip_path_mtu_replace_end'.
+type IPPathMtuReplaceEnd struct{}
+
+func (m *IPPathMtuReplaceEnd) Reset() { *m = IPPathMtuReplaceEnd{} }
+func (*IPPathMtuReplaceEnd) GetMessageName() string { return "ip_path_mtu_replace_end" }
+func (*IPPathMtuReplaceEnd) GetCrcString() string { return "51077d14" }
+func (*IPPathMtuReplaceEnd) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPPathMtuReplaceEnd) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ return size
+}
+func (m *IPPathMtuReplaceEnd) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuReplaceEnd) Unmarshal(b []byte) error {
+ return nil
+}
+
+// IPPathMtuReplaceEndReply defines message 'ip_path_mtu_replace_end_reply'.
+type IPPathMtuReplaceEndReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *IPPathMtuReplaceEndReply) Reset() { *m = IPPathMtuReplaceEndReply{} }
+func (*IPPathMtuReplaceEndReply) GetMessageName() string { return "ip_path_mtu_replace_end_reply" }
+func (*IPPathMtuReplaceEndReply) GetCrcString() string { return "e8d4e804" }
+func (*IPPathMtuReplaceEndReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPPathMtuReplaceEndReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *IPPathMtuReplaceEndReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuReplaceEndReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
+// IPPathMtuUpdate defines message 'ip_path_mtu_update'.
+type IPPathMtuUpdate struct {
+ Pmtu IPPathMtu `binapi:"ip_path_mtu,name=pmtu" json:"pmtu,omitempty"`
+}
+
+func (m *IPPathMtuUpdate) Reset() { *m = IPPathMtuUpdate{} }
+func (*IPPathMtuUpdate) GetMessageName() string { return "ip_path_mtu_update" }
+func (*IPPathMtuUpdate) GetCrcString() string { return "10bbe5cb" }
+func (*IPPathMtuUpdate) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPPathMtuUpdate) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Pmtu.ClientIndex
+ size += 4 // m.Pmtu.Context
+ size += 4 // m.Pmtu.TableID
+ size += 1 // m.Pmtu.Nh.Af
+ size += 1 * 16 // m.Pmtu.Nh.Un
+ size += 2 // m.Pmtu.PathMtu
+ return size
+}
+func (m *IPPathMtuUpdate) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.Pmtu.ClientIndex)
+ buf.EncodeUint32(m.Pmtu.Context)
+ buf.EncodeUint32(m.Pmtu.TableID)
+ buf.EncodeUint8(uint8(m.Pmtu.Nh.Af))
+ buf.EncodeBytes(m.Pmtu.Nh.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint16(m.Pmtu.PathMtu)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuUpdate) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Pmtu.ClientIndex = buf.DecodeUint32()
+ m.Pmtu.Context = buf.DecodeUint32()
+ m.Pmtu.TableID = buf.DecodeUint32()
+ m.Pmtu.Nh.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Pmtu.Nh.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Pmtu.PathMtu = buf.DecodeUint16()
+ return nil
+}
+
+// IPPathMtuUpdateReply defines message 'ip_path_mtu_update_reply'.
+type IPPathMtuUpdateReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *IPPathMtuUpdateReply) Reset() { *m = IPPathMtuUpdateReply{} }
+func (*IPPathMtuUpdateReply) GetMessageName() string { return "ip_path_mtu_update_reply" }
+func (*IPPathMtuUpdateReply) GetCrcString() string { return "e8d4e804" }
+func (*IPPathMtuUpdateReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPPathMtuUpdateReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *IPPathMtuUpdateReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ return buf.Bytes(), nil
+}
+func (m *IPPathMtuUpdateReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
// IPPuntPolice defines message 'ip_punt_police'.
type IPPuntPolice struct {
PolicerIndex uint32 `binapi:"u32,name=policer_index" json:"policer_index,omitempty"`
@@ -1043,7 +1445,7 @@ type IPPuntRedirect struct {
func (m *IPPuntRedirect) Reset() { *m = IPPuntRedirect{} }
func (*IPPuntRedirect) GetMessageName() string { return "ip_punt_redirect" }
-func (*IPPuntRedirect) GetCrcString() string { return "a9a5592c" }
+func (*IPPuntRedirect) GetCrcString() string { return "6580f635" }
func (*IPPuntRedirect) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -1088,7 +1490,7 @@ type IPPuntRedirectDetails struct {
func (m *IPPuntRedirectDetails) Reset() { *m = IPPuntRedirectDetails{} }
func (*IPPuntRedirectDetails) GetMessageName() string { return "ip_punt_redirect_details" }
-func (*IPPuntRedirectDetails) GetCrcString() string { return "3924f5d3" }
+func (*IPPuntRedirectDetails) GetCrcString() string { return "2cef63e7" }
func (*IPPuntRedirectDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -1203,7 +1605,7 @@ type IPReassemblyEnableDisable struct {
func (m *IPReassemblyEnableDisable) Reset() { *m = IPReassemblyEnableDisable{} }
func (*IPReassemblyEnableDisable) GetMessageName() string { return "ip_reassembly_enable_disable" }
-func (*IPReassemblyEnableDisable) GetCrcString() string { return "885c85a6" }
+func (*IPReassemblyEnableDisable) GetCrcString() string { return "eb77968d" }
func (*IPReassemblyEnableDisable) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -1458,7 +1860,7 @@ type IPRouteAddDel struct {
func (m *IPRouteAddDel) Reset() { *m = IPRouteAddDel{} }
func (*IPRouteAddDel) GetMessageName() string { return "ip_route_add_del" }
-func (*IPRouteAddDel) GetCrcString() string { return "c1ff832d" }
+func (*IPRouteAddDel) GetCrcString() string { return "b8ecfe0d" }
func (*IPRouteAddDel) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -1615,6 +2017,177 @@ func (m *IPRouteAddDelReply) Unmarshal(b []byte) error {
return nil
}
+// IPRouteAddDelV2 defines message 'ip_route_add_del_v2'.
+// InProgress: the message form may change in the future versions
+type IPRouteAddDelV2 struct {
+ IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"`
+ IsMultipath bool `binapi:"bool,name=is_multipath" json:"is_multipath,omitempty"`
+ Route IPRouteV2 `binapi:"ip_route_v2,name=route" json:"route,omitempty"`
+}
+
+func (m *IPRouteAddDelV2) Reset() { *m = IPRouteAddDelV2{} }
+func (*IPRouteAddDelV2) GetMessageName() string { return "ip_route_add_del_v2" }
+func (*IPRouteAddDelV2) GetCrcString() string { return "521ef330" }
+func (*IPRouteAddDelV2) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPRouteAddDelV2) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 1 // m.IsAdd
+ size += 1 // m.IsMultipath
+ size += 4 // m.Route.TableID
+ size += 4 // m.Route.StatsIndex
+ size += 1 // m.Route.Prefix.Address.Af
+ size += 1 * 16 // m.Route.Prefix.Address.Un
+ size += 1 // m.Route.Prefix.Len
+ size += 1 // m.Route.NPaths
+ size += 1 // m.Route.Src
+ for j2 := 0; j2 < len(m.Route.Paths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.Route.Paths) {
+ s2 = m.Route.Paths[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++ {
+ size += 1 // s2.LabelStack[j3].IsUniform
+ size += 4 // s2.LabelStack[j3].Label
+ size += 1 // s2.LabelStack[j3].TTL
+ size += 1 // s2.LabelStack[j3].Exp
+ }
+ }
+ return size
+}
+func (m *IPRouteAddDelV2) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeBool(m.IsAdd)
+ buf.EncodeBool(m.IsMultipath)
+ buf.EncodeUint32(m.Route.TableID)
+ buf.EncodeUint32(m.Route.StatsIndex)
+ buf.EncodeUint8(uint8(m.Route.Prefix.Address.Af))
+ buf.EncodeBytes(m.Route.Prefix.Address.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(m.Route.Prefix.Len)
+ buf.EncodeUint8(uint8(len(m.Route.Paths)))
+ buf.EncodeUint8(m.Route.Src)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ var v1 fib_types.FibPath // Paths
+ if j1 < len(m.Route.Paths) {
+ v1 = m.Route.Paths[j1]
+ }
+ buf.EncodeUint32(v1.SwIfIndex)
+ buf.EncodeUint32(v1.TableID)
+ buf.EncodeUint32(v1.RpfID)
+ buf.EncodeUint8(v1.Weight)
+ buf.EncodeUint8(v1.Preference)
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 16)
+ buf.EncodeUint32(v1.Nh.ViaLabel)
+ buf.EncodeUint32(v1.Nh.ObjID)
+ buf.EncodeUint32(v1.Nh.ClassifyTableIndex)
+ buf.EncodeUint8(v1.NLabels)
+ for j2 := 0; j2 < 16; j2++ {
+ buf.EncodeUint8(v1.LabelStack[j2].IsUniform)
+ buf.EncodeUint32(v1.LabelStack[j2].Label)
+ buf.EncodeUint8(v1.LabelStack[j2].TTL)
+ buf.EncodeUint8(v1.LabelStack[j2].Exp)
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *IPRouteAddDelV2) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.IsAdd = buf.DecodeBool()
+ m.IsMultipath = buf.DecodeBool()
+ m.Route.TableID = buf.DecodeUint32()
+ m.Route.StatsIndex = buf.DecodeUint32()
+ m.Route.Prefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Route.Prefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Prefix.Len = buf.DecodeUint8()
+ m.Route.NPaths = buf.DecodeUint8()
+ m.Route.Src = buf.DecodeUint8()
+ m.Route.Paths = make([]fib_types.FibPath, m.Route.NPaths)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ m.Route.Paths[j1].SwIfIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].TableID = buf.DecodeUint32()
+ m.Route.Paths[j1].RpfID = buf.DecodeUint32()
+ m.Route.Paths[j1].Weight = buf.DecodeUint8()
+ m.Route.Paths[j1].Preference = buf.DecodeUint8()
+ m.Route.Paths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.Route.Paths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.Route.Paths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.Route.Paths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Paths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.Route.Paths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.Route.Paths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// IPRouteAddDelV2Reply defines message 'ip_route_add_del_v2_reply'.
+// InProgress: the message form may change in the future versions
+type IPRouteAddDelV2Reply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ StatsIndex uint32 `binapi:"u32,name=stats_index" json:"stats_index,omitempty"`
+}
+
+func (m *IPRouteAddDelV2Reply) Reset() { *m = IPRouteAddDelV2Reply{} }
+func (*IPRouteAddDelV2Reply) GetMessageName() string { return "ip_route_add_del_v2_reply" }
+func (*IPRouteAddDelV2Reply) GetCrcString() string { return "1992deab" }
+func (*IPRouteAddDelV2Reply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPRouteAddDelV2Reply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 4 // m.StatsIndex
+ return size
+}
+func (m *IPRouteAddDelV2Reply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeUint32(m.StatsIndex)
+ return buf.Bytes(), nil
+}
+func (m *IPRouteAddDelV2Reply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ m.StatsIndex = buf.DecodeUint32()
+ return nil
+}
+
// IPRouteDetails defines message 'ip_route_details'.
type IPRouteDetails struct {
Route IPRoute `binapi:"ip_route,name=route" json:"route,omitempty"`
@@ -1622,7 +2195,7 @@ type IPRouteDetails struct {
func (m *IPRouteDetails) Reset() { *m = IPRouteDetails{} }
func (*IPRouteDetails) GetMessageName() string { return "ip_route_details" }
-func (*IPRouteDetails) GetCrcString() string { return "d1ffaae1" }
+func (*IPRouteDetails) GetCrcString() string { return "bda8f315" }
func (*IPRouteDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -1784,7 +2357,7 @@ type IPRouteLookup struct {
func (m *IPRouteLookup) Reset() { *m = IPRouteLookup{} }
func (*IPRouteLookup) GetMessageName() string { return "ip_route_lookup" }
-func (*IPRouteLookup) GetCrcString() string { return "e2986185" }
+func (*IPRouteLookup) GetCrcString() string { return "710d6471" }
func (*IPRouteLookup) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -1830,7 +2403,7 @@ type IPRouteLookupReply struct {
func (m *IPRouteLookupReply) Reset() { *m = IPRouteLookupReply{} }
func (*IPRouteLookupReply) GetMessageName() string { return "ip_route_lookup_reply" }
-func (*IPRouteLookupReply) GetCrcString() string { return "ae99de8e" }
+func (*IPRouteLookupReply) GetCrcString() string { return "5d8febcb" }
func (*IPRouteLookupReply) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -1947,6 +2520,352 @@ func (m *IPRouteLookupReply) Unmarshal(b []byte) error {
return nil
}
+// IPRouteLookupV2 defines message 'ip_route_lookup_v2'.
+// InProgress: the message form may change in the future versions
+type IPRouteLookupV2 struct {
+ TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
+ Exact uint8 `binapi:"u8,name=exact" json:"exact,omitempty"`
+ Prefix ip_types.Prefix `binapi:"prefix,name=prefix" json:"prefix,omitempty"`
+}
+
+func (m *IPRouteLookupV2) Reset() { *m = IPRouteLookupV2{} }
+func (*IPRouteLookupV2) GetMessageName() string { return "ip_route_lookup_v2" }
+func (*IPRouteLookupV2) GetCrcString() string { return "710d6471" }
+func (*IPRouteLookupV2) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPRouteLookupV2) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.TableID
+ size += 1 // m.Exact
+ size += 1 // m.Prefix.Address.Af
+ size += 1 * 16 // m.Prefix.Address.Un
+ size += 1 // m.Prefix.Len
+ return size
+}
+func (m *IPRouteLookupV2) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.TableID)
+ buf.EncodeUint8(m.Exact)
+ buf.EncodeUint8(uint8(m.Prefix.Address.Af))
+ buf.EncodeBytes(m.Prefix.Address.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(m.Prefix.Len)
+ return buf.Bytes(), nil
+}
+func (m *IPRouteLookupV2) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.TableID = buf.DecodeUint32()
+ m.Exact = buf.DecodeUint8()
+ m.Prefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Prefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Prefix.Len = buf.DecodeUint8()
+ return nil
+}
+
+// IPRouteLookupV2Reply defines message 'ip_route_lookup_v2_reply'.
+// InProgress: the message form may change in the future versions
+type IPRouteLookupV2Reply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ Route IPRouteV2 `binapi:"ip_route_v2,name=route" json:"route,omitempty"`
+}
+
+func (m *IPRouteLookupV2Reply) Reset() { *m = IPRouteLookupV2Reply{} }
+func (*IPRouteLookupV2Reply) GetMessageName() string { return "ip_route_lookup_v2_reply" }
+func (*IPRouteLookupV2Reply) GetCrcString() string { return "84cc9e03" }
+func (*IPRouteLookupV2Reply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPRouteLookupV2Reply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 4 // m.Route.TableID
+ size += 4 // m.Route.StatsIndex
+ size += 1 // m.Route.Prefix.Address.Af
+ size += 1 * 16 // m.Route.Prefix.Address.Un
+ size += 1 // m.Route.Prefix.Len
+ size += 1 // m.Route.NPaths
+ size += 1 // m.Route.Src
+ for j2 := 0; j2 < len(m.Route.Paths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.Route.Paths) {
+ s2 = m.Route.Paths[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++ {
+ size += 1 // s2.LabelStack[j3].IsUniform
+ size += 4 // s2.LabelStack[j3].Label
+ size += 1 // s2.LabelStack[j3].TTL
+ size += 1 // s2.LabelStack[j3].Exp
+ }
+ }
+ return size
+}
+func (m *IPRouteLookupV2Reply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeUint32(m.Route.TableID)
+ buf.EncodeUint32(m.Route.StatsIndex)
+ buf.EncodeUint8(uint8(m.Route.Prefix.Address.Af))
+ buf.EncodeBytes(m.Route.Prefix.Address.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(m.Route.Prefix.Len)
+ buf.EncodeUint8(uint8(len(m.Route.Paths)))
+ buf.EncodeUint8(m.Route.Src)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ var v1 fib_types.FibPath // Paths
+ if j1 < len(m.Route.Paths) {
+ v1 = m.Route.Paths[j1]
+ }
+ buf.EncodeUint32(v1.SwIfIndex)
+ buf.EncodeUint32(v1.TableID)
+ buf.EncodeUint32(v1.RpfID)
+ buf.EncodeUint8(v1.Weight)
+ buf.EncodeUint8(v1.Preference)
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 16)
+ buf.EncodeUint32(v1.Nh.ViaLabel)
+ buf.EncodeUint32(v1.Nh.ObjID)
+ buf.EncodeUint32(v1.Nh.ClassifyTableIndex)
+ buf.EncodeUint8(v1.NLabels)
+ for j2 := 0; j2 < 16; j2++ {
+ buf.EncodeUint8(v1.LabelStack[j2].IsUniform)
+ buf.EncodeUint32(v1.LabelStack[j2].Label)
+ buf.EncodeUint8(v1.LabelStack[j2].TTL)
+ buf.EncodeUint8(v1.LabelStack[j2].Exp)
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *IPRouteLookupV2Reply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ m.Route.TableID = buf.DecodeUint32()
+ m.Route.StatsIndex = buf.DecodeUint32()
+ m.Route.Prefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Route.Prefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Prefix.Len = buf.DecodeUint8()
+ m.Route.NPaths = buf.DecodeUint8()
+ m.Route.Src = buf.DecodeUint8()
+ m.Route.Paths = make([]fib_types.FibPath, m.Route.NPaths)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ m.Route.Paths[j1].SwIfIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].TableID = buf.DecodeUint32()
+ m.Route.Paths[j1].RpfID = buf.DecodeUint32()
+ m.Route.Paths[j1].Weight = buf.DecodeUint8()
+ m.Route.Paths[j1].Preference = buf.DecodeUint8()
+ m.Route.Paths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.Route.Paths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.Route.Paths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.Route.Paths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Paths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.Route.Paths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.Route.Paths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// IPRouteV2Details defines message 'ip_route_v2_details'.
+// InProgress: the message form may change in the future versions
+type IPRouteV2Details struct {
+ Route IPRouteV2 `binapi:"ip_route_v2,name=route" json:"route,omitempty"`
+}
+
+func (m *IPRouteV2Details) Reset() { *m = IPRouteV2Details{} }
+func (*IPRouteV2Details) GetMessageName() string { return "ip_route_v2_details" }
+func (*IPRouteV2Details) GetCrcString() string { return "b09aa6c0" }
+func (*IPRouteV2Details) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *IPRouteV2Details) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Route.TableID
+ size += 4 // m.Route.StatsIndex
+ size += 1 // m.Route.Prefix.Address.Af
+ size += 1 * 16 // m.Route.Prefix.Address.Un
+ size += 1 // m.Route.Prefix.Len
+ size += 1 // m.Route.NPaths
+ size += 1 // m.Route.Src
+ for j2 := 0; j2 < len(m.Route.Paths); j2++ {
+ var s2 fib_types.FibPath
+ _ = s2
+ if j2 < len(m.Route.Paths) {
+ s2 = m.Route.Paths[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++ {
+ size += 1 // s2.LabelStack[j3].IsUniform
+ size += 4 // s2.LabelStack[j3].Label
+ size += 1 // s2.LabelStack[j3].TTL
+ size += 1 // s2.LabelStack[j3].Exp
+ }
+ }
+ return size
+}
+func (m *IPRouteV2Details) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.Route.TableID)
+ buf.EncodeUint32(m.Route.StatsIndex)
+ buf.EncodeUint8(uint8(m.Route.Prefix.Address.Af))
+ buf.EncodeBytes(m.Route.Prefix.Address.Un.XXX_UnionData[:], 16)
+ buf.EncodeUint8(m.Route.Prefix.Len)
+ buf.EncodeUint8(uint8(len(m.Route.Paths)))
+ buf.EncodeUint8(m.Route.Src)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ var v1 fib_types.FibPath // Paths
+ if j1 < len(m.Route.Paths) {
+ v1 = m.Route.Paths[j1]
+ }
+ buf.EncodeUint32(v1.SwIfIndex)
+ buf.EncodeUint32(v1.TableID)
+ buf.EncodeUint32(v1.RpfID)
+ buf.EncodeUint8(v1.Weight)
+ buf.EncodeUint8(v1.Preference)
+ buf.EncodeUint32(uint32(v1.Type))
+ buf.EncodeUint32(uint32(v1.Flags))
+ buf.EncodeUint32(uint32(v1.Proto))
+ buf.EncodeBytes(v1.Nh.Address.XXX_UnionData[:], 16)
+ buf.EncodeUint32(v1.Nh.ViaLabel)
+ buf.EncodeUint32(v1.Nh.ObjID)
+ buf.EncodeUint32(v1.Nh.ClassifyTableIndex)
+ buf.EncodeUint8(v1.NLabels)
+ for j2 := 0; j2 < 16; j2++ {
+ buf.EncodeUint8(v1.LabelStack[j2].IsUniform)
+ buf.EncodeUint32(v1.LabelStack[j2].Label)
+ buf.EncodeUint8(v1.LabelStack[j2].TTL)
+ buf.EncodeUint8(v1.LabelStack[j2].Exp)
+ }
+ }
+ return buf.Bytes(), nil
+}
+func (m *IPRouteV2Details) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Route.TableID = buf.DecodeUint32()
+ m.Route.StatsIndex = buf.DecodeUint32()
+ m.Route.Prefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ copy(m.Route.Prefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Prefix.Len = buf.DecodeUint8()
+ m.Route.NPaths = buf.DecodeUint8()
+ m.Route.Src = buf.DecodeUint8()
+ m.Route.Paths = make([]fib_types.FibPath, m.Route.NPaths)
+ for j1 := 0; j1 < len(m.Route.Paths); j1++ {
+ m.Route.Paths[j1].SwIfIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].TableID = buf.DecodeUint32()
+ m.Route.Paths[j1].RpfID = buf.DecodeUint32()
+ m.Route.Paths[j1].Weight = buf.DecodeUint8()
+ m.Route.Paths[j1].Preference = buf.DecodeUint8()
+ m.Route.Paths[j1].Type = fib_types.FibPathType(buf.DecodeUint32())
+ m.Route.Paths[j1].Flags = fib_types.FibPathFlags(buf.DecodeUint32())
+ m.Route.Paths[j1].Proto = fib_types.FibPathNhProto(buf.DecodeUint32())
+ copy(m.Route.Paths[j1].Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16))
+ m.Route.Paths[j1].Nh.ViaLabel = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ObjID = buf.DecodeUint32()
+ m.Route.Paths[j1].Nh.ClassifyTableIndex = buf.DecodeUint32()
+ m.Route.Paths[j1].NLabels = buf.DecodeUint8()
+ for j2 := 0; j2 < 16; j2++ {
+ m.Route.Paths[j1].LabelStack[j2].IsUniform = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Label = buf.DecodeUint32()
+ m.Route.Paths[j1].LabelStack[j2].TTL = buf.DecodeUint8()
+ m.Route.Paths[j1].LabelStack[j2].Exp = buf.DecodeUint8()
+ }
+ }
+ return nil
+}
+
+// IPRouteV2Dump defines message 'ip_route_v2_dump'.
+// InProgress: the message form may change in the future versions
+type IPRouteV2Dump struct {
+ Src uint8 `binapi:"u8,name=src" json:"src,omitempty"`
+ Table IPTable `binapi:"ip_table,name=table" json:"table,omitempty"`
+}
+
+func (m *IPRouteV2Dump) Reset() { *m = IPRouteV2Dump{} }
+func (*IPRouteV2Dump) GetMessageName() string { return "ip_route_v2_dump" }
+func (*IPRouteV2Dump) GetCrcString() string { return "d16f72e6" }
+func (*IPRouteV2Dump) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *IPRouteV2Dump) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 1 // m.Src
+ size += 4 // m.Table.TableID
+ size += 1 // m.Table.IsIP6
+ size += 64 // m.Table.Name
+ return size
+}
+func (m *IPRouteV2Dump) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint8(m.Src)
+ buf.EncodeUint32(m.Table.TableID)
+ buf.EncodeBool(m.Table.IsIP6)
+ buf.EncodeString(m.Table.Name, 64)
+ return buf.Bytes(), nil
+}
+func (m *IPRouteV2Dump) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Src = buf.DecodeUint8()
+ m.Table.TableID = buf.DecodeUint32()
+ m.Table.IsIP6 = buf.DecodeBool()
+ m.Table.Name = buf.DecodeString(64)
+ return nil
+}
+
// IPSourceAndPortRangeCheckAddDel defines message 'ip_source_and_port_range_check_add_del'.
type IPSourceAndPortRangeCheckAddDel struct {
IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"`
@@ -1961,7 +2880,7 @@ func (m *IPSourceAndPortRangeCheckAddDel) Reset() { *m = IPSourceAndPortRangeChe
func (*IPSourceAndPortRangeCheckAddDel) GetMessageName() string {
return "ip_source_and_port_range_check_add_del"
}
-func (*IPSourceAndPortRangeCheckAddDel) GetCrcString() string { return "8bfc76f2" }
+func (*IPSourceAndPortRangeCheckAddDel) GetCrcString() string { return "92a067e3" }
func (*IPSourceAndPortRangeCheckAddDel) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -2521,7 +3440,7 @@ type IPUnnumberedDetails struct {
func (m *IPUnnumberedDetails) Reset() { *m = IPUnnumberedDetails{} }
func (*IPUnnumberedDetails) GetMessageName() string { return "ip_unnumbered_details" }
-func (*IPUnnumberedDetails) GetCrcString() string { return "aa12a483" }
+func (*IPUnnumberedDetails) GetCrcString() string { return "cc59bd42" }
func (*IPUnnumberedDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -2594,7 +3513,7 @@ type MfibSignalDetails struct {
func (m *MfibSignalDetails) Reset() { *m = MfibSignalDetails{} }
func (*MfibSignalDetails) GetMessageName() string { return "mfib_signal_details" }
-func (*MfibSignalDetails) GetCrcString() string { return "64398a9a" }
+func (*MfibSignalDetails) GetCrcString() string { return "6f4a4cfb" }
func (*MfibSignalDetails) GetMessageType() api.MessageType {
return api.ReplyMessage
}
@@ -2670,6 +3589,7 @@ func (m *MfibSignalDump) Unmarshal(b []byte) error {
}
// SetIPFlowHash defines message 'set_ip_flow_hash'.
+// Deprecated: the message will be removed in the future versions
type SetIPFlowHash struct {
VrfID uint32 `binapi:"u32,name=vrf_id" json:"vrf_id,omitempty"`
IsIPv6 bool `binapi:"bool,name=is_ipv6" json:"is_ipv6,omitempty"`
@@ -2735,6 +3655,7 @@ func (m *SetIPFlowHash) Unmarshal(b []byte) error {
}
// SetIPFlowHashReply defines message 'set_ip_flow_hash_reply'.
+// Deprecated: the message will be removed in the future versions
type SetIPFlowHashReply struct {
Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
}
@@ -2767,6 +3688,146 @@ func (m *SetIPFlowHashReply) Unmarshal(b []byte) error {
return nil
}
+// SetIPFlowHashRouterID defines message 'set_ip_flow_hash_router_id'.
+type SetIPFlowHashRouterID struct {
+ RouterID uint32 `binapi:"u32,name=router_id" json:"router_id,omitempty"`
+}
+
+func (m *SetIPFlowHashRouterID) Reset() { *m = SetIPFlowHashRouterID{} }
+func (*SetIPFlowHashRouterID) GetMessageName() string { return "set_ip_flow_hash_router_id" }
+func (*SetIPFlowHashRouterID) GetCrcString() string { return "03e4f48e" }
+func (*SetIPFlowHashRouterID) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *SetIPFlowHashRouterID) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.RouterID
+ return size
+}
+func (m *SetIPFlowHashRouterID) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.RouterID)
+ return buf.Bytes(), nil
+}
+func (m *SetIPFlowHashRouterID) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.RouterID = buf.DecodeUint32()
+ return nil
+}
+
+// SetIPFlowHashRouterIDReply defines message 'set_ip_flow_hash_router_id_reply'.
+type SetIPFlowHashRouterIDReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *SetIPFlowHashRouterIDReply) Reset() { *m = SetIPFlowHashRouterIDReply{} }
+func (*SetIPFlowHashRouterIDReply) GetMessageName() string { return "set_ip_flow_hash_router_id_reply" }
+func (*SetIPFlowHashRouterIDReply) GetCrcString() string { return "e8d4e804" }
+func (*SetIPFlowHashRouterIDReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *SetIPFlowHashRouterIDReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *SetIPFlowHashRouterIDReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ return buf.Bytes(), nil
+}
+func (m *SetIPFlowHashRouterIDReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
+// SetIPFlowHashV2 defines message 'set_ip_flow_hash_v2'.
+type SetIPFlowHashV2 struct {
+ TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
+ Af ip_types.AddressFamily `binapi:"address_family,name=af" json:"af,omitempty"`
+ FlowHashConfig IPFlowHashConfig `binapi:"ip_flow_hash_config,name=flow_hash_config" json:"flow_hash_config,omitempty"`
+}
+
+func (m *SetIPFlowHashV2) Reset() { *m = SetIPFlowHashV2{} }
+func (*SetIPFlowHashV2) GetMessageName() string { return "set_ip_flow_hash_v2" }
+func (*SetIPFlowHashV2) GetCrcString() string { return "6d132100" }
+func (*SetIPFlowHashV2) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *SetIPFlowHashV2) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.TableID
+ size += 1 // m.Af
+ size += 4 // m.FlowHashConfig
+ return size
+}
+func (m *SetIPFlowHashV2) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(m.TableID)
+ buf.EncodeUint8(uint8(m.Af))
+ buf.EncodeUint32(uint32(m.FlowHashConfig))
+ return buf.Bytes(), nil
+}
+func (m *SetIPFlowHashV2) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.TableID = buf.DecodeUint32()
+ m.Af = ip_types.AddressFamily(buf.DecodeUint8())
+ m.FlowHashConfig = IPFlowHashConfig(buf.DecodeUint32())
+ return nil
+}
+
+// SetIPFlowHashV2Reply defines message 'set_ip_flow_hash_v2_reply'.
+type SetIPFlowHashV2Reply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *SetIPFlowHashV2Reply) Reset() { *m = SetIPFlowHashV2Reply{} }
+func (*SetIPFlowHashV2Reply) GetMessageName() string { return "set_ip_flow_hash_v2_reply" }
+func (*SetIPFlowHashV2Reply) GetCrcString() string { return "e8d4e804" }
+func (*SetIPFlowHashV2Reply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *SetIPFlowHashV2Reply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *SetIPFlowHashV2Reply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ return buf.Bytes(), nil
+}
+func (m *SetIPFlowHashV2Reply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
// SwInterfaceIP6EnableDisable defines message 'sw_interface_ip6_enable_disable'.
type SwInterfaceIP6EnableDisable struct {
SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
@@ -2839,6 +3900,82 @@ func (m *SwInterfaceIP6EnableDisableReply) Unmarshal(b []byte) error {
return nil
}
+// SwInterfaceIP6GetLinkLocalAddress defines message 'sw_interface_ip6_get_link_local_address'.
+type SwInterfaceIP6GetLinkLocalAddress struct {
+ SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
+}
+
+func (m *SwInterfaceIP6GetLinkLocalAddress) Reset() { *m = SwInterfaceIP6GetLinkLocalAddress{} }
+func (*SwInterfaceIP6GetLinkLocalAddress) GetMessageName() string {
+ return "sw_interface_ip6_get_link_local_address"
+}
+func (*SwInterfaceIP6GetLinkLocalAddress) GetCrcString() string { return "f9e6675e" }
+func (*SwInterfaceIP6GetLinkLocalAddress) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *SwInterfaceIP6GetLinkLocalAddress) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.SwIfIndex
+ return size
+}
+func (m *SwInterfaceIP6GetLinkLocalAddress) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ return buf.Bytes(), nil
+}
+func (m *SwInterfaceIP6GetLinkLocalAddress) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
+ return nil
+}
+
+// SwInterfaceIP6GetLinkLocalAddressReply defines message 'sw_interface_ip6_get_link_local_address_reply'.
+type SwInterfaceIP6GetLinkLocalAddressReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+ IP ip_types.IP6Address `binapi:"ip6_address,name=ip" json:"ip,omitempty"`
+}
+
+func (m *SwInterfaceIP6GetLinkLocalAddressReply) Reset() {
+ *m = SwInterfaceIP6GetLinkLocalAddressReply{}
+}
+func (*SwInterfaceIP6GetLinkLocalAddressReply) GetMessageName() string {
+ return "sw_interface_ip6_get_link_local_address_reply"
+}
+func (*SwInterfaceIP6GetLinkLocalAddressReply) GetCrcString() string { return "d16b7130" }
+func (*SwInterfaceIP6GetLinkLocalAddressReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *SwInterfaceIP6GetLinkLocalAddressReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ size += 1 * 16 // m.IP
+ return size
+}
+func (m *SwInterfaceIP6GetLinkLocalAddressReply) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeInt32(m.Retval)
+ buf.EncodeBytes(m.IP[:], 16)
+ return buf.Bytes(), nil
+}
+func (m *SwInterfaceIP6GetLinkLocalAddressReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ copy(m.IP[:], buf.DecodeBytes(16))
+ return nil
+}
+
// SwInterfaceIP6SetLinkLocalAddress defines message 'sw_interface_ip6_set_link_local_address'.
type SwInterfaceIP6SetLinkLocalAddress struct {
SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
@@ -2849,7 +3986,7 @@ func (m *SwInterfaceIP6SetLinkLocalAddress) Reset() { *m = SwInterfaceIP6SetLink
func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageName() string {
return "sw_interface_ip6_set_link_local_address"
}
-func (*SwInterfaceIP6SetLinkLocalAddress) GetCrcString() string { return "2931d9fa" }
+func (*SwInterfaceIP6SetLinkLocalAddress) GetCrcString() string { return "1c10f15f" }
func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageType() api.MessageType {
return api.RequestMessage
}
@@ -2921,39 +4058,54 @@ func file_ip_binapi_init() {
api.RegisterMessage((*IoamDisableReply)(nil), "ioam_disable_reply_e8d4e804")
api.RegisterMessage((*IoamEnable)(nil), "ioam_enable_51ccd868")
api.RegisterMessage((*IoamEnableReply)(nil), "ioam_enable_reply_e8d4e804")
- api.RegisterMessage((*IPAddressDetails)(nil), "ip_address_details_b1199745")
+ api.RegisterMessage((*IPAddressDetails)(nil), "ip_address_details_ee29b797")
api.RegisterMessage((*IPAddressDump)(nil), "ip_address_dump_2d033de4")
- api.RegisterMessage((*IPContainerProxyAddDel)(nil), "ip_container_proxy_add_del_91189f40")
+ api.RegisterMessage((*IPContainerProxyAddDel)(nil), "ip_container_proxy_add_del_7df1dff1")
api.RegisterMessage((*IPContainerProxyAddDelReply)(nil), "ip_container_proxy_add_del_reply_e8d4e804")
- api.RegisterMessage((*IPContainerProxyDetails)(nil), "ip_container_proxy_details_0ee460e8")
+ api.RegisterMessage((*IPContainerProxyDetails)(nil), "ip_container_proxy_details_a8085523")
api.RegisterMessage((*IPContainerProxyDump)(nil), "ip_container_proxy_dump_51077d14")
api.RegisterMessage((*IPDetails)(nil), "ip_details_eb152d07")
api.RegisterMessage((*IPDump)(nil), "ip_dump_98d231ca")
- api.RegisterMessage((*IPMrouteAddDel)(nil), "ip_mroute_add_del_f6627d17")
+ api.RegisterMessage((*IPMrouteAddDel)(nil), "ip_mroute_add_del_0dd7e790")
api.RegisterMessage((*IPMrouteAddDelReply)(nil), "ip_mroute_add_del_reply_1992deab")
- api.RegisterMessage((*IPMrouteDetails)(nil), "ip_mroute_details_c1cb4b44")
+ api.RegisterMessage((*IPMrouteDetails)(nil), "ip_mroute_details_c5cb23fc")
api.RegisterMessage((*IPMrouteDump)(nil), "ip_mroute_dump_b9d2e09e")
api.RegisterMessage((*IPMtableDetails)(nil), "ip_mtable_details_b9d2e09e")
api.RegisterMessage((*IPMtableDump)(nil), "ip_mtable_dump_51077d14")
+ api.RegisterMessage((*IPPathMtuDetails)(nil), "ip_path_mtu_details_ac9539a7")
+ api.RegisterMessage((*IPPathMtuGet)(nil), "ip_path_mtu_get_f75ba505")
+ api.RegisterMessage((*IPPathMtuGetReply)(nil), "ip_path_mtu_get_reply_53b48f5d")
+ api.RegisterMessage((*IPPathMtuReplaceBegin)(nil), "ip_path_mtu_replace_begin_51077d14")
+ api.RegisterMessage((*IPPathMtuReplaceBeginReply)(nil), "ip_path_mtu_replace_begin_reply_e8d4e804")
+ api.RegisterMessage((*IPPathMtuReplaceEnd)(nil), "ip_path_mtu_replace_end_51077d14")
+ api.RegisterMessage((*IPPathMtuReplaceEndReply)(nil), "ip_path_mtu_replace_end_reply_e8d4e804")
+ api.RegisterMessage((*IPPathMtuUpdate)(nil), "ip_path_mtu_update_10bbe5cb")
+ api.RegisterMessage((*IPPathMtuUpdateReply)(nil), "ip_path_mtu_update_reply_e8d4e804")
api.RegisterMessage((*IPPuntPolice)(nil), "ip_punt_police_db867cea")
api.RegisterMessage((*IPPuntPoliceReply)(nil), "ip_punt_police_reply_e8d4e804")
- api.RegisterMessage((*IPPuntRedirect)(nil), "ip_punt_redirect_a9a5592c")
- api.RegisterMessage((*IPPuntRedirectDetails)(nil), "ip_punt_redirect_details_3924f5d3")
+ api.RegisterMessage((*IPPuntRedirect)(nil), "ip_punt_redirect_6580f635")
+ api.RegisterMessage((*IPPuntRedirectDetails)(nil), "ip_punt_redirect_details_2cef63e7")
api.RegisterMessage((*IPPuntRedirectDump)(nil), "ip_punt_redirect_dump_2d033de4")
api.RegisterMessage((*IPPuntRedirectReply)(nil), "ip_punt_redirect_reply_e8d4e804")
- api.RegisterMessage((*IPReassemblyEnableDisable)(nil), "ip_reassembly_enable_disable_885c85a6")
+ api.RegisterMessage((*IPReassemblyEnableDisable)(nil), "ip_reassembly_enable_disable_eb77968d")
api.RegisterMessage((*IPReassemblyEnableDisableReply)(nil), "ip_reassembly_enable_disable_reply_e8d4e804")
api.RegisterMessage((*IPReassemblyGet)(nil), "ip_reassembly_get_ea13ff63")
api.RegisterMessage((*IPReassemblyGetReply)(nil), "ip_reassembly_get_reply_d5eb8d34")
api.RegisterMessage((*IPReassemblySet)(nil), "ip_reassembly_set_16467d25")
api.RegisterMessage((*IPReassemblySetReply)(nil), "ip_reassembly_set_reply_e8d4e804")
- api.RegisterMessage((*IPRouteAddDel)(nil), "ip_route_add_del_c1ff832d")
+ api.RegisterMessage((*IPRouteAddDel)(nil), "ip_route_add_del_b8ecfe0d")
api.RegisterMessage((*IPRouteAddDelReply)(nil), "ip_route_add_del_reply_1992deab")
- api.RegisterMessage((*IPRouteDetails)(nil), "ip_route_details_d1ffaae1")
+ api.RegisterMessage((*IPRouteAddDelV2)(nil), "ip_route_add_del_v2_521ef330")
+ api.RegisterMessage((*IPRouteAddDelV2Reply)(nil), "ip_route_add_del_v2_reply_1992deab")
+ api.RegisterMessage((*IPRouteDetails)(nil), "ip_route_details_bda8f315")
api.RegisterMessage((*IPRouteDump)(nil), "ip_route_dump_b9d2e09e")
- api.RegisterMessage((*IPRouteLookup)(nil), "ip_route_lookup_e2986185")
- api.RegisterMessage((*IPRouteLookupReply)(nil), "ip_route_lookup_reply_ae99de8e")
- api.RegisterMessage((*IPSourceAndPortRangeCheckAddDel)(nil), "ip_source_and_port_range_check_add_del_8bfc76f2")
+ api.RegisterMessage((*IPRouteLookup)(nil), "ip_route_lookup_710d6471")
+ api.RegisterMessage((*IPRouteLookupReply)(nil), "ip_route_lookup_reply_5d8febcb")
+ api.RegisterMessage((*IPRouteLookupV2)(nil), "ip_route_lookup_v2_710d6471")
+ api.RegisterMessage((*IPRouteLookupV2Reply)(nil), "ip_route_lookup_v2_reply_84cc9e03")
+ api.RegisterMessage((*IPRouteV2Details)(nil), "ip_route_v2_details_b09aa6c0")
+ api.RegisterMessage((*IPRouteV2Dump)(nil), "ip_route_v2_dump_d16f72e6")
+ api.RegisterMessage((*IPSourceAndPortRangeCheckAddDel)(nil), "ip_source_and_port_range_check_add_del_92a067e3")
api.RegisterMessage((*IPSourceAndPortRangeCheckAddDelReply)(nil), "ip_source_and_port_range_check_add_del_reply_e8d4e804")
api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDel)(nil), "ip_source_and_port_range_check_interface_add_del_e1ba8987")
api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil), "ip_source_and_port_range_check_interface_add_del_reply_e8d4e804")
@@ -2967,15 +4119,21 @@ func file_ip_binapi_init() {
api.RegisterMessage((*IPTableReplaceBeginReply)(nil), "ip_table_replace_begin_reply_e8d4e804")
api.RegisterMessage((*IPTableReplaceEnd)(nil), "ip_table_replace_end_b9d2e09e")
api.RegisterMessage((*IPTableReplaceEndReply)(nil), "ip_table_replace_end_reply_e8d4e804")
- api.RegisterMessage((*IPUnnumberedDetails)(nil), "ip_unnumbered_details_aa12a483")
+ api.RegisterMessage((*IPUnnumberedDetails)(nil), "ip_unnumbered_details_cc59bd42")
api.RegisterMessage((*IPUnnumberedDump)(nil), "ip_unnumbered_dump_f9e6675e")
- api.RegisterMessage((*MfibSignalDetails)(nil), "mfib_signal_details_64398a9a")
+ api.RegisterMessage((*MfibSignalDetails)(nil), "mfib_signal_details_6f4a4cfb")
api.RegisterMessage((*MfibSignalDump)(nil), "mfib_signal_dump_51077d14")
api.RegisterMessage((*SetIPFlowHash)(nil), "set_ip_flow_hash_084ee09e")
api.RegisterMessage((*SetIPFlowHashReply)(nil), "set_ip_flow_hash_reply_e8d4e804")
+ api.RegisterMessage((*SetIPFlowHashRouterID)(nil), "set_ip_flow_hash_router_id_03e4f48e")
+ api.RegisterMessage((*SetIPFlowHashRouterIDReply)(nil), "set_ip_flow_hash_router_id_reply_e8d4e804")
+ api.RegisterMessage((*SetIPFlowHashV2)(nil), "set_ip_flow_hash_v2_6d132100")
+ api.RegisterMessage((*SetIPFlowHashV2Reply)(nil), "set_ip_flow_hash_v2_reply_e8d4e804")
api.RegisterMessage((*SwInterfaceIP6EnableDisable)(nil), "sw_interface_ip6_enable_disable_ae6cfcfb")
api.RegisterMessage((*SwInterfaceIP6EnableDisableReply)(nil), "sw_interface_ip6_enable_disable_reply_e8d4e804")
- api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddress)(nil), "sw_interface_ip6_set_link_local_address_2931d9fa")
+ api.RegisterMessage((*SwInterfaceIP6GetLinkLocalAddress)(nil), "sw_interface_ip6_get_link_local_address_f9e6675e")
+ api.RegisterMessage((*SwInterfaceIP6GetLinkLocalAddressReply)(nil), "sw_interface_ip6_get_link_local_address_reply_d16b7130")
+ api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddress)(nil), "sw_interface_ip6_set_link_local_address_1c10f15f")
api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddressReply)(nil), "sw_interface_ip6_set_link_local_address_reply_e8d4e804")
}
@@ -3000,6 +4158,15 @@ func AllMessages() []api.Message {
(*IPMrouteDump)(nil),
(*IPMtableDetails)(nil),
(*IPMtableDump)(nil),
+ (*IPPathMtuDetails)(nil),
+ (*IPPathMtuGet)(nil),
+ (*IPPathMtuGetReply)(nil),
+ (*IPPathMtuReplaceBegin)(nil),
+ (*IPPathMtuReplaceBeginReply)(nil),
+ (*IPPathMtuReplaceEnd)(nil),
+ (*IPPathMtuReplaceEndReply)(nil),
+ (*IPPathMtuUpdate)(nil),
+ (*IPPathMtuUpdateReply)(nil),
(*IPPuntPolice)(nil),
(*IPPuntPoliceReply)(nil),
(*IPPuntRedirect)(nil),
@@ -3014,10 +4181,16 @@ func AllMessages() []api.Message {
(*IPReassemblySetReply)(nil),
(*IPRouteAddDel)(nil),
(*IPRouteAddDelReply)(nil),
+ (*IPRouteAddDelV2)(nil),
+ (*IPRouteAddDelV2Reply)(nil),
(*IPRouteDetails)(nil),
(*IPRouteDump)(nil),
(*IPRouteLookup)(nil),
(*IPRouteLookupReply)(nil),
+ (*IPRouteLookupV2)(nil),
+ (*IPRouteLookupV2Reply)(nil),
+ (*IPRouteV2Details)(nil),
+ (*IPRouteV2Dump)(nil),
(*IPSourceAndPortRangeCheckAddDel)(nil),
(*IPSourceAndPortRangeCheckAddDelReply)(nil),
(*IPSourceAndPortRangeCheckInterfaceAddDel)(nil),
@@ -3038,8 +4211,14 @@ func AllMessages() []api.Message {
(*MfibSignalDump)(nil),
(*SetIPFlowHash)(nil),
(*SetIPFlowHashReply)(nil),
+ (*SetIPFlowHashRouterID)(nil),
+ (*SetIPFlowHashRouterIDReply)(nil),
+ (*SetIPFlowHashV2)(nil),
+ (*SetIPFlowHashV2Reply)(nil),
(*SwInterfaceIP6EnableDisable)(nil),
(*SwInterfaceIP6EnableDisableReply)(nil),
+ (*SwInterfaceIP6GetLinkLocalAddress)(nil),
+ (*SwInterfaceIP6GetLinkLocalAddressReply)(nil),
(*SwInterfaceIP6SetLinkLocalAddress)(nil),
(*SwInterfaceIP6SetLinkLocalAddressReply)(nil),
}
diff --git a/binapi/ip/ip_rpc.ba.go b/binapi/ip/ip_rpc.ba.go
index 32ea1b5..6429f0c 100644
--- a/binapi/ip/ip_rpc.ba.go
+++ b/binapi/ip/ip_rpc.ba.go
@@ -22,6 +22,10 @@ type RPCService interface {
IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
IPMrouteDump(ctx context.Context, in *IPMrouteDump) (RPCService_IPMrouteDumpClient, error)
IPMtableDump(ctx context.Context, in *IPMtableDump) (RPCService_IPMtableDumpClient, error)
+ IPPathMtuGet(ctx context.Context, in *IPPathMtuGet) (RPCService_IPPathMtuGetClient, error)
+ IPPathMtuReplaceBegin(ctx context.Context, in *IPPathMtuReplaceBegin) (*IPPathMtuReplaceBeginReply, error)
+ IPPathMtuReplaceEnd(ctx context.Context, in *IPPathMtuReplaceEnd) (*IPPathMtuReplaceEndReply, error)
+ IPPathMtuUpdate(ctx context.Context, in *IPPathMtuUpdate) (*IPPathMtuUpdateReply, error)
IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error)
@@ -29,8 +33,11 @@ type RPCService interface {
IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
+ IPRouteAddDelV2(ctx context.Context, in *IPRouteAddDelV2) (*IPRouteAddDelV2Reply, error)
IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error)
IPRouteLookup(ctx context.Context, in *IPRouteLookup) (*IPRouteLookupReply, error)
+ IPRouteLookupV2(ctx context.Context, in *IPRouteLookupV2) (*IPRouteLookupV2Reply, error)
+ IPRouteV2Dump(ctx context.Context, in *IPRouteV2Dump) (RPCService_IPRouteV2DumpClient, error)
IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
@@ -41,7 +48,10 @@ type RPCService interface {
IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error)
MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error)
SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
+ SetIPFlowHashRouterID(ctx context.Context, in *SetIPFlowHashRouterID) (*SetIPFlowHashRouterIDReply, error)
+ SetIPFlowHashV2(ctx context.Context, in *SetIPFlowHashV2) (*SetIPFlowHashV2Reply, error)
SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
+ SwInterfaceIP6GetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6GetLinkLocalAddress) (*SwInterfaceIP6GetLinkLocalAddressReply, error)
SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
}
@@ -284,6 +294,69 @@ func (c *serviceClient_IPMtableDumpClient) Recv() (*IPMtableDetails, error) {
}
}
+func (c *serviceClient) IPPathMtuGet(ctx context.Context, in *IPPathMtuGet) (RPCService_IPPathMtuGetClient, error) {
+ stream, err := c.conn.NewStream(ctx)
+ if err != nil {
+ return nil, err
+ }
+ x := &serviceClient_IPPathMtuGetClient{stream}
+ if err := x.Stream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type RPCService_IPPathMtuGetClient interface {
+ Recv() (*IPPathMtuDetails, error)
+ api.Stream
+}
+
+type serviceClient_IPPathMtuGetClient struct {
+ api.Stream
+}
+
+func (c *serviceClient_IPPathMtuGetClient) Recv() (*IPPathMtuDetails, error) {
+ msg, err := c.Stream.RecvMsg()
+ if err != nil {
+ return nil, err
+ }
+ switch m := msg.(type) {
+ case *IPPathMtuDetails:
+ return m, nil
+ case *IPPathMtuGetReply:
+ return nil, io.EOF
+ default:
+ return nil, fmt.Errorf("unexpected message: %T %v", m, m)
+ }
+}
+
+func (c *serviceClient) IPPathMtuReplaceBegin(ctx context.Context, in *IPPathMtuReplaceBegin) (*IPPathMtuReplaceBeginReply, error) {
+ out := new(IPPathMtuReplaceBeginReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
+func (c *serviceClient) IPPathMtuReplaceEnd(ctx context.Context, in *IPPathMtuReplaceEnd) (*IPPathMtuReplaceEndReply, error) {
+ out := new(IPPathMtuReplaceEndReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
+func (c *serviceClient) IPPathMtuUpdate(ctx context.Context, in *IPPathMtuUpdate) (*IPPathMtuUpdateReply, error) {
+ out := new(IPPathMtuUpdateReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
out := new(IPPuntPoliceReply)
err := c.conn.Invoke(ctx, in, out)
@@ -377,6 +450,15 @@ func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*
return out, api.RetvalToVPPApiError(out.Retval)
}
+func (c *serviceClient) IPRouteAddDelV2(ctx context.Context, in *IPRouteAddDelV2) (*IPRouteAddDelV2Reply, error) {
+ out := new(IPRouteAddDelV2Reply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
func (c *serviceClient) IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error) {
stream, err := c.conn.NewStream(ctx)
if err != nil {
@@ -425,6 +507,54 @@ func (c *serviceClient) IPRouteLookup(ctx context.Context, in *IPRouteLookup) (*
return out, api.RetvalToVPPApiError(out.Retval)
}
+func (c *serviceClient) IPRouteLookupV2(ctx context.Context, in *IPRouteLookupV2) (*IPRouteLookupV2Reply, error) {
+ out := new(IPRouteLookupV2Reply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
+func (c *serviceClient) IPRouteV2Dump(ctx context.Context, in *IPRouteV2Dump) (RPCService_IPRouteV2DumpClient, error) {
+ stream, err := c.conn.NewStream(ctx)
+ if err != nil {
+ return nil, err
+ }
+ x := &serviceClient_IPRouteV2DumpClient{stream}
+ if err := x.Stream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type RPCService_IPRouteV2DumpClient interface {
+ Recv() (*IPRouteV2Details, error)
+ api.Stream
+}
+
+type serviceClient_IPRouteV2DumpClient struct {
+ api.Stream
+}
+
+func (c *serviceClient_IPRouteV2DumpClient) Recv() (*IPRouteV2Details, error) {
+ msg, err := c.Stream.RecvMsg()
+ if err != nil {
+ return nil, err
+ }
+ switch m := msg.(type) {
+ case *IPRouteV2Details:
+ return m, nil
+ case *vpe.ControlPingReply:
+ return nil, io.EOF
+ default:
+ return nil, fmt.Errorf("unexpected message: %T %v", m, m)
+ }
+}
+
func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
out := new(IPSourceAndPortRangeCheckAddDelReply)
err := c.conn.Invoke(ctx, in, out)
@@ -605,6 +735,24 @@ func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*
return out, api.RetvalToVPPApiError(out.Retval)
}
+func (c *serviceClient) SetIPFlowHashRouterID(ctx context.Context, in *SetIPFlowHashRouterID) (*SetIPFlowHashRouterIDReply, error) {
+ out := new(SetIPFlowHashRouterIDReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
+func (c *serviceClient) SetIPFlowHashV2(ctx context.Context, in *SetIPFlowHashV2) (*SetIPFlowHashV2Reply, error) {
+ out := new(SetIPFlowHashV2Reply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
out := new(SwInterfaceIP6EnableDisableReply)
err := c.conn.Invoke(ctx, in, out)
@@ -614,6 +762,15 @@ func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwI
return out, api.RetvalToVPPApiError(out.Retval)
}
+func (c *serviceClient) SwInterfaceIP6GetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6GetLinkLocalAddress) (*SwInterfaceIP6GetLinkLocalAddressReply, error) {
+ out := new(SwInterfaceIP6GetLinkLocalAddressReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, api.RetvalToVPPApiError(out.Retval)
+}
+
func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
out := new(SwInterfaceIP6SetLinkLocalAddressReply)
err := c.conn.Invoke(ctx, in, out)