aboutsummaryrefslogtreecommitdiffstats
path: root/internal/testbinapi/binapi2001/l2e
diff options
context:
space:
mode:
authorOndrej Fabry <ofabry@cisco.com>2020-07-22 04:40:55 +0200
committerOndrej Fabry <ofabry@cisco.com>2020-07-22 04:40:55 +0200
commit58da9ac6e691a8c660eb8ca838a154e11da0db68 (patch)
treea1bbda04c6d0621ce0fc20779276620f1820190b /internal/testbinapi/binapi2001/l2e
parenta155cd438c6558da266c1c5931361ea088b35653 (diff)
Fix binapigen decoding and minor improvements
- fixed allocating byte slices before copying decoded data - simplified encoding functions - several minor improvements Change-Id: I6669424b89eb86333805cb1b57e4551169980cc2 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'internal/testbinapi/binapi2001/l2e')
-rw-r--r--internal/testbinapi/binapi2001/l2e/l2e.ba.go370
-rw-r--r--internal/testbinapi/binapi2001/l2e/l2e_rpc.ba.go30
2 files changed, 400 insertions, 0 deletions
diff --git a/internal/testbinapi/binapi2001/l2e/l2e.ba.go b/internal/testbinapi/binapi2001/l2e/l2e.ba.go
new file mode 100644
index 0000000..02680bb
--- /dev/null
+++ b/internal/testbinapi/binapi2001/l2e/l2e.ba.go
@@ -0,0 +1,370 @@
+// Code generated by GoVPP's binapi-generator. DO NOT EDIT.
+// versions:
+// binapi-generator: v0.4.0-dev
+// VPP: 20.01
+// source: .vppapi/plugins/l2e.api.json
+
+// Package l2e contains generated bindings for API file l2e.api.
+//
+// Contents:
+// 1 alias
+// 6 enums
+// 2 messages
+//
+package l2e
+
+import (
+ api "git.fd.io/govpp.git/api"
+ codec "git.fd.io/govpp.git/codec"
+ "strconv"
+)
+
+// 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 = "l2e"
+ APIVersion = "1.0.0"
+ VersionCrc = 0x541d3edd
+)
+
+// IfStatusFlags defines enum 'if_status_flags'.
+type IfStatusFlags uint32
+
+const (
+ IF_STATUS_API_FLAG_ADMIN_UP IfStatusFlags = 1
+ IF_STATUS_API_FLAG_LINK_UP IfStatusFlags = 2
+)
+
+var (
+ IfStatusFlags_name = map[uint32]string{
+ 1: "IF_STATUS_API_FLAG_ADMIN_UP",
+ 2: "IF_STATUS_API_FLAG_LINK_UP",
+ }
+ IfStatusFlags_value = map[string]uint32{
+ "IF_STATUS_API_FLAG_ADMIN_UP": 1,
+ "IF_STATUS_API_FLAG_LINK_UP": 2,
+ }
+)
+
+func (x IfStatusFlags) String() string {
+ s, ok := IfStatusFlags_name[uint32(x)]
+ if ok {
+ return s
+ }
+ str := func(n uint32) string {
+ s, ok := IfStatusFlags_name[uint32(n)]
+ if ok {
+ return s
+ }
+ return "IfStatusFlags(" + 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
+}
+
+// IfType defines enum 'if_type'.
+type IfType uint32
+
+const (
+ IF_API_TYPE_HARDWARE IfType = 1
+ IF_API_TYPE_SUB IfType = 2
+ IF_API_TYPE_P2P IfType = 3
+ IF_API_TYPE_PIPE IfType = 4
+)
+
+var (
+ IfType_name = map[uint32]string{
+ 1: "IF_API_TYPE_HARDWARE",
+ 2: "IF_API_TYPE_SUB",
+ 3: "IF_API_TYPE_P2P",
+ 4: "IF_API_TYPE_PIPE",
+ }
+ IfType_value = map[string]uint32{
+ "IF_API_TYPE_HARDWARE": 1,
+ "IF_API_TYPE_SUB": 2,
+ "IF_API_TYPE_P2P": 3,
+ "IF_API_TYPE_PIPE": 4,
+ }
+)
+
+func (x IfType) String() string {
+ s, ok := IfType_name[uint32(x)]
+ if ok {
+ return s
+ }
+ return "IfType(" + strconv.Itoa(int(x)) + ")"
+}
+
+// LinkDuplex defines enum 'link_duplex'.
+type LinkDuplex uint32
+
+const (
+ LINK_DUPLEX_API_UNKNOWN LinkDuplex = 0
+ LINK_DUPLEX_API_HALF LinkDuplex = 1
+ LINK_DUPLEX_API_FULL LinkDuplex = 2
+)
+
+var (
+ LinkDuplex_name = map[uint32]string{
+ 0: "LINK_DUPLEX_API_UNKNOWN",
+ 1: "LINK_DUPLEX_API_HALF",
+ 2: "LINK_DUPLEX_API_FULL",
+ }
+ LinkDuplex_value = map[string]uint32{
+ "LINK_DUPLEX_API_UNKNOWN": 0,
+ "LINK_DUPLEX_API_HALF": 1,
+ "LINK_DUPLEX_API_FULL": 2,
+ }
+)
+
+func (x LinkDuplex) String() string {
+ s, ok := LinkDuplex_name[uint32(x)]
+ if ok {
+ return s
+ }
+ return "LinkDuplex(" + strconv.Itoa(int(x)) + ")"
+}
+
+// MtuProto defines enum 'mtu_proto'.
+type MtuProto uint32
+
+const (
+ MTU_PROTO_API_L3 MtuProto = 1
+ MTU_PROTO_API_IP4 MtuProto = 2
+ MTU_PROTO_API_IP6 MtuProto = 3
+ MTU_PROTO_API_MPLS MtuProto = 4
+ MTU_PROTO_API_N MtuProto = 5
+)
+
+var (
+ MtuProto_name = map[uint32]string{
+ 1: "MTU_PROTO_API_L3",
+ 2: "MTU_PROTO_API_IP4",
+ 3: "MTU_PROTO_API_IP6",
+ 4: "MTU_PROTO_API_MPLS",
+ 5: "MTU_PROTO_API_N",
+ }
+ MtuProto_value = map[string]uint32{
+ "MTU_PROTO_API_L3": 1,
+ "MTU_PROTO_API_IP4": 2,
+ "MTU_PROTO_API_IP6": 3,
+ "MTU_PROTO_API_MPLS": 4,
+ "MTU_PROTO_API_N": 5,
+ }
+)
+
+func (x MtuProto) String() string {
+ s, ok := MtuProto_name[uint32(x)]
+ if ok {
+ return s
+ }
+ return "MtuProto(" + strconv.Itoa(int(x)) + ")"
+}
+
+// RxMode defines enum 'rx_mode'.
+type RxMode uint32
+
+const (
+ RX_MODE_API_UNKNOWN RxMode = 0
+ RX_MODE_API_POLLING RxMode = 1
+ RX_MODE_API_INTERRUPT RxMode = 2
+ RX_MODE_API_ADAPTIVE RxMode = 3
+ RX_MODE_API_DEFAULT RxMode = 4
+)
+
+var (
+ RxMode_name = map[uint32]string{
+ 0: "RX_MODE_API_UNKNOWN",
+ 1: "RX_MODE_API_POLLING",
+ 2: "RX_MODE_API_INTERRUPT",
+ 3: "RX_MODE_API_ADAPTIVE",
+ 4: "RX_MODE_API_DEFAULT",
+ }
+ RxMode_value = map[string]uint32{
+ "RX_MODE_API_UNKNOWN": 0,
+ "RX_MODE_API_POLLING": 1,
+ "RX_MODE_API_INTERRUPT": 2,
+ "RX_MODE_API_ADAPTIVE": 3,
+ "RX_MODE_API_DEFAULT": 4,
+ }
+)
+
+func (x RxMode) String() string {
+ s, ok := RxMode_name[uint32(x)]
+ if ok {
+ return s
+ }
+ return "RxMode(" + strconv.Itoa(int(x)) + ")"
+}
+
+// SubIfFlags defines enum 'sub_if_flags'.
+type SubIfFlags uint32
+
+const (
+ SUB_IF_API_FLAG_NO_TAGS SubIfFlags = 1
+ SUB_IF_API_FLAG_ONE_TAG SubIfFlags = 2
+ SUB_IF_API_FLAG_TWO_TAGS SubIfFlags = 4
+ SUB_IF_API_FLAG_DOT1AD SubIfFlags = 8
+ SUB_IF_API_FLAG_EXACT_MATCH SubIfFlags = 16
+ SUB_IF_API_FLAG_DEFAULT SubIfFlags = 32
+ SUB_IF_API_FLAG_OUTER_VLAN_ID_ANY SubIfFlags = 64
+ SUB_IF_API_FLAG_INNER_VLAN_ID_ANY SubIfFlags = 128
+ SUB_IF_API_FLAG_MASK_VNET SubIfFlags = 254
+ SUB_IF_API_FLAG_DOT1AH SubIfFlags = 256
+)
+
+var (
+ SubIfFlags_name = map[uint32]string{
+ 1: "SUB_IF_API_FLAG_NO_TAGS",
+ 2: "SUB_IF_API_FLAG_ONE_TAG",
+ 4: "SUB_IF_API_FLAG_TWO_TAGS",
+ 8: "SUB_IF_API_FLAG_DOT1AD",
+ 16: "SUB_IF_API_FLAG_EXACT_MATCH",
+ 32: "SUB_IF_API_FLAG_DEFAULT",
+ 64: "SUB_IF_API_FLAG_OUTER_VLAN_ID_ANY",
+ 128: "SUB_IF_API_FLAG_INNER_VLAN_ID_ANY",
+ 254: "SUB_IF_API_FLAG_MASK_VNET",
+ 256: "SUB_IF_API_FLAG_DOT1AH",
+ }
+ SubIfFlags_value = map[string]uint32{
+ "SUB_IF_API_FLAG_NO_TAGS": 1,
+ "SUB_IF_API_FLAG_ONE_TAG": 2,
+ "SUB_IF_API_FLAG_TWO_TAGS": 4,
+ "SUB_IF_API_FLAG_DOT1AD": 8,
+ "SUB_IF_API_FLAG_EXACT_MATCH": 16,
+ "SUB_IF_API_FLAG_DEFAULT": 32,
+ "SUB_IF_API_FLAG_OUTER_VLAN_ID_ANY": 64,
+ "SUB_IF_API_FLAG_INNER_VLAN_ID_ANY": 128,
+ "SUB_IF_API_FLAG_MASK_VNET": 254,
+ "SUB_IF_API_FLAG_DOT1AH": 256,
+ }
+)
+
+func (x SubIfFlags) String() string {
+ s, ok := SubIfFlags_name[uint32(x)]
+ if ok {
+ return s
+ }
+ str := func(n uint32) string {
+ s, ok := SubIfFlags_name[uint32(n)]
+ if ok {
+ return s
+ }
+ return "SubIfFlags(" + 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
+}
+
+// InterfaceIndex defines alias 'interface_index'.
+type InterfaceIndex uint32
+
+// L2Emulation defines message 'l2_emulation'.
+type L2Emulation struct {
+ SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
+ Enable bool `binapi:"bool,name=enable" json:"enable,omitempty"`
+}
+
+func (m *L2Emulation) Reset() { *m = L2Emulation{} }
+func (*L2Emulation) GetMessageName() string { return "l2_emulation" }
+func (*L2Emulation) GetCrcString() string { return "ae6cfcfb" }
+func (*L2Emulation) GetMessageType() api.MessageType {
+ return api.RequestMessage
+}
+
+func (m *L2Emulation) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.SwIfIndex
+ size += 1 // m.Enable
+ return size
+}
+func (m *L2Emulation) Marshal(b []byte) ([]byte, error) {
+ if b == nil {
+ b = make([]byte, m.Size())
+ }
+ buf := codec.NewBuffer(b)
+ buf.EncodeUint32(uint32(m.SwIfIndex))
+ buf.EncodeBool(m.Enable)
+ return buf.Bytes(), nil
+}
+func (m *L2Emulation) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.SwIfIndex = InterfaceIndex(buf.DecodeUint32())
+ m.Enable = buf.DecodeBool()
+ return nil
+}
+
+// L2EmulationReply defines message 'l2_emulation_reply'.
+type L2EmulationReply struct {
+ Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
+}
+
+func (m *L2EmulationReply) Reset() { *m = L2EmulationReply{} }
+func (*L2EmulationReply) GetMessageName() string { return "l2_emulation_reply" }
+func (*L2EmulationReply) GetCrcString() string { return "e8d4e804" }
+func (*L2EmulationReply) GetMessageType() api.MessageType {
+ return api.ReplyMessage
+}
+
+func (m *L2EmulationReply) Size() (size int) {
+ if m == nil {
+ return 0
+ }
+ size += 4 // m.Retval
+ return size
+}
+func (m *L2EmulationReply) 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 *L2EmulationReply) Unmarshal(b []byte) error {
+ buf := codec.NewBuffer(b)
+ m.Retval = buf.DecodeInt32()
+ return nil
+}
+
+func init() { file_l2e_binapi_init() }
+func file_l2e_binapi_init() {
+ api.RegisterMessage((*L2Emulation)(nil), "l2_emulation_ae6cfcfb")
+ api.RegisterMessage((*L2EmulationReply)(nil), "l2_emulation_reply_e8d4e804")
+}
+
+// Messages returns list of all messages in this module.
+func AllMessages() []api.Message {
+ return []api.Message{
+ (*L2Emulation)(nil),
+ (*L2EmulationReply)(nil),
+ }
+}
diff --git a/internal/testbinapi/binapi2001/l2e/l2e_rpc.ba.go b/internal/testbinapi/binapi2001/l2e/l2e_rpc.ba.go
new file mode 100644
index 0000000..e589d28
--- /dev/null
+++ b/internal/testbinapi/binapi2001/l2e/l2e_rpc.ba.go
@@ -0,0 +1,30 @@
+// Code generated by GoVPP's binapi-generator. DO NOT EDIT.
+
+package l2e
+
+import (
+ "context"
+ api "git.fd.io/govpp.git/api"
+)
+
+// RPCService defines RPC service l2e.
+type RPCService interface {
+ L2Emulation(ctx context.Context, in *L2Emulation) (*L2EmulationReply, error)
+}
+
+type serviceClient struct {
+ conn api.Connection
+}
+
+func NewServiceClient(conn api.Connection) RPCService {
+ return &serviceClient{conn}
+}
+
+func (c *serviceClient) L2Emulation(ctx context.Context, in *L2Emulation) (*L2EmulationReply, error) {
+ out := new(L2EmulationReply)
+ err := c.conn.Invoke(ctx, in, out)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}