aboutsummaryrefslogtreecommitdiffstats
path: root/examples/binapi/ip_types/ip_types.ba.go
diff options
context:
space:
mode:
authorOndrej Fabry <ofabry@cisco.com>2020-07-17 10:36:28 +0200
committerOndrej Fabry <ofabry@cisco.com>2020-07-17 11:43:41 +0200
commitd1f24d37bd447b64e402298bb8eb2479681facf9 (patch)
treea3fc21ba730a91d8a402c7a5bf9c614e3677c4fc /examples/binapi/ip_types/ip_types.ba.go
parent1548c7e12531e3d055567d761c580a1c7ff0ac40 (diff)
Improve binapi generator
- simplified Size/Marshal/Unmarshal methods - replace struc in unions with custom marshal/unmarshal - fix imports in generated files - fix mock adapter - generate rpc service using low-level stream API (dumps generate control ping or stream msg..) - move examples/binapi to binapi and generate all API for latest release - add binapigen.Plugin for developing custom generator plugins - optionally generate HTTP handlers (REST API) for RPC services - add govpp program for browsing VPP API Change-Id: I092e9ed2b0c17972b3476463c3d4b14dd76ed42b Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'examples/binapi/ip_types/ip_types.ba.go')
-rw-r--r--examples/binapi/ip_types/ip_types.ba.go436
1 files changed, 0 insertions, 436 deletions
diff --git a/examples/binapi/ip_types/ip_types.ba.go b/examples/binapi/ip_types/ip_types.ba.go
deleted file mode 100644
index fc7fa87..0000000
--- a/examples/binapi/ip_types/ip_types.ba.go
+++ /dev/null
@@ -1,436 +0,0 @@
-// 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/ip_types.api.json
-
-/*
-Package ip_types contains generated code for VPP API file ip_types.api (3.0.0).
-
-It consists of:
- 5 aliases
- 4 enums
- 6 types
- 1 union
-*/
-package ip_types
-
-import (
- "bytes"
- "context"
- "encoding/binary"
- "fmt"
- "io"
- "math"
- "net"
- "strconv"
- "strings"
-
- api "git.fd.io/govpp.git/api"
- codec "git.fd.io/govpp.git/codec"
- struc "github.com/lunixbochs/struc"
-)
-
-// 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 // please upgrade the GoVPP api package
-
-const (
- // ModuleName is the name of this module.
- ModuleName = "ip_types"
- // APIVersion is the API version of this module.
- APIVersion = "3.0.0"
- // VersionCrc is the CRC of this module.
- VersionCrc = 0x9cb1c2e2
-)
-
-// AddressFamily represents VPP binary API enum 'address_family'.
-type AddressFamily uint8
-
-const (
- ADDRESS_IP4 AddressFamily = 0
- ADDRESS_IP6 AddressFamily = 1
-)
-
-var (
- AddressFamily_name = map[uint8]string{
- 0: "ADDRESS_IP4",
- 1: "ADDRESS_IP6",
- }
- AddressFamily_value = map[string]uint8{
- "ADDRESS_IP4": 0,
- "ADDRESS_IP6": 1,
- }
-)
-
-func (x AddressFamily) String() string {
- s, ok := AddressFamily_name[uint8(x)]
- if ok {
- return s
- }
- return "AddressFamily(" + strconv.Itoa(int(x)) + ")"
-}
-
-// IPDscp represents VPP binary API enum 'ip_dscp'.
-type IPDscp uint8
-
-const (
- IP_API_DSCP_CS0 IPDscp = 0
- IP_API_DSCP_CS1 IPDscp = 8
- IP_API_DSCP_AF11 IPDscp = 10
- IP_API_DSCP_AF12 IPDscp = 12
- IP_API_DSCP_AF13 IPDscp = 14
- IP_API_DSCP_CS2 IPDscp = 16
- IP_API_DSCP_AF21 IPDscp = 18
- IP_API_DSCP_AF22 IPDscp = 20
- IP_API_DSCP_AF23 IPDscp = 22
- IP_API_DSCP_CS3 IPDscp = 24
- IP_API_DSCP_AF31 IPDscp = 26
- IP_API_DSCP_AF32 IPDscp = 28
- IP_API_DSCP_AF33 IPDscp = 30
- IP_API_DSCP_CS4 IPDscp = 32
- IP_API_DSCP_AF41 IPDscp = 34
- IP_API_DSCP_AF42 IPDscp = 36
- IP_API_DSCP_AF43 IPDscp = 38
- IP_API_DSCP_CS5 IPDscp = 40
- IP_API_DSCP_EF IPDscp = 46
- IP_API_DSCP_CS6 IPDscp = 48
- IP_API_DSCP_CS7 IPDscp = 50
-)
-
-var (
- IPDscp_name = map[uint8]string{
- 0: "IP_API_DSCP_CS0",
- 8: "IP_API_DSCP_CS1",
- 10: "IP_API_DSCP_AF11",
- 12: "IP_API_DSCP_AF12",
- 14: "IP_API_DSCP_AF13",
- 16: "IP_API_DSCP_CS2",
- 18: "IP_API_DSCP_AF21",
- 20: "IP_API_DSCP_AF22",
- 22: "IP_API_DSCP_AF23",
- 24: "IP_API_DSCP_CS3",
- 26: "IP_API_DSCP_AF31",
- 28: "IP_API_DSCP_AF32",
- 30: "IP_API_DSCP_AF33",
- 32: "IP_API_DSCP_CS4",
- 34: "IP_API_DSCP_AF41",
- 36: "IP_API_DSCP_AF42",
- 38: "IP_API_DSCP_AF43",
- 40: "IP_API_DSCP_CS5",
- 46: "IP_API_DSCP_EF",
- 48: "IP_API_DSCP_CS6",
- 50: "IP_API_DSCP_CS7",
- }
- IPDscp_value = map[string]uint8{
- "IP_API_DSCP_CS0": 0,
- "IP_API_DSCP_CS1": 8,
- "IP_API_DSCP_AF11": 10,
- "IP_API_DSCP_AF12": 12,
- "IP_API_DSCP_AF13": 14,
- "IP_API_DSCP_CS2": 16,
- "IP_API_DSCP_AF21": 18,
- "IP_API_DSCP_AF22": 20,
- "IP_API_DSCP_AF23": 22,
- "IP_API_DSCP_CS3": 24,
- "IP_API_DSCP_AF31": 26,
- "IP_API_DSCP_AF32": 28,
- "IP_API_DSCP_AF33": 30,
- "IP_API_DSCP_CS4": 32,
- "IP_API_DSCP_AF41": 34,
- "IP_API_DSCP_AF42": 36,
- "IP_API_DSCP_AF43": 38,
- "IP_API_DSCP_CS5": 40,
- "IP_API_DSCP_EF": 46,
- "IP_API_DSCP_CS6": 48,
- "IP_API_DSCP_CS7": 50,
- }
-)
-
-func (x IPDscp) String() string {
- s, ok := IPDscp_name[uint8(x)]
- if ok {
- return s
- }
- return "IPDscp(" + strconv.Itoa(int(x)) + ")"
-}
-
-// IPEcn represents VPP binary API enum 'ip_ecn'.
-type IPEcn uint8
-
-const (
- IP_API_ECN_NONE IPEcn = 0
- IP_API_ECN_ECT0 IPEcn = 1
- IP_API_ECN_ECT1 IPEcn = 2
- IP_API_ECN_CE IPEcn = 3
-)
-
-var (
- IPEcn_name = map[uint8]string{
- 0: "IP_API_ECN_NONE",
- 1: "IP_API_ECN_ECT0",
- 2: "IP_API_ECN_ECT1",
- 3: "IP_API_ECN_CE",
- }
- IPEcn_value = map[string]uint8{
- "IP_API_ECN_NONE": 0,
- "IP_API_ECN_ECT0": 1,
- "IP_API_ECN_ECT1": 2,
- "IP_API_ECN_CE": 3,
- }
-)
-
-func (x IPEcn) String() string {
- s, ok := IPEcn_name[uint8(x)]
- if ok {
- return s
- }
- return "IPEcn(" + strconv.Itoa(int(x)) + ")"
-}
-
-// IPProto represents VPP binary API enum 'ip_proto'.
-type IPProto uint8
-
-const (
- IP_API_PROTO_HOPOPT IPProto = 0
- IP_API_PROTO_ICMP IPProto = 1
- IP_API_PROTO_IGMP IPProto = 2
- IP_API_PROTO_TCP IPProto = 6
- IP_API_PROTO_UDP IPProto = 17
- IP_API_PROTO_GRE IPProto = 47
- IP_API_PROTO_ESP IPProto = 50
- IP_API_PROTO_AH IPProto = 51
- IP_API_PROTO_ICMP6 IPProto = 58
- IP_API_PROTO_EIGRP IPProto = 88
- IP_API_PROTO_OSPF IPProto = 89
- IP_API_PROTO_SCTP IPProto = 132
- IP_API_PROTO_RESERVED IPProto = 255
-)
-
-var (
- IPProto_name = map[uint8]string{
- 0: "IP_API_PROTO_HOPOPT",
- 1: "IP_API_PROTO_ICMP",
- 2: "IP_API_PROTO_IGMP",
- 6: "IP_API_PROTO_TCP",
- 17: "IP_API_PROTO_UDP",
- 47: "IP_API_PROTO_GRE",
- 50: "IP_API_PROTO_ESP",
- 51: "IP_API_PROTO_AH",
- 58: "IP_API_PROTO_ICMP6",
- 88: "IP_API_PROTO_EIGRP",
- 89: "IP_API_PROTO_OSPF",
- 132: "IP_API_PROTO_SCTP",
- 255: "IP_API_PROTO_RESERVED",
- }
- IPProto_value = map[string]uint8{
- "IP_API_PROTO_HOPOPT": 0,
- "IP_API_PROTO_ICMP": 1,
- "IP_API_PROTO_IGMP": 2,
- "IP_API_PROTO_TCP": 6,
- "IP_API_PROTO_UDP": 17,
- "IP_API_PROTO_GRE": 47,
- "IP_API_PROTO_ESP": 50,
- "IP_API_PROTO_AH": 51,
- "IP_API_PROTO_ICMP6": 58,
- "IP_API_PROTO_EIGRP": 88,
- "IP_API_PROTO_OSPF": 89,
- "IP_API_PROTO_SCTP": 132,
- "IP_API_PROTO_RESERVED": 255,
- }
-)
-
-func (x IPProto) String() string {
- s, ok := IPProto_name[uint8(x)]
- if ok {
- return s
- }
- return "IPProto(" + strconv.Itoa(int(x)) + ")"
-}
-
-// AddressWithPrefix represents VPP binary API alias 'address_with_prefix'.
-type AddressWithPrefix Prefix
-
-// IP4Address represents VPP binary API alias 'ip4_address'.
-type IP4Address [4]uint8
-
-// IP4AddressWithPrefix represents VPP binary API alias 'ip4_address_with_prefix'.
-type IP4AddressWithPrefix IP4Prefix
-
-// IP6Address represents VPP binary API alias 'ip6_address'.
-type IP6Address [16]uint8
-
-// IP6AddressWithPrefix represents VPP binary API alias 'ip6_address_with_prefix'.
-type IP6AddressWithPrefix IP6Prefix
-
-// Address represents VPP binary API type 'address'.
-type Address struct {
- Af AddressFamily `binapi:"address_family,name=af" json:"af,omitempty"`
- Un AddressUnion `binapi:"address_union,name=un" json:"un,omitempty"`
-}
-
-func (*Address) GetTypeName() string { return "address" }
-
-func ParseAddress(ip string) (Address, error) {
- var address Address
- netIP := net.ParseIP(ip)
- if netIP == nil {
- return address, fmt.Errorf("invalid address: %s", ip)
- }
- if ip4 := netIP.To4(); ip4 == nil {
- address.Af = ADDRESS_IP6
- var ip6addr IP6Address
- copy(ip6addr[:], netIP.To16())
- address.Un.SetIP6(ip6addr)
- } else {
- address.Af = ADDRESS_IP4
- var ip4addr IP4Address
- copy(ip4addr[:], netIP.To4())
- address.Un.SetIP4(ip4addr)
- }
- return address, nil
-}
-
-func (a *Address) ToString() string {
- var ip string
- if a.Af == ADDRESS_IP6 {
- ip6Address := a.Un.GetIP6()
- ip = net.IP(ip6Address[:]).To16().String()
- } else {
- ip4Address := a.Un.GetIP4()
- ip = net.IP(ip4Address[:]).To4().String()
- }
- return ip
-}
-
-// IP4Prefix represents VPP binary API type 'ip4_prefix'.
-type IP4Prefix struct {
- Address IP4Address `binapi:"ip4_address,name=address" json:"address,omitempty"`
- Len uint8 `binapi:"u8,name=len" json:"len,omitempty"`
-}
-
-func (*IP4Prefix) GetTypeName() string { return "ip4_prefix" }
-
-// IP6Prefix represents VPP binary API type 'ip6_prefix'.
-type IP6Prefix struct {
- Address IP6Address `binapi:"ip6_address,name=address" json:"address,omitempty"`
- Len uint8 `binapi:"u8,name=len" json:"len,omitempty"`
-}
-
-func (*IP6Prefix) GetTypeName() string { return "ip6_prefix" }
-
-// Mprefix represents VPP binary API type 'mprefix'.
-type Mprefix struct {
- Af AddressFamily `binapi:"address_family,name=af" json:"af,omitempty"`
- GrpAddressLength uint16 `binapi:"u16,name=grp_address_length" json:"grp_address_length,omitempty"`
- GrpAddress AddressUnion `binapi:"address_union,name=grp_address" json:"grp_address,omitempty"`
- SrcAddress AddressUnion `binapi:"address_union,name=src_address" json:"src_address,omitempty"`
-}
-
-func (*Mprefix) GetTypeName() string { return "mprefix" }
-
-// Prefix represents VPP binary API type 'prefix'.
-type Prefix struct {
- Address Address `binapi:"address,name=address" json:"address,omitempty"`
- Len uint8 `binapi:"u8,name=len" json:"len,omitempty"`
-}
-
-func (*Prefix) GetTypeName() string { return "prefix" }
-
-func ParsePrefix(ip string) (prefix Prefix, err error) {
- hasPrefix := strings.Contains(ip, "/")
- if hasPrefix {
- netIP, network, err := net.ParseCIDR(ip)
- if err != nil {
- return Prefix{}, fmt.Errorf("invalid IP %s: %v", ip, err)
- }
- maskSize, _ := network.Mask.Size()
- prefix.Len = byte(maskSize)
- prefix.Address, err = ParseAddress(netIP.String())
- if err != nil {
- return Prefix{}, fmt.Errorf("invalid IP %s: %v", ip, err)
- }
- } else {
- netIP := net.ParseIP(ip)
- defaultMaskSize, _ := net.CIDRMask(32, 32).Size()
- if netIP.To4() == nil {
- defaultMaskSize, _ = net.CIDRMask(128, 128).Size()
- }
- prefix.Len = byte(defaultMaskSize)
- prefix.Address, err = ParseAddress(netIP.String())
- if err != nil {
- return Prefix{}, fmt.Errorf("invalid IP %s: %v", ip, err)
- }
- }
- return prefix, nil
-}
-
-func (p *Prefix) ToString() string {
- ip := p.Address.ToString()
- return ip + "/" + strconv.Itoa(int(p.Len))
-}
-
-// PrefixMatcher represents VPP binary API type 'prefix_matcher'.
-type PrefixMatcher struct {
- Le uint8 `binapi:"u8,name=le" json:"le,omitempty"`
- Ge uint8 `binapi:"u8,name=ge" json:"ge,omitempty"`
-}
-
-func (*PrefixMatcher) GetTypeName() string { return "prefix_matcher" }
-
-// AddressUnion represents VPP binary API union 'address_union'.
-type AddressUnion struct {
- XXX_UnionData [16]byte
-}
-
-func (*AddressUnion) GetTypeName() string { return "address_union" }
-
-func AddressUnionIP4(a IP4Address) (u AddressUnion) {
- u.SetIP4(a)
- return
-}
-func (u *AddressUnion) SetIP4(a IP4Address) {
- var b = new(bytes.Buffer)
- if err := struc.Pack(b, &a); err != nil {
- return
- }
- copy(u.XXX_UnionData[:], b.Bytes())
-}
-func (u *AddressUnion) GetIP4() (a IP4Address) {
- var b = bytes.NewReader(u.XXX_UnionData[:])
- struc.Unpack(b, &a)
- return
-}
-
-func AddressUnionIP6(a IP6Address) (u AddressUnion) {
- u.SetIP6(a)
- return
-}
-func (u *AddressUnion) SetIP6(a IP6Address) {
- var b = new(bytes.Buffer)
- if err := struc.Pack(b, &a); err != nil {
- return
- }
- copy(u.XXX_UnionData[:], b.Bytes())
-}
-func (u *AddressUnion) GetIP6() (a IP6Address) {
- var b = bytes.NewReader(u.XXX_UnionData[:])
- struc.Unpack(b, &a)
- return
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = api.RegisterMessage
-var _ = codec.DecodeString
-var _ = bytes.NewBuffer
-var _ = context.Background
-var _ = io.Copy
-var _ = strconv.Itoa
-var _ = strings.Contains
-var _ = struc.Pack
-var _ = binary.BigEndian
-var _ = math.Float32bits
-var _ = net.ParseIP
-var _ = fmt.Errorf