9785405bb9e6b3c2569e5a1d818a5588ecc5f3b3
[govpp.git] / binapi / sr_mpls / sr_mpls.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2 // versions:
3 //  binapi-generator: v0.4.0-dev
4 //  VPP:              20.05-release
5
6 // Package sr_mpls contains generated bindings for API file sr_mpls.api.
7 //
8 // Contents:
9 //  10 messages
10 //
11 package sr_mpls
12
13 import (
14         api "git.fd.io/govpp.git/api"
15         _ "git.fd.io/govpp.git/binapi/interface_types"
16         ip_types "git.fd.io/govpp.git/binapi/ip_types"
17         sr_types "git.fd.io/govpp.git/binapi/sr_types"
18         codec "git.fd.io/govpp.git/codec"
19 )
20
21 // This is a compile-time assertion to ensure that this generated file
22 // is compatible with the GoVPP api package it is being compiled against.
23 // A compilation error at this line likely means your copy of the
24 // GoVPP api package needs to be updated.
25 const _ = api.GoVppAPIPackageIsVersion2
26
27 const (
28         APIFile    = "sr_mpls"
29         APIVersion = "3.0.0"
30         VersionCrc = 0xaf471151
31 )
32
33 // SrMplsPolicyAdd defines message 'sr_mpls_policy_add'.
34 type SrMplsPolicyAdd struct {
35         Bsid      uint32   `binapi:"u32,name=bsid" json:"bsid,omitempty"`
36         Weight    uint32   `binapi:"u32,name=weight" json:"weight,omitempty"`
37         IsSpray   bool     `binapi:"bool,name=is_spray" json:"is_spray,omitempty"`
38         NSegments uint8    `binapi:"u8,name=n_segments" json:"-"`
39         Segments  []uint32 `binapi:"u32[n_segments],name=segments" json:"segments,omitempty"`
40 }
41
42 func (m *SrMplsPolicyAdd) Reset()               { *m = SrMplsPolicyAdd{} }
43 func (*SrMplsPolicyAdd) GetMessageName() string { return "sr_mpls_policy_add" }
44 func (*SrMplsPolicyAdd) GetCrcString() string   { return "a1a70c70" }
45 func (*SrMplsPolicyAdd) GetMessageType() api.MessageType {
46         return api.RequestMessage
47 }
48
49 func (m *SrMplsPolicyAdd) Size() (size int) {
50         if m == nil {
51                 return 0
52         }
53         size += 4                   // m.Bsid
54         size += 4                   // m.Weight
55         size += 1                   // m.IsSpray
56         size += 1                   // m.NSegments
57         size += 4 * len(m.Segments) // m.Segments
58         return size
59 }
60 func (m *SrMplsPolicyAdd) Marshal(b []byte) ([]byte, error) {
61         if b == nil {
62                 b = make([]byte, m.Size())
63         }
64         buf := codec.NewBuffer(b)
65         buf.EncodeUint32(m.Bsid)
66         buf.EncodeUint32(m.Weight)
67         buf.EncodeBool(m.IsSpray)
68         buf.EncodeUint8(uint8(len(m.Segments)))
69         for i := 0; i < len(m.Segments); i++ {
70                 var x uint32
71                 if i < len(m.Segments) {
72                         x = uint32(m.Segments[i])
73                 }
74                 buf.EncodeUint32(x)
75         }
76         return buf.Bytes(), nil
77 }
78 func (m *SrMplsPolicyAdd) Unmarshal(b []byte) error {
79         buf := codec.NewBuffer(b)
80         m.Bsid = buf.DecodeUint32()
81         m.Weight = buf.DecodeUint32()
82         m.IsSpray = buf.DecodeBool()
83         m.NSegments = buf.DecodeUint8()
84         m.Segments = make([]uint32, m.NSegments)
85         for i := 0; i < len(m.Segments); i++ {
86                 m.Segments[i] = buf.DecodeUint32()
87         }
88         return nil
89 }
90
91 // SrMplsPolicyAddReply defines message 'sr_mpls_policy_add_reply'.
92 type SrMplsPolicyAddReply struct {
93         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
94 }
95
96 func (m *SrMplsPolicyAddReply) Reset()               { *m = SrMplsPolicyAddReply{} }
97 func (*SrMplsPolicyAddReply) GetMessageName() string { return "sr_mpls_policy_add_reply" }
98 func (*SrMplsPolicyAddReply) GetCrcString() string   { return "e8d4e804" }
99 func (*SrMplsPolicyAddReply) GetMessageType() api.MessageType {
100         return api.ReplyMessage
101 }
102
103 func (m *SrMplsPolicyAddReply) Size() (size int) {
104         if m == nil {
105                 return 0
106         }
107         size += 4 // m.Retval
108         return size
109 }
110 func (m *SrMplsPolicyAddReply) Marshal(b []byte) ([]byte, error) {
111         if b == nil {
112                 b = make([]byte, m.Size())
113         }
114         buf := codec.NewBuffer(b)
115         buf.EncodeInt32(m.Retval)
116         return buf.Bytes(), nil
117 }
118 func (m *SrMplsPolicyAddReply) Unmarshal(b []byte) error {
119         buf := codec.NewBuffer(b)
120         m.Retval = buf.DecodeInt32()
121         return nil
122 }
123
124 // SrMplsPolicyAssignEndpointColor defines message 'sr_mpls_policy_assign_endpoint_color'.
125 type SrMplsPolicyAssignEndpointColor struct {
126         Bsid     uint32           `binapi:"u32,name=bsid" json:"bsid,omitempty"`
127         Endpoint ip_types.Address `binapi:"address,name=endpoint" json:"endpoint,omitempty"`
128         Color    uint32           `binapi:"u32,name=color" json:"color,omitempty"`
129 }
130
131 func (m *SrMplsPolicyAssignEndpointColor) Reset() { *m = SrMplsPolicyAssignEndpointColor{} }
132 func (*SrMplsPolicyAssignEndpointColor) GetMessageName() string {
133         return "sr_mpls_policy_assign_endpoint_color"
134 }
135 func (*SrMplsPolicyAssignEndpointColor) GetCrcString() string { return "5e1c5c13" }
136 func (*SrMplsPolicyAssignEndpointColor) GetMessageType() api.MessageType {
137         return api.RequestMessage
138 }
139
140 func (m *SrMplsPolicyAssignEndpointColor) Size() (size int) {
141         if m == nil {
142                 return 0
143         }
144         size += 4      // m.Bsid
145         size += 1      // m.Endpoint.Af
146         size += 1 * 16 // m.Endpoint.Un
147         size += 4      // m.Color
148         return size
149 }
150 func (m *SrMplsPolicyAssignEndpointColor) Marshal(b []byte) ([]byte, error) {
151         if b == nil {
152                 b = make([]byte, m.Size())
153         }
154         buf := codec.NewBuffer(b)
155         buf.EncodeUint32(m.Bsid)
156         buf.EncodeUint8(uint8(m.Endpoint.Af))
157         buf.EncodeBytes(m.Endpoint.Un.XXX_UnionData[:], 16)
158         buf.EncodeUint32(m.Color)
159         return buf.Bytes(), nil
160 }
161 func (m *SrMplsPolicyAssignEndpointColor) Unmarshal(b []byte) error {
162         buf := codec.NewBuffer(b)
163         m.Bsid = buf.DecodeUint32()
164         m.Endpoint.Af = ip_types.AddressFamily(buf.DecodeUint8())
165         copy(m.Endpoint.Un.XXX_UnionData[:], buf.DecodeBytes(16))
166         m.Color = buf.DecodeUint32()
167         return nil
168 }
169
170 // SrMplsPolicyAssignEndpointColorReply defines message 'sr_mpls_policy_assign_endpoint_color_reply'.
171 type SrMplsPolicyAssignEndpointColorReply struct {
172         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
173 }
174
175 func (m *SrMplsPolicyAssignEndpointColorReply) Reset() { *m = SrMplsPolicyAssignEndpointColorReply{} }
176 func (*SrMplsPolicyAssignEndpointColorReply) GetMessageName() string {
177         return "sr_mpls_policy_assign_endpoint_color_reply"
178 }
179 func (*SrMplsPolicyAssignEndpointColorReply) GetCrcString() string { return "e8d4e804" }
180 func (*SrMplsPolicyAssignEndpointColorReply) GetMessageType() api.MessageType {
181         return api.ReplyMessage
182 }
183
184 func (m *SrMplsPolicyAssignEndpointColorReply) Size() (size int) {
185         if m == nil {
186                 return 0
187         }
188         size += 4 // m.Retval
189         return size
190 }
191 func (m *SrMplsPolicyAssignEndpointColorReply) Marshal(b []byte) ([]byte, error) {
192         if b == nil {
193                 b = make([]byte, m.Size())
194         }
195         buf := codec.NewBuffer(b)
196         buf.EncodeInt32(m.Retval)
197         return buf.Bytes(), nil
198 }
199 func (m *SrMplsPolicyAssignEndpointColorReply) Unmarshal(b []byte) error {
200         buf := codec.NewBuffer(b)
201         m.Retval = buf.DecodeInt32()
202         return nil
203 }
204
205 // SrMplsPolicyDel defines message 'sr_mpls_policy_del'.
206 type SrMplsPolicyDel struct {
207         Bsid uint32 `binapi:"u32,name=bsid" json:"bsid,omitempty"`
208 }
209
210 func (m *SrMplsPolicyDel) Reset()               { *m = SrMplsPolicyDel{} }
211 func (*SrMplsPolicyDel) GetMessageName() string { return "sr_mpls_policy_del" }
212 func (*SrMplsPolicyDel) GetCrcString() string   { return "e29d34fa" }
213 func (*SrMplsPolicyDel) GetMessageType() api.MessageType {
214         return api.RequestMessage
215 }
216
217 func (m *SrMplsPolicyDel) Size() (size int) {
218         if m == nil {
219                 return 0
220         }
221         size += 4 // m.Bsid
222         return size
223 }
224 func (m *SrMplsPolicyDel) Marshal(b []byte) ([]byte, error) {
225         if b == nil {
226                 b = make([]byte, m.Size())
227         }
228         buf := codec.NewBuffer(b)
229         buf.EncodeUint32(m.Bsid)
230         return buf.Bytes(), nil
231 }
232 func (m *SrMplsPolicyDel) Unmarshal(b []byte) error {
233         buf := codec.NewBuffer(b)
234         m.Bsid = buf.DecodeUint32()
235         return nil
236 }
237
238 // SrMplsPolicyDelReply defines message 'sr_mpls_policy_del_reply'.
239 type SrMplsPolicyDelReply struct {
240         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
241 }
242
243 func (m *SrMplsPolicyDelReply) Reset()               { *m = SrMplsPolicyDelReply{} }
244 func (*SrMplsPolicyDelReply) GetMessageName() string { return "sr_mpls_policy_del_reply" }
245 func (*SrMplsPolicyDelReply) GetCrcString() string   { return "e8d4e804" }
246 func (*SrMplsPolicyDelReply) GetMessageType() api.MessageType {
247         return api.ReplyMessage
248 }
249
250 func (m *SrMplsPolicyDelReply) Size() (size int) {
251         if m == nil {
252                 return 0
253         }
254         size += 4 // m.Retval
255         return size
256 }
257 func (m *SrMplsPolicyDelReply) Marshal(b []byte) ([]byte, error) {
258         if b == nil {
259                 b = make([]byte, m.Size())
260         }
261         buf := codec.NewBuffer(b)
262         buf.EncodeInt32(m.Retval)
263         return buf.Bytes(), nil
264 }
265 func (m *SrMplsPolicyDelReply) Unmarshal(b []byte) error {
266         buf := codec.NewBuffer(b)
267         m.Retval = buf.DecodeInt32()
268         return nil
269 }
270
271 // SrMplsPolicyMod defines message 'sr_mpls_policy_mod'.
272 type SrMplsPolicyMod struct {
273         Bsid      uint32              `binapi:"u32,name=bsid" json:"bsid,omitempty"`
274         Operation sr_types.SrPolicyOp `binapi:"sr_policy_op,name=operation" json:"operation,omitempty"`
275         SlIndex   uint32              `binapi:"u32,name=sl_index" json:"sl_index,omitempty"`
276         Weight    uint32              `binapi:"u32,name=weight" json:"weight,omitempty"`
277         NSegments uint8               `binapi:"u8,name=n_segments" json:"-"`
278         Segments  []uint32            `binapi:"u32[n_segments],name=segments" json:"segments,omitempty"`
279 }
280
281 func (m *SrMplsPolicyMod) Reset()               { *m = SrMplsPolicyMod{} }
282 func (*SrMplsPolicyMod) GetMessageName() string { return "sr_mpls_policy_mod" }
283 func (*SrMplsPolicyMod) GetCrcString() string   { return "88482c17" }
284 func (*SrMplsPolicyMod) GetMessageType() api.MessageType {
285         return api.RequestMessage
286 }
287
288 func (m *SrMplsPolicyMod) Size() (size int) {
289         if m == nil {
290                 return 0
291         }
292         size += 4                   // m.Bsid
293         size += 1                   // m.Operation
294         size += 4                   // m.SlIndex
295         size += 4                   // m.Weight
296         size += 1                   // m.NSegments
297         size += 4 * len(m.Segments) // m.Segments
298         return size
299 }
300 func (m *SrMplsPolicyMod) Marshal(b []byte) ([]byte, error) {
301         if b == nil {
302                 b = make([]byte, m.Size())
303         }
304         buf := codec.NewBuffer(b)
305         buf.EncodeUint32(m.Bsid)
306         buf.EncodeUint8(uint8(m.Operation))
307         buf.EncodeUint32(m.SlIndex)
308         buf.EncodeUint32(m.Weight)
309         buf.EncodeUint8(uint8(len(m.Segments)))
310         for i := 0; i < len(m.Segments); i++ {
311                 var x uint32
312                 if i < len(m.Segments) {
313                         x = uint32(m.Segments[i])
314                 }
315                 buf.EncodeUint32(x)
316         }
317         return buf.Bytes(), nil
318 }
319 func (m *SrMplsPolicyMod) Unmarshal(b []byte) error {
320         buf := codec.NewBuffer(b)
321         m.Bsid = buf.DecodeUint32()
322         m.Operation = sr_types.SrPolicyOp(buf.DecodeUint8())
323         m.SlIndex = buf.DecodeUint32()
324         m.Weight = buf.DecodeUint32()
325         m.NSegments = buf.DecodeUint8()
326         m.Segments = make([]uint32, m.NSegments)
327         for i := 0; i < len(m.Segments); i++ {
328                 m.Segments[i] = buf.DecodeUint32()
329         }
330         return nil
331 }
332
333 // SrMplsPolicyModReply defines message 'sr_mpls_policy_mod_reply'.
334 type SrMplsPolicyModReply struct {
335         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
336 }
337
338 func (m *SrMplsPolicyModReply) Reset()               { *m = SrMplsPolicyModReply{} }
339 func (*SrMplsPolicyModReply) GetMessageName() string { return "sr_mpls_policy_mod_reply" }
340 func (*SrMplsPolicyModReply) GetCrcString() string   { return "e8d4e804" }
341 func (*SrMplsPolicyModReply) GetMessageType() api.MessageType {
342         return api.ReplyMessage
343 }
344
345 func (m *SrMplsPolicyModReply) Size() (size int) {
346         if m == nil {
347                 return 0
348         }
349         size += 4 // m.Retval
350         return size
351 }
352 func (m *SrMplsPolicyModReply) Marshal(b []byte) ([]byte, error) {
353         if b == nil {
354                 b = make([]byte, m.Size())
355         }
356         buf := codec.NewBuffer(b)
357         buf.EncodeInt32(m.Retval)
358         return buf.Bytes(), nil
359 }
360 func (m *SrMplsPolicyModReply) Unmarshal(b []byte) error {
361         buf := codec.NewBuffer(b)
362         m.Retval = buf.DecodeInt32()
363         return nil
364 }
365
366 // SrMplsSteeringAddDel defines message 'sr_mpls_steering_add_del'.
367 type SrMplsSteeringAddDel struct {
368         IsDel     bool             `binapi:"bool,name=is_del,default=false" json:"is_del,omitempty"`
369         Bsid      uint32           `binapi:"u32,name=bsid" json:"bsid,omitempty"`
370         TableID   uint32           `binapi:"u32,name=table_id" json:"table_id,omitempty"`
371         Prefix    ip_types.Prefix  `binapi:"prefix,name=prefix" json:"prefix,omitempty"`
372         MaskWidth uint32           `binapi:"u32,name=mask_width" json:"mask_width,omitempty"`
373         NextHop   ip_types.Address `binapi:"address,name=next_hop" json:"next_hop,omitempty"`
374         Color     uint32           `binapi:"u32,name=color" json:"color,omitempty"`
375         CoBits    uint8            `binapi:"u8,name=co_bits" json:"co_bits,omitempty"`
376         VPNLabel  uint32           `binapi:"u32,name=vpn_label" json:"vpn_label,omitempty"`
377 }
378
379 func (m *SrMplsSteeringAddDel) Reset()               { *m = SrMplsSteeringAddDel{} }
380 func (*SrMplsSteeringAddDel) GetMessageName() string { return "sr_mpls_steering_add_del" }
381 func (*SrMplsSteeringAddDel) GetCrcString() string   { return "7d1b0a0b" }
382 func (*SrMplsSteeringAddDel) GetMessageType() api.MessageType {
383         return api.RequestMessage
384 }
385
386 func (m *SrMplsSteeringAddDel) Size() (size int) {
387         if m == nil {
388                 return 0
389         }
390         size += 1      // m.IsDel
391         size += 4      // m.Bsid
392         size += 4      // m.TableID
393         size += 1      // m.Prefix.Address.Af
394         size += 1 * 16 // m.Prefix.Address.Un
395         size += 1      // m.Prefix.Len
396         size += 4      // m.MaskWidth
397         size += 1      // m.NextHop.Af
398         size += 1 * 16 // m.NextHop.Un
399         size += 4      // m.Color
400         size += 1      // m.CoBits
401         size += 4      // m.VPNLabel
402         return size
403 }
404 func (m *SrMplsSteeringAddDel) Marshal(b []byte) ([]byte, error) {
405         if b == nil {
406                 b = make([]byte, m.Size())
407         }
408         buf := codec.NewBuffer(b)
409         buf.EncodeBool(m.IsDel)
410         buf.EncodeUint32(m.Bsid)
411         buf.EncodeUint32(m.TableID)
412         buf.EncodeUint8(uint8(m.Prefix.Address.Af))
413         buf.EncodeBytes(m.Prefix.Address.Un.XXX_UnionData[:], 16)
414         buf.EncodeUint8(m.Prefix.Len)
415         buf.EncodeUint32(m.MaskWidth)
416         buf.EncodeUint8(uint8(m.NextHop.Af))
417         buf.EncodeBytes(m.NextHop.Un.XXX_UnionData[:], 16)
418         buf.EncodeUint32(m.Color)
419         buf.EncodeUint8(m.CoBits)
420         buf.EncodeUint32(m.VPNLabel)
421         return buf.Bytes(), nil
422 }
423 func (m *SrMplsSteeringAddDel) Unmarshal(b []byte) error {
424         buf := codec.NewBuffer(b)
425         m.IsDel = buf.DecodeBool()
426         m.Bsid = buf.DecodeUint32()
427         m.TableID = buf.DecodeUint32()
428         m.Prefix.Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
429         copy(m.Prefix.Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
430         m.Prefix.Len = buf.DecodeUint8()
431         m.MaskWidth = buf.DecodeUint32()
432         m.NextHop.Af = ip_types.AddressFamily(buf.DecodeUint8())
433         copy(m.NextHop.Un.XXX_UnionData[:], buf.DecodeBytes(16))
434         m.Color = buf.DecodeUint32()
435         m.CoBits = buf.DecodeUint8()
436         m.VPNLabel = buf.DecodeUint32()
437         return nil
438 }
439
440 // SrMplsSteeringAddDelReply defines message 'sr_mpls_steering_add_del_reply'.
441 type SrMplsSteeringAddDelReply struct {
442         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
443 }
444
445 func (m *SrMplsSteeringAddDelReply) Reset()               { *m = SrMplsSteeringAddDelReply{} }
446 func (*SrMplsSteeringAddDelReply) GetMessageName() string { return "sr_mpls_steering_add_del_reply" }
447 func (*SrMplsSteeringAddDelReply) GetCrcString() string   { return "e8d4e804" }
448 func (*SrMplsSteeringAddDelReply) GetMessageType() api.MessageType {
449         return api.ReplyMessage
450 }
451
452 func (m *SrMplsSteeringAddDelReply) Size() (size int) {
453         if m == nil {
454                 return 0
455         }
456         size += 4 // m.Retval
457         return size
458 }
459 func (m *SrMplsSteeringAddDelReply) Marshal(b []byte) ([]byte, error) {
460         if b == nil {
461                 b = make([]byte, m.Size())
462         }
463         buf := codec.NewBuffer(b)
464         buf.EncodeInt32(m.Retval)
465         return buf.Bytes(), nil
466 }
467 func (m *SrMplsSteeringAddDelReply) Unmarshal(b []byte) error {
468         buf := codec.NewBuffer(b)
469         m.Retval = buf.DecodeInt32()
470         return nil
471 }
472
473 func init() { file_sr_mpls_binapi_init() }
474 func file_sr_mpls_binapi_init() {
475         api.RegisterMessage((*SrMplsPolicyAdd)(nil), "sr_mpls_policy_add_a1a70c70")
476         api.RegisterMessage((*SrMplsPolicyAddReply)(nil), "sr_mpls_policy_add_reply_e8d4e804")
477         api.RegisterMessage((*SrMplsPolicyAssignEndpointColor)(nil), "sr_mpls_policy_assign_endpoint_color_5e1c5c13")
478         api.RegisterMessage((*SrMplsPolicyAssignEndpointColorReply)(nil), "sr_mpls_policy_assign_endpoint_color_reply_e8d4e804")
479         api.RegisterMessage((*SrMplsPolicyDel)(nil), "sr_mpls_policy_del_e29d34fa")
480         api.RegisterMessage((*SrMplsPolicyDelReply)(nil), "sr_mpls_policy_del_reply_e8d4e804")
481         api.RegisterMessage((*SrMplsPolicyMod)(nil), "sr_mpls_policy_mod_88482c17")
482         api.RegisterMessage((*SrMplsPolicyModReply)(nil), "sr_mpls_policy_mod_reply_e8d4e804")
483         api.RegisterMessage((*SrMplsSteeringAddDel)(nil), "sr_mpls_steering_add_del_7d1b0a0b")
484         api.RegisterMessage((*SrMplsSteeringAddDelReply)(nil), "sr_mpls_steering_add_del_reply_e8d4e804")
485 }
486
487 // Messages returns list of all messages in this module.
488 func AllMessages() []api.Message {
489         return []api.Message{
490                 (*SrMplsPolicyAdd)(nil),
491                 (*SrMplsPolicyAddReply)(nil),
492                 (*SrMplsPolicyAssignEndpointColor)(nil),
493                 (*SrMplsPolicyAssignEndpointColorReply)(nil),
494                 (*SrMplsPolicyDel)(nil),
495                 (*SrMplsPolicyDelReply)(nil),
496                 (*SrMplsPolicyMod)(nil),
497                 (*SrMplsPolicyModReply)(nil),
498                 (*SrMplsSteeringAddDel)(nil),
499                 (*SrMplsSteeringAddDelReply)(nil),
500         }
501 }