Introduce Stream - experimental API for low-level access to VPP API
[govpp.git] / examples / binapi / memif / memif.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 // source: /usr/share/vpp/api/plugins/memif.api.json
6
7 /*
8 Package memif contains generated code for VPP API file memif.api (3.0.0).
9
10 It consists of:
11           2 aliases
12           8 enums
13          10 messages
14 */
15 package memif
16
17 import (
18         "bytes"
19         "context"
20         "encoding/binary"
21         "io"
22         "math"
23         "strconv"
24
25         api "git.fd.io/govpp.git/api"
26         codec "git.fd.io/govpp.git/codec"
27         struc "github.com/lunixbochs/struc"
28
29         interface_types "git.fd.io/govpp.git/examples/binapi/interface_types"
30 )
31
32 // This is a compile-time assertion to ensure that this generated file
33 // is compatible with the GoVPP api package it is being compiled against.
34 // A compilation error at this line likely means your copy of the
35 // GoVPP api package needs to be updated.
36 const _ = api.GoVppAPIPackageIsVersion2 // please upgrade the GoVPP api package
37
38 const (
39         // ModuleName is the name of this module.
40         ModuleName = "memif"
41         // APIVersion is the API version of this module.
42         APIVersion = "3.0.0"
43         // VersionCrc is the CRC of this module.
44         VersionCrc = 0x1a1c95b8
45 )
46
47 type IfStatusFlags = interface_types.IfStatusFlags
48
49 type IfType = interface_types.IfType
50
51 type LinkDuplex = interface_types.LinkDuplex
52
53 // MemifMode represents VPP binary API enum 'memif_mode'.
54 type MemifMode uint32
55
56 const (
57         MEMIF_MODE_API_ETHERNET    MemifMode = 0
58         MEMIF_MODE_API_IP          MemifMode = 1
59         MEMIF_MODE_API_PUNT_INJECT MemifMode = 2
60 )
61
62 var (
63         MemifMode_name = map[uint32]string{
64                 0: "MEMIF_MODE_API_ETHERNET",
65                 1: "MEMIF_MODE_API_IP",
66                 2: "MEMIF_MODE_API_PUNT_INJECT",
67         }
68         MemifMode_value = map[string]uint32{
69                 "MEMIF_MODE_API_ETHERNET":    0,
70                 "MEMIF_MODE_API_IP":          1,
71                 "MEMIF_MODE_API_PUNT_INJECT": 2,
72         }
73 )
74
75 func (x MemifMode) String() string {
76         s, ok := MemifMode_name[uint32(x)]
77         if ok {
78                 return s
79         }
80         return "MemifMode(" + strconv.Itoa(int(x)) + ")"
81 }
82
83 // MemifRole represents VPP binary API enum 'memif_role'.
84 type MemifRole uint32
85
86 const (
87         MEMIF_ROLE_API_MASTER MemifRole = 0
88         MEMIF_ROLE_API_SLAVE  MemifRole = 1
89 )
90
91 var (
92         MemifRole_name = map[uint32]string{
93                 0: "MEMIF_ROLE_API_MASTER",
94                 1: "MEMIF_ROLE_API_SLAVE",
95         }
96         MemifRole_value = map[string]uint32{
97                 "MEMIF_ROLE_API_MASTER": 0,
98                 "MEMIF_ROLE_API_SLAVE":  1,
99         }
100 )
101
102 func (x MemifRole) String() string {
103         s, ok := MemifRole_name[uint32(x)]
104         if ok {
105                 return s
106         }
107         return "MemifRole(" + strconv.Itoa(int(x)) + ")"
108 }
109
110 type MtuProto = interface_types.MtuProto
111
112 type RxMode = interface_types.RxMode
113
114 type SubIfFlags = interface_types.SubIfFlags
115
116 type InterfaceIndex = interface_types.InterfaceIndex
117
118 // MacAddress represents VPP binary API alias 'mac_address'.
119 type MacAddress [6]uint8
120
121 // MemifCreate represents VPP binary API message 'memif_create'.
122 type MemifCreate struct {
123         Role       MemifRole  `binapi:"memif_role,name=role" json:"role,omitempty"`
124         Mode       MemifMode  `binapi:"memif_mode,name=mode" json:"mode,omitempty"`
125         RxQueues   uint8      `binapi:"u8,name=rx_queues" json:"rx_queues,omitempty"`
126         TxQueues   uint8      `binapi:"u8,name=tx_queues" json:"tx_queues,omitempty"`
127         ID         uint32     `binapi:"u32,name=id" json:"id,omitempty"`
128         SocketID   uint32     `binapi:"u32,name=socket_id" json:"socket_id,omitempty"`
129         RingSize   uint32     `binapi:"u32,name=ring_size" json:"ring_size,omitempty"`
130         BufferSize uint16     `binapi:"u16,name=buffer_size" json:"buffer_size,omitempty"`
131         NoZeroCopy bool       `binapi:"bool,name=no_zero_copy" json:"no_zero_copy,omitempty"`
132         HwAddr     MacAddress `binapi:"mac_address,name=hw_addr" json:"hw_addr,omitempty"`
133         Secret     string     `binapi:"string[24],name=secret" json:"secret,omitempty" struc:"[24]byte"`
134 }
135
136 func (m *MemifCreate) Reset()                        { *m = MemifCreate{} }
137 func (*MemifCreate) GetMessageName() string          { return "memif_create" }
138 func (*MemifCreate) GetCrcString() string            { return "b1b25061" }
139 func (*MemifCreate) GetMessageType() api.MessageType { return api.RequestMessage }
140
141 func (m *MemifCreate) Size() int {
142         if m == nil {
143                 return 0
144         }
145         var size int
146         // field[1] m.Role
147         size += 4
148         // field[1] m.Mode
149         size += 4
150         // field[1] m.RxQueues
151         size += 1
152         // field[1] m.TxQueues
153         size += 1
154         // field[1] m.ID
155         size += 4
156         // field[1] m.SocketID
157         size += 4
158         // field[1] m.RingSize
159         size += 4
160         // field[1] m.BufferSize
161         size += 2
162         // field[1] m.NoZeroCopy
163         size += 1
164         // field[1] m.HwAddr
165         size += 6
166         // field[1] m.Secret
167         size += 24
168         return size
169 }
170 func (m *MemifCreate) Marshal(b []byte) ([]byte, error) {
171         o := binary.BigEndian
172         _ = o
173         pos := 0
174         _ = pos
175         var buf []byte
176         if b == nil {
177                 buf = make([]byte, m.Size())
178         } else {
179                 buf = b
180         }
181         // field[1] m.Role
182         o.PutUint32(buf[pos:pos+4], uint32(m.Role))
183         pos += 4
184         // field[1] m.Mode
185         o.PutUint32(buf[pos:pos+4], uint32(m.Mode))
186         pos += 4
187         // field[1] m.RxQueues
188         buf[pos] = uint8(m.RxQueues)
189         pos += 1
190         // field[1] m.TxQueues
191         buf[pos] = uint8(m.TxQueues)
192         pos += 1
193         // field[1] m.ID
194         o.PutUint32(buf[pos:pos+4], uint32(m.ID))
195         pos += 4
196         // field[1] m.SocketID
197         o.PutUint32(buf[pos:pos+4], uint32(m.SocketID))
198         pos += 4
199         // field[1] m.RingSize
200         o.PutUint32(buf[pos:pos+4], uint32(m.RingSize))
201         pos += 4
202         // field[1] m.BufferSize
203         o.PutUint16(buf[pos:pos+2], uint16(m.BufferSize))
204         pos += 2
205         // field[1] m.NoZeroCopy
206         if m.NoZeroCopy {
207                 buf[pos] = 1
208         }
209         pos += 1
210         // field[1] m.HwAddr
211         for i := 0; i < 6; i++ {
212                 var x uint8
213                 if i < len(m.HwAddr) {
214                         x = uint8(m.HwAddr[i])
215                 }
216                 buf[pos] = uint8(x)
217                 pos += 1
218         }
219         // field[1] m.Secret
220         copy(buf[pos:pos+24], m.Secret)
221         pos += 24
222         return buf, nil
223 }
224 func (m *MemifCreate) Unmarshal(tmp []byte) error {
225         o := binary.BigEndian
226         _ = o
227         pos := 0
228         _ = pos
229         // field[1] m.Role
230         m.Role = MemifRole(o.Uint32(tmp[pos : pos+4]))
231         pos += 4
232         // field[1] m.Mode
233         m.Mode = MemifMode(o.Uint32(tmp[pos : pos+4]))
234         pos += 4
235         // field[1] m.RxQueues
236         m.RxQueues = uint8(tmp[pos])
237         pos += 1
238         // field[1] m.TxQueues
239         m.TxQueues = uint8(tmp[pos])
240         pos += 1
241         // field[1] m.ID
242         m.ID = uint32(o.Uint32(tmp[pos : pos+4]))
243         pos += 4
244         // field[1] m.SocketID
245         m.SocketID = uint32(o.Uint32(tmp[pos : pos+4]))
246         pos += 4
247         // field[1] m.RingSize
248         m.RingSize = uint32(o.Uint32(tmp[pos : pos+4]))
249         pos += 4
250         // field[1] m.BufferSize
251         m.BufferSize = uint16(o.Uint16(tmp[pos : pos+2]))
252         pos += 2
253         // field[1] m.NoZeroCopy
254         m.NoZeroCopy = tmp[pos] != 0
255         pos += 1
256         // field[1] m.HwAddr
257         for i := 0; i < len(m.HwAddr); i++ {
258                 m.HwAddr[i] = uint8(tmp[pos])
259                 pos += 1
260         }
261         // field[1] m.Secret
262         {
263                 nul := bytes.Index(tmp[pos:pos+24], []byte{0x00})
264                 m.Secret = codec.DecodeString(tmp[pos : pos+nul])
265                 pos += 24
266         }
267         return nil
268 }
269
270 // MemifCreateReply represents VPP binary API message 'memif_create_reply'.
271 type MemifCreateReply struct {
272         Retval    int32          `binapi:"i32,name=retval" json:"retval,omitempty"`
273         SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
274 }
275
276 func (m *MemifCreateReply) Reset()                        { *m = MemifCreateReply{} }
277 func (*MemifCreateReply) GetMessageName() string          { return "memif_create_reply" }
278 func (*MemifCreateReply) GetCrcString() string            { return "5383d31f" }
279 func (*MemifCreateReply) GetMessageType() api.MessageType { return api.ReplyMessage }
280
281 func (m *MemifCreateReply) Size() int {
282         if m == nil {
283                 return 0
284         }
285         var size int
286         // field[1] m.Retval
287         size += 4
288         // field[1] m.SwIfIndex
289         size += 4
290         return size
291 }
292 func (m *MemifCreateReply) Marshal(b []byte) ([]byte, error) {
293         o := binary.BigEndian
294         _ = o
295         pos := 0
296         _ = pos
297         var buf []byte
298         if b == nil {
299                 buf = make([]byte, m.Size())
300         } else {
301                 buf = b
302         }
303         // field[1] m.Retval
304         o.PutUint32(buf[pos:pos+4], uint32(m.Retval))
305         pos += 4
306         // field[1] m.SwIfIndex
307         o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex))
308         pos += 4
309         return buf, nil
310 }
311 func (m *MemifCreateReply) Unmarshal(tmp []byte) error {
312         o := binary.BigEndian
313         _ = o
314         pos := 0
315         _ = pos
316         // field[1] m.Retval
317         m.Retval = int32(o.Uint32(tmp[pos : pos+4]))
318         pos += 4
319         // field[1] m.SwIfIndex
320         m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4]))
321         pos += 4
322         return nil
323 }
324
325 // MemifDelete represents VPP binary API message 'memif_delete'.
326 type MemifDelete struct {
327         SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
328 }
329
330 func (m *MemifDelete) Reset()                        { *m = MemifDelete{} }
331 func (*MemifDelete) GetMessageName() string          { return "memif_delete" }
332 func (*MemifDelete) GetCrcString() string            { return "f9e6675e" }
333 func (*MemifDelete) GetMessageType() api.MessageType { return api.RequestMessage }
334
335 func (m *MemifDelete) Size() int {
336         if m == nil {
337                 return 0
338         }
339         var size int
340         // field[1] m.SwIfIndex
341         size += 4
342         return size
343 }
344 func (m *MemifDelete) Marshal(b []byte) ([]byte, error) {
345         o := binary.BigEndian
346         _ = o
347         pos := 0
348         _ = pos
349         var buf []byte
350         if b == nil {
351                 buf = make([]byte, m.Size())
352         } else {
353                 buf = b
354         }
355         // field[1] m.SwIfIndex
356         o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex))
357         pos += 4
358         return buf, nil
359 }
360 func (m *MemifDelete) Unmarshal(tmp []byte) error {
361         o := binary.BigEndian
362         _ = o
363         pos := 0
364         _ = pos
365         // field[1] m.SwIfIndex
366         m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4]))
367         pos += 4
368         return nil
369 }
370
371 // MemifDeleteReply represents VPP binary API message 'memif_delete_reply'.
372 type MemifDeleteReply struct {
373         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
374 }
375
376 func (m *MemifDeleteReply) Reset()                        { *m = MemifDeleteReply{} }
377 func (*MemifDeleteReply) GetMessageName() string          { return "memif_delete_reply" }
378 func (*MemifDeleteReply) GetCrcString() string            { return "e8d4e804" }
379 func (*MemifDeleteReply) GetMessageType() api.MessageType { return api.ReplyMessage }
380
381 func (m *MemifDeleteReply) Size() int {
382         if m == nil {
383                 return 0
384         }
385         var size int
386         // field[1] m.Retval
387         size += 4
388         return size
389 }
390 func (m *MemifDeleteReply) Marshal(b []byte) ([]byte, error) {
391         o := binary.BigEndian
392         _ = o
393         pos := 0
394         _ = pos
395         var buf []byte
396         if b == nil {
397                 buf = make([]byte, m.Size())
398         } else {
399                 buf = b
400         }
401         // field[1] m.Retval
402         o.PutUint32(buf[pos:pos+4], uint32(m.Retval))
403         pos += 4
404         return buf, nil
405 }
406 func (m *MemifDeleteReply) Unmarshal(tmp []byte) error {
407         o := binary.BigEndian
408         _ = o
409         pos := 0
410         _ = pos
411         // field[1] m.Retval
412         m.Retval = int32(o.Uint32(tmp[pos : pos+4]))
413         pos += 4
414         return nil
415 }
416
417 // MemifDetails represents VPP binary API message 'memif_details'.
418 type MemifDetails struct {
419         SwIfIndex  InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
420         HwAddr     MacAddress     `binapi:"mac_address,name=hw_addr" json:"hw_addr,omitempty"`
421         ID         uint32         `binapi:"u32,name=id" json:"id,omitempty"`
422         Role       MemifRole      `binapi:"memif_role,name=role" json:"role,omitempty"`
423         Mode       MemifMode      `binapi:"memif_mode,name=mode" json:"mode,omitempty"`
424         ZeroCopy   bool           `binapi:"bool,name=zero_copy" json:"zero_copy,omitempty"`
425         SocketID   uint32         `binapi:"u32,name=socket_id" json:"socket_id,omitempty"`
426         RingSize   uint32         `binapi:"u32,name=ring_size" json:"ring_size,omitempty"`
427         BufferSize uint16         `binapi:"u16,name=buffer_size" json:"buffer_size,omitempty"`
428         Flags      IfStatusFlags  `binapi:"if_status_flags,name=flags" json:"flags,omitempty"`
429         IfName     string         `binapi:"string[64],name=if_name" json:"if_name,omitempty" struc:"[64]byte"`
430 }
431
432 func (m *MemifDetails) Reset()                        { *m = MemifDetails{} }
433 func (*MemifDetails) GetMessageName() string          { return "memif_details" }
434 func (*MemifDetails) GetCrcString() string            { return "d0382c4c" }
435 func (*MemifDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
436
437 func (m *MemifDetails) Size() int {
438         if m == nil {
439                 return 0
440         }
441         var size int
442         // field[1] m.SwIfIndex
443         size += 4
444         // field[1] m.HwAddr
445         size += 6
446         // field[1] m.ID
447         size += 4
448         // field[1] m.Role
449         size += 4
450         // field[1] m.Mode
451         size += 4
452         // field[1] m.ZeroCopy
453         size += 1
454         // field[1] m.SocketID
455         size += 4
456         // field[1] m.RingSize
457         size += 4
458         // field[1] m.BufferSize
459         size += 2
460         // field[1] m.Flags
461         size += 4
462         // field[1] m.IfName
463         size += 64
464         return size
465 }
466 func (m *MemifDetails) Marshal(b []byte) ([]byte, error) {
467         o := binary.BigEndian
468         _ = o
469         pos := 0
470         _ = pos
471         var buf []byte
472         if b == nil {
473                 buf = make([]byte, m.Size())
474         } else {
475                 buf = b
476         }
477         // field[1] m.SwIfIndex
478         o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex))
479         pos += 4
480         // field[1] m.HwAddr
481         for i := 0; i < 6; i++ {
482                 var x uint8
483                 if i < len(m.HwAddr) {
484                         x = uint8(m.HwAddr[i])
485                 }
486                 buf[pos] = uint8(x)
487                 pos += 1
488         }
489         // field[1] m.ID
490         o.PutUint32(buf[pos:pos+4], uint32(m.ID))
491         pos += 4
492         // field[1] m.Role
493         o.PutUint32(buf[pos:pos+4], uint32(m.Role))
494         pos += 4
495         // field[1] m.Mode
496         o.PutUint32(buf[pos:pos+4], uint32(m.Mode))
497         pos += 4
498         // field[1] m.ZeroCopy
499         if m.ZeroCopy {
500                 buf[pos] = 1
501         }
502         pos += 1
503         // field[1] m.SocketID
504         o.PutUint32(buf[pos:pos+4], uint32(m.SocketID))
505         pos += 4
506         // field[1] m.RingSize
507         o.PutUint32(buf[pos:pos+4], uint32(m.RingSize))
508         pos += 4
509         // field[1] m.BufferSize
510         o.PutUint16(buf[pos:pos+2], uint16(m.BufferSize))
511         pos += 2
512         // field[1] m.Flags
513         o.PutUint32(buf[pos:pos+4], uint32(m.Flags))
514         pos += 4
515         // field[1] m.IfName
516         copy(buf[pos:pos+64], m.IfName)
517         pos += 64
518         return buf, nil
519 }
520 func (m *MemifDetails) Unmarshal(tmp []byte) error {
521         o := binary.BigEndian
522         _ = o
523         pos := 0
524         _ = pos
525         // field[1] m.SwIfIndex
526         m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4]))
527         pos += 4
528         // field[1] m.HwAddr
529         for i := 0; i < len(m.HwAddr); i++ {
530                 m.HwAddr[i] = uint8(tmp[pos])
531                 pos += 1
532         }
533         // field[1] m.ID
534         m.ID = uint32(o.Uint32(tmp[pos : pos+4]))
535         pos += 4
536         // field[1] m.Role
537         m.Role = MemifRole(o.Uint32(tmp[pos : pos+4]))
538         pos += 4
539         // field[1] m.Mode
540         m.Mode = MemifMode(o.Uint32(tmp[pos : pos+4]))
541         pos += 4
542         // field[1] m.ZeroCopy
543         m.ZeroCopy = tmp[pos] != 0
544         pos += 1
545         // field[1] m.SocketID
546         m.SocketID = uint32(o.Uint32(tmp[pos : pos+4]))
547         pos += 4
548         // field[1] m.RingSize
549         m.RingSize = uint32(o.Uint32(tmp[pos : pos+4]))
550         pos += 4
551         // field[1] m.BufferSize
552         m.BufferSize = uint16(o.Uint16(tmp[pos : pos+2]))
553         pos += 2
554         // field[1] m.Flags
555         m.Flags = IfStatusFlags(o.Uint32(tmp[pos : pos+4]))
556         pos += 4
557         // field[1] m.IfName
558         {
559                 nul := bytes.Index(tmp[pos:pos+64], []byte{0x00})
560                 m.IfName = codec.DecodeString(tmp[pos : pos+nul])
561                 pos += 64
562         }
563         return nil
564 }
565
566 // MemifDump represents VPP binary API message 'memif_dump'.
567 type MemifDump struct{}
568
569 func (m *MemifDump) Reset()                        { *m = MemifDump{} }
570 func (*MemifDump) GetMessageName() string          { return "memif_dump" }
571 func (*MemifDump) GetCrcString() string            { return "51077d14" }
572 func (*MemifDump) GetMessageType() api.MessageType { return api.RequestMessage }
573
574 func (m *MemifDump) Size() int {
575         if m == nil {
576                 return 0
577         }
578         var size int
579         return size
580 }
581 func (m *MemifDump) Marshal(b []byte) ([]byte, error) {
582         o := binary.BigEndian
583         _ = o
584         pos := 0
585         _ = pos
586         var buf []byte
587         if b == nil {
588                 buf = make([]byte, m.Size())
589         } else {
590                 buf = b
591         }
592         return buf, nil
593 }
594 func (m *MemifDump) Unmarshal(tmp []byte) error {
595         o := binary.BigEndian
596         _ = o
597         pos := 0
598         _ = pos
599         return nil
600 }
601
602 // MemifSocketFilenameAddDel represents VPP binary API message 'memif_socket_filename_add_del'.
603 type MemifSocketFilenameAddDel struct {
604         IsAdd          bool   `binapi:"bool,name=is_add" json:"is_add,omitempty"`
605         SocketID       uint32 `binapi:"u32,name=socket_id" json:"socket_id,omitempty"`
606         SocketFilename string `binapi:"string[108],name=socket_filename" json:"socket_filename,omitempty" struc:"[108]byte"`
607 }
608
609 func (m *MemifSocketFilenameAddDel) Reset()                        { *m = MemifSocketFilenameAddDel{} }
610 func (*MemifSocketFilenameAddDel) GetMessageName() string          { return "memif_socket_filename_add_del" }
611 func (*MemifSocketFilenameAddDel) GetCrcString() string            { return "a2ce1a10" }
612 func (*MemifSocketFilenameAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
613
614 func (m *MemifSocketFilenameAddDel) Size() int {
615         if m == nil {
616                 return 0
617         }
618         var size int
619         // field[1] m.IsAdd
620         size += 1
621         // field[1] m.SocketID
622         size += 4
623         // field[1] m.SocketFilename
624         size += 108
625         return size
626 }
627 func (m *MemifSocketFilenameAddDel) Marshal(b []byte) ([]byte, error) {
628         o := binary.BigEndian
629         _ = o
630         pos := 0
631         _ = pos
632         var buf []byte
633         if b == nil {
634                 buf = make([]byte, m.Size())
635         } else {
636                 buf = b
637         }
638         // field[1] m.IsAdd
639         if m.IsAdd {
640                 buf[pos] = 1
641         }
642         pos += 1
643         // field[1] m.SocketID
644         o.PutUint32(buf[pos:pos+4], uint32(m.SocketID))
645         pos += 4
646         // field[1] m.SocketFilename
647         copy(buf[pos:pos+108], m.SocketFilename)
648         pos += 108
649         return buf, nil
650 }
651 func (m *MemifSocketFilenameAddDel) Unmarshal(tmp []byte) error {
652         o := binary.BigEndian
653         _ = o
654         pos := 0
655         _ = pos
656         // field[1] m.IsAdd
657         m.IsAdd = tmp[pos] != 0
658         pos += 1
659         // field[1] m.SocketID
660         m.SocketID = uint32(o.Uint32(tmp[pos : pos+4]))
661         pos += 4
662         // field[1] m.SocketFilename
663         {
664                 nul := bytes.Index(tmp[pos:pos+108], []byte{0x00})
665                 m.SocketFilename = codec.DecodeString(tmp[pos : pos+nul])
666                 pos += 108
667         }
668         return nil
669 }
670
671 // MemifSocketFilenameAddDelReply represents VPP binary API message 'memif_socket_filename_add_del_reply'.
672 type MemifSocketFilenameAddDelReply struct {
673         Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
674 }
675
676 func (m *MemifSocketFilenameAddDelReply) Reset() { *m = MemifSocketFilenameAddDelReply{} }
677 func (*MemifSocketFilenameAddDelReply) GetMessageName() string {
678         return "memif_socket_filename_add_del_reply"
679 }
680 func (*MemifSocketFilenameAddDelReply) GetCrcString() string            { return "e8d4e804" }
681 func (*MemifSocketFilenameAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
682
683 func (m *MemifSocketFilenameAddDelReply) Size() int {
684         if m == nil {
685                 return 0
686         }
687         var size int
688         // field[1] m.Retval
689         size += 4
690         return size
691 }
692 func (m *MemifSocketFilenameAddDelReply) Marshal(b []byte) ([]byte, error) {
693         o := binary.BigEndian
694         _ = o
695         pos := 0
696         _ = pos
697         var buf []byte
698         if b == nil {
699                 buf = make([]byte, m.Size())
700         } else {
701                 buf = b
702         }
703         // field[1] m.Retval
704         o.PutUint32(buf[pos:pos+4], uint32(m.Retval))
705         pos += 4
706         return buf, nil
707 }
708 func (m *MemifSocketFilenameAddDelReply) Unmarshal(tmp []byte) error {
709         o := binary.BigEndian
710         _ = o
711         pos := 0
712         _ = pos
713         // field[1] m.Retval
714         m.Retval = int32(o.Uint32(tmp[pos : pos+4]))
715         pos += 4
716         return nil
717 }
718
719 // MemifSocketFilenameDetails represents VPP binary API message 'memif_socket_filename_details'.
720 type MemifSocketFilenameDetails struct {
721         SocketID       uint32 `binapi:"u32,name=socket_id" json:"socket_id,omitempty"`
722         SocketFilename string `binapi:"string[108],name=socket_filename" json:"socket_filename,omitempty" struc:"[108]byte"`
723 }
724
725 func (m *MemifSocketFilenameDetails) Reset()                        { *m = MemifSocketFilenameDetails{} }
726 func (*MemifSocketFilenameDetails) GetMessageName() string          { return "memif_socket_filename_details" }
727 func (*MemifSocketFilenameDetails) GetCrcString() string            { return "7ff326f7" }
728 func (*MemifSocketFilenameDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
729
730 func (m *MemifSocketFilenameDetails) Size() int {
731         if m == nil {
732                 return 0
733         }
734         var size int
735         // field[1] m.SocketID
736         size += 4
737         // field[1] m.SocketFilename
738         size += 108
739         return size
740 }
741 func (m *MemifSocketFilenameDetails) Marshal(b []byte) ([]byte, error) {
742         o := binary.BigEndian
743         _ = o
744         pos := 0
745         _ = pos
746         var buf []byte
747         if b == nil {
748                 buf = make([]byte, m.Size())
749         } else {
750                 buf = b
751         }
752         // field[1] m.SocketID
753         o.PutUint32(buf[pos:pos+4], uint32(m.SocketID))
754         pos += 4
755         // field[1] m.SocketFilename
756         copy(buf[pos:pos+108], m.SocketFilename)
757         pos += 108
758         return buf, nil
759 }
760 func (m *MemifSocketFilenameDetails) Unmarshal(tmp []byte) error {
761         o := binary.BigEndian
762         _ = o
763         pos := 0
764         _ = pos
765         // field[1] m.SocketID
766         m.SocketID = uint32(o.Uint32(tmp[pos : pos+4]))
767         pos += 4
768         // field[1] m.SocketFilename
769         {
770                 nul := bytes.Index(tmp[pos:pos+108], []byte{0x00})
771                 m.SocketFilename = codec.DecodeString(tmp[pos : pos+nul])
772                 pos += 108
773         }
774         return nil
775 }
776
777 // MemifSocketFilenameDump represents VPP binary API message 'memif_socket_filename_dump'.
778 type MemifSocketFilenameDump struct{}
779
780 func (m *MemifSocketFilenameDump) Reset()                        { *m = MemifSocketFilenameDump{} }
781 func (*MemifSocketFilenameDump) GetMessageName() string          { return "memif_socket_filename_dump" }
782 func (*MemifSocketFilenameDump) GetCrcString() string            { return "51077d14" }
783 func (*MemifSocketFilenameDump) GetMessageType() api.MessageType { return api.RequestMessage }
784
785 func (m *MemifSocketFilenameDump) Size() int {
786         if m == nil {
787                 return 0
788         }
789         var size int
790         return size
791 }
792 func (m *MemifSocketFilenameDump) Marshal(b []byte) ([]byte, error) {
793         o := binary.BigEndian
794         _ = o
795         pos := 0
796         _ = pos
797         var buf []byte
798         if b == nil {
799                 buf = make([]byte, m.Size())
800         } else {
801                 buf = b
802         }
803         return buf, nil
804 }
805 func (m *MemifSocketFilenameDump) Unmarshal(tmp []byte) error {
806         o := binary.BigEndian
807         _ = o
808         pos := 0
809         _ = pos
810         return nil
811 }
812
813 func init() { file_memif_binapi_init() }
814 func file_memif_binapi_init() {
815         api.RegisterMessage((*MemifCreate)(nil), "memif.MemifCreate")
816         api.RegisterMessage((*MemifCreateReply)(nil), "memif.MemifCreateReply")
817         api.RegisterMessage((*MemifDelete)(nil), "memif.MemifDelete")
818         api.RegisterMessage((*MemifDeleteReply)(nil), "memif.MemifDeleteReply")
819         api.RegisterMessage((*MemifDetails)(nil), "memif.MemifDetails")
820         api.RegisterMessage((*MemifDump)(nil), "memif.MemifDump")
821         api.RegisterMessage((*MemifSocketFilenameAddDel)(nil), "memif.MemifSocketFilenameAddDel")
822         api.RegisterMessage((*MemifSocketFilenameAddDelReply)(nil), "memif.MemifSocketFilenameAddDelReply")
823         api.RegisterMessage((*MemifSocketFilenameDetails)(nil), "memif.MemifSocketFilenameDetails")
824         api.RegisterMessage((*MemifSocketFilenameDump)(nil), "memif.MemifSocketFilenameDump")
825 }
826
827 // Messages returns list of all messages in this module.
828 func AllMessages() []api.Message {
829         return []api.Message{
830                 (*MemifCreate)(nil),
831                 (*MemifCreateReply)(nil),
832                 (*MemifDelete)(nil),
833                 (*MemifDeleteReply)(nil),
834                 (*MemifDetails)(nil),
835                 (*MemifDump)(nil),
836                 (*MemifSocketFilenameAddDel)(nil),
837                 (*MemifSocketFilenameAddDelReply)(nil),
838                 (*MemifSocketFilenameDetails)(nil),
839                 (*MemifSocketFilenameDump)(nil),
840         }
841 }
842
843 // Reference imports to suppress errors if they are not otherwise used.
844 var _ = api.RegisterMessage
845 var _ = codec.DecodeString
846 var _ = bytes.NewBuffer
847 var _ = context.Background
848 var _ = io.Copy
849 var _ = strconv.Itoa
850 var _ = struc.Pack
851 var _ = binary.BigEndian
852 var _ = math.Float32bits