Fix compatibility with latest master (20.01-rc0)
[govpp.git] / examples / binapi / ip / ip.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2 // source: /usr/share/vpp/api/core/ip.api.json
3
4 /*
5 Package ip is a generated VPP binary API for 'ip' module.
6
7 It consists of:
8           9 enums
9           3 aliases
10          17 types
11           1 union
12          93 messages
13          45 services
14 */
15 package ip
16
17 import (
18         bytes "bytes"
19         context "context"
20         api "git.fd.io/govpp.git/api"
21         struc "github.com/lunixbochs/struc"
22         io "io"
23         strconv "strconv"
24 )
25
26 const (
27         // ModuleName is the name of this module.
28         ModuleName = "ip"
29         // APIVersion is the API version of this module.
30         APIVersion = "3.0.0"
31         // VersionCrc is the CRC of this module.
32         VersionCrc = 0x902699f5
33 )
34
35 // AddressFamily represents VPP binary API enum 'address_family'.
36 type AddressFamily uint32
37
38 const (
39         ADDRESS_IP4 AddressFamily = 0
40         ADDRESS_IP6 AddressFamily = 1
41 )
42
43 var AddressFamily_name = map[uint32]string{
44         0: "ADDRESS_IP4",
45         1: "ADDRESS_IP6",
46 }
47
48 var AddressFamily_value = map[string]uint32{
49         "ADDRESS_IP4": 0,
50         "ADDRESS_IP6": 1,
51 }
52
53 func (x AddressFamily) String() string {
54         s, ok := AddressFamily_name[uint32(x)]
55         if ok {
56                 return s
57         }
58         return strconv.Itoa(int(x))
59 }
60
61 // FibPathFlags represents VPP binary API enum 'fib_path_flags'.
62 type FibPathFlags uint32
63
64 const (
65         FIB_API_PATH_FLAG_NONE                 FibPathFlags = 0
66         FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED FibPathFlags = 1
67         FIB_API_PATH_FLAG_RESOLVE_VIA_HOST     FibPathFlags = 2
68         FIB_API_PATH_FLAG_POP_PW_CW            FibPathFlags = 4
69 )
70
71 var FibPathFlags_name = map[uint32]string{
72         0: "FIB_API_PATH_FLAG_NONE",
73         1: "FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED",
74         2: "FIB_API_PATH_FLAG_RESOLVE_VIA_HOST",
75         4: "FIB_API_PATH_FLAG_POP_PW_CW",
76 }
77
78 var FibPathFlags_value = map[string]uint32{
79         "FIB_API_PATH_FLAG_NONE":                 0,
80         "FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED": 1,
81         "FIB_API_PATH_FLAG_RESOLVE_VIA_HOST":     2,
82         "FIB_API_PATH_FLAG_POP_PW_CW":            4,
83 }
84
85 func (x FibPathFlags) String() string {
86         s, ok := FibPathFlags_name[uint32(x)]
87         if ok {
88                 return s
89         }
90         return strconv.Itoa(int(x))
91 }
92
93 // FibPathNhProto represents VPP binary API enum 'fib_path_nh_proto'.
94 type FibPathNhProto uint32
95
96 const (
97         FIB_API_PATH_NH_PROTO_IP4      FibPathNhProto = 0
98         FIB_API_PATH_NH_PROTO_IP6      FibPathNhProto = 1
99         FIB_API_PATH_NH_PROTO_MPLS     FibPathNhProto = 2
100         FIB_API_PATH_NH_PROTO_ETHERNET FibPathNhProto = 3
101         FIB_API_PATH_NH_PROTO_BIER     FibPathNhProto = 4
102 )
103
104 var FibPathNhProto_name = map[uint32]string{
105         0: "FIB_API_PATH_NH_PROTO_IP4",
106         1: "FIB_API_PATH_NH_PROTO_IP6",
107         2: "FIB_API_PATH_NH_PROTO_MPLS",
108         3: "FIB_API_PATH_NH_PROTO_ETHERNET",
109         4: "FIB_API_PATH_NH_PROTO_BIER",
110 }
111
112 var FibPathNhProto_value = map[string]uint32{
113         "FIB_API_PATH_NH_PROTO_IP4":      0,
114         "FIB_API_PATH_NH_PROTO_IP6":      1,
115         "FIB_API_PATH_NH_PROTO_MPLS":     2,
116         "FIB_API_PATH_NH_PROTO_ETHERNET": 3,
117         "FIB_API_PATH_NH_PROTO_BIER":     4,
118 }
119
120 func (x FibPathNhProto) String() string {
121         s, ok := FibPathNhProto_name[uint32(x)]
122         if ok {
123                 return s
124         }
125         return strconv.Itoa(int(x))
126 }
127
128 // FibPathType represents VPP binary API enum 'fib_path_type'.
129 type FibPathType uint32
130
131 const (
132         FIB_API_PATH_TYPE_NORMAL        FibPathType = 0
133         FIB_API_PATH_TYPE_LOCAL         FibPathType = 1
134         FIB_API_PATH_TYPE_DROP          FibPathType = 2
135         FIB_API_PATH_TYPE_UDP_ENCAP     FibPathType = 3
136         FIB_API_PATH_TYPE_BIER_IMP      FibPathType = 4
137         FIB_API_PATH_TYPE_ICMP_UNREACH  FibPathType = 5
138         FIB_API_PATH_TYPE_ICMP_PROHIBIT FibPathType = 6
139         FIB_API_PATH_TYPE_SOURCE_LOOKUP FibPathType = 7
140         FIB_API_PATH_TYPE_DVR           FibPathType = 8
141         FIB_API_PATH_TYPE_INTERFACE_RX  FibPathType = 9
142         FIB_API_PATH_TYPE_CLASSIFY      FibPathType = 10
143 )
144
145 var FibPathType_name = map[uint32]string{
146         0:  "FIB_API_PATH_TYPE_NORMAL",
147         1:  "FIB_API_PATH_TYPE_LOCAL",
148         2:  "FIB_API_PATH_TYPE_DROP",
149         3:  "FIB_API_PATH_TYPE_UDP_ENCAP",
150         4:  "FIB_API_PATH_TYPE_BIER_IMP",
151         5:  "FIB_API_PATH_TYPE_ICMP_UNREACH",
152         6:  "FIB_API_PATH_TYPE_ICMP_PROHIBIT",
153         7:  "FIB_API_PATH_TYPE_SOURCE_LOOKUP",
154         8:  "FIB_API_PATH_TYPE_DVR",
155         9:  "FIB_API_PATH_TYPE_INTERFACE_RX",
156         10: "FIB_API_PATH_TYPE_CLASSIFY",
157 }
158
159 var FibPathType_value = map[string]uint32{
160         "FIB_API_PATH_TYPE_NORMAL":        0,
161         "FIB_API_PATH_TYPE_LOCAL":         1,
162         "FIB_API_PATH_TYPE_DROP":          2,
163         "FIB_API_PATH_TYPE_UDP_ENCAP":     3,
164         "FIB_API_PATH_TYPE_BIER_IMP":      4,
165         "FIB_API_PATH_TYPE_ICMP_UNREACH":  5,
166         "FIB_API_PATH_TYPE_ICMP_PROHIBIT": 6,
167         "FIB_API_PATH_TYPE_SOURCE_LOOKUP": 7,
168         "FIB_API_PATH_TYPE_DVR":           8,
169         "FIB_API_PATH_TYPE_INTERFACE_RX":  9,
170         "FIB_API_PATH_TYPE_CLASSIFY":      10,
171 }
172
173 func (x FibPathType) String() string {
174         s, ok := FibPathType_name[uint32(x)]
175         if ok {
176                 return s
177         }
178         return strconv.Itoa(int(x))
179 }
180
181 // IPDscp represents VPP binary API enum 'ip_dscp'.
182 type IPDscp uint8
183
184 const (
185         IP_API_DSCP_CS0  IPDscp = 0
186         IP_API_DSCP_CS1  IPDscp = 8
187         IP_API_DSCP_AF11 IPDscp = 10
188         IP_API_DSCP_AF12 IPDscp = 12
189         IP_API_DSCP_AF13 IPDscp = 14
190         IP_API_DSCP_CS2  IPDscp = 16
191         IP_API_DSCP_AF21 IPDscp = 18
192         IP_API_DSCP_AF22 IPDscp = 20
193         IP_API_DSCP_AF23 IPDscp = 22
194         IP_API_DSCP_CS3  IPDscp = 24
195         IP_API_DSCP_AF31 IPDscp = 26
196         IP_API_DSCP_AF32 IPDscp = 28
197         IP_API_DSCP_AF33 IPDscp = 30
198         IP_API_DSCP_CS4  IPDscp = 32
199         IP_API_DSCP_AF41 IPDscp = 34
200         IP_API_DSCP_AF42 IPDscp = 36
201         IP_API_DSCP_AF43 IPDscp = 38
202         IP_API_DSCP_CS5  IPDscp = 40
203         IP_API_DSCP_EF   IPDscp = 46
204         IP_API_DSCP_CS6  IPDscp = 48
205         IP_API_DSCP_CS7  IPDscp = 50
206 )
207
208 var IPDscp_name = map[uint8]string{
209         0:  "IP_API_DSCP_CS0",
210         8:  "IP_API_DSCP_CS1",
211         10: "IP_API_DSCP_AF11",
212         12: "IP_API_DSCP_AF12",
213         14: "IP_API_DSCP_AF13",
214         16: "IP_API_DSCP_CS2",
215         18: "IP_API_DSCP_AF21",
216         20: "IP_API_DSCP_AF22",
217         22: "IP_API_DSCP_AF23",
218         24: "IP_API_DSCP_CS3",
219         26: "IP_API_DSCP_AF31",
220         28: "IP_API_DSCP_AF32",
221         30: "IP_API_DSCP_AF33",
222         32: "IP_API_DSCP_CS4",
223         34: "IP_API_DSCP_AF41",
224         36: "IP_API_DSCP_AF42",
225         38: "IP_API_DSCP_AF43",
226         40: "IP_API_DSCP_CS5",
227         46: "IP_API_DSCP_EF",
228         48: "IP_API_DSCP_CS6",
229         50: "IP_API_DSCP_CS7",
230 }
231
232 var IPDscp_value = map[string]uint8{
233         "IP_API_DSCP_CS0":  0,
234         "IP_API_DSCP_CS1":  8,
235         "IP_API_DSCP_AF11": 10,
236         "IP_API_DSCP_AF12": 12,
237         "IP_API_DSCP_AF13": 14,
238         "IP_API_DSCP_CS2":  16,
239         "IP_API_DSCP_AF21": 18,
240         "IP_API_DSCP_AF22": 20,
241         "IP_API_DSCP_AF23": 22,
242         "IP_API_DSCP_CS3":  24,
243         "IP_API_DSCP_AF31": 26,
244         "IP_API_DSCP_AF32": 28,
245         "IP_API_DSCP_AF33": 30,
246         "IP_API_DSCP_CS4":  32,
247         "IP_API_DSCP_AF41": 34,
248         "IP_API_DSCP_AF42": 36,
249         "IP_API_DSCP_AF43": 38,
250         "IP_API_DSCP_CS5":  40,
251         "IP_API_DSCP_EF":   46,
252         "IP_API_DSCP_CS6":  48,
253         "IP_API_DSCP_CS7":  50,
254 }
255
256 func (x IPDscp) String() string {
257         s, ok := IPDscp_name[uint8(x)]
258         if ok {
259                 return s
260         }
261         return strconv.Itoa(int(x))
262 }
263
264 // IPEcn represents VPP binary API enum 'ip_ecn'.
265 type IPEcn uint8
266
267 const (
268         IP_API_ECN_NONE IPEcn = 0
269         IP_API_ECN_ECT0 IPEcn = 1
270         IP_API_ECN_ECT1 IPEcn = 2
271         IP_API_ECN_CE   IPEcn = 3
272 )
273
274 var IPEcn_name = map[uint8]string{
275         0: "IP_API_ECN_NONE",
276         1: "IP_API_ECN_ECT0",
277         2: "IP_API_ECN_ECT1",
278         3: "IP_API_ECN_CE",
279 }
280
281 var IPEcn_value = map[string]uint8{
282         "IP_API_ECN_NONE": 0,
283         "IP_API_ECN_ECT0": 1,
284         "IP_API_ECN_ECT1": 2,
285         "IP_API_ECN_CE":   3,
286 }
287
288 func (x IPEcn) String() string {
289         s, ok := IPEcn_name[uint8(x)]
290         if ok {
291                 return s
292         }
293         return strconv.Itoa(int(x))
294 }
295
296 // IPNeighborFlags represents VPP binary API enum 'ip_neighbor_flags'.
297 type IPNeighborFlags uint32
298
299 const (
300         IP_API_NEIGHBOR_FLAG_NONE         IPNeighborFlags = 0
301         IP_API_NEIGHBOR_FLAG_STATIC       IPNeighborFlags = 1
302         IP_API_NEIGHBOR_FLAG_NO_FIB_ENTRY IPNeighborFlags = 2
303 )
304
305 var IPNeighborFlags_name = map[uint32]string{
306         0: "IP_API_NEIGHBOR_FLAG_NONE",
307         1: "IP_API_NEIGHBOR_FLAG_STATIC",
308         2: "IP_API_NEIGHBOR_FLAG_NO_FIB_ENTRY",
309 }
310
311 var IPNeighborFlags_value = map[string]uint32{
312         "IP_API_NEIGHBOR_FLAG_NONE":         0,
313         "IP_API_NEIGHBOR_FLAG_STATIC":       1,
314         "IP_API_NEIGHBOR_FLAG_NO_FIB_ENTRY": 2,
315 }
316
317 func (x IPNeighborFlags) String() string {
318         s, ok := IPNeighborFlags_name[uint32(x)]
319         if ok {
320                 return s
321         }
322         return strconv.Itoa(int(x))
323 }
324
325 // IPProto represents VPP binary API enum 'ip_proto'.
326 type IPProto uint32
327
328 const (
329         IP_API_PROTO_HOPOPT   IPProto = 0
330         IP_API_PROTO_ICMP     IPProto = 1
331         IP_API_PROTO_IGMP     IPProto = 2
332         IP_API_PROTO_TCP      IPProto = 6
333         IP_API_PROTO_UDP      IPProto = 17
334         IP_API_PROTO_GRE      IPProto = 47
335         IP_API_PROTO_AH       IPProto = 50
336         IP_API_PROTO_ESP      IPProto = 51
337         IP_API_PROTO_EIGRP    IPProto = 88
338         IP_API_PROTO_OSPF     IPProto = 89
339         IP_API_PROTO_SCTP     IPProto = 132
340         IP_API_PROTO_RESERVED IPProto = 255
341 )
342
343 var IPProto_name = map[uint32]string{
344         0:   "IP_API_PROTO_HOPOPT",
345         1:   "IP_API_PROTO_ICMP",
346         2:   "IP_API_PROTO_IGMP",
347         6:   "IP_API_PROTO_TCP",
348         17:  "IP_API_PROTO_UDP",
349         47:  "IP_API_PROTO_GRE",
350         50:  "IP_API_PROTO_AH",
351         51:  "IP_API_PROTO_ESP",
352         88:  "IP_API_PROTO_EIGRP",
353         89:  "IP_API_PROTO_OSPF",
354         132: "IP_API_PROTO_SCTP",
355         255: "IP_API_PROTO_RESERVED",
356 }
357
358 var IPProto_value = map[string]uint32{
359         "IP_API_PROTO_HOPOPT":   0,
360         "IP_API_PROTO_ICMP":     1,
361         "IP_API_PROTO_IGMP":     2,
362         "IP_API_PROTO_TCP":      6,
363         "IP_API_PROTO_UDP":      17,
364         "IP_API_PROTO_GRE":      47,
365         "IP_API_PROTO_AH":       50,
366         "IP_API_PROTO_ESP":      51,
367         "IP_API_PROTO_EIGRP":    88,
368         "IP_API_PROTO_OSPF":     89,
369         "IP_API_PROTO_SCTP":     132,
370         "IP_API_PROTO_RESERVED": 255,
371 }
372
373 func (x IPProto) String() string {
374         s, ok := IPProto_name[uint32(x)]
375         if ok {
376                 return s
377         }
378         return strconv.Itoa(int(x))
379 }
380
381 // MfibItfFlags represents VPP binary API enum 'mfib_itf_flags'.
382 type MfibItfFlags uint32
383
384 const (
385         MFIB_API_ITF_FLAG_NONE           MfibItfFlags = 0
386         MFIB_API_ITF_FLAG_NEGATE_SIGNAL  MfibItfFlags = 1
387         MFIB_API_ITF_FLAG_ACCEPT         MfibItfFlags = 2
388         MFIB_API_ITF_FLAG_FORWARD        MfibItfFlags = 4
389         MFIB_API_ITF_FLAG_SIGNAL_PRESENT MfibItfFlags = 8
390         MFIB_API_ITF_FLAG_DONT_PRESERVE  MfibItfFlags = 16
391 )
392
393 var MfibItfFlags_name = map[uint32]string{
394         0:  "MFIB_API_ITF_FLAG_NONE",
395         1:  "MFIB_API_ITF_FLAG_NEGATE_SIGNAL",
396         2:  "MFIB_API_ITF_FLAG_ACCEPT",
397         4:  "MFIB_API_ITF_FLAG_FORWARD",
398         8:  "MFIB_API_ITF_FLAG_SIGNAL_PRESENT",
399         16: "MFIB_API_ITF_FLAG_DONT_PRESERVE",
400 }
401
402 var MfibItfFlags_value = map[string]uint32{
403         "MFIB_API_ITF_FLAG_NONE":           0,
404         "MFIB_API_ITF_FLAG_NEGATE_SIGNAL":  1,
405         "MFIB_API_ITF_FLAG_ACCEPT":         2,
406         "MFIB_API_ITF_FLAG_FORWARD":        4,
407         "MFIB_API_ITF_FLAG_SIGNAL_PRESENT": 8,
408         "MFIB_API_ITF_FLAG_DONT_PRESERVE":  16,
409 }
410
411 func (x MfibItfFlags) String() string {
412         s, ok := MfibItfFlags_name[uint32(x)]
413         if ok {
414                 return s
415         }
416         return strconv.Itoa(int(x))
417 }
418
419 // IP4Address represents VPP binary API alias 'ip4_address'.
420 type IP4Address [4]uint8
421
422 // IP6Address represents VPP binary API alias 'ip6_address'.
423 type IP6Address [16]uint8
424
425 // MacAddress represents VPP binary API alias 'mac_address'.
426 type MacAddress [6]uint8
427
428 // Address represents VPP binary API type 'address'.
429 type Address struct {
430         Af AddressFamily
431         Un AddressUnion
432 }
433
434 func (*Address) GetTypeName() string {
435         return "address"
436 }
437
438 // FibMplsLabel represents VPP binary API type 'fib_mpls_label'.
439 type FibMplsLabel struct {
440         IsUniform uint8
441         Label     uint32
442         TTL       uint8
443         Exp       uint8
444 }
445
446 func (*FibMplsLabel) GetTypeName() string {
447         return "fib_mpls_label"
448 }
449
450 // FibPath represents VPP binary API type 'fib_path'.
451 type FibPath struct {
452         SwIfIndex  uint32
453         TableID    uint32
454         RpfID      uint32
455         Weight     uint8
456         Preference uint8
457         Type       FibPathType
458         Flags      FibPathFlags
459         Proto      FibPathNhProto
460         Nh         FibPathNh
461         NLabels    uint8
462         LabelStack []FibMplsLabel `struc:"[16]FibMplsLabel"`
463 }
464
465 func (*FibPath) GetTypeName() string {
466         return "fib_path"
467 }
468
469 // FibPathNh represents VPP binary API type 'fib_path_nh'.
470 type FibPathNh struct {
471         Address            AddressUnion
472         ViaLabel           uint32
473         ObjID              uint32
474         ClassifyTableIndex uint32
475 }
476
477 func (*FibPathNh) GetTypeName() string {
478         return "fib_path_nh"
479 }
480
481 // IP4Prefix represents VPP binary API type 'ip4_prefix'.
482 type IP4Prefix struct {
483         Address IP4Address
484         Len     uint8
485 }
486
487 func (*IP4Prefix) GetTypeName() string {
488         return "ip4_prefix"
489 }
490
491 // IP6Prefix represents VPP binary API type 'ip6_prefix'.
492 type IP6Prefix struct {
493         Address IP6Address
494         Len     uint8
495 }
496
497 func (*IP6Prefix) GetTypeName() string {
498         return "ip6_prefix"
499 }
500
501 // IP6RaPrefixInfo represents VPP binary API type 'ip6_ra_prefix_info'.
502 type IP6RaPrefixInfo struct {
503         Prefix        Prefix
504         Flags         uint8
505         ValidTime     uint32
506         PreferredTime uint32
507 }
508
509 func (*IP6RaPrefixInfo) GetTypeName() string {
510         return "ip6_ra_prefix_info"
511 }
512
513 // IPMroute represents VPP binary API type 'ip_mroute'.
514 type IPMroute struct {
515         TableID    uint32
516         EntryFlags uint32
517         RpfID      uint32
518         Prefix     Mprefix
519         NPaths     uint8 `struc:"sizeof=Paths"`
520         Paths      []MfibPath
521 }
522
523 func (*IPMroute) GetTypeName() string {
524         return "ip_mroute"
525 }
526
527 // IPNeighbor represents VPP binary API type 'ip_neighbor'.
528 type IPNeighbor struct {
529         SwIfIndex  uint32
530         Flags      IPNeighborFlags
531         MacAddress MacAddress
532         IPAddress  Address
533 }
534
535 func (*IPNeighbor) GetTypeName() string {
536         return "ip_neighbor"
537 }
538
539 // IPRoute represents VPP binary API type 'ip_route'.
540 type IPRoute struct {
541         TableID    uint32
542         StatsIndex uint32
543         Prefix     Prefix
544         NPaths     uint8 `struc:"sizeof=Paths"`
545         Paths      []FibPath
546 }
547
548 func (*IPRoute) GetTypeName() string {
549         return "ip_route"
550 }
551
552 // IPTable represents VPP binary API type 'ip_table'.
553 type IPTable struct {
554         TableID uint32
555         IsIP6   uint8
556         Name    []byte `struc:"[64]byte"`
557 }
558
559 func (*IPTable) GetTypeName() string {
560         return "ip_table"
561 }
562
563 // MfibPath represents VPP binary API type 'mfib_path'.
564 type MfibPath struct {
565         ItfFlags MfibItfFlags
566         Path     FibPath
567 }
568
569 func (*MfibPath) GetTypeName() string {
570         return "mfib_path"
571 }
572
573 // Mprefix represents VPP binary API type 'mprefix'.
574 type Mprefix struct {
575         Af               AddressFamily
576         GrpAddressLength uint16
577         GrpAddress       AddressUnion
578         SrcAddress       AddressUnion
579 }
580
581 func (*Mprefix) GetTypeName() string {
582         return "mprefix"
583 }
584
585 // Prefix represents VPP binary API type 'prefix'.
586 type Prefix struct {
587         Address Address
588         Len     uint8
589 }
590
591 func (*Prefix) GetTypeName() string {
592         return "prefix"
593 }
594
595 // PrefixMatcher represents VPP binary API type 'prefix_matcher'.
596 type PrefixMatcher struct {
597         Le uint8
598         Ge uint8
599 }
600
601 func (*PrefixMatcher) GetTypeName() string {
602         return "prefix_matcher"
603 }
604
605 // ProxyArp represents VPP binary API type 'proxy_arp'.
606 type ProxyArp struct {
607         TableID uint32
608         Low     IP4Address
609         Hi      IP4Address
610 }
611
612 func (*ProxyArp) GetTypeName() string {
613         return "proxy_arp"
614 }
615
616 // PuntRedirect represents VPP binary API type 'punt_redirect'.
617 type PuntRedirect struct {
618         RxSwIfIndex uint32
619         TxSwIfIndex uint32
620         Nh          Address
621 }
622
623 func (*PuntRedirect) GetTypeName() string {
624         return "punt_redirect"
625 }
626
627 // AddressUnion represents VPP binary API union 'address_union'.
628 type AddressUnion struct {
629         XXX_UnionData [16]byte
630 }
631
632 func (*AddressUnion) GetTypeName() string {
633         return "address_union"
634 }
635
636 func AddressUnionIP4(a IP4Address) (u AddressUnion) {
637         u.SetIP4(a)
638         return
639 }
640 func (u *AddressUnion) SetIP4(a IP4Address) {
641         var b = new(bytes.Buffer)
642         if err := struc.Pack(b, &a); err != nil {
643                 return
644         }
645         copy(u.XXX_UnionData[:], b.Bytes())
646 }
647 func (u *AddressUnion) GetIP4() (a IP4Address) {
648         var b = bytes.NewReader(u.XXX_UnionData[:])
649         struc.Unpack(b, &a)
650         return
651 }
652
653 func AddressUnionIP6(a IP6Address) (u AddressUnion) {
654         u.SetIP6(a)
655         return
656 }
657 func (u *AddressUnion) SetIP6(a IP6Address) {
658         var b = new(bytes.Buffer)
659         if err := struc.Pack(b, &a); err != nil {
660                 return
661         }
662         copy(u.XXX_UnionData[:], b.Bytes())
663 }
664 func (u *AddressUnion) GetIP6() (a IP6Address) {
665         var b = bytes.NewReader(u.XXX_UnionData[:])
666         struc.Unpack(b, &a)
667         return
668 }
669
670 // IoamDisable represents VPP binary API message 'ioam_disable'.
671 type IoamDisable struct {
672         ID uint16
673 }
674
675 func (*IoamDisable) GetMessageName() string {
676         return "ioam_disable"
677 }
678 func (*IoamDisable) GetCrcString() string {
679         return "6b16a45e"
680 }
681 func (*IoamDisable) GetMessageType() api.MessageType {
682         return api.RequestMessage
683 }
684
685 // IoamDisableReply represents VPP binary API message 'ioam_disable_reply'.
686 type IoamDisableReply struct {
687         Retval int32
688 }
689
690 func (*IoamDisableReply) GetMessageName() string {
691         return "ioam_disable_reply"
692 }
693 func (*IoamDisableReply) GetCrcString() string {
694         return "e8d4e804"
695 }
696 func (*IoamDisableReply) GetMessageType() api.MessageType {
697         return api.ReplyMessage
698 }
699
700 // IoamEnable represents VPP binary API message 'ioam_enable'.
701 type IoamEnable struct {
702         ID          uint16
703         Seqno       uint8
704         Analyse     uint8
705         PotEnable   uint8
706         TraceEnable uint8
707         NodeID      uint32
708 }
709
710 func (*IoamEnable) GetMessageName() string {
711         return "ioam_enable"
712 }
713 func (*IoamEnable) GetCrcString() string {
714         return "9392e032"
715 }
716 func (*IoamEnable) GetMessageType() api.MessageType {
717         return api.RequestMessage
718 }
719
720 // IoamEnableReply represents VPP binary API message 'ioam_enable_reply'.
721 type IoamEnableReply struct {
722         Retval int32
723 }
724
725 func (*IoamEnableReply) GetMessageName() string {
726         return "ioam_enable_reply"
727 }
728 func (*IoamEnableReply) GetCrcString() string {
729         return "e8d4e804"
730 }
731 func (*IoamEnableReply) GetMessageType() api.MessageType {
732         return api.ReplyMessage
733 }
734
735 // IP4ArpEvent represents VPP binary API message 'ip4_arp_event'.
736 type IP4ArpEvent struct {
737         IP        IP4Address
738         PID       uint32
739         SwIfIndex uint32
740         Mac       MacAddress
741         MacIP     uint8
742 }
743
744 func (*IP4ArpEvent) GetMessageName() string {
745         return "ip4_arp_event"
746 }
747 func (*IP4ArpEvent) GetCrcString() string {
748         return "72cdde7c"
749 }
750 func (*IP4ArpEvent) GetMessageType() api.MessageType {
751         return api.EventMessage
752 }
753
754 // IP6NdEvent represents VPP binary API message 'ip6_nd_event'.
755 type IP6NdEvent struct {
756         PID       uint32
757         SwIfIndex uint32
758         IP        IP6Address
759         Mac       MacAddress
760         MacIP     uint8
761 }
762
763 func (*IP6NdEvent) GetMessageName() string {
764         return "ip6_nd_event"
765 }
766 func (*IP6NdEvent) GetCrcString() string {
767         return "3a23e7d4"
768 }
769 func (*IP6NdEvent) GetMessageType() api.MessageType {
770         return api.EventMessage
771 }
772
773 // IP6RaEvent represents VPP binary API message 'ip6_ra_event'.
774 type IP6RaEvent struct {
775         PID                                                 uint32
776         SwIfIndex                                           uint32
777         RouterAddr                                          IP6Address
778         CurrentHopLimit                                     uint8
779         Flags                                               uint8
780         RouterLifetimeInSec                                 uint16
781         NeighborReachableTimeInMsec                         uint32
782         TimeInMsecBetweenRetransmittedNeighborSolicitations uint32
783         NPrefixes                                           uint32 `struc:"sizeof=Prefixes"`
784         Prefixes                                            []IP6RaPrefixInfo
785 }
786
787 func (*IP6RaEvent) GetMessageName() string {
788         return "ip6_ra_event"
789 }
790 func (*IP6RaEvent) GetCrcString() string {
791         return "34c9ddac"
792 }
793 func (*IP6RaEvent) GetMessageType() api.MessageType {
794         return api.EventMessage
795 }
796
797 // IP6ndProxyAddDel represents VPP binary API message 'ip6nd_proxy_add_del'.
798 type IP6ndProxyAddDel struct {
799         SwIfIndex uint32
800         IsDel     uint8
801         IP        IP6Address
802 }
803
804 func (*IP6ndProxyAddDel) GetMessageName() string {
805         return "ip6nd_proxy_add_del"
806 }
807 func (*IP6ndProxyAddDel) GetCrcString() string {
808         return "bff10d55"
809 }
810 func (*IP6ndProxyAddDel) GetMessageType() api.MessageType {
811         return api.RequestMessage
812 }
813
814 // IP6ndProxyAddDelReply represents VPP binary API message 'ip6nd_proxy_add_del_reply'.
815 type IP6ndProxyAddDelReply struct {
816         Retval int32
817 }
818
819 func (*IP6ndProxyAddDelReply) GetMessageName() string {
820         return "ip6nd_proxy_add_del_reply"
821 }
822 func (*IP6ndProxyAddDelReply) GetCrcString() string {
823         return "e8d4e804"
824 }
825 func (*IP6ndProxyAddDelReply) GetMessageType() api.MessageType {
826         return api.ReplyMessage
827 }
828
829 // IP6ndProxyDetails represents VPP binary API message 'ip6nd_proxy_details'.
830 type IP6ndProxyDetails struct {
831         SwIfIndex uint32
832         IP        IP6Address
833 }
834
835 func (*IP6ndProxyDetails) GetMessageName() string {
836         return "ip6nd_proxy_details"
837 }
838 func (*IP6ndProxyDetails) GetCrcString() string {
839         return "bbbd7894"
840 }
841 func (*IP6ndProxyDetails) GetMessageType() api.MessageType {
842         return api.ReplyMessage
843 }
844
845 // IP6ndProxyDump represents VPP binary API message 'ip6nd_proxy_dump'.
846 type IP6ndProxyDump struct{}
847
848 func (*IP6ndProxyDump) GetMessageName() string {
849         return "ip6nd_proxy_dump"
850 }
851 func (*IP6ndProxyDump) GetCrcString() string {
852         return "51077d14"
853 }
854 func (*IP6ndProxyDump) GetMessageType() api.MessageType {
855         return api.RequestMessage
856 }
857
858 // IP6ndSendRouterSolicitation represents VPP binary API message 'ip6nd_send_router_solicitation'.
859 type IP6ndSendRouterSolicitation struct {
860         Irt       uint32
861         Mrt       uint32
862         Mrc       uint32
863         Mrd       uint32
864         SwIfIndex uint32
865         Stop      uint8
866 }
867
868 func (*IP6ndSendRouterSolicitation) GetMessageName() string {
869         return "ip6nd_send_router_solicitation"
870 }
871 func (*IP6ndSendRouterSolicitation) GetCrcString() string {
872         return "bd968917"
873 }
874 func (*IP6ndSendRouterSolicitation) GetMessageType() api.MessageType {
875         return api.RequestMessage
876 }
877
878 // IP6ndSendRouterSolicitationReply represents VPP binary API message 'ip6nd_send_router_solicitation_reply'.
879 type IP6ndSendRouterSolicitationReply struct {
880         Retval int32
881 }
882
883 func (*IP6ndSendRouterSolicitationReply) GetMessageName() string {
884         return "ip6nd_send_router_solicitation_reply"
885 }
886 func (*IP6ndSendRouterSolicitationReply) GetCrcString() string {
887         return "e8d4e804"
888 }
889 func (*IP6ndSendRouterSolicitationReply) GetMessageType() api.MessageType {
890         return api.ReplyMessage
891 }
892
893 // IPAddressDetails represents VPP binary API message 'ip_address_details'.
894 type IPAddressDetails struct {
895         SwIfIndex uint32
896         Prefix    Prefix
897 }
898
899 func (*IPAddressDetails) GetMessageName() string {
900         return "ip_address_details"
901 }
902 func (*IPAddressDetails) GetCrcString() string {
903         return "2f1dbc7d"
904 }
905 func (*IPAddressDetails) GetMessageType() api.MessageType {
906         return api.ReplyMessage
907 }
908
909 // IPAddressDump represents VPP binary API message 'ip_address_dump'.
910 type IPAddressDump struct {
911         SwIfIndex uint32
912         IsIPv6    uint8
913 }
914
915 func (*IPAddressDump) GetMessageName() string {
916         return "ip_address_dump"
917 }
918 func (*IPAddressDump) GetCrcString() string {
919         return "6b7bcd0a"
920 }
921 func (*IPAddressDump) GetMessageType() api.MessageType {
922         return api.RequestMessage
923 }
924
925 // IPContainerProxyAddDel represents VPP binary API message 'ip_container_proxy_add_del'.
926 type IPContainerProxyAddDel struct {
927         Pfx       Prefix
928         SwIfIndex uint32
929         IsAdd     uint8
930 }
931
932 func (*IPContainerProxyAddDel) GetMessageName() string {
933         return "ip_container_proxy_add_del"
934 }
935 func (*IPContainerProxyAddDel) GetCrcString() string {
936         return "5ba831f3"
937 }
938 func (*IPContainerProxyAddDel) GetMessageType() api.MessageType {
939         return api.RequestMessage
940 }
941
942 // IPContainerProxyAddDelReply represents VPP binary API message 'ip_container_proxy_add_del_reply'.
943 type IPContainerProxyAddDelReply struct {
944         Retval int32
945 }
946
947 func (*IPContainerProxyAddDelReply) GetMessageName() string {
948         return "ip_container_proxy_add_del_reply"
949 }
950 func (*IPContainerProxyAddDelReply) GetCrcString() string {
951         return "e8d4e804"
952 }
953 func (*IPContainerProxyAddDelReply) GetMessageType() api.MessageType {
954         return api.ReplyMessage
955 }
956
957 // IPContainerProxyDetails represents VPP binary API message 'ip_container_proxy_details'.
958 type IPContainerProxyDetails struct {
959         SwIfIndex uint32
960         Prefix    Prefix
961 }
962
963 func (*IPContainerProxyDetails) GetMessageName() string {
964         return "ip_container_proxy_details"
965 }
966 func (*IPContainerProxyDetails) GetCrcString() string {
967         return "2f1dbc7d"
968 }
969 func (*IPContainerProxyDetails) GetMessageType() api.MessageType {
970         return api.ReplyMessage
971 }
972
973 // IPContainerProxyDump represents VPP binary API message 'ip_container_proxy_dump'.
974 type IPContainerProxyDump struct{}
975
976 func (*IPContainerProxyDump) GetMessageName() string {
977         return "ip_container_proxy_dump"
978 }
979 func (*IPContainerProxyDump) GetCrcString() string {
980         return "51077d14"
981 }
982 func (*IPContainerProxyDump) GetMessageType() api.MessageType {
983         return api.RequestMessage
984 }
985
986 // IPDetails represents VPP binary API message 'ip_details'.
987 type IPDetails struct {
988         SwIfIndex uint32
989         IsIPv6    uint8
990 }
991
992 func (*IPDetails) GetMessageName() string {
993         return "ip_details"
994 }
995 func (*IPDetails) GetCrcString() string {
996         return "8bb37ec4"
997 }
998 func (*IPDetails) GetMessageType() api.MessageType {
999         return api.ReplyMessage
1000 }
1001
1002 // IPDump represents VPP binary API message 'ip_dump'.
1003 type IPDump struct {
1004         IsIPv6 uint8
1005 }
1006
1007 func (*IPDump) GetMessageName() string {
1008         return "ip_dump"
1009 }
1010 func (*IPDump) GetCrcString() string {
1011         return "de883da4"
1012 }
1013 func (*IPDump) GetMessageType() api.MessageType {
1014         return api.RequestMessage
1015 }
1016
1017 // IPMrouteAddDel represents VPP binary API message 'ip_mroute_add_del'.
1018 type IPMrouteAddDel struct {
1019         IsAdd       uint8
1020         IsMultipath uint8
1021         Route       IPMroute
1022 }
1023
1024 func (*IPMrouteAddDel) GetMessageName() string {
1025         return "ip_mroute_add_del"
1026 }
1027 func (*IPMrouteAddDel) GetCrcString() string {
1028         return "997baab2"
1029 }
1030 func (*IPMrouteAddDel) GetMessageType() api.MessageType {
1031         return api.RequestMessage
1032 }
1033
1034 // IPMrouteAddDelReply represents VPP binary API message 'ip_mroute_add_del_reply'.
1035 type IPMrouteAddDelReply struct {
1036         Retval     int32
1037         StatsIndex uint32
1038 }
1039
1040 func (*IPMrouteAddDelReply) GetMessageName() string {
1041         return "ip_mroute_add_del_reply"
1042 }
1043 func (*IPMrouteAddDelReply) GetCrcString() string {
1044         return "1992deab"
1045 }
1046 func (*IPMrouteAddDelReply) GetMessageType() api.MessageType {
1047         return api.ReplyMessage
1048 }
1049
1050 // IPMrouteDetails represents VPP binary API message 'ip_mroute_details'.
1051 type IPMrouteDetails struct {
1052         Route IPMroute
1053 }
1054
1055 func (*IPMrouteDetails) GetMessageName() string {
1056         return "ip_mroute_details"
1057 }
1058 func (*IPMrouteDetails) GetCrcString() string {
1059         return "39405e5a"
1060 }
1061 func (*IPMrouteDetails) GetMessageType() api.MessageType {
1062         return api.ReplyMessage
1063 }
1064
1065 // IPMrouteDump represents VPP binary API message 'ip_mroute_dump'.
1066 type IPMrouteDump struct {
1067         Table IPTable
1068 }
1069
1070 func (*IPMrouteDump) GetMessageName() string {
1071         return "ip_mroute_dump"
1072 }
1073 func (*IPMrouteDump) GetCrcString() string {
1074         return "f5ad78e8"
1075 }
1076 func (*IPMrouteDump) GetMessageType() api.MessageType {
1077         return api.RequestMessage
1078 }
1079
1080 // IPMtableDetails represents VPP binary API message 'ip_mtable_details'.
1081 type IPMtableDetails struct {
1082         Table IPTable
1083 }
1084
1085 func (*IPMtableDetails) GetMessageName() string {
1086         return "ip_mtable_details"
1087 }
1088 func (*IPMtableDetails) GetCrcString() string {
1089         return "f5ad78e8"
1090 }
1091 func (*IPMtableDetails) GetMessageType() api.MessageType {
1092         return api.RequestMessage
1093 }
1094
1095 // IPMtableDump represents VPP binary API message 'ip_mtable_dump'.
1096 type IPMtableDump struct{}
1097
1098 func (*IPMtableDump) GetMessageName() string {
1099         return "ip_mtable_dump"
1100 }
1101 func (*IPMtableDump) GetCrcString() string {
1102         return "51077d14"
1103 }
1104 func (*IPMtableDump) GetMessageType() api.MessageType {
1105         return api.RequestMessage
1106 }
1107
1108 // IPNeighborAddDel represents VPP binary API message 'ip_neighbor_add_del'.
1109 type IPNeighborAddDel struct {
1110         IsAdd    uint8
1111         Neighbor IPNeighbor
1112 }
1113
1114 func (*IPNeighborAddDel) GetMessageName() string {
1115         return "ip_neighbor_add_del"
1116 }
1117 func (*IPNeighborAddDel) GetCrcString() string {
1118         return "7a68a3c4"
1119 }
1120 func (*IPNeighborAddDel) GetMessageType() api.MessageType {
1121         return api.RequestMessage
1122 }
1123
1124 // IPNeighborAddDelReply represents VPP binary API message 'ip_neighbor_add_del_reply'.
1125 type IPNeighborAddDelReply struct {
1126         Retval     int32
1127         StatsIndex uint32
1128 }
1129
1130 func (*IPNeighborAddDelReply) GetMessageName() string {
1131         return "ip_neighbor_add_del_reply"
1132 }
1133 func (*IPNeighborAddDelReply) GetCrcString() string {
1134         return "1992deab"
1135 }
1136 func (*IPNeighborAddDelReply) GetMessageType() api.MessageType {
1137         return api.ReplyMessage
1138 }
1139
1140 // IPNeighborDetails represents VPP binary API message 'ip_neighbor_details'.
1141 type IPNeighborDetails struct {
1142         Neighbor IPNeighbor
1143 }
1144
1145 func (*IPNeighborDetails) GetMessageName() string {
1146         return "ip_neighbor_details"
1147 }
1148 func (*IPNeighborDetails) GetCrcString() string {
1149         return "4a05f212"
1150 }
1151 func (*IPNeighborDetails) GetMessageType() api.MessageType {
1152         return api.ReplyMessage
1153 }
1154
1155 // IPNeighborDump represents VPP binary API message 'ip_neighbor_dump'.
1156 type IPNeighborDump struct {
1157         SwIfIndex uint32
1158         IsIPv6    uint8
1159 }
1160
1161 func (*IPNeighborDump) GetMessageName() string {
1162         return "ip_neighbor_dump"
1163 }
1164 func (*IPNeighborDump) GetCrcString() string {
1165         return "6b7bcd0a"
1166 }
1167 func (*IPNeighborDump) GetMessageType() api.MessageType {
1168         return api.RequestMessage
1169 }
1170
1171 // IPProbeNeighbor represents VPP binary API message 'ip_probe_neighbor'.
1172 type IPProbeNeighbor struct {
1173         SwIfIndex uint32
1174         Dst       Address
1175 }
1176
1177 func (*IPProbeNeighbor) GetMessageName() string {
1178         return "ip_probe_neighbor"
1179 }
1180 func (*IPProbeNeighbor) GetCrcString() string {
1181         return "2736142d"
1182 }
1183 func (*IPProbeNeighbor) GetMessageType() api.MessageType {
1184         return api.RequestMessage
1185 }
1186
1187 // IPProbeNeighborReply represents VPP binary API message 'ip_probe_neighbor_reply'.
1188 type IPProbeNeighborReply struct {
1189         Retval int32
1190 }
1191
1192 func (*IPProbeNeighborReply) GetMessageName() string {
1193         return "ip_probe_neighbor_reply"
1194 }
1195 func (*IPProbeNeighborReply) GetCrcString() string {
1196         return "e8d4e804"
1197 }
1198 func (*IPProbeNeighborReply) GetMessageType() api.MessageType {
1199         return api.ReplyMessage
1200 }
1201
1202 // IPPuntPolice represents VPP binary API message 'ip_punt_police'.
1203 type IPPuntPolice struct {
1204         PolicerIndex uint32
1205         IsAdd        uint8
1206         IsIP6        uint8
1207 }
1208
1209 func (*IPPuntPolice) GetMessageName() string {
1210         return "ip_punt_police"
1211 }
1212 func (*IPPuntPolice) GetCrcString() string {
1213         return "38691592"
1214 }
1215 func (*IPPuntPolice) GetMessageType() api.MessageType {
1216         return api.RequestMessage
1217 }
1218
1219 // IPPuntPoliceReply represents VPP binary API message 'ip_punt_police_reply'.
1220 type IPPuntPoliceReply struct {
1221         Retval int32
1222 }
1223
1224 func (*IPPuntPoliceReply) GetMessageName() string {
1225         return "ip_punt_police_reply"
1226 }
1227 func (*IPPuntPoliceReply) GetCrcString() string {
1228         return "e8d4e804"
1229 }
1230 func (*IPPuntPoliceReply) GetMessageType() api.MessageType {
1231         return api.ReplyMessage
1232 }
1233
1234 // IPPuntRedirect represents VPP binary API message 'ip_punt_redirect'.
1235 type IPPuntRedirect struct {
1236         Punt  PuntRedirect
1237         IsAdd uint8
1238 }
1239
1240 func (*IPPuntRedirect) GetMessageName() string {
1241         return "ip_punt_redirect"
1242 }
1243 func (*IPPuntRedirect) GetCrcString() string {
1244         return "70b793c6"
1245 }
1246 func (*IPPuntRedirect) GetMessageType() api.MessageType {
1247         return api.RequestMessage
1248 }
1249
1250 // IPPuntRedirectDetails represents VPP binary API message 'ip_punt_redirect_details'.
1251 type IPPuntRedirectDetails struct {
1252         Punt PuntRedirect
1253 }
1254
1255 func (*IPPuntRedirectDetails) GetMessageName() string {
1256         return "ip_punt_redirect_details"
1257 }
1258 func (*IPPuntRedirectDetails) GetCrcString() string {
1259         return "07e504f8"
1260 }
1261 func (*IPPuntRedirectDetails) GetMessageType() api.MessageType {
1262         return api.ReplyMessage
1263 }
1264
1265 // IPPuntRedirectDump represents VPP binary API message 'ip_punt_redirect_dump'.
1266 type IPPuntRedirectDump struct {
1267         SwIfIndex uint32
1268         IsIPv6    uint8
1269 }
1270
1271 func (*IPPuntRedirectDump) GetMessageName() string {
1272         return "ip_punt_redirect_dump"
1273 }
1274 func (*IPPuntRedirectDump) GetCrcString() string {
1275         return "6b7bcd0a"
1276 }
1277 func (*IPPuntRedirectDump) GetMessageType() api.MessageType {
1278         return api.RequestMessage
1279 }
1280
1281 // IPPuntRedirectReply represents VPP binary API message 'ip_punt_redirect_reply'.
1282 type IPPuntRedirectReply struct {
1283         Retval int32
1284 }
1285
1286 func (*IPPuntRedirectReply) GetMessageName() string {
1287         return "ip_punt_redirect_reply"
1288 }
1289 func (*IPPuntRedirectReply) GetCrcString() string {
1290         return "e8d4e804"
1291 }
1292 func (*IPPuntRedirectReply) GetMessageType() api.MessageType {
1293         return api.ReplyMessage
1294 }
1295
1296 // IPReassemblyEnableDisable represents VPP binary API message 'ip_reassembly_enable_disable'.
1297 type IPReassemblyEnableDisable struct {
1298         SwIfIndex uint32
1299         EnableIP4 uint8
1300         EnableIP6 uint8
1301 }
1302
1303 func (*IPReassemblyEnableDisable) GetMessageName() string {
1304         return "ip_reassembly_enable_disable"
1305 }
1306 func (*IPReassemblyEnableDisable) GetCrcString() string {
1307         return "bb8dc5d0"
1308 }
1309 func (*IPReassemblyEnableDisable) GetMessageType() api.MessageType {
1310         return api.RequestMessage
1311 }
1312
1313 // IPReassemblyEnableDisableReply represents VPP binary API message 'ip_reassembly_enable_disable_reply'.
1314 type IPReassemblyEnableDisableReply struct {
1315         Retval int32
1316 }
1317
1318 func (*IPReassemblyEnableDisableReply) GetMessageName() string {
1319         return "ip_reassembly_enable_disable_reply"
1320 }
1321 func (*IPReassemblyEnableDisableReply) GetCrcString() string {
1322         return "e8d4e804"
1323 }
1324 func (*IPReassemblyEnableDisableReply) GetMessageType() api.MessageType {
1325         return api.ReplyMessage
1326 }
1327
1328 // IPReassemblyGet represents VPP binary API message 'ip_reassembly_get'.
1329 type IPReassemblyGet struct {
1330         IsIP6 uint8
1331 }
1332
1333 func (*IPReassemblyGet) GetMessageName() string {
1334         return "ip_reassembly_get"
1335 }
1336 func (*IPReassemblyGet) GetCrcString() string {
1337         return "6fe91190"
1338 }
1339 func (*IPReassemblyGet) GetMessageType() api.MessageType {
1340         return api.RequestMessage
1341 }
1342
1343 // IPReassemblyGetReply represents VPP binary API message 'ip_reassembly_get_reply'.
1344 type IPReassemblyGetReply struct {
1345         Retval               int32
1346         TimeoutMs            uint32
1347         MaxReassemblies      uint32
1348         MaxReassemblyLength  uint32
1349         ExpireWalkIntervalMs uint32
1350         IsIP6                uint8
1351 }
1352
1353 func (*IPReassemblyGetReply) GetMessageName() string {
1354         return "ip_reassembly_get_reply"
1355 }
1356 func (*IPReassemblyGetReply) GetCrcString() string {
1357         return "c96e518d"
1358 }
1359 func (*IPReassemblyGetReply) GetMessageType() api.MessageType {
1360         return api.ReplyMessage
1361 }
1362
1363 // IPReassemblySet represents VPP binary API message 'ip_reassembly_set'.
1364 type IPReassemblySet struct {
1365         TimeoutMs            uint32
1366         MaxReassemblies      uint32
1367         MaxReassemblyLength  uint32
1368         ExpireWalkIntervalMs uint32
1369         IsIP6                uint8
1370 }
1371
1372 func (*IPReassemblySet) GetMessageName() string {
1373         return "ip_reassembly_set"
1374 }
1375 func (*IPReassemblySet) GetCrcString() string {
1376         return "403051cd"
1377 }
1378 func (*IPReassemblySet) GetMessageType() api.MessageType {
1379         return api.RequestMessage
1380 }
1381
1382 // IPReassemblySetReply represents VPP binary API message 'ip_reassembly_set_reply'.
1383 type IPReassemblySetReply struct {
1384         Retval int32
1385 }
1386
1387 func (*IPReassemblySetReply) GetMessageName() string {
1388         return "ip_reassembly_set_reply"
1389 }
1390 func (*IPReassemblySetReply) GetCrcString() string {
1391         return "e8d4e804"
1392 }
1393 func (*IPReassemblySetReply) GetMessageType() api.MessageType {
1394         return api.ReplyMessage
1395 }
1396
1397 // IPRouteAddDel represents VPP binary API message 'ip_route_add_del'.
1398 type IPRouteAddDel struct {
1399         IsAdd       uint8
1400         IsMultipath uint8
1401         Route       IPRoute
1402 }
1403
1404 func (*IPRouteAddDel) GetMessageName() string {
1405         return "ip_route_add_del"
1406 }
1407 func (*IPRouteAddDel) GetCrcString() string {
1408         return "83e086ce"
1409 }
1410 func (*IPRouteAddDel) GetMessageType() api.MessageType {
1411         return api.RequestMessage
1412 }
1413
1414 // IPRouteAddDelReply represents VPP binary API message 'ip_route_add_del_reply'.
1415 type IPRouteAddDelReply struct {
1416         Retval     int32
1417         StatsIndex uint32
1418 }
1419
1420 func (*IPRouteAddDelReply) GetMessageName() string {
1421         return "ip_route_add_del_reply"
1422 }
1423 func (*IPRouteAddDelReply) GetCrcString() string {
1424         return "1992deab"
1425 }
1426 func (*IPRouteAddDelReply) GetMessageType() api.MessageType {
1427         return api.ReplyMessage
1428 }
1429
1430 // IPRouteDetails represents VPP binary API message 'ip_route_details'.
1431 type IPRouteDetails struct {
1432         Route IPRoute
1433 }
1434
1435 func (*IPRouteDetails) GetMessageName() string {
1436         return "ip_route_details"
1437 }
1438 func (*IPRouteDetails) GetCrcString() string {
1439         return "acdee858"
1440 }
1441 func (*IPRouteDetails) GetMessageType() api.MessageType {
1442         return api.ReplyMessage
1443 }
1444
1445 // IPRouteDump represents VPP binary API message 'ip_route_dump'.
1446 type IPRouteDump struct {
1447         Table IPTable
1448 }
1449
1450 func (*IPRouteDump) GetMessageName() string {
1451         return "ip_route_dump"
1452 }
1453 func (*IPRouteDump) GetCrcString() string {
1454         return "f5ad78e8"
1455 }
1456 func (*IPRouteDump) GetMessageType() api.MessageType {
1457         return api.RequestMessage
1458 }
1459
1460 // IPScanNeighborEnableDisable represents VPP binary API message 'ip_scan_neighbor_enable_disable'.
1461 type IPScanNeighborEnableDisable struct {
1462         Mode           uint8
1463         ScanInterval   uint8
1464         MaxProcTime    uint8
1465         MaxUpdate      uint8
1466         ScanIntDelay   uint8
1467         StaleThreshold uint8
1468 }
1469
1470 func (*IPScanNeighborEnableDisable) GetMessageName() string {
1471         return "ip_scan_neighbor_enable_disable"
1472 }
1473 func (*IPScanNeighborEnableDisable) GetCrcString() string {
1474         return "0a6bf57a"
1475 }
1476 func (*IPScanNeighborEnableDisable) GetMessageType() api.MessageType {
1477         return api.RequestMessage
1478 }
1479
1480 // IPScanNeighborEnableDisableReply represents VPP binary API message 'ip_scan_neighbor_enable_disable_reply'.
1481 type IPScanNeighborEnableDisableReply struct {
1482         Retval int32
1483 }
1484
1485 func (*IPScanNeighborEnableDisableReply) GetMessageName() string {
1486         return "ip_scan_neighbor_enable_disable_reply"
1487 }
1488 func (*IPScanNeighborEnableDisableReply) GetCrcString() string {
1489         return "e8d4e804"
1490 }
1491 func (*IPScanNeighborEnableDisableReply) GetMessageType() api.MessageType {
1492         return api.ReplyMessage
1493 }
1494
1495 // IPSourceAndPortRangeCheckAddDel represents VPP binary API message 'ip_source_and_port_range_check_add_del'.
1496 type IPSourceAndPortRangeCheckAddDel struct {
1497         IsAdd          uint8
1498         Prefix         Prefix
1499         NumberOfRanges uint8
1500         LowPorts       []uint16 `struc:"[32]uint16"`
1501         HighPorts      []uint16 `struc:"[32]uint16"`
1502         VrfID          uint32
1503 }
1504
1505 func (*IPSourceAndPortRangeCheckAddDel) GetMessageName() string {
1506         return "ip_source_and_port_range_check_add_del"
1507 }
1508 func (*IPSourceAndPortRangeCheckAddDel) GetCrcString() string {
1509         return "b50ed159"
1510 }
1511 func (*IPSourceAndPortRangeCheckAddDel) GetMessageType() api.MessageType {
1512         return api.RequestMessage
1513 }
1514
1515 // IPSourceAndPortRangeCheckAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_add_del_reply'.
1516 type IPSourceAndPortRangeCheckAddDelReply struct {
1517         Retval int32
1518 }
1519
1520 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageName() string {
1521         return "ip_source_and_port_range_check_add_del_reply"
1522 }
1523 func (*IPSourceAndPortRangeCheckAddDelReply) GetCrcString() string {
1524         return "e8d4e804"
1525 }
1526 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageType() api.MessageType {
1527         return api.ReplyMessage
1528 }
1529
1530 // IPSourceAndPortRangeCheckInterfaceAddDel represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del'.
1531 type IPSourceAndPortRangeCheckInterfaceAddDel struct {
1532         IsAdd       uint8
1533         SwIfIndex   uint32
1534         TCPInVrfID  uint32
1535         TCPOutVrfID uint32
1536         UDPInVrfID  uint32
1537         UDPOutVrfID uint32
1538 }
1539
1540 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageName() string {
1541         return "ip_source_and_port_range_check_interface_add_del"
1542 }
1543 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetCrcString() string {
1544         return "6966bc44"
1545 }
1546 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageType() api.MessageType {
1547         return api.RequestMessage
1548 }
1549
1550 // IPSourceAndPortRangeCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del_reply'.
1551 type IPSourceAndPortRangeCheckInterfaceAddDelReply struct {
1552         Retval int32
1553 }
1554
1555 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageName() string {
1556         return "ip_source_and_port_range_check_interface_add_del_reply"
1557 }
1558 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetCrcString() string {
1559         return "e8d4e804"
1560 }
1561 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageType() api.MessageType {
1562         return api.ReplyMessage
1563 }
1564
1565 // IPSourceCheckInterfaceAddDel represents VPP binary API message 'ip_source_check_interface_add_del'.
1566 type IPSourceCheckInterfaceAddDel struct {
1567         IsAdd     uint8
1568         Loose     uint8
1569         SwIfIndex uint32
1570 }
1571
1572 func (*IPSourceCheckInterfaceAddDel) GetMessageName() string {
1573         return "ip_source_check_interface_add_del"
1574 }
1575 func (*IPSourceCheckInterfaceAddDel) GetCrcString() string {
1576         return "0a60152a"
1577 }
1578 func (*IPSourceCheckInterfaceAddDel) GetMessageType() api.MessageType {
1579         return api.RequestMessage
1580 }
1581
1582 // IPSourceCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_check_interface_add_del_reply'.
1583 type IPSourceCheckInterfaceAddDelReply struct {
1584         Retval int32
1585 }
1586
1587 func (*IPSourceCheckInterfaceAddDelReply) GetMessageName() string {
1588         return "ip_source_check_interface_add_del_reply"
1589 }
1590 func (*IPSourceCheckInterfaceAddDelReply) GetCrcString() string {
1591         return "e8d4e804"
1592 }
1593 func (*IPSourceCheckInterfaceAddDelReply) GetMessageType() api.MessageType {
1594         return api.ReplyMessage
1595 }
1596
1597 // IPTableAddDel represents VPP binary API message 'ip_table_add_del'.
1598 type IPTableAddDel struct {
1599         IsAdd uint8
1600         Table IPTable
1601 }
1602
1603 func (*IPTableAddDel) GetMessageName() string {
1604         return "ip_table_add_del"
1605 }
1606 func (*IPTableAddDel) GetCrcString() string {
1607         return "e5d378f2"
1608 }
1609 func (*IPTableAddDel) GetMessageType() api.MessageType {
1610         return api.RequestMessage
1611 }
1612
1613 // IPTableAddDelReply represents VPP binary API message 'ip_table_add_del_reply'.
1614 type IPTableAddDelReply struct {
1615         Retval int32
1616 }
1617
1618 func (*IPTableAddDelReply) GetMessageName() string {
1619         return "ip_table_add_del_reply"
1620 }
1621 func (*IPTableAddDelReply) GetCrcString() string {
1622         return "e8d4e804"
1623 }
1624 func (*IPTableAddDelReply) GetMessageType() api.MessageType {
1625         return api.ReplyMessage
1626 }
1627
1628 // IPTableDetails represents VPP binary API message 'ip_table_details'.
1629 type IPTableDetails struct {
1630         Table IPTable
1631 }
1632
1633 func (*IPTableDetails) GetMessageName() string {
1634         return "ip_table_details"
1635 }
1636 func (*IPTableDetails) GetCrcString() string {
1637         return "4d251961"
1638 }
1639 func (*IPTableDetails) GetMessageType() api.MessageType {
1640         return api.ReplyMessage
1641 }
1642
1643 // IPTableDump represents VPP binary API message 'ip_table_dump'.
1644 type IPTableDump struct{}
1645
1646 func (*IPTableDump) GetMessageName() string {
1647         return "ip_table_dump"
1648 }
1649 func (*IPTableDump) GetCrcString() string {
1650         return "51077d14"
1651 }
1652 func (*IPTableDump) GetMessageType() api.MessageType {
1653         return api.RequestMessage
1654 }
1655
1656 // IPUnnumberedDetails represents VPP binary API message 'ip_unnumbered_details'.
1657 type IPUnnumberedDetails struct {
1658         SwIfIndex   uint32
1659         IPSwIfIndex uint32
1660 }
1661
1662 func (*IPUnnumberedDetails) GetMessageName() string {
1663         return "ip_unnumbered_details"
1664 }
1665 func (*IPUnnumberedDetails) GetCrcString() string {
1666         return "ae694cf4"
1667 }
1668 func (*IPUnnumberedDetails) GetMessageType() api.MessageType {
1669         return api.ReplyMessage
1670 }
1671
1672 // IPUnnumberedDump represents VPP binary API message 'ip_unnumbered_dump'.
1673 type IPUnnumberedDump struct {
1674         SwIfIndex uint32
1675 }
1676
1677 func (*IPUnnumberedDump) GetMessageName() string {
1678         return "ip_unnumbered_dump"
1679 }
1680 func (*IPUnnumberedDump) GetCrcString() string {
1681         return "529cb13f"
1682 }
1683 func (*IPUnnumberedDump) GetMessageType() api.MessageType {
1684         return api.RequestMessage
1685 }
1686
1687 // MfibSignalDetails represents VPP binary API message 'mfib_signal_details'.
1688 type MfibSignalDetails struct {
1689         SwIfIndex    uint32
1690         TableID      uint32
1691         Prefix       Mprefix
1692         IPPacketLen  uint16
1693         IPPacketData []byte `struc:"[256]byte"`
1694 }
1695
1696 func (*MfibSignalDetails) GetMessageName() string {
1697         return "mfib_signal_details"
1698 }
1699 func (*MfibSignalDetails) GetCrcString() string {
1700         return "cd461bfa"
1701 }
1702 func (*MfibSignalDetails) GetMessageType() api.MessageType {
1703         return api.ReplyMessage
1704 }
1705
1706 // MfibSignalDump represents VPP binary API message 'mfib_signal_dump'.
1707 type MfibSignalDump struct{}
1708
1709 func (*MfibSignalDump) GetMessageName() string {
1710         return "mfib_signal_dump"
1711 }
1712 func (*MfibSignalDump) GetCrcString() string {
1713         return "51077d14"
1714 }
1715 func (*MfibSignalDump) GetMessageType() api.MessageType {
1716         return api.RequestMessage
1717 }
1718
1719 // ProxyArpAddDel represents VPP binary API message 'proxy_arp_add_del'.
1720 type ProxyArpAddDel struct {
1721         IsAdd uint8
1722         Proxy ProxyArp
1723 }
1724
1725 func (*ProxyArpAddDel) GetMessageName() string {
1726         return "proxy_arp_add_del"
1727 }
1728 func (*ProxyArpAddDel) GetCrcString() string {
1729         return "93a0e853"
1730 }
1731 func (*ProxyArpAddDel) GetMessageType() api.MessageType {
1732         return api.RequestMessage
1733 }
1734
1735 // ProxyArpAddDelReply represents VPP binary API message 'proxy_arp_add_del_reply'.
1736 type ProxyArpAddDelReply struct {
1737         Retval int32
1738 }
1739
1740 func (*ProxyArpAddDelReply) GetMessageName() string {
1741         return "proxy_arp_add_del_reply"
1742 }
1743 func (*ProxyArpAddDelReply) GetCrcString() string {
1744         return "e8d4e804"
1745 }
1746 func (*ProxyArpAddDelReply) GetMessageType() api.MessageType {
1747         return api.ReplyMessage
1748 }
1749
1750 // ProxyArpDetails represents VPP binary API message 'proxy_arp_details'.
1751 type ProxyArpDetails struct {
1752         Proxy ProxyArp
1753 }
1754
1755 func (*ProxyArpDetails) GetMessageName() string {
1756         return "proxy_arp_details"
1757 }
1758 func (*ProxyArpDetails) GetCrcString() string {
1759         return "2515902a"
1760 }
1761 func (*ProxyArpDetails) GetMessageType() api.MessageType {
1762         return api.ReplyMessage
1763 }
1764
1765 // ProxyArpDump represents VPP binary API message 'proxy_arp_dump'.
1766 type ProxyArpDump struct{}
1767
1768 func (*ProxyArpDump) GetMessageName() string {
1769         return "proxy_arp_dump"
1770 }
1771 func (*ProxyArpDump) GetCrcString() string {
1772         return "51077d14"
1773 }
1774 func (*ProxyArpDump) GetMessageType() api.MessageType {
1775         return api.RequestMessage
1776 }
1777
1778 // ProxyArpIntfcDetails represents VPP binary API message 'proxy_arp_intfc_details'.
1779 type ProxyArpIntfcDetails struct {
1780         SwIfIndex uint32
1781 }
1782
1783 func (*ProxyArpIntfcDetails) GetMessageName() string {
1784         return "proxy_arp_intfc_details"
1785 }
1786 func (*ProxyArpIntfcDetails) GetCrcString() string {
1787         return "f6458e5f"
1788 }
1789 func (*ProxyArpIntfcDetails) GetMessageType() api.MessageType {
1790         return api.ReplyMessage
1791 }
1792
1793 // ProxyArpIntfcDump represents VPP binary API message 'proxy_arp_intfc_dump'.
1794 type ProxyArpIntfcDump struct{}
1795
1796 func (*ProxyArpIntfcDump) GetMessageName() string {
1797         return "proxy_arp_intfc_dump"
1798 }
1799 func (*ProxyArpIntfcDump) GetCrcString() string {
1800         return "51077d14"
1801 }
1802 func (*ProxyArpIntfcDump) GetMessageType() api.MessageType {
1803         return api.RequestMessage
1804 }
1805
1806 // ProxyArpIntfcEnableDisable represents VPP binary API message 'proxy_arp_intfc_enable_disable'.
1807 type ProxyArpIntfcEnableDisable struct {
1808         SwIfIndex     uint32
1809         EnableDisable uint8
1810 }
1811
1812 func (*ProxyArpIntfcEnableDisable) GetMessageName() string {
1813         return "proxy_arp_intfc_enable_disable"
1814 }
1815 func (*ProxyArpIntfcEnableDisable) GetCrcString() string {
1816         return "69d24598"
1817 }
1818 func (*ProxyArpIntfcEnableDisable) GetMessageType() api.MessageType {
1819         return api.RequestMessage
1820 }
1821
1822 // ProxyArpIntfcEnableDisableReply represents VPP binary API message 'proxy_arp_intfc_enable_disable_reply'.
1823 type ProxyArpIntfcEnableDisableReply struct {
1824         Retval int32
1825 }
1826
1827 func (*ProxyArpIntfcEnableDisableReply) GetMessageName() string {
1828         return "proxy_arp_intfc_enable_disable_reply"
1829 }
1830 func (*ProxyArpIntfcEnableDisableReply) GetCrcString() string {
1831         return "e8d4e804"
1832 }
1833 func (*ProxyArpIntfcEnableDisableReply) GetMessageType() api.MessageType {
1834         return api.ReplyMessage
1835 }
1836
1837 // ResetFib represents VPP binary API message 'reset_fib'.
1838 type ResetFib struct {
1839         VrfID  uint32
1840         IsIPv6 uint8
1841 }
1842
1843 func (*ResetFib) GetMessageName() string {
1844         return "reset_fib"
1845 }
1846 func (*ResetFib) GetCrcString() string {
1847         return "8553ebd9"
1848 }
1849 func (*ResetFib) GetMessageType() api.MessageType {
1850         return api.RequestMessage
1851 }
1852
1853 // ResetFibReply represents VPP binary API message 'reset_fib_reply'.
1854 type ResetFibReply struct {
1855         Retval int32
1856 }
1857
1858 func (*ResetFibReply) GetMessageName() string {
1859         return "reset_fib_reply"
1860 }
1861 func (*ResetFibReply) GetCrcString() string {
1862         return "e8d4e804"
1863 }
1864 func (*ResetFibReply) GetMessageType() api.MessageType {
1865         return api.ReplyMessage
1866 }
1867
1868 // SetArpNeighborLimit represents VPP binary API message 'set_arp_neighbor_limit'.
1869 type SetArpNeighborLimit struct {
1870         IsIPv6           uint8
1871         ArpNeighborLimit uint32
1872 }
1873
1874 func (*SetArpNeighborLimit) GetMessageName() string {
1875         return "set_arp_neighbor_limit"
1876 }
1877 func (*SetArpNeighborLimit) GetCrcString() string {
1878         return "97d01fd6"
1879 }
1880 func (*SetArpNeighborLimit) GetMessageType() api.MessageType {
1881         return api.RequestMessage
1882 }
1883
1884 // SetArpNeighborLimitReply represents VPP binary API message 'set_arp_neighbor_limit_reply'.
1885 type SetArpNeighborLimitReply struct {
1886         Retval int32
1887 }
1888
1889 func (*SetArpNeighborLimitReply) GetMessageName() string {
1890         return "set_arp_neighbor_limit_reply"
1891 }
1892 func (*SetArpNeighborLimitReply) GetCrcString() string {
1893         return "e8d4e804"
1894 }
1895 func (*SetArpNeighborLimitReply) GetMessageType() api.MessageType {
1896         return api.ReplyMessage
1897 }
1898
1899 // SetIPFlowHash represents VPP binary API message 'set_ip_flow_hash'.
1900 type SetIPFlowHash struct {
1901         VrfID     uint32
1902         IsIPv6    uint8
1903         Src       uint8
1904         Dst       uint8
1905         Sport     uint8
1906         Dport     uint8
1907         Proto     uint8
1908         Reverse   uint8
1909         Symmetric uint8
1910 }
1911
1912 func (*SetIPFlowHash) GetMessageName() string {
1913         return "set_ip_flow_hash"
1914 }
1915 func (*SetIPFlowHash) GetCrcString() string {
1916         return "a9084bfb"
1917 }
1918 func (*SetIPFlowHash) GetMessageType() api.MessageType {
1919         return api.RequestMessage
1920 }
1921
1922 // SetIPFlowHashReply represents VPP binary API message 'set_ip_flow_hash_reply'.
1923 type SetIPFlowHashReply struct {
1924         Retval int32
1925 }
1926
1927 func (*SetIPFlowHashReply) GetMessageName() string {
1928         return "set_ip_flow_hash_reply"
1929 }
1930 func (*SetIPFlowHashReply) GetCrcString() string {
1931         return "e8d4e804"
1932 }
1933 func (*SetIPFlowHashReply) GetMessageType() api.MessageType {
1934         return api.ReplyMessage
1935 }
1936
1937 // SwInterfaceIP6EnableDisable represents VPP binary API message 'sw_interface_ip6_enable_disable'.
1938 type SwInterfaceIP6EnableDisable struct {
1939         SwIfIndex uint32
1940         Enable    uint8
1941 }
1942
1943 func (*SwInterfaceIP6EnableDisable) GetMessageName() string {
1944         return "sw_interface_ip6_enable_disable"
1945 }
1946 func (*SwInterfaceIP6EnableDisable) GetCrcString() string {
1947         return "a36fadc0"
1948 }
1949 func (*SwInterfaceIP6EnableDisable) GetMessageType() api.MessageType {
1950         return api.RequestMessage
1951 }
1952
1953 // SwInterfaceIP6EnableDisableReply represents VPP binary API message 'sw_interface_ip6_enable_disable_reply'.
1954 type SwInterfaceIP6EnableDisableReply struct {
1955         Retval int32
1956 }
1957
1958 func (*SwInterfaceIP6EnableDisableReply) GetMessageName() string {
1959         return "sw_interface_ip6_enable_disable_reply"
1960 }
1961 func (*SwInterfaceIP6EnableDisableReply) GetCrcString() string {
1962         return "e8d4e804"
1963 }
1964 func (*SwInterfaceIP6EnableDisableReply) GetMessageType() api.MessageType {
1965         return api.ReplyMessage
1966 }
1967
1968 // SwInterfaceIP6SetLinkLocalAddress represents VPP binary API message 'sw_interface_ip6_set_link_local_address'.
1969 type SwInterfaceIP6SetLinkLocalAddress struct {
1970         SwIfIndex uint32
1971         Address   []byte `struc:"[16]byte"`
1972 }
1973
1974 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageName() string {
1975         return "sw_interface_ip6_set_link_local_address"
1976 }
1977 func (*SwInterfaceIP6SetLinkLocalAddress) GetCrcString() string {
1978         return "d73bf1ab"
1979 }
1980 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageType() api.MessageType {
1981         return api.RequestMessage
1982 }
1983
1984 // SwInterfaceIP6SetLinkLocalAddressReply represents VPP binary API message 'sw_interface_ip6_set_link_local_address_reply'.
1985 type SwInterfaceIP6SetLinkLocalAddressReply struct {
1986         Retval int32
1987 }
1988
1989 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageName() string {
1990         return "sw_interface_ip6_set_link_local_address_reply"
1991 }
1992 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetCrcString() string {
1993         return "e8d4e804"
1994 }
1995 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageType() api.MessageType {
1996         return api.ReplyMessage
1997 }
1998
1999 // SwInterfaceIP6ndRaConfig represents VPP binary API message 'sw_interface_ip6nd_ra_config'.
2000 type SwInterfaceIP6ndRaConfig struct {
2001         SwIfIndex       uint32
2002         Suppress        uint8
2003         Managed         uint8
2004         Other           uint8
2005         LlOption        uint8
2006         SendUnicast     uint8
2007         Cease           uint8
2008         IsNo            uint8
2009         DefaultRouter   uint8
2010         MaxInterval     uint32
2011         MinInterval     uint32
2012         Lifetime        uint32
2013         InitialCount    uint32
2014         InitialInterval uint32
2015 }
2016
2017 func (*SwInterfaceIP6ndRaConfig) GetMessageName() string {
2018         return "sw_interface_ip6nd_ra_config"
2019 }
2020 func (*SwInterfaceIP6ndRaConfig) GetCrcString() string {
2021         return "c3f02daa"
2022 }
2023 func (*SwInterfaceIP6ndRaConfig) GetMessageType() api.MessageType {
2024         return api.RequestMessage
2025 }
2026
2027 // SwInterfaceIP6ndRaConfigReply represents VPP binary API message 'sw_interface_ip6nd_ra_config_reply'.
2028 type SwInterfaceIP6ndRaConfigReply struct {
2029         Retval int32
2030 }
2031
2032 func (*SwInterfaceIP6ndRaConfigReply) GetMessageName() string {
2033         return "sw_interface_ip6nd_ra_config_reply"
2034 }
2035 func (*SwInterfaceIP6ndRaConfigReply) GetCrcString() string {
2036         return "e8d4e804"
2037 }
2038 func (*SwInterfaceIP6ndRaConfigReply) GetMessageType() api.MessageType {
2039         return api.ReplyMessage
2040 }
2041
2042 // SwInterfaceIP6ndRaPrefix represents VPP binary API message 'sw_interface_ip6nd_ra_prefix'.
2043 type SwInterfaceIP6ndRaPrefix struct {
2044         SwIfIndex    uint32
2045         Prefix       Prefix
2046         UseDefault   uint8
2047         NoAdvertise  uint8
2048         OffLink      uint8
2049         NoAutoconfig uint8
2050         NoOnlink     uint8
2051         IsNo         uint8
2052         ValLifetime  uint32
2053         PrefLifetime uint32
2054 }
2055
2056 func (*SwInterfaceIP6ndRaPrefix) GetMessageName() string {
2057         return "sw_interface_ip6nd_ra_prefix"
2058 }
2059 func (*SwInterfaceIP6ndRaPrefix) GetCrcString() string {
2060         return "0f759f82"
2061 }
2062 func (*SwInterfaceIP6ndRaPrefix) GetMessageType() api.MessageType {
2063         return api.RequestMessage
2064 }
2065
2066 // SwInterfaceIP6ndRaPrefixReply represents VPP binary API message 'sw_interface_ip6nd_ra_prefix_reply'.
2067 type SwInterfaceIP6ndRaPrefixReply struct {
2068         Retval int32
2069 }
2070
2071 func (*SwInterfaceIP6ndRaPrefixReply) GetMessageName() string {
2072         return "sw_interface_ip6nd_ra_prefix_reply"
2073 }
2074 func (*SwInterfaceIP6ndRaPrefixReply) GetCrcString() string {
2075         return "e8d4e804"
2076 }
2077 func (*SwInterfaceIP6ndRaPrefixReply) GetMessageType() api.MessageType {
2078         return api.ReplyMessage
2079 }
2080
2081 // WantIP4ArpEvents represents VPP binary API message 'want_ip4_arp_events'.
2082 type WantIP4ArpEvents struct {
2083         EnableDisable uint8
2084         PID           uint32
2085         IP            IP4Address
2086 }
2087
2088 func (*WantIP4ArpEvents) GetMessageName() string {
2089         return "want_ip4_arp_events"
2090 }
2091 func (*WantIP4ArpEvents) GetCrcString() string {
2092         return "70fd7195"
2093 }
2094 func (*WantIP4ArpEvents) GetMessageType() api.MessageType {
2095         return api.RequestMessage
2096 }
2097
2098 // WantIP4ArpEventsReply represents VPP binary API message 'want_ip4_arp_events_reply'.
2099 type WantIP4ArpEventsReply struct {
2100         Retval int32
2101 }
2102
2103 func (*WantIP4ArpEventsReply) GetMessageName() string {
2104         return "want_ip4_arp_events_reply"
2105 }
2106 func (*WantIP4ArpEventsReply) GetCrcString() string {
2107         return "e8d4e804"
2108 }
2109 func (*WantIP4ArpEventsReply) GetMessageType() api.MessageType {
2110         return api.ReplyMessage
2111 }
2112
2113 // WantIP6NdEvents represents VPP binary API message 'want_ip6_nd_events'.
2114 type WantIP6NdEvents struct {
2115         EnableDisable uint8
2116         PID           uint32
2117         IP            IP6Address
2118 }
2119
2120 func (*WantIP6NdEvents) GetMessageName() string {
2121         return "want_ip6_nd_events"
2122 }
2123 func (*WantIP6NdEvents) GetCrcString() string {
2124         return "ba330719"
2125 }
2126 func (*WantIP6NdEvents) GetMessageType() api.MessageType {
2127         return api.RequestMessage
2128 }
2129
2130 // WantIP6NdEventsReply represents VPP binary API message 'want_ip6_nd_events_reply'.
2131 type WantIP6NdEventsReply struct {
2132         Retval int32
2133 }
2134
2135 func (*WantIP6NdEventsReply) GetMessageName() string {
2136         return "want_ip6_nd_events_reply"
2137 }
2138 func (*WantIP6NdEventsReply) GetCrcString() string {
2139         return "e8d4e804"
2140 }
2141 func (*WantIP6NdEventsReply) GetMessageType() api.MessageType {
2142         return api.ReplyMessage
2143 }
2144
2145 // WantIP6RaEvents represents VPP binary API message 'want_ip6_ra_events'.
2146 type WantIP6RaEvents struct {
2147         EnableDisable uint8
2148         PID           uint32
2149 }
2150
2151 func (*WantIP6RaEvents) GetMessageName() string {
2152         return "want_ip6_ra_events"
2153 }
2154 func (*WantIP6RaEvents) GetCrcString() string {
2155         return "05b454b5"
2156 }
2157 func (*WantIP6RaEvents) GetMessageType() api.MessageType {
2158         return api.RequestMessage
2159 }
2160
2161 // WantIP6RaEventsReply represents VPP binary API message 'want_ip6_ra_events_reply'.
2162 type WantIP6RaEventsReply struct {
2163         Retval int32
2164 }
2165
2166 func (*WantIP6RaEventsReply) GetMessageName() string {
2167         return "want_ip6_ra_events_reply"
2168 }
2169 func (*WantIP6RaEventsReply) GetCrcString() string {
2170         return "e8d4e804"
2171 }
2172 func (*WantIP6RaEventsReply) GetMessageType() api.MessageType {
2173         return api.ReplyMessage
2174 }
2175
2176 func init() {
2177         api.RegisterMessage((*IoamDisable)(nil), "ip.IoamDisable")
2178         api.RegisterMessage((*IoamDisableReply)(nil), "ip.IoamDisableReply")
2179         api.RegisterMessage((*IoamEnable)(nil), "ip.IoamEnable")
2180         api.RegisterMessage((*IoamEnableReply)(nil), "ip.IoamEnableReply")
2181         api.RegisterMessage((*IP4ArpEvent)(nil), "ip.IP4ArpEvent")
2182         api.RegisterMessage((*IP6NdEvent)(nil), "ip.IP6NdEvent")
2183         api.RegisterMessage((*IP6RaEvent)(nil), "ip.IP6RaEvent")
2184         api.RegisterMessage((*IP6ndProxyAddDel)(nil), "ip.IP6ndProxyAddDel")
2185         api.RegisterMessage((*IP6ndProxyAddDelReply)(nil), "ip.IP6ndProxyAddDelReply")
2186         api.RegisterMessage((*IP6ndProxyDetails)(nil), "ip.IP6ndProxyDetails")
2187         api.RegisterMessage((*IP6ndProxyDump)(nil), "ip.IP6ndProxyDump")
2188         api.RegisterMessage((*IP6ndSendRouterSolicitation)(nil), "ip.IP6ndSendRouterSolicitation")
2189         api.RegisterMessage((*IP6ndSendRouterSolicitationReply)(nil), "ip.IP6ndSendRouterSolicitationReply")
2190         api.RegisterMessage((*IPAddressDetails)(nil), "ip.IPAddressDetails")
2191         api.RegisterMessage((*IPAddressDump)(nil), "ip.IPAddressDump")
2192         api.RegisterMessage((*IPContainerProxyAddDel)(nil), "ip.IPContainerProxyAddDel")
2193         api.RegisterMessage((*IPContainerProxyAddDelReply)(nil), "ip.IPContainerProxyAddDelReply")
2194         api.RegisterMessage((*IPContainerProxyDetails)(nil), "ip.IPContainerProxyDetails")
2195         api.RegisterMessage((*IPContainerProxyDump)(nil), "ip.IPContainerProxyDump")
2196         api.RegisterMessage((*IPDetails)(nil), "ip.IPDetails")
2197         api.RegisterMessage((*IPDump)(nil), "ip.IPDump")
2198         api.RegisterMessage((*IPMrouteAddDel)(nil), "ip.IPMrouteAddDel")
2199         api.RegisterMessage((*IPMrouteAddDelReply)(nil), "ip.IPMrouteAddDelReply")
2200         api.RegisterMessage((*IPMrouteDetails)(nil), "ip.IPMrouteDetails")
2201         api.RegisterMessage((*IPMrouteDump)(nil), "ip.IPMrouteDump")
2202         api.RegisterMessage((*IPMtableDetails)(nil), "ip.IPMtableDetails")
2203         api.RegisterMessage((*IPMtableDump)(nil), "ip.IPMtableDump")
2204         api.RegisterMessage((*IPNeighborAddDel)(nil), "ip.IPNeighborAddDel")
2205         api.RegisterMessage((*IPNeighborAddDelReply)(nil), "ip.IPNeighborAddDelReply")
2206         api.RegisterMessage((*IPNeighborDetails)(nil), "ip.IPNeighborDetails")
2207         api.RegisterMessage((*IPNeighborDump)(nil), "ip.IPNeighborDump")
2208         api.RegisterMessage((*IPProbeNeighbor)(nil), "ip.IPProbeNeighbor")
2209         api.RegisterMessage((*IPProbeNeighborReply)(nil), "ip.IPProbeNeighborReply")
2210         api.RegisterMessage((*IPPuntPolice)(nil), "ip.IPPuntPolice")
2211         api.RegisterMessage((*IPPuntPoliceReply)(nil), "ip.IPPuntPoliceReply")
2212         api.RegisterMessage((*IPPuntRedirect)(nil), "ip.IPPuntRedirect")
2213         api.RegisterMessage((*IPPuntRedirectDetails)(nil), "ip.IPPuntRedirectDetails")
2214         api.RegisterMessage((*IPPuntRedirectDump)(nil), "ip.IPPuntRedirectDump")
2215         api.RegisterMessage((*IPPuntRedirectReply)(nil), "ip.IPPuntRedirectReply")
2216         api.RegisterMessage((*IPReassemblyEnableDisable)(nil), "ip.IPReassemblyEnableDisable")
2217         api.RegisterMessage((*IPReassemblyEnableDisableReply)(nil), "ip.IPReassemblyEnableDisableReply")
2218         api.RegisterMessage((*IPReassemblyGet)(nil), "ip.IPReassemblyGet")
2219         api.RegisterMessage((*IPReassemblyGetReply)(nil), "ip.IPReassemblyGetReply")
2220         api.RegisterMessage((*IPReassemblySet)(nil), "ip.IPReassemblySet")
2221         api.RegisterMessage((*IPReassemblySetReply)(nil), "ip.IPReassemblySetReply")
2222         api.RegisterMessage((*IPRouteAddDel)(nil), "ip.IPRouteAddDel")
2223         api.RegisterMessage((*IPRouteAddDelReply)(nil), "ip.IPRouteAddDelReply")
2224         api.RegisterMessage((*IPRouteDetails)(nil), "ip.IPRouteDetails")
2225         api.RegisterMessage((*IPRouteDump)(nil), "ip.IPRouteDump")
2226         api.RegisterMessage((*IPScanNeighborEnableDisable)(nil), "ip.IPScanNeighborEnableDisable")
2227         api.RegisterMessage((*IPScanNeighborEnableDisableReply)(nil), "ip.IPScanNeighborEnableDisableReply")
2228         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDel)(nil), "ip.IPSourceAndPortRangeCheckAddDel")
2229         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckAddDelReply")
2230         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDel)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDel")
2231         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDelReply")
2232         api.RegisterMessage((*IPSourceCheckInterfaceAddDel)(nil), "ip.IPSourceCheckInterfaceAddDel")
2233         api.RegisterMessage((*IPSourceCheckInterfaceAddDelReply)(nil), "ip.IPSourceCheckInterfaceAddDelReply")
2234         api.RegisterMessage((*IPTableAddDel)(nil), "ip.IPTableAddDel")
2235         api.RegisterMessage((*IPTableAddDelReply)(nil), "ip.IPTableAddDelReply")
2236         api.RegisterMessage((*IPTableDetails)(nil), "ip.IPTableDetails")
2237         api.RegisterMessage((*IPTableDump)(nil), "ip.IPTableDump")
2238         api.RegisterMessage((*IPUnnumberedDetails)(nil), "ip.IPUnnumberedDetails")
2239         api.RegisterMessage((*IPUnnumberedDump)(nil), "ip.IPUnnumberedDump")
2240         api.RegisterMessage((*MfibSignalDetails)(nil), "ip.MfibSignalDetails")
2241         api.RegisterMessage((*MfibSignalDump)(nil), "ip.MfibSignalDump")
2242         api.RegisterMessage((*ProxyArpAddDel)(nil), "ip.ProxyArpAddDel")
2243         api.RegisterMessage((*ProxyArpAddDelReply)(nil), "ip.ProxyArpAddDelReply")
2244         api.RegisterMessage((*ProxyArpDetails)(nil), "ip.ProxyArpDetails")
2245         api.RegisterMessage((*ProxyArpDump)(nil), "ip.ProxyArpDump")
2246         api.RegisterMessage((*ProxyArpIntfcDetails)(nil), "ip.ProxyArpIntfcDetails")
2247         api.RegisterMessage((*ProxyArpIntfcDump)(nil), "ip.ProxyArpIntfcDump")
2248         api.RegisterMessage((*ProxyArpIntfcEnableDisable)(nil), "ip.ProxyArpIntfcEnableDisable")
2249         api.RegisterMessage((*ProxyArpIntfcEnableDisableReply)(nil), "ip.ProxyArpIntfcEnableDisableReply")
2250         api.RegisterMessage((*ResetFib)(nil), "ip.ResetFib")
2251         api.RegisterMessage((*ResetFibReply)(nil), "ip.ResetFibReply")
2252         api.RegisterMessage((*SetArpNeighborLimit)(nil), "ip.SetArpNeighborLimit")
2253         api.RegisterMessage((*SetArpNeighborLimitReply)(nil), "ip.SetArpNeighborLimitReply")
2254         api.RegisterMessage((*SetIPFlowHash)(nil), "ip.SetIPFlowHash")
2255         api.RegisterMessage((*SetIPFlowHashReply)(nil), "ip.SetIPFlowHashReply")
2256         api.RegisterMessage((*SwInterfaceIP6EnableDisable)(nil), "ip.SwInterfaceIP6EnableDisable")
2257         api.RegisterMessage((*SwInterfaceIP6EnableDisableReply)(nil), "ip.SwInterfaceIP6EnableDisableReply")
2258         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddress)(nil), "ip.SwInterfaceIP6SetLinkLocalAddress")
2259         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddressReply)(nil), "ip.SwInterfaceIP6SetLinkLocalAddressReply")
2260         api.RegisterMessage((*SwInterfaceIP6ndRaConfig)(nil), "ip.SwInterfaceIP6ndRaConfig")
2261         api.RegisterMessage((*SwInterfaceIP6ndRaConfigReply)(nil), "ip.SwInterfaceIP6ndRaConfigReply")
2262         api.RegisterMessage((*SwInterfaceIP6ndRaPrefix)(nil), "ip.SwInterfaceIP6ndRaPrefix")
2263         api.RegisterMessage((*SwInterfaceIP6ndRaPrefixReply)(nil), "ip.SwInterfaceIP6ndRaPrefixReply")
2264         api.RegisterMessage((*WantIP4ArpEvents)(nil), "ip.WantIP4ArpEvents")
2265         api.RegisterMessage((*WantIP4ArpEventsReply)(nil), "ip.WantIP4ArpEventsReply")
2266         api.RegisterMessage((*WantIP6NdEvents)(nil), "ip.WantIP6NdEvents")
2267         api.RegisterMessage((*WantIP6NdEventsReply)(nil), "ip.WantIP6NdEventsReply")
2268         api.RegisterMessage((*WantIP6RaEvents)(nil), "ip.WantIP6RaEvents")
2269         api.RegisterMessage((*WantIP6RaEventsReply)(nil), "ip.WantIP6RaEventsReply")
2270 }
2271
2272 // Messages returns list of all messages in this module.
2273 func AllMessages() []api.Message {
2274         return []api.Message{
2275                 (*IoamDisable)(nil),
2276                 (*IoamDisableReply)(nil),
2277                 (*IoamEnable)(nil),
2278                 (*IoamEnableReply)(nil),
2279                 (*IP4ArpEvent)(nil),
2280                 (*IP6NdEvent)(nil),
2281                 (*IP6RaEvent)(nil),
2282                 (*IP6ndProxyAddDel)(nil),
2283                 (*IP6ndProxyAddDelReply)(nil),
2284                 (*IP6ndProxyDetails)(nil),
2285                 (*IP6ndProxyDump)(nil),
2286                 (*IP6ndSendRouterSolicitation)(nil),
2287                 (*IP6ndSendRouterSolicitationReply)(nil),
2288                 (*IPAddressDetails)(nil),
2289                 (*IPAddressDump)(nil),
2290                 (*IPContainerProxyAddDel)(nil),
2291                 (*IPContainerProxyAddDelReply)(nil),
2292                 (*IPContainerProxyDetails)(nil),
2293                 (*IPContainerProxyDump)(nil),
2294                 (*IPDetails)(nil),
2295                 (*IPDump)(nil),
2296                 (*IPMrouteAddDel)(nil),
2297                 (*IPMrouteAddDelReply)(nil),
2298                 (*IPMrouteDetails)(nil),
2299                 (*IPMrouteDump)(nil),
2300                 (*IPMtableDetails)(nil),
2301                 (*IPMtableDump)(nil),
2302                 (*IPNeighborAddDel)(nil),
2303                 (*IPNeighborAddDelReply)(nil),
2304                 (*IPNeighborDetails)(nil),
2305                 (*IPNeighborDump)(nil),
2306                 (*IPProbeNeighbor)(nil),
2307                 (*IPProbeNeighborReply)(nil),
2308                 (*IPPuntPolice)(nil),
2309                 (*IPPuntPoliceReply)(nil),
2310                 (*IPPuntRedirect)(nil),
2311                 (*IPPuntRedirectDetails)(nil),
2312                 (*IPPuntRedirectDump)(nil),
2313                 (*IPPuntRedirectReply)(nil),
2314                 (*IPReassemblyEnableDisable)(nil),
2315                 (*IPReassemblyEnableDisableReply)(nil),
2316                 (*IPReassemblyGet)(nil),
2317                 (*IPReassemblyGetReply)(nil),
2318                 (*IPReassemblySet)(nil),
2319                 (*IPReassemblySetReply)(nil),
2320                 (*IPRouteAddDel)(nil),
2321                 (*IPRouteAddDelReply)(nil),
2322                 (*IPRouteDetails)(nil),
2323                 (*IPRouteDump)(nil),
2324                 (*IPScanNeighborEnableDisable)(nil),
2325                 (*IPScanNeighborEnableDisableReply)(nil),
2326                 (*IPSourceAndPortRangeCheckAddDel)(nil),
2327                 (*IPSourceAndPortRangeCheckAddDelReply)(nil),
2328                 (*IPSourceAndPortRangeCheckInterfaceAddDel)(nil),
2329                 (*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil),
2330                 (*IPSourceCheckInterfaceAddDel)(nil),
2331                 (*IPSourceCheckInterfaceAddDelReply)(nil),
2332                 (*IPTableAddDel)(nil),
2333                 (*IPTableAddDelReply)(nil),
2334                 (*IPTableDetails)(nil),
2335                 (*IPTableDump)(nil),
2336                 (*IPUnnumberedDetails)(nil),
2337                 (*IPUnnumberedDump)(nil),
2338                 (*MfibSignalDetails)(nil),
2339                 (*MfibSignalDump)(nil),
2340                 (*ProxyArpAddDel)(nil),
2341                 (*ProxyArpAddDelReply)(nil),
2342                 (*ProxyArpDetails)(nil),
2343                 (*ProxyArpDump)(nil),
2344                 (*ProxyArpIntfcDetails)(nil),
2345                 (*ProxyArpIntfcDump)(nil),
2346                 (*ProxyArpIntfcEnableDisable)(nil),
2347                 (*ProxyArpIntfcEnableDisableReply)(nil),
2348                 (*ResetFib)(nil),
2349                 (*ResetFibReply)(nil),
2350                 (*SetArpNeighborLimit)(nil),
2351                 (*SetArpNeighborLimitReply)(nil),
2352                 (*SetIPFlowHash)(nil),
2353                 (*SetIPFlowHashReply)(nil),
2354                 (*SwInterfaceIP6EnableDisable)(nil),
2355                 (*SwInterfaceIP6EnableDisableReply)(nil),
2356                 (*SwInterfaceIP6SetLinkLocalAddress)(nil),
2357                 (*SwInterfaceIP6SetLinkLocalAddressReply)(nil),
2358                 (*SwInterfaceIP6ndRaConfig)(nil),
2359                 (*SwInterfaceIP6ndRaConfigReply)(nil),
2360                 (*SwInterfaceIP6ndRaPrefix)(nil),
2361                 (*SwInterfaceIP6ndRaPrefixReply)(nil),
2362                 (*WantIP4ArpEvents)(nil),
2363                 (*WantIP4ArpEventsReply)(nil),
2364                 (*WantIP6NdEvents)(nil),
2365                 (*WantIP6NdEventsReply)(nil),
2366                 (*WantIP6RaEvents)(nil),
2367                 (*WantIP6RaEventsReply)(nil),
2368         }
2369 }
2370
2371 // RPCService represents RPC service API for ip module.
2372 type RPCService interface {
2373         DumpIP6ndProxy(ctx context.Context, in *IP6ndProxyDump) (RPCService_DumpIP6ndProxyClient, error)
2374         DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error)
2375         DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error)
2376         DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error)
2377         DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error)
2378         DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error)
2379         DumpIPNeighbor(ctx context.Context, in *IPNeighborDump) (RPCService_DumpIPNeighborClient, error)
2380         DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error)
2381         DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error)
2382         DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error)
2383         DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error)
2384         DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error)
2385         DumpProxyArp(ctx context.Context, in *ProxyArpDump) (RPCService_DumpProxyArpClient, error)
2386         DumpProxyArpIntfc(ctx context.Context, in *ProxyArpIntfcDump) (RPCService_DumpProxyArpIntfcClient, error)
2387         IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error)
2388         IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error)
2389         IP6ndProxyAddDel(ctx context.Context, in *IP6ndProxyAddDel) (*IP6ndProxyAddDelReply, error)
2390         IP6ndSendRouterSolicitation(ctx context.Context, in *IP6ndSendRouterSolicitation) (*IP6ndSendRouterSolicitationReply, error)
2391         IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error)
2392         IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
2393         IPNeighborAddDel(ctx context.Context, in *IPNeighborAddDel) (*IPNeighborAddDelReply, error)
2394         IPProbeNeighbor(ctx context.Context, in *IPProbeNeighbor) (*IPProbeNeighborReply, error)
2395         IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
2396         IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
2397         IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error)
2398         IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
2399         IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
2400         IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
2401         IPScanNeighborEnableDisable(ctx context.Context, in *IPScanNeighborEnableDisable) (*IPScanNeighborEnableDisableReply, error)
2402         IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
2403         IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
2404         IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error)
2405         IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
2406         ProxyArpAddDel(ctx context.Context, in *ProxyArpAddDel) (*ProxyArpAddDelReply, error)
2407         ProxyArpIntfcEnableDisable(ctx context.Context, in *ProxyArpIntfcEnableDisable) (*ProxyArpIntfcEnableDisableReply, error)
2408         ResetFib(ctx context.Context, in *ResetFib) (*ResetFibReply, error)
2409         SetArpNeighborLimit(ctx context.Context, in *SetArpNeighborLimit) (*SetArpNeighborLimitReply, error)
2410         SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
2411         SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
2412         SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
2413         SwInterfaceIP6ndRaConfig(ctx context.Context, in *SwInterfaceIP6ndRaConfig) (*SwInterfaceIP6ndRaConfigReply, error)
2414         SwInterfaceIP6ndRaPrefix(ctx context.Context, in *SwInterfaceIP6ndRaPrefix) (*SwInterfaceIP6ndRaPrefixReply, error)
2415         WantIP4ArpEvents(ctx context.Context, in *WantIP4ArpEvents) (*WantIP4ArpEventsReply, error)
2416         WantIP6NdEvents(ctx context.Context, in *WantIP6NdEvents) (*WantIP6NdEventsReply, error)
2417         WantIP6RaEvents(ctx context.Context, in *WantIP6RaEvents) (*WantIP6RaEventsReply, error)
2418 }
2419
2420 type serviceClient struct {
2421         ch api.Channel
2422 }
2423
2424 func NewServiceClient(ch api.Channel) RPCService {
2425         return &serviceClient{ch}
2426 }
2427
2428 func (c *serviceClient) DumpIP6ndProxy(ctx context.Context, in *IP6ndProxyDump) (RPCService_DumpIP6ndProxyClient, error) {
2429         stream := c.ch.SendMultiRequest(in)
2430         x := &serviceClient_DumpIP6ndProxyClient{stream}
2431         return x, nil
2432 }
2433
2434 type RPCService_DumpIP6ndProxyClient interface {
2435         Recv() (*IP6ndProxyDetails, error)
2436 }
2437
2438 type serviceClient_DumpIP6ndProxyClient struct {
2439         api.MultiRequestCtx
2440 }
2441
2442 func (c *serviceClient_DumpIP6ndProxyClient) Recv() (*IP6ndProxyDetails, error) {
2443         m := new(IP6ndProxyDetails)
2444         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2445         if err != nil {
2446                 return nil, err
2447         }
2448         if stop {
2449                 return nil, io.EOF
2450         }
2451         return m, nil
2452 }
2453
2454 func (c *serviceClient) DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error) {
2455         stream := c.ch.SendMultiRequest(in)
2456         x := &serviceClient_DumpIPAddressClient{stream}
2457         return x, nil
2458 }
2459
2460 type RPCService_DumpIPAddressClient interface {
2461         Recv() (*IPAddressDetails, error)
2462 }
2463
2464 type serviceClient_DumpIPAddressClient struct {
2465         api.MultiRequestCtx
2466 }
2467
2468 func (c *serviceClient_DumpIPAddressClient) Recv() (*IPAddressDetails, error) {
2469         m := new(IPAddressDetails)
2470         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2471         if err != nil {
2472                 return nil, err
2473         }
2474         if stop {
2475                 return nil, io.EOF
2476         }
2477         return m, nil
2478 }
2479
2480 func (c *serviceClient) DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error) {
2481         stream := c.ch.SendMultiRequest(in)
2482         x := &serviceClient_DumpIPContainerProxyClient{stream}
2483         return x, nil
2484 }
2485
2486 type RPCService_DumpIPContainerProxyClient interface {
2487         Recv() (*IPContainerProxyDetails, error)
2488 }
2489
2490 type serviceClient_DumpIPContainerProxyClient struct {
2491         api.MultiRequestCtx
2492 }
2493
2494 func (c *serviceClient_DumpIPContainerProxyClient) Recv() (*IPContainerProxyDetails, error) {
2495         m := new(IPContainerProxyDetails)
2496         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2497         if err != nil {
2498                 return nil, err
2499         }
2500         if stop {
2501                 return nil, io.EOF
2502         }
2503         return m, nil
2504 }
2505
2506 func (c *serviceClient) DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error) {
2507         stream := c.ch.SendMultiRequest(in)
2508         x := &serviceClient_DumpIPClient{stream}
2509         return x, nil
2510 }
2511
2512 type RPCService_DumpIPClient interface {
2513         Recv() (*IPDetails, error)
2514 }
2515
2516 type serviceClient_DumpIPClient struct {
2517         api.MultiRequestCtx
2518 }
2519
2520 func (c *serviceClient_DumpIPClient) Recv() (*IPDetails, error) {
2521         m := new(IPDetails)
2522         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2523         if err != nil {
2524                 return nil, err
2525         }
2526         if stop {
2527                 return nil, io.EOF
2528         }
2529         return m, nil
2530 }
2531
2532 func (c *serviceClient) DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error) {
2533         stream := c.ch.SendMultiRequest(in)
2534         x := &serviceClient_DumpIPMrouteClient{stream}
2535         return x, nil
2536 }
2537
2538 type RPCService_DumpIPMrouteClient interface {
2539         Recv() (*IPMrouteDetails, error)
2540 }
2541
2542 type serviceClient_DumpIPMrouteClient struct {
2543         api.MultiRequestCtx
2544 }
2545
2546 func (c *serviceClient_DumpIPMrouteClient) Recv() (*IPMrouteDetails, error) {
2547         m := new(IPMrouteDetails)
2548         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2549         if err != nil {
2550                 return nil, err
2551         }
2552         if stop {
2553                 return nil, io.EOF
2554         }
2555         return m, nil
2556 }
2557
2558 func (c *serviceClient) DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error) {
2559         stream := c.ch.SendMultiRequest(in)
2560         x := &serviceClient_DumpIPMtableClient{stream}
2561         return x, nil
2562 }
2563
2564 type RPCService_DumpIPMtableClient interface {
2565         Recv() (*IPMtableDetails, error)
2566 }
2567
2568 type serviceClient_DumpIPMtableClient struct {
2569         api.MultiRequestCtx
2570 }
2571
2572 func (c *serviceClient_DumpIPMtableClient) Recv() (*IPMtableDetails, error) {
2573         m := new(IPMtableDetails)
2574         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2575         if err != nil {
2576                 return nil, err
2577         }
2578         if stop {
2579                 return nil, io.EOF
2580         }
2581         return m, nil
2582 }
2583
2584 func (c *serviceClient) DumpIPNeighbor(ctx context.Context, in *IPNeighborDump) (RPCService_DumpIPNeighborClient, error) {
2585         stream := c.ch.SendMultiRequest(in)
2586         x := &serviceClient_DumpIPNeighborClient{stream}
2587         return x, nil
2588 }
2589
2590 type RPCService_DumpIPNeighborClient interface {
2591         Recv() (*IPNeighborDetails, error)
2592 }
2593
2594 type serviceClient_DumpIPNeighborClient struct {
2595         api.MultiRequestCtx
2596 }
2597
2598 func (c *serviceClient_DumpIPNeighborClient) Recv() (*IPNeighborDetails, error) {
2599         m := new(IPNeighborDetails)
2600         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2601         if err != nil {
2602                 return nil, err
2603         }
2604         if stop {
2605                 return nil, io.EOF
2606         }
2607         return m, nil
2608 }
2609
2610 func (c *serviceClient) DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error) {
2611         stream := c.ch.SendMultiRequest(in)
2612         x := &serviceClient_DumpIPPuntRedirectClient{stream}
2613         return x, nil
2614 }
2615
2616 type RPCService_DumpIPPuntRedirectClient interface {
2617         Recv() (*IPPuntRedirectDetails, error)
2618 }
2619
2620 type serviceClient_DumpIPPuntRedirectClient struct {
2621         api.MultiRequestCtx
2622 }
2623
2624 func (c *serviceClient_DumpIPPuntRedirectClient) Recv() (*IPPuntRedirectDetails, error) {
2625         m := new(IPPuntRedirectDetails)
2626         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2627         if err != nil {
2628                 return nil, err
2629         }
2630         if stop {
2631                 return nil, io.EOF
2632         }
2633         return m, nil
2634 }
2635
2636 func (c *serviceClient) DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error) {
2637         stream := c.ch.SendMultiRequest(in)
2638         x := &serviceClient_DumpIPRouteClient{stream}
2639         return x, nil
2640 }
2641
2642 type RPCService_DumpIPRouteClient interface {
2643         Recv() (*IPRouteDetails, error)
2644 }
2645
2646 type serviceClient_DumpIPRouteClient struct {
2647         api.MultiRequestCtx
2648 }
2649
2650 func (c *serviceClient_DumpIPRouteClient) Recv() (*IPRouteDetails, error) {
2651         m := new(IPRouteDetails)
2652         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2653         if err != nil {
2654                 return nil, err
2655         }
2656         if stop {
2657                 return nil, io.EOF
2658         }
2659         return m, nil
2660 }
2661
2662 func (c *serviceClient) DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error) {
2663         stream := c.ch.SendMultiRequest(in)
2664         x := &serviceClient_DumpIPTableClient{stream}
2665         return x, nil
2666 }
2667
2668 type RPCService_DumpIPTableClient interface {
2669         Recv() (*IPTableDetails, error)
2670 }
2671
2672 type serviceClient_DumpIPTableClient struct {
2673         api.MultiRequestCtx
2674 }
2675
2676 func (c *serviceClient_DumpIPTableClient) Recv() (*IPTableDetails, error) {
2677         m := new(IPTableDetails)
2678         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2679         if err != nil {
2680                 return nil, err
2681         }
2682         if stop {
2683                 return nil, io.EOF
2684         }
2685         return m, nil
2686 }
2687
2688 func (c *serviceClient) DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error) {
2689         stream := c.ch.SendMultiRequest(in)
2690         x := &serviceClient_DumpIPUnnumberedClient{stream}
2691         return x, nil
2692 }
2693
2694 type RPCService_DumpIPUnnumberedClient interface {
2695         Recv() (*IPUnnumberedDetails, error)
2696 }
2697
2698 type serviceClient_DumpIPUnnumberedClient struct {
2699         api.MultiRequestCtx
2700 }
2701
2702 func (c *serviceClient_DumpIPUnnumberedClient) Recv() (*IPUnnumberedDetails, error) {
2703         m := new(IPUnnumberedDetails)
2704         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2705         if err != nil {
2706                 return nil, err
2707         }
2708         if stop {
2709                 return nil, io.EOF
2710         }
2711         return m, nil
2712 }
2713
2714 func (c *serviceClient) DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error) {
2715         stream := c.ch.SendMultiRequest(in)
2716         x := &serviceClient_DumpMfibSignalClient{stream}
2717         return x, nil
2718 }
2719
2720 type RPCService_DumpMfibSignalClient interface {
2721         Recv() (*MfibSignalDetails, error)
2722 }
2723
2724 type serviceClient_DumpMfibSignalClient struct {
2725         api.MultiRequestCtx
2726 }
2727
2728 func (c *serviceClient_DumpMfibSignalClient) Recv() (*MfibSignalDetails, error) {
2729         m := new(MfibSignalDetails)
2730         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2731         if err != nil {
2732                 return nil, err
2733         }
2734         if stop {
2735                 return nil, io.EOF
2736         }
2737         return m, nil
2738 }
2739
2740 func (c *serviceClient) DumpProxyArp(ctx context.Context, in *ProxyArpDump) (RPCService_DumpProxyArpClient, error) {
2741         stream := c.ch.SendMultiRequest(in)
2742         x := &serviceClient_DumpProxyArpClient{stream}
2743         return x, nil
2744 }
2745
2746 type RPCService_DumpProxyArpClient interface {
2747         Recv() (*ProxyArpDetails, error)
2748 }
2749
2750 type serviceClient_DumpProxyArpClient struct {
2751         api.MultiRequestCtx
2752 }
2753
2754 func (c *serviceClient_DumpProxyArpClient) Recv() (*ProxyArpDetails, error) {
2755         m := new(ProxyArpDetails)
2756         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2757         if err != nil {
2758                 return nil, err
2759         }
2760         if stop {
2761                 return nil, io.EOF
2762         }
2763         return m, nil
2764 }
2765
2766 func (c *serviceClient) DumpProxyArpIntfc(ctx context.Context, in *ProxyArpIntfcDump) (RPCService_DumpProxyArpIntfcClient, error) {
2767         stream := c.ch.SendMultiRequest(in)
2768         x := &serviceClient_DumpProxyArpIntfcClient{stream}
2769         return x, nil
2770 }
2771
2772 type RPCService_DumpProxyArpIntfcClient interface {
2773         Recv() (*ProxyArpIntfcDetails, error)
2774 }
2775
2776 type serviceClient_DumpProxyArpIntfcClient struct {
2777         api.MultiRequestCtx
2778 }
2779
2780 func (c *serviceClient_DumpProxyArpIntfcClient) Recv() (*ProxyArpIntfcDetails, error) {
2781         m := new(ProxyArpIntfcDetails)
2782         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2783         if err != nil {
2784                 return nil, err
2785         }
2786         if stop {
2787                 return nil, io.EOF
2788         }
2789         return m, nil
2790 }
2791
2792 func (c *serviceClient) IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error) {
2793         out := new(IoamDisableReply)
2794         err := c.ch.SendRequest(in).ReceiveReply(out)
2795         if err != nil {
2796                 return nil, err
2797         }
2798         return out, nil
2799 }
2800
2801 func (c *serviceClient) IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error) {
2802         out := new(IoamEnableReply)
2803         err := c.ch.SendRequest(in).ReceiveReply(out)
2804         if err != nil {
2805                 return nil, err
2806         }
2807         return out, nil
2808 }
2809
2810 func (c *serviceClient) IP6ndProxyAddDel(ctx context.Context, in *IP6ndProxyAddDel) (*IP6ndProxyAddDelReply, error) {
2811         out := new(IP6ndProxyAddDelReply)
2812         err := c.ch.SendRequest(in).ReceiveReply(out)
2813         if err != nil {
2814                 return nil, err
2815         }
2816         return out, nil
2817 }
2818
2819 func (c *serviceClient) IP6ndSendRouterSolicitation(ctx context.Context, in *IP6ndSendRouterSolicitation) (*IP6ndSendRouterSolicitationReply, error) {
2820         out := new(IP6ndSendRouterSolicitationReply)
2821         err := c.ch.SendRequest(in).ReceiveReply(out)
2822         if err != nil {
2823                 return nil, err
2824         }
2825         return out, nil
2826 }
2827
2828 func (c *serviceClient) IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error) {
2829         out := new(IPContainerProxyAddDelReply)
2830         err := c.ch.SendRequest(in).ReceiveReply(out)
2831         if err != nil {
2832                 return nil, err
2833         }
2834         return out, nil
2835 }
2836
2837 func (c *serviceClient) IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error) {
2838         out := new(IPMrouteAddDelReply)
2839         err := c.ch.SendRequest(in).ReceiveReply(out)
2840         if err != nil {
2841                 return nil, err
2842         }
2843         return out, nil
2844 }
2845
2846 func (c *serviceClient) IPNeighborAddDel(ctx context.Context, in *IPNeighborAddDel) (*IPNeighborAddDelReply, error) {
2847         out := new(IPNeighborAddDelReply)
2848         err := c.ch.SendRequest(in).ReceiveReply(out)
2849         if err != nil {
2850                 return nil, err
2851         }
2852         return out, nil
2853 }
2854
2855 func (c *serviceClient) IPProbeNeighbor(ctx context.Context, in *IPProbeNeighbor) (*IPProbeNeighborReply, error) {
2856         out := new(IPProbeNeighborReply)
2857         err := c.ch.SendRequest(in).ReceiveReply(out)
2858         if err != nil {
2859                 return nil, err
2860         }
2861         return out, nil
2862 }
2863
2864 func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
2865         out := new(IPPuntPoliceReply)
2866         err := c.ch.SendRequest(in).ReceiveReply(out)
2867         if err != nil {
2868                 return nil, err
2869         }
2870         return out, nil
2871 }
2872
2873 func (c *serviceClient) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
2874         out := new(IPPuntRedirectReply)
2875         err := c.ch.SendRequest(in).ReceiveReply(out)
2876         if err != nil {
2877                 return nil, err
2878         }
2879         return out, nil
2880 }
2881
2882 func (c *serviceClient) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
2883         out := new(IPReassemblyEnableDisableReply)
2884         err := c.ch.SendRequest(in).ReceiveReply(out)
2885         if err != nil {
2886                 return nil, err
2887         }
2888         return out, nil
2889 }
2890
2891 func (c *serviceClient) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
2892         out := new(IPReassemblyGetReply)
2893         err := c.ch.SendRequest(in).ReceiveReply(out)
2894         if err != nil {
2895                 return nil, err
2896         }
2897         return out, nil
2898 }
2899
2900 func (c *serviceClient) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
2901         out := new(IPReassemblySetReply)
2902         err := c.ch.SendRequest(in).ReceiveReply(out)
2903         if err != nil {
2904                 return nil, err
2905         }
2906         return out, nil
2907 }
2908
2909 func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
2910         out := new(IPRouteAddDelReply)
2911         err := c.ch.SendRequest(in).ReceiveReply(out)
2912         if err != nil {
2913                 return nil, err
2914         }
2915         return out, nil
2916 }
2917
2918 func (c *serviceClient) IPScanNeighborEnableDisable(ctx context.Context, in *IPScanNeighborEnableDisable) (*IPScanNeighborEnableDisableReply, error) {
2919         out := new(IPScanNeighborEnableDisableReply)
2920         err := c.ch.SendRequest(in).ReceiveReply(out)
2921         if err != nil {
2922                 return nil, err
2923         }
2924         return out, nil
2925 }
2926
2927 func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
2928         out := new(IPSourceAndPortRangeCheckAddDelReply)
2929         err := c.ch.SendRequest(in).ReceiveReply(out)
2930         if err != nil {
2931                 return nil, err
2932         }
2933         return out, nil
2934 }
2935
2936 func (c *serviceClient) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
2937         out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
2938         err := c.ch.SendRequest(in).ReceiveReply(out)
2939         if err != nil {
2940                 return nil, err
2941         }
2942         return out, nil
2943 }
2944
2945 func (c *serviceClient) IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error) {
2946         out := new(IPSourceCheckInterfaceAddDelReply)
2947         err := c.ch.SendRequest(in).ReceiveReply(out)
2948         if err != nil {
2949                 return nil, err
2950         }
2951         return out, nil
2952 }
2953
2954 func (c *serviceClient) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
2955         out := new(IPTableAddDelReply)
2956         err := c.ch.SendRequest(in).ReceiveReply(out)
2957         if err != nil {
2958                 return nil, err
2959         }
2960         return out, nil
2961 }
2962
2963 func (c *serviceClient) ProxyArpAddDel(ctx context.Context, in *ProxyArpAddDel) (*ProxyArpAddDelReply, error) {
2964         out := new(ProxyArpAddDelReply)
2965         err := c.ch.SendRequest(in).ReceiveReply(out)
2966         if err != nil {
2967                 return nil, err
2968         }
2969         return out, nil
2970 }
2971
2972 func (c *serviceClient) ProxyArpIntfcEnableDisable(ctx context.Context, in *ProxyArpIntfcEnableDisable) (*ProxyArpIntfcEnableDisableReply, error) {
2973         out := new(ProxyArpIntfcEnableDisableReply)
2974         err := c.ch.SendRequest(in).ReceiveReply(out)
2975         if err != nil {
2976                 return nil, err
2977         }
2978         return out, nil
2979 }
2980
2981 func (c *serviceClient) ResetFib(ctx context.Context, in *ResetFib) (*ResetFibReply, error) {
2982         out := new(ResetFibReply)
2983         err := c.ch.SendRequest(in).ReceiveReply(out)
2984         if err != nil {
2985                 return nil, err
2986         }
2987         return out, nil
2988 }
2989
2990 func (c *serviceClient) SetArpNeighborLimit(ctx context.Context, in *SetArpNeighborLimit) (*SetArpNeighborLimitReply, error) {
2991         out := new(SetArpNeighborLimitReply)
2992         err := c.ch.SendRequest(in).ReceiveReply(out)
2993         if err != nil {
2994                 return nil, err
2995         }
2996         return out, nil
2997 }
2998
2999 func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
3000         out := new(SetIPFlowHashReply)
3001         err := c.ch.SendRequest(in).ReceiveReply(out)
3002         if err != nil {
3003                 return nil, err
3004         }
3005         return out, nil
3006 }
3007
3008 func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
3009         out := new(SwInterfaceIP6EnableDisableReply)
3010         err := c.ch.SendRequest(in).ReceiveReply(out)
3011         if err != nil {
3012                 return nil, err
3013         }
3014         return out, nil
3015 }
3016
3017 func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
3018         out := new(SwInterfaceIP6SetLinkLocalAddressReply)
3019         err := c.ch.SendRequest(in).ReceiveReply(out)
3020         if err != nil {
3021                 return nil, err
3022         }
3023         return out, nil
3024 }
3025
3026 func (c *serviceClient) SwInterfaceIP6ndRaConfig(ctx context.Context, in *SwInterfaceIP6ndRaConfig) (*SwInterfaceIP6ndRaConfigReply, error) {
3027         out := new(SwInterfaceIP6ndRaConfigReply)
3028         err := c.ch.SendRequest(in).ReceiveReply(out)
3029         if err != nil {
3030                 return nil, err
3031         }
3032         return out, nil
3033 }
3034
3035 func (c *serviceClient) SwInterfaceIP6ndRaPrefix(ctx context.Context, in *SwInterfaceIP6ndRaPrefix) (*SwInterfaceIP6ndRaPrefixReply, error) {
3036         out := new(SwInterfaceIP6ndRaPrefixReply)
3037         err := c.ch.SendRequest(in).ReceiveReply(out)
3038         if err != nil {
3039                 return nil, err
3040         }
3041         return out, nil
3042 }
3043
3044 func (c *serviceClient) WantIP4ArpEvents(ctx context.Context, in *WantIP4ArpEvents) (*WantIP4ArpEventsReply, error) {
3045         out := new(WantIP4ArpEventsReply)
3046         err := c.ch.SendRequest(in).ReceiveReply(out)
3047         if err != nil {
3048                 return nil, err
3049         }
3050         return out, nil
3051 }
3052
3053 func (c *serviceClient) WantIP6NdEvents(ctx context.Context, in *WantIP6NdEvents) (*WantIP6NdEventsReply, error) {
3054         out := new(WantIP6NdEventsReply)
3055         err := c.ch.SendRequest(in).ReceiveReply(out)
3056         if err != nil {
3057                 return nil, err
3058         }
3059         return out, nil
3060 }
3061
3062 func (c *serviceClient) WantIP6RaEvents(ctx context.Context, in *WantIP6RaEvents) (*WantIP6RaEventsReply, error) {
3063         out := new(WantIP6RaEventsReply)
3064         err := c.ch.SendRequest(in).ReceiveReply(out)
3065         if err != nil {
3066                 return nil, err
3067         }
3068         return out, nil
3069 }
3070
3071 // This is a compile-time assertion to ensure that this generated file
3072 // is compatible with the GoVPP api package it is being compiled against.
3073 // A compilation error at this line likely means your copy of the
3074 // GoVPP api package needs to be updated.
3075 const _ = api.GoVppAPIPackageIsVersion1 // please upgrade the GoVPP api package
3076
3077 // Reference imports to suppress errors if they are not otherwise used.
3078 var _ = api.RegisterMessage
3079 var _ = bytes.NewBuffer
3080 var _ = context.Background
3081 var _ = io.Copy
3082 var _ = strconv.Itoa
3083 var _ = struc.Pack