1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
3 // binapi-generator: v0.3.5-56-gc0da1f2-dirty
5 // source: /usr/share/vpp/api/core/tunnel_types.api.json
7 // Package tunnel_types contains generated bindings for API file tunnel_types.api.
18 api "git.fd.io/govpp.git/api"
19 interface_types "git.fd.io/govpp.git/binapi/interface_types"
20 ip_types "git.fd.io/govpp.git/binapi/ip_types"
23 // This is a compile-time assertion to ensure that this generated file
24 // is compatible with the GoVPP api package it is being compiled against.
25 // A compilation error at this line likely means your copy of the
26 // GoVPP api package needs to be updated.
27 const _ = api.GoVppAPIPackageIsVersion2
29 // TunnelEncapDecapFlags defines enum 'tunnel_encap_decap_flags'.
30 type TunnelEncapDecapFlags uint8
33 TUNNEL_API_ENCAP_DECAP_FLAG_NONE TunnelEncapDecapFlags = 0
34 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DF TunnelEncapDecapFlags = 1
35 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_SET_DF TunnelEncapDecapFlags = 2
36 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DSCP TunnelEncapDecapFlags = 4
37 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_ECN TunnelEncapDecapFlags = 8
38 TUNNEL_API_ENCAP_DECAP_FLAG_DECAP_COPY_ECN TunnelEncapDecapFlags = 16
39 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_INNER_HASH TunnelEncapDecapFlags = 32
40 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_HOP_LIMIT TunnelEncapDecapFlags = 64
41 TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_FLOW_LABEL TunnelEncapDecapFlags = 128
45 TunnelEncapDecapFlags_name = map[uint8]string{
46 0: "TUNNEL_API_ENCAP_DECAP_FLAG_NONE",
47 1: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DF",
48 2: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_SET_DF",
49 4: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DSCP",
50 8: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_ECN",
51 16: "TUNNEL_API_ENCAP_DECAP_FLAG_DECAP_COPY_ECN",
52 32: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_INNER_HASH",
53 64: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_HOP_LIMIT",
54 128: "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_FLOW_LABEL",
56 TunnelEncapDecapFlags_value = map[string]uint8{
57 "TUNNEL_API_ENCAP_DECAP_FLAG_NONE": 0,
58 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DF": 1,
59 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_SET_DF": 2,
60 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DSCP": 4,
61 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_ECN": 8,
62 "TUNNEL_API_ENCAP_DECAP_FLAG_DECAP_COPY_ECN": 16,
63 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_INNER_HASH": 32,
64 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_HOP_LIMIT": 64,
65 "TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_FLOW_LABEL": 128,
69 func (x TunnelEncapDecapFlags) String() string {
70 s, ok := TunnelEncapDecapFlags_name[uint8(x)]
74 str := func(n uint8) string {
75 s, ok := TunnelEncapDecapFlags_name[uint8(n)]
79 return "TunnelEncapDecapFlags(" + strconv.Itoa(int(n)) + ")"
81 for i := uint8(0); i <= 8; i++ {
96 // TunnelMode defines enum 'tunnel_mode'.
100 TUNNEL_API_MODE_P2P TunnelMode = 0
101 TUNNEL_API_MODE_MP TunnelMode = 1
105 TunnelMode_name = map[uint8]string{
106 0: "TUNNEL_API_MODE_P2P",
107 1: "TUNNEL_API_MODE_MP",
109 TunnelMode_value = map[string]uint8{
110 "TUNNEL_API_MODE_P2P": 0,
111 "TUNNEL_API_MODE_MP": 1,
115 func (x TunnelMode) String() string {
116 s, ok := TunnelMode_name[uint8(x)]
120 return "TunnelMode(" + strconv.Itoa(int(x)) + ")"
123 // TunnelFlags defines enum 'tunnel_flags'.
124 type TunnelFlags uint8
127 TUNNEL_API_FLAG_TRACK_MTU TunnelFlags = 1
131 TunnelFlags_name = map[uint8]string{
132 1: "TUNNEL_API_FLAG_TRACK_MTU",
134 TunnelFlags_value = map[string]uint8{
135 "TUNNEL_API_FLAG_TRACK_MTU": 1,
139 func (x TunnelFlags) String() string {
140 s, ok := TunnelFlags_name[uint8(x)]
144 str := func(n uint8) string {
145 s, ok := TunnelFlags_name[uint8(n)]
149 return "TunnelFlags(" + strconv.Itoa(int(n)) + ")"
151 for i := uint8(0); i <= 8; i++ {
166 // Tunnel defines type 'tunnel'.
168 Instance uint32 `binapi:"u32,name=instance" json:"instance,omitempty"`
169 Src ip_types.Address `binapi:"address,name=src" json:"src,omitempty"`
170 Dst ip_types.Address `binapi:"address,name=dst" json:"dst,omitempty"`
171 SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
172 TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"`
173 EncapDecapFlags TunnelEncapDecapFlags `binapi:"tunnel_encap_decap_flags,name=encap_decap_flags" json:"encap_decap_flags,omitempty"`
174 Mode TunnelMode `binapi:"tunnel_mode,name=mode" json:"mode,omitempty"`
175 Flags TunnelFlags `binapi:"tunnel_flags,name=flags" json:"flags,omitempty"`
176 Dscp ip_types.IPDscp `binapi:"ip_dscp,name=dscp" json:"dscp,omitempty"`
177 HopLimit uint8 `binapi:"u8,name=hop_limit" json:"hop_limit,omitempty"`