Begin development of next release 0.3.0
[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           6 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 = 0x251fc559
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 // AddressWithPrefix represents VPP binary API alias 'address_with_prefix'.
420 type AddressWithPrefix Prefix
421
422 // IP4Address represents VPP binary API alias 'ip4_address'.
423 type IP4Address [4]uint8
424
425 // IP4AddressWithPrefix represents VPP binary API alias 'ip4_address_with_prefix'.
426 type IP4AddressWithPrefix IP4Prefix
427
428 // IP6Address represents VPP binary API alias 'ip6_address'.
429 type IP6Address [16]uint8
430
431 // IP6AddressWithPrefix represents VPP binary API alias 'ip6_address_with_prefix'.
432 type IP6AddressWithPrefix IP6Prefix
433
434 // MacAddress represents VPP binary API alias 'mac_address'.
435 type MacAddress [6]uint8
436
437 // Address represents VPP binary API type 'address'.
438 type Address struct {
439         Af AddressFamily
440         Un AddressUnion
441 }
442
443 func (*Address) GetTypeName() string {
444         return "address"
445 }
446
447 // FibMplsLabel represents VPP binary API type 'fib_mpls_label'.
448 type FibMplsLabel struct {
449         IsUniform uint8
450         Label     uint32
451         TTL       uint8
452         Exp       uint8
453 }
454
455 func (*FibMplsLabel) GetTypeName() string {
456         return "fib_mpls_label"
457 }
458
459 // FibPath represents VPP binary API type 'fib_path'.
460 type FibPath struct {
461         SwIfIndex  uint32
462         TableID    uint32
463         RpfID      uint32
464         Weight     uint8
465         Preference uint8
466         Type       FibPathType
467         Flags      FibPathFlags
468         Proto      FibPathNhProto
469         Nh         FibPathNh
470         NLabels    uint8
471         LabelStack []FibMplsLabel `struc:"[16]FibMplsLabel"`
472 }
473
474 func (*FibPath) GetTypeName() string {
475         return "fib_path"
476 }
477
478 // FibPathNh represents VPP binary API type 'fib_path_nh'.
479 type FibPathNh struct {
480         Address            AddressUnion
481         ViaLabel           uint32
482         ObjID              uint32
483         ClassifyTableIndex uint32
484 }
485
486 func (*FibPathNh) GetTypeName() string {
487         return "fib_path_nh"
488 }
489
490 // IP4Prefix represents VPP binary API type 'ip4_prefix'.
491 type IP4Prefix struct {
492         Address IP4Address
493         Len     uint8
494 }
495
496 func (*IP4Prefix) GetTypeName() string {
497         return "ip4_prefix"
498 }
499
500 // IP6Prefix represents VPP binary API type 'ip6_prefix'.
501 type IP6Prefix struct {
502         Address IP6Address
503         Len     uint8
504 }
505
506 func (*IP6Prefix) GetTypeName() string {
507         return "ip6_prefix"
508 }
509
510 // IP6RaPrefixInfo represents VPP binary API type 'ip6_ra_prefix_info'.
511 type IP6RaPrefixInfo struct {
512         Prefix        Prefix
513         Flags         uint8
514         ValidTime     uint32
515         PreferredTime uint32
516 }
517
518 func (*IP6RaPrefixInfo) GetTypeName() string {
519         return "ip6_ra_prefix_info"
520 }
521
522 // IPMroute represents VPP binary API type 'ip_mroute'.
523 type IPMroute struct {
524         TableID    uint32
525         EntryFlags uint32
526         RpfID      uint32
527         Prefix     Mprefix
528         NPaths     uint8 `struc:"sizeof=Paths"`
529         Paths      []MfibPath
530 }
531
532 func (*IPMroute) GetTypeName() string {
533         return "ip_mroute"
534 }
535
536 // IPNeighbor represents VPP binary API type 'ip_neighbor'.
537 type IPNeighbor struct {
538         SwIfIndex  uint32
539         Flags      IPNeighborFlags
540         MacAddress MacAddress
541         IPAddress  Address
542 }
543
544 func (*IPNeighbor) GetTypeName() string {
545         return "ip_neighbor"
546 }
547
548 // IPRoute represents VPP binary API type 'ip_route'.
549 type IPRoute struct {
550         TableID    uint32
551         StatsIndex uint32
552         Prefix     Prefix
553         NPaths     uint8 `struc:"sizeof=Paths"`
554         Paths      []FibPath
555 }
556
557 func (*IPRoute) GetTypeName() string {
558         return "ip_route"
559 }
560
561 // IPTable represents VPP binary API type 'ip_table'.
562 type IPTable struct {
563         TableID uint32
564         IsIP6   uint8
565         Name    []byte `struc:"[64]byte"`
566 }
567
568 func (*IPTable) GetTypeName() string {
569         return "ip_table"
570 }
571
572 // MfibPath represents VPP binary API type 'mfib_path'.
573 type MfibPath struct {
574         ItfFlags MfibItfFlags
575         Path     FibPath
576 }
577
578 func (*MfibPath) GetTypeName() string {
579         return "mfib_path"
580 }
581
582 // Mprefix represents VPP binary API type 'mprefix'.
583 type Mprefix struct {
584         Af               AddressFamily
585         GrpAddressLength uint16
586         GrpAddress       AddressUnion
587         SrcAddress       AddressUnion
588 }
589
590 func (*Mprefix) GetTypeName() string {
591         return "mprefix"
592 }
593
594 // Prefix represents VPP binary API type 'prefix'.
595 type Prefix struct {
596         Address Address
597         Len     uint8
598 }
599
600 func (*Prefix) GetTypeName() string {
601         return "prefix"
602 }
603
604 // PrefixMatcher represents VPP binary API type 'prefix_matcher'.
605 type PrefixMatcher struct {
606         Le uint8
607         Ge uint8
608 }
609
610 func (*PrefixMatcher) GetTypeName() string {
611         return "prefix_matcher"
612 }
613
614 // ProxyArp represents VPP binary API type 'proxy_arp'.
615 type ProxyArp struct {
616         TableID uint32
617         Low     IP4Address
618         Hi      IP4Address
619 }
620
621 func (*ProxyArp) GetTypeName() string {
622         return "proxy_arp"
623 }
624
625 // PuntRedirect represents VPP binary API type 'punt_redirect'.
626 type PuntRedirect struct {
627         RxSwIfIndex uint32
628         TxSwIfIndex uint32
629         Nh          Address
630 }
631
632 func (*PuntRedirect) GetTypeName() string {
633         return "punt_redirect"
634 }
635
636 // AddressUnion represents VPP binary API union 'address_union'.
637 type AddressUnion struct {
638         XXX_UnionData [16]byte
639 }
640
641 func (*AddressUnion) GetTypeName() string {
642         return "address_union"
643 }
644
645 func AddressUnionIP4(a IP4Address) (u AddressUnion) {
646         u.SetIP4(a)
647         return
648 }
649 func (u *AddressUnion) SetIP4(a IP4Address) {
650         var b = new(bytes.Buffer)
651         if err := struc.Pack(b, &a); err != nil {
652                 return
653         }
654         copy(u.XXX_UnionData[:], b.Bytes())
655 }
656 func (u *AddressUnion) GetIP4() (a IP4Address) {
657         var b = bytes.NewReader(u.XXX_UnionData[:])
658         struc.Unpack(b, &a)
659         return
660 }
661
662 func AddressUnionIP6(a IP6Address) (u AddressUnion) {
663         u.SetIP6(a)
664         return
665 }
666 func (u *AddressUnion) SetIP6(a IP6Address) {
667         var b = new(bytes.Buffer)
668         if err := struc.Pack(b, &a); err != nil {
669                 return
670         }
671         copy(u.XXX_UnionData[:], b.Bytes())
672 }
673 func (u *AddressUnion) GetIP6() (a IP6Address) {
674         var b = bytes.NewReader(u.XXX_UnionData[:])
675         struc.Unpack(b, &a)
676         return
677 }
678
679 // IoamDisable represents VPP binary API message 'ioam_disable'.
680 type IoamDisable struct {
681         ID uint16
682 }
683
684 func (*IoamDisable) GetMessageName() string {
685         return "ioam_disable"
686 }
687 func (*IoamDisable) GetCrcString() string {
688         return "6b16a45e"
689 }
690 func (*IoamDisable) GetMessageType() api.MessageType {
691         return api.RequestMessage
692 }
693
694 // IoamDisableReply represents VPP binary API message 'ioam_disable_reply'.
695 type IoamDisableReply struct {
696         Retval int32
697 }
698
699 func (*IoamDisableReply) GetMessageName() string {
700         return "ioam_disable_reply"
701 }
702 func (*IoamDisableReply) GetCrcString() string {
703         return "e8d4e804"
704 }
705 func (*IoamDisableReply) GetMessageType() api.MessageType {
706         return api.ReplyMessage
707 }
708
709 // IoamEnable represents VPP binary API message 'ioam_enable'.
710 type IoamEnable struct {
711         ID          uint16
712         Seqno       uint8
713         Analyse     uint8
714         PotEnable   uint8
715         TraceEnable uint8
716         NodeID      uint32
717 }
718
719 func (*IoamEnable) GetMessageName() string {
720         return "ioam_enable"
721 }
722 func (*IoamEnable) GetCrcString() string {
723         return "9392e032"
724 }
725 func (*IoamEnable) GetMessageType() api.MessageType {
726         return api.RequestMessage
727 }
728
729 // IoamEnableReply represents VPP binary API message 'ioam_enable_reply'.
730 type IoamEnableReply struct {
731         Retval int32
732 }
733
734 func (*IoamEnableReply) GetMessageName() string {
735         return "ioam_enable_reply"
736 }
737 func (*IoamEnableReply) GetCrcString() string {
738         return "e8d4e804"
739 }
740 func (*IoamEnableReply) GetMessageType() api.MessageType {
741         return api.ReplyMessage
742 }
743
744 // IP4ArpEvent represents VPP binary API message 'ip4_arp_event'.
745 type IP4ArpEvent struct {
746         IP        IP4Address
747         PID       uint32
748         SwIfIndex uint32
749         Mac       MacAddress
750         MacIP     uint8
751 }
752
753 func (*IP4ArpEvent) GetMessageName() string {
754         return "ip4_arp_event"
755 }
756 func (*IP4ArpEvent) GetCrcString() string {
757         return "efad00cd"
758 }
759 func (*IP4ArpEvent) GetMessageType() api.MessageType {
760         return api.EventMessage
761 }
762
763 // IP6NdEvent represents VPP binary API message 'ip6_nd_event'.
764 type IP6NdEvent struct {
765         PID       uint32
766         SwIfIndex uint32
767         IP        IP6Address
768         Mac       MacAddress
769         MacIP     uint8
770 }
771
772 func (*IP6NdEvent) GetMessageName() string {
773         return "ip6_nd_event"
774 }
775 func (*IP6NdEvent) GetCrcString() string {
776         return "d676f6ca"
777 }
778 func (*IP6NdEvent) GetMessageType() api.MessageType {
779         return api.EventMessage
780 }
781
782 // IP6RaEvent represents VPP binary API message 'ip6_ra_event'.
783 type IP6RaEvent struct {
784         PID                                                 uint32
785         SwIfIndex                                           uint32
786         RouterAddr                                          IP6Address
787         CurrentHopLimit                                     uint8
788         Flags                                               uint8
789         RouterLifetimeInSec                                 uint16
790         NeighborReachableTimeInMsec                         uint32
791         TimeInMsecBetweenRetransmittedNeighborSolicitations uint32
792         NPrefixes                                           uint32 `struc:"sizeof=Prefixes"`
793         Prefixes                                            []IP6RaPrefixInfo
794 }
795
796 func (*IP6RaEvent) GetMessageName() string {
797         return "ip6_ra_event"
798 }
799 func (*IP6RaEvent) GetCrcString() string {
800         return "170493ab"
801 }
802 func (*IP6RaEvent) GetMessageType() api.MessageType {
803         return api.EventMessage
804 }
805
806 // IP6ndProxyAddDel represents VPP binary API message 'ip6nd_proxy_add_del'.
807 type IP6ndProxyAddDel struct {
808         SwIfIndex uint32
809         IsDel     uint8
810         IP        IP6Address
811 }
812
813 func (*IP6ndProxyAddDel) GetMessageName() string {
814         return "ip6nd_proxy_add_del"
815 }
816 func (*IP6ndProxyAddDel) GetCrcString() string {
817         return "b431d174"
818 }
819 func (*IP6ndProxyAddDel) GetMessageType() api.MessageType {
820         return api.RequestMessage
821 }
822
823 // IP6ndProxyAddDelReply represents VPP binary API message 'ip6nd_proxy_add_del_reply'.
824 type IP6ndProxyAddDelReply struct {
825         Retval int32
826 }
827
828 func (*IP6ndProxyAddDelReply) GetMessageName() string {
829         return "ip6nd_proxy_add_del_reply"
830 }
831 func (*IP6ndProxyAddDelReply) GetCrcString() string {
832         return "e8d4e804"
833 }
834 func (*IP6ndProxyAddDelReply) GetMessageType() api.MessageType {
835         return api.ReplyMessage
836 }
837
838 // IP6ndProxyDetails represents VPP binary API message 'ip6nd_proxy_details'.
839 type IP6ndProxyDetails struct {
840         SwIfIndex uint32
841         IP        IP6Address
842 }
843
844 func (*IP6ndProxyDetails) GetMessageName() string {
845         return "ip6nd_proxy_details"
846 }
847 func (*IP6ndProxyDetails) GetCrcString() string {
848         return "46bfb684"
849 }
850 func (*IP6ndProxyDetails) GetMessageType() api.MessageType {
851         return api.ReplyMessage
852 }
853
854 // IP6ndProxyDump represents VPP binary API message 'ip6nd_proxy_dump'.
855 type IP6ndProxyDump struct{}
856
857 func (*IP6ndProxyDump) GetMessageName() string {
858         return "ip6nd_proxy_dump"
859 }
860 func (*IP6ndProxyDump) GetCrcString() string {
861         return "51077d14"
862 }
863 func (*IP6ndProxyDump) GetMessageType() api.MessageType {
864         return api.RequestMessage
865 }
866
867 // IP6ndSendRouterSolicitation represents VPP binary API message 'ip6nd_send_router_solicitation'.
868 type IP6ndSendRouterSolicitation struct {
869         Irt       uint32
870         Mrt       uint32
871         Mrc       uint32
872         Mrd       uint32
873         SwIfIndex uint32
874         Stop      uint8
875 }
876
877 func (*IP6ndSendRouterSolicitation) GetMessageName() string {
878         return "ip6nd_send_router_solicitation"
879 }
880 func (*IP6ndSendRouterSolicitation) GetCrcString() string {
881         return "bd968917"
882 }
883 func (*IP6ndSendRouterSolicitation) GetMessageType() api.MessageType {
884         return api.RequestMessage
885 }
886
887 // IP6ndSendRouterSolicitationReply represents VPP binary API message 'ip6nd_send_router_solicitation_reply'.
888 type IP6ndSendRouterSolicitationReply struct {
889         Retval int32
890 }
891
892 func (*IP6ndSendRouterSolicitationReply) GetMessageName() string {
893         return "ip6nd_send_router_solicitation_reply"
894 }
895 func (*IP6ndSendRouterSolicitationReply) GetCrcString() string {
896         return "e8d4e804"
897 }
898 func (*IP6ndSendRouterSolicitationReply) GetMessageType() api.MessageType {
899         return api.ReplyMessage
900 }
901
902 // IPAddressDetails represents VPP binary API message 'ip_address_details'.
903 type IPAddressDetails struct {
904         SwIfIndex uint32
905         Prefix    AddressWithPrefix
906 }
907
908 func (*IPAddressDetails) GetMessageName() string {
909         return "ip_address_details"
910 }
911 func (*IPAddressDetails) GetCrcString() string {
912         return "7002eee7"
913 }
914 func (*IPAddressDetails) GetMessageType() api.MessageType {
915         return api.ReplyMessage
916 }
917
918 // IPAddressDump represents VPP binary API message 'ip_address_dump'.
919 type IPAddressDump struct {
920         SwIfIndex uint32
921         IsIPv6    uint8
922 }
923
924 func (*IPAddressDump) GetMessageName() string {
925         return "ip_address_dump"
926 }
927 func (*IPAddressDump) GetCrcString() string {
928         return "6b7bcd0a"
929 }
930 func (*IPAddressDump) GetMessageType() api.MessageType {
931         return api.RequestMessage
932 }
933
934 // IPContainerProxyAddDel represents VPP binary API message 'ip_container_proxy_add_del'.
935 type IPContainerProxyAddDel struct {
936         Pfx       Prefix
937         SwIfIndex uint32
938         IsAdd     uint8
939 }
940
941 func (*IPContainerProxyAddDel) GetMessageName() string {
942         return "ip_container_proxy_add_del"
943 }
944 func (*IPContainerProxyAddDel) GetCrcString() string {
945         return "630352c5"
946 }
947 func (*IPContainerProxyAddDel) GetMessageType() api.MessageType {
948         return api.RequestMessage
949 }
950
951 // IPContainerProxyAddDelReply represents VPP binary API message 'ip_container_proxy_add_del_reply'.
952 type IPContainerProxyAddDelReply struct {
953         Retval int32
954 }
955
956 func (*IPContainerProxyAddDelReply) GetMessageName() string {
957         return "ip_container_proxy_add_del_reply"
958 }
959 func (*IPContainerProxyAddDelReply) GetCrcString() string {
960         return "e8d4e804"
961 }
962 func (*IPContainerProxyAddDelReply) GetMessageType() api.MessageType {
963         return api.ReplyMessage
964 }
965
966 // IPContainerProxyDetails represents VPP binary API message 'ip_container_proxy_details'.
967 type IPContainerProxyDetails struct {
968         SwIfIndex uint32
969         Prefix    Prefix
970 }
971
972 func (*IPContainerProxyDetails) GetMessageName() string {
973         return "ip_container_proxy_details"
974 }
975 func (*IPContainerProxyDetails) GetCrcString() string {
976         return "550a6c28"
977 }
978 func (*IPContainerProxyDetails) GetMessageType() api.MessageType {
979         return api.ReplyMessage
980 }
981
982 // IPContainerProxyDump represents VPP binary API message 'ip_container_proxy_dump'.
983 type IPContainerProxyDump struct{}
984
985 func (*IPContainerProxyDump) GetMessageName() string {
986         return "ip_container_proxy_dump"
987 }
988 func (*IPContainerProxyDump) GetCrcString() string {
989         return "51077d14"
990 }
991 func (*IPContainerProxyDump) GetMessageType() api.MessageType {
992         return api.RequestMessage
993 }
994
995 // IPDetails represents VPP binary API message 'ip_details'.
996 type IPDetails struct {
997         SwIfIndex uint32
998         IsIPv6    uint8
999 }
1000
1001 func (*IPDetails) GetMessageName() string {
1002         return "ip_details"
1003 }
1004 func (*IPDetails) GetCrcString() string {
1005         return "8bb37ec4"
1006 }
1007 func (*IPDetails) GetMessageType() api.MessageType {
1008         return api.ReplyMessage
1009 }
1010
1011 // IPDump represents VPP binary API message 'ip_dump'.
1012 type IPDump struct {
1013         IsIPv6 uint8
1014 }
1015
1016 func (*IPDump) GetMessageName() string {
1017         return "ip_dump"
1018 }
1019 func (*IPDump) GetCrcString() string {
1020         return "de883da4"
1021 }
1022 func (*IPDump) GetMessageType() api.MessageType {
1023         return api.RequestMessage
1024 }
1025
1026 // IPMrouteAddDel represents VPP binary API message 'ip_mroute_add_del'.
1027 type IPMrouteAddDel struct {
1028         IsAdd       uint8
1029         IsMultipath uint8
1030         Route       IPMroute
1031 }
1032
1033 func (*IPMrouteAddDel) GetMessageName() string {
1034         return "ip_mroute_add_del"
1035 }
1036 func (*IPMrouteAddDel) GetCrcString() string {
1037         return "edbca49e"
1038 }
1039 func (*IPMrouteAddDel) GetMessageType() api.MessageType {
1040         return api.RequestMessage
1041 }
1042
1043 // IPMrouteAddDelReply represents VPP binary API message 'ip_mroute_add_del_reply'.
1044 type IPMrouteAddDelReply struct {
1045         Retval     int32
1046         StatsIndex uint32
1047 }
1048
1049 func (*IPMrouteAddDelReply) GetMessageName() string {
1050         return "ip_mroute_add_del_reply"
1051 }
1052 func (*IPMrouteAddDelReply) GetCrcString() string {
1053         return "1992deab"
1054 }
1055 func (*IPMrouteAddDelReply) GetMessageType() api.MessageType {
1056         return api.ReplyMessage
1057 }
1058
1059 // IPMrouteDetails represents VPP binary API message 'ip_mroute_details'.
1060 type IPMrouteDetails struct {
1061         Route IPMroute
1062 }
1063
1064 func (*IPMrouteDetails) GetMessageName() string {
1065         return "ip_mroute_details"
1066 }
1067 func (*IPMrouteDetails) GetCrcString() string {
1068         return "c1cb4b44"
1069 }
1070 func (*IPMrouteDetails) GetMessageType() api.MessageType {
1071         return api.ReplyMessage
1072 }
1073
1074 // IPMrouteDump represents VPP binary API message 'ip_mroute_dump'.
1075 type IPMrouteDump struct {
1076         Table IPTable
1077 }
1078
1079 func (*IPMrouteDump) GetMessageName() string {
1080         return "ip_mroute_dump"
1081 }
1082 func (*IPMrouteDump) GetCrcString() string {
1083         return "f5ad78e8"
1084 }
1085 func (*IPMrouteDump) GetMessageType() api.MessageType {
1086         return api.RequestMessage
1087 }
1088
1089 // IPMtableDetails represents VPP binary API message 'ip_mtable_details'.
1090 type IPMtableDetails struct {
1091         Table IPTable
1092 }
1093
1094 func (*IPMtableDetails) GetMessageName() string {
1095         return "ip_mtable_details"
1096 }
1097 func (*IPMtableDetails) GetCrcString() string {
1098         return "f5ad78e8"
1099 }
1100 func (*IPMtableDetails) GetMessageType() api.MessageType {
1101         return api.RequestMessage
1102 }
1103
1104 // IPMtableDump represents VPP binary API message 'ip_mtable_dump'.
1105 type IPMtableDump struct{}
1106
1107 func (*IPMtableDump) GetMessageName() string {
1108         return "ip_mtable_dump"
1109 }
1110 func (*IPMtableDump) GetCrcString() string {
1111         return "51077d14"
1112 }
1113 func (*IPMtableDump) GetMessageType() api.MessageType {
1114         return api.RequestMessage
1115 }
1116
1117 // IPNeighborAddDel represents VPP binary API message 'ip_neighbor_add_del'.
1118 type IPNeighborAddDel struct {
1119         IsAdd    uint8
1120         Neighbor IPNeighbor
1121 }
1122
1123 func (*IPNeighborAddDel) GetMessageName() string {
1124         return "ip_neighbor_add_del"
1125 }
1126 func (*IPNeighborAddDel) GetCrcString() string {
1127         return "029dad44"
1128 }
1129 func (*IPNeighborAddDel) GetMessageType() api.MessageType {
1130         return api.RequestMessage
1131 }
1132
1133 // IPNeighborAddDelReply represents VPP binary API message 'ip_neighbor_add_del_reply'.
1134 type IPNeighborAddDelReply struct {
1135         Retval     int32
1136         StatsIndex uint32
1137 }
1138
1139 func (*IPNeighborAddDelReply) GetMessageName() string {
1140         return "ip_neighbor_add_del_reply"
1141 }
1142 func (*IPNeighborAddDelReply) GetCrcString() string {
1143         return "1992deab"
1144 }
1145 func (*IPNeighborAddDelReply) GetMessageType() api.MessageType {
1146         return api.ReplyMessage
1147 }
1148
1149 // IPNeighborDetails represents VPP binary API message 'ip_neighbor_details'.
1150 type IPNeighborDetails struct {
1151         Neighbor IPNeighbor
1152 }
1153
1154 func (*IPNeighborDetails) GetMessageName() string {
1155         return "ip_neighbor_details"
1156 }
1157 func (*IPNeighborDetails) GetCrcString() string {
1158         return "c1a190ed"
1159 }
1160 func (*IPNeighborDetails) GetMessageType() api.MessageType {
1161         return api.ReplyMessage
1162 }
1163
1164 // IPNeighborDump represents VPP binary API message 'ip_neighbor_dump'.
1165 type IPNeighborDump struct {
1166         SwIfIndex uint32
1167         IsIPv6    uint8
1168 }
1169
1170 func (*IPNeighborDump) GetMessageName() string {
1171         return "ip_neighbor_dump"
1172 }
1173 func (*IPNeighborDump) GetCrcString() string {
1174         return "6b7bcd0a"
1175 }
1176 func (*IPNeighborDump) GetMessageType() api.MessageType {
1177         return api.RequestMessage
1178 }
1179
1180 // IPProbeNeighbor represents VPP binary API message 'ip_probe_neighbor'.
1181 type IPProbeNeighbor struct {
1182         SwIfIndex uint32
1183         Dst       Address
1184 }
1185
1186 func (*IPProbeNeighbor) GetMessageName() string {
1187         return "ip_probe_neighbor"
1188 }
1189 func (*IPProbeNeighbor) GetCrcString() string {
1190         return "37bc128d"
1191 }
1192 func (*IPProbeNeighbor) GetMessageType() api.MessageType {
1193         return api.RequestMessage
1194 }
1195
1196 // IPProbeNeighborReply represents VPP binary API message 'ip_probe_neighbor_reply'.
1197 type IPProbeNeighborReply struct {
1198         Retval int32
1199 }
1200
1201 func (*IPProbeNeighborReply) GetMessageName() string {
1202         return "ip_probe_neighbor_reply"
1203 }
1204 func (*IPProbeNeighborReply) GetCrcString() string {
1205         return "e8d4e804"
1206 }
1207 func (*IPProbeNeighborReply) GetMessageType() api.MessageType {
1208         return api.ReplyMessage
1209 }
1210
1211 // IPPuntPolice represents VPP binary API message 'ip_punt_police'.
1212 type IPPuntPolice struct {
1213         PolicerIndex uint32
1214         IsAdd        uint8
1215         IsIP6        uint8
1216 }
1217
1218 func (*IPPuntPolice) GetMessageName() string {
1219         return "ip_punt_police"
1220 }
1221 func (*IPPuntPolice) GetCrcString() string {
1222         return "38691592"
1223 }
1224 func (*IPPuntPolice) GetMessageType() api.MessageType {
1225         return api.RequestMessage
1226 }
1227
1228 // IPPuntPoliceReply represents VPP binary API message 'ip_punt_police_reply'.
1229 type IPPuntPoliceReply struct {
1230         Retval int32
1231 }
1232
1233 func (*IPPuntPoliceReply) GetMessageName() string {
1234         return "ip_punt_police_reply"
1235 }
1236 func (*IPPuntPoliceReply) GetCrcString() string {
1237         return "e8d4e804"
1238 }
1239 func (*IPPuntPoliceReply) GetMessageType() api.MessageType {
1240         return api.ReplyMessage
1241 }
1242
1243 // IPPuntRedirect represents VPP binary API message 'ip_punt_redirect'.
1244 type IPPuntRedirect struct {
1245         Punt  PuntRedirect
1246         IsAdd uint8
1247 }
1248
1249 func (*IPPuntRedirect) GetMessageName() string {
1250         return "ip_punt_redirect"
1251 }
1252 func (*IPPuntRedirect) GetCrcString() string {
1253         return "f9ea79a8"
1254 }
1255 func (*IPPuntRedirect) GetMessageType() api.MessageType {
1256         return api.RequestMessage
1257 }
1258
1259 // IPPuntRedirectDetails represents VPP binary API message 'ip_punt_redirect_details'.
1260 type IPPuntRedirectDetails struct {
1261         Punt PuntRedirect
1262 }
1263
1264 func (*IPPuntRedirectDetails) GetMessageName() string {
1265         return "ip_punt_redirect_details"
1266 }
1267 func (*IPPuntRedirectDetails) GetCrcString() string {
1268         return "d6441360"
1269 }
1270 func (*IPPuntRedirectDetails) GetMessageType() api.MessageType {
1271         return api.ReplyMessage
1272 }
1273
1274 // IPPuntRedirectDump represents VPP binary API message 'ip_punt_redirect_dump'.
1275 type IPPuntRedirectDump struct {
1276         SwIfIndex uint32
1277         IsIPv6    uint8
1278 }
1279
1280 func (*IPPuntRedirectDump) GetMessageName() string {
1281         return "ip_punt_redirect_dump"
1282 }
1283 func (*IPPuntRedirectDump) GetCrcString() string {
1284         return "6b7bcd0a"
1285 }
1286 func (*IPPuntRedirectDump) GetMessageType() api.MessageType {
1287         return api.RequestMessage
1288 }
1289
1290 // IPPuntRedirectReply represents VPP binary API message 'ip_punt_redirect_reply'.
1291 type IPPuntRedirectReply struct {
1292         Retval int32
1293 }
1294
1295 func (*IPPuntRedirectReply) GetMessageName() string {
1296         return "ip_punt_redirect_reply"
1297 }
1298 func (*IPPuntRedirectReply) GetCrcString() string {
1299         return "e8d4e804"
1300 }
1301 func (*IPPuntRedirectReply) GetMessageType() api.MessageType {
1302         return api.ReplyMessage
1303 }
1304
1305 // IPReassemblyEnableDisable represents VPP binary API message 'ip_reassembly_enable_disable'.
1306 type IPReassemblyEnableDisable struct {
1307         SwIfIndex uint32
1308         EnableIP4 uint8
1309         EnableIP6 uint8
1310 }
1311
1312 func (*IPReassemblyEnableDisable) GetMessageName() string {
1313         return "ip_reassembly_enable_disable"
1314 }
1315 func (*IPReassemblyEnableDisable) GetCrcString() string {
1316         return "bb8dc5d0"
1317 }
1318 func (*IPReassemblyEnableDisable) GetMessageType() api.MessageType {
1319         return api.RequestMessage
1320 }
1321
1322 // IPReassemblyEnableDisableReply represents VPP binary API message 'ip_reassembly_enable_disable_reply'.
1323 type IPReassemblyEnableDisableReply struct {
1324         Retval int32
1325 }
1326
1327 func (*IPReassemblyEnableDisableReply) GetMessageName() string {
1328         return "ip_reassembly_enable_disable_reply"
1329 }
1330 func (*IPReassemblyEnableDisableReply) GetCrcString() string {
1331         return "e8d4e804"
1332 }
1333 func (*IPReassemblyEnableDisableReply) GetMessageType() api.MessageType {
1334         return api.ReplyMessage
1335 }
1336
1337 // IPReassemblyGet represents VPP binary API message 'ip_reassembly_get'.
1338 type IPReassemblyGet struct {
1339         IsIP6 uint8
1340 }
1341
1342 func (*IPReassemblyGet) GetMessageName() string {
1343         return "ip_reassembly_get"
1344 }
1345 func (*IPReassemblyGet) GetCrcString() string {
1346         return "6fe91190"
1347 }
1348 func (*IPReassemblyGet) GetMessageType() api.MessageType {
1349         return api.RequestMessage
1350 }
1351
1352 // IPReassemblyGetReply represents VPP binary API message 'ip_reassembly_get_reply'.
1353 type IPReassemblyGetReply struct {
1354         Retval               int32
1355         TimeoutMs            uint32
1356         MaxReassemblies      uint32
1357         MaxReassemblyLength  uint32
1358         ExpireWalkIntervalMs uint32
1359         IsIP6                uint8
1360 }
1361
1362 func (*IPReassemblyGetReply) GetMessageName() string {
1363         return "ip_reassembly_get_reply"
1364 }
1365 func (*IPReassemblyGetReply) GetCrcString() string {
1366         return "c96e518d"
1367 }
1368 func (*IPReassemblyGetReply) GetMessageType() api.MessageType {
1369         return api.ReplyMessage
1370 }
1371
1372 // IPReassemblySet represents VPP binary API message 'ip_reassembly_set'.
1373 type IPReassemblySet struct {
1374         TimeoutMs            uint32
1375         MaxReassemblies      uint32
1376         MaxReassemblyLength  uint32
1377         ExpireWalkIntervalMs uint32
1378         IsIP6                uint8
1379 }
1380
1381 func (*IPReassemblySet) GetMessageName() string {
1382         return "ip_reassembly_set"
1383 }
1384 func (*IPReassemblySet) GetCrcString() string {
1385         return "403051cd"
1386 }
1387 func (*IPReassemblySet) GetMessageType() api.MessageType {
1388         return api.RequestMessage
1389 }
1390
1391 // IPReassemblySetReply represents VPP binary API message 'ip_reassembly_set_reply'.
1392 type IPReassemblySetReply struct {
1393         Retval int32
1394 }
1395
1396 func (*IPReassemblySetReply) GetMessageName() string {
1397         return "ip_reassembly_set_reply"
1398 }
1399 func (*IPReassemblySetReply) GetCrcString() string {
1400         return "e8d4e804"
1401 }
1402 func (*IPReassemblySetReply) GetMessageType() api.MessageType {
1403         return api.ReplyMessage
1404 }
1405
1406 // IPRouteAddDel represents VPP binary API message 'ip_route_add_del'.
1407 type IPRouteAddDel struct {
1408         IsAdd       uint8
1409         IsMultipath uint8
1410         Route       IPRoute
1411 }
1412
1413 func (*IPRouteAddDel) GetMessageName() string {
1414         return "ip_route_add_del"
1415 }
1416 func (*IPRouteAddDel) GetCrcString() string {
1417         return "5ceee41c"
1418 }
1419 func (*IPRouteAddDel) GetMessageType() api.MessageType {
1420         return api.RequestMessage
1421 }
1422
1423 // IPRouteAddDelReply represents VPP binary API message 'ip_route_add_del_reply'.
1424 type IPRouteAddDelReply struct {
1425         Retval     int32
1426         StatsIndex uint32
1427 }
1428
1429 func (*IPRouteAddDelReply) GetMessageName() string {
1430         return "ip_route_add_del_reply"
1431 }
1432 func (*IPRouteAddDelReply) GetCrcString() string {
1433         return "1992deab"
1434 }
1435 func (*IPRouteAddDelReply) GetMessageType() api.MessageType {
1436         return api.ReplyMessage
1437 }
1438
1439 // IPRouteDetails represents VPP binary API message 'ip_route_details'.
1440 type IPRouteDetails struct {
1441         Route IPRoute
1442 }
1443
1444 func (*IPRouteDetails) GetMessageName() string {
1445         return "ip_route_details"
1446 }
1447 func (*IPRouteDetails) GetCrcString() string {
1448         return "d1ffaae1"
1449 }
1450 func (*IPRouteDetails) GetMessageType() api.MessageType {
1451         return api.ReplyMessage
1452 }
1453
1454 // IPRouteDump represents VPP binary API message 'ip_route_dump'.
1455 type IPRouteDump struct {
1456         Table IPTable
1457 }
1458
1459 func (*IPRouteDump) GetMessageName() string {
1460         return "ip_route_dump"
1461 }
1462 func (*IPRouteDump) GetCrcString() string {
1463         return "f5ad78e8"
1464 }
1465 func (*IPRouteDump) GetMessageType() api.MessageType {
1466         return api.RequestMessage
1467 }
1468
1469 // IPScanNeighborEnableDisable represents VPP binary API message 'ip_scan_neighbor_enable_disable'.
1470 type IPScanNeighborEnableDisable struct {
1471         Mode           uint8
1472         ScanInterval   uint8
1473         MaxProcTime    uint8
1474         MaxUpdate      uint8
1475         ScanIntDelay   uint8
1476         StaleThreshold uint8
1477 }
1478
1479 func (*IPScanNeighborEnableDisable) GetMessageName() string {
1480         return "ip_scan_neighbor_enable_disable"
1481 }
1482 func (*IPScanNeighborEnableDisable) GetCrcString() string {
1483         return "0a6bf57a"
1484 }
1485 func (*IPScanNeighborEnableDisable) GetMessageType() api.MessageType {
1486         return api.RequestMessage
1487 }
1488
1489 // IPScanNeighborEnableDisableReply represents VPP binary API message 'ip_scan_neighbor_enable_disable_reply'.
1490 type IPScanNeighborEnableDisableReply struct {
1491         Retval int32
1492 }
1493
1494 func (*IPScanNeighborEnableDisableReply) GetMessageName() string {
1495         return "ip_scan_neighbor_enable_disable_reply"
1496 }
1497 func (*IPScanNeighborEnableDisableReply) GetCrcString() string {
1498         return "e8d4e804"
1499 }
1500 func (*IPScanNeighborEnableDisableReply) GetMessageType() api.MessageType {
1501         return api.ReplyMessage
1502 }
1503
1504 // IPSourceAndPortRangeCheckAddDel represents VPP binary API message 'ip_source_and_port_range_check_add_del'.
1505 type IPSourceAndPortRangeCheckAddDel struct {
1506         IsAdd          uint8
1507         Prefix         Prefix
1508         NumberOfRanges uint8
1509         LowPorts       []uint16 `struc:"[32]uint16"`
1510         HighPorts      []uint16 `struc:"[32]uint16"`
1511         VrfID          uint32
1512 }
1513
1514 func (*IPSourceAndPortRangeCheckAddDel) GetMessageName() string {
1515         return "ip_source_and_port_range_check_add_del"
1516 }
1517 func (*IPSourceAndPortRangeCheckAddDel) GetCrcString() string {
1518         return "97e10a78"
1519 }
1520 func (*IPSourceAndPortRangeCheckAddDel) GetMessageType() api.MessageType {
1521         return api.RequestMessage
1522 }
1523
1524 // IPSourceAndPortRangeCheckAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_add_del_reply'.
1525 type IPSourceAndPortRangeCheckAddDelReply struct {
1526         Retval int32
1527 }
1528
1529 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageName() string {
1530         return "ip_source_and_port_range_check_add_del_reply"
1531 }
1532 func (*IPSourceAndPortRangeCheckAddDelReply) GetCrcString() string {
1533         return "e8d4e804"
1534 }
1535 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageType() api.MessageType {
1536         return api.ReplyMessage
1537 }
1538
1539 // IPSourceAndPortRangeCheckInterfaceAddDel represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del'.
1540 type IPSourceAndPortRangeCheckInterfaceAddDel struct {
1541         IsAdd       uint8
1542         SwIfIndex   uint32
1543         TCPInVrfID  uint32
1544         TCPOutVrfID uint32
1545         UDPInVrfID  uint32
1546         UDPOutVrfID uint32
1547 }
1548
1549 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageName() string {
1550         return "ip_source_and_port_range_check_interface_add_del"
1551 }
1552 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetCrcString() string {
1553         return "6966bc44"
1554 }
1555 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageType() api.MessageType {
1556         return api.RequestMessage
1557 }
1558
1559 // IPSourceAndPortRangeCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del_reply'.
1560 type IPSourceAndPortRangeCheckInterfaceAddDelReply struct {
1561         Retval int32
1562 }
1563
1564 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageName() string {
1565         return "ip_source_and_port_range_check_interface_add_del_reply"
1566 }
1567 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetCrcString() string {
1568         return "e8d4e804"
1569 }
1570 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageType() api.MessageType {
1571         return api.ReplyMessage
1572 }
1573
1574 // IPSourceCheckInterfaceAddDel represents VPP binary API message 'ip_source_check_interface_add_del'.
1575 type IPSourceCheckInterfaceAddDel struct {
1576         IsAdd     uint8
1577         Loose     uint8
1578         SwIfIndex uint32
1579 }
1580
1581 func (*IPSourceCheckInterfaceAddDel) GetMessageName() string {
1582         return "ip_source_check_interface_add_del"
1583 }
1584 func (*IPSourceCheckInterfaceAddDel) GetCrcString() string {
1585         return "0a60152a"
1586 }
1587 func (*IPSourceCheckInterfaceAddDel) GetMessageType() api.MessageType {
1588         return api.RequestMessage
1589 }
1590
1591 // IPSourceCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_check_interface_add_del_reply'.
1592 type IPSourceCheckInterfaceAddDelReply struct {
1593         Retval int32
1594 }
1595
1596 func (*IPSourceCheckInterfaceAddDelReply) GetMessageName() string {
1597         return "ip_source_check_interface_add_del_reply"
1598 }
1599 func (*IPSourceCheckInterfaceAddDelReply) GetCrcString() string {
1600         return "e8d4e804"
1601 }
1602 func (*IPSourceCheckInterfaceAddDelReply) GetMessageType() api.MessageType {
1603         return api.ReplyMessage
1604 }
1605
1606 // IPTableAddDel represents VPP binary API message 'ip_table_add_del'.
1607 type IPTableAddDel struct {
1608         IsAdd uint8
1609         Table IPTable
1610 }
1611
1612 func (*IPTableAddDel) GetMessageName() string {
1613         return "ip_table_add_del"
1614 }
1615 func (*IPTableAddDel) GetCrcString() string {
1616         return "e5d378f2"
1617 }
1618 func (*IPTableAddDel) GetMessageType() api.MessageType {
1619         return api.RequestMessage
1620 }
1621
1622 // IPTableAddDelReply represents VPP binary API message 'ip_table_add_del_reply'.
1623 type IPTableAddDelReply struct {
1624         Retval int32
1625 }
1626
1627 func (*IPTableAddDelReply) GetMessageName() string {
1628         return "ip_table_add_del_reply"
1629 }
1630 func (*IPTableAddDelReply) GetCrcString() string {
1631         return "e8d4e804"
1632 }
1633 func (*IPTableAddDelReply) GetMessageType() api.MessageType {
1634         return api.ReplyMessage
1635 }
1636
1637 // IPTableDetails represents VPP binary API message 'ip_table_details'.
1638 type IPTableDetails struct {
1639         Table IPTable
1640 }
1641
1642 func (*IPTableDetails) GetMessageName() string {
1643         return "ip_table_details"
1644 }
1645 func (*IPTableDetails) GetCrcString() string {
1646         return "4d251961"
1647 }
1648 func (*IPTableDetails) GetMessageType() api.MessageType {
1649         return api.ReplyMessage
1650 }
1651
1652 // IPTableDump represents VPP binary API message 'ip_table_dump'.
1653 type IPTableDump struct{}
1654
1655 func (*IPTableDump) GetMessageName() string {
1656         return "ip_table_dump"
1657 }
1658 func (*IPTableDump) GetCrcString() string {
1659         return "51077d14"
1660 }
1661 func (*IPTableDump) GetMessageType() api.MessageType {
1662         return api.RequestMessage
1663 }
1664
1665 // IPUnnumberedDetails represents VPP binary API message 'ip_unnumbered_details'.
1666 type IPUnnumberedDetails struct {
1667         SwIfIndex   uint32
1668         IPSwIfIndex uint32
1669 }
1670
1671 func (*IPUnnumberedDetails) GetMessageName() string {
1672         return "ip_unnumbered_details"
1673 }
1674 func (*IPUnnumberedDetails) GetCrcString() string {
1675         return "ae694cf4"
1676 }
1677 func (*IPUnnumberedDetails) GetMessageType() api.MessageType {
1678         return api.ReplyMessage
1679 }
1680
1681 // IPUnnumberedDump represents VPP binary API message 'ip_unnumbered_dump'.
1682 type IPUnnumberedDump struct {
1683         SwIfIndex uint32
1684 }
1685
1686 func (*IPUnnumberedDump) GetMessageName() string {
1687         return "ip_unnumbered_dump"
1688 }
1689 func (*IPUnnumberedDump) GetCrcString() string {
1690         return "529cb13f"
1691 }
1692 func (*IPUnnumberedDump) GetMessageType() api.MessageType {
1693         return api.RequestMessage
1694 }
1695
1696 // MfibSignalDetails represents VPP binary API message 'mfib_signal_details'.
1697 type MfibSignalDetails struct {
1698         SwIfIndex    uint32
1699         TableID      uint32
1700         Prefix       Mprefix
1701         IPPacketLen  uint16
1702         IPPacketData []byte `struc:"[256]byte"`
1703 }
1704
1705 func (*MfibSignalDetails) GetMessageName() string {
1706         return "mfib_signal_details"
1707 }
1708 func (*MfibSignalDetails) GetCrcString() string {
1709         return "697ab6b4"
1710 }
1711 func (*MfibSignalDetails) GetMessageType() api.MessageType {
1712         return api.ReplyMessage
1713 }
1714
1715 // MfibSignalDump represents VPP binary API message 'mfib_signal_dump'.
1716 type MfibSignalDump struct{}
1717
1718 func (*MfibSignalDump) GetMessageName() string {
1719         return "mfib_signal_dump"
1720 }
1721 func (*MfibSignalDump) GetCrcString() string {
1722         return "51077d14"
1723 }
1724 func (*MfibSignalDump) GetMessageType() api.MessageType {
1725         return api.RequestMessage
1726 }
1727
1728 // ProxyArpAddDel represents VPP binary API message 'proxy_arp_add_del'.
1729 type ProxyArpAddDel struct {
1730         IsAdd uint8
1731         Proxy ProxyArp
1732 }
1733
1734 func (*ProxyArpAddDel) GetMessageName() string {
1735         return "proxy_arp_add_del"
1736 }
1737 func (*ProxyArpAddDel) GetCrcString() string {
1738         return "320b4c54"
1739 }
1740 func (*ProxyArpAddDel) GetMessageType() api.MessageType {
1741         return api.RequestMessage
1742 }
1743
1744 // ProxyArpAddDelReply represents VPP binary API message 'proxy_arp_add_del_reply'.
1745 type ProxyArpAddDelReply struct {
1746         Retval int32
1747 }
1748
1749 func (*ProxyArpAddDelReply) GetMessageName() string {
1750         return "proxy_arp_add_del_reply"
1751 }
1752 func (*ProxyArpAddDelReply) GetCrcString() string {
1753         return "e8d4e804"
1754 }
1755 func (*ProxyArpAddDelReply) GetMessageType() api.MessageType {
1756         return api.ReplyMessage
1757 }
1758
1759 // ProxyArpDetails represents VPP binary API message 'proxy_arp_details'.
1760 type ProxyArpDetails struct {
1761         Proxy ProxyArp
1762 }
1763
1764 func (*ProxyArpDetails) GetMessageName() string {
1765         return "proxy_arp_details"
1766 }
1767 func (*ProxyArpDetails) GetCrcString() string {
1768         return "9228c150"
1769 }
1770 func (*ProxyArpDetails) GetMessageType() api.MessageType {
1771         return api.ReplyMessage
1772 }
1773
1774 // ProxyArpDump represents VPP binary API message 'proxy_arp_dump'.
1775 type ProxyArpDump struct{}
1776
1777 func (*ProxyArpDump) GetMessageName() string {
1778         return "proxy_arp_dump"
1779 }
1780 func (*ProxyArpDump) GetCrcString() string {
1781         return "51077d14"
1782 }
1783 func (*ProxyArpDump) GetMessageType() api.MessageType {
1784         return api.RequestMessage
1785 }
1786
1787 // ProxyArpIntfcDetails represents VPP binary API message 'proxy_arp_intfc_details'.
1788 type ProxyArpIntfcDetails struct {
1789         SwIfIndex uint32
1790 }
1791
1792 func (*ProxyArpIntfcDetails) GetMessageName() string {
1793         return "proxy_arp_intfc_details"
1794 }
1795 func (*ProxyArpIntfcDetails) GetCrcString() string {
1796         return "f6458e5f"
1797 }
1798 func (*ProxyArpIntfcDetails) GetMessageType() api.MessageType {
1799         return api.ReplyMessage
1800 }
1801
1802 // ProxyArpIntfcDump represents VPP binary API message 'proxy_arp_intfc_dump'.
1803 type ProxyArpIntfcDump struct{}
1804
1805 func (*ProxyArpIntfcDump) GetMessageName() string {
1806         return "proxy_arp_intfc_dump"
1807 }
1808 func (*ProxyArpIntfcDump) GetCrcString() string {
1809         return "51077d14"
1810 }
1811 func (*ProxyArpIntfcDump) GetMessageType() api.MessageType {
1812         return api.RequestMessage
1813 }
1814
1815 // ProxyArpIntfcEnableDisable represents VPP binary API message 'proxy_arp_intfc_enable_disable'.
1816 type ProxyArpIntfcEnableDisable struct {
1817         SwIfIndex     uint32
1818         EnableDisable uint8
1819 }
1820
1821 func (*ProxyArpIntfcEnableDisable) GetMessageName() string {
1822         return "proxy_arp_intfc_enable_disable"
1823 }
1824 func (*ProxyArpIntfcEnableDisable) GetCrcString() string {
1825         return "69d24598"
1826 }
1827 func (*ProxyArpIntfcEnableDisable) GetMessageType() api.MessageType {
1828         return api.RequestMessage
1829 }
1830
1831 // ProxyArpIntfcEnableDisableReply represents VPP binary API message 'proxy_arp_intfc_enable_disable_reply'.
1832 type ProxyArpIntfcEnableDisableReply struct {
1833         Retval int32
1834 }
1835
1836 func (*ProxyArpIntfcEnableDisableReply) GetMessageName() string {
1837         return "proxy_arp_intfc_enable_disable_reply"
1838 }
1839 func (*ProxyArpIntfcEnableDisableReply) GetCrcString() string {
1840         return "e8d4e804"
1841 }
1842 func (*ProxyArpIntfcEnableDisableReply) GetMessageType() api.MessageType {
1843         return api.ReplyMessage
1844 }
1845
1846 // ResetFib represents VPP binary API message 'reset_fib'.
1847 type ResetFib struct {
1848         VrfID  uint32
1849         IsIPv6 uint8
1850 }
1851
1852 func (*ResetFib) GetMessageName() string {
1853         return "reset_fib"
1854 }
1855 func (*ResetFib) GetCrcString() string {
1856         return "8553ebd9"
1857 }
1858 func (*ResetFib) GetMessageType() api.MessageType {
1859         return api.RequestMessage
1860 }
1861
1862 // ResetFibReply represents VPP binary API message 'reset_fib_reply'.
1863 type ResetFibReply struct {
1864         Retval int32
1865 }
1866
1867 func (*ResetFibReply) GetMessageName() string {
1868         return "reset_fib_reply"
1869 }
1870 func (*ResetFibReply) GetCrcString() string {
1871         return "e8d4e804"
1872 }
1873 func (*ResetFibReply) GetMessageType() api.MessageType {
1874         return api.ReplyMessage
1875 }
1876
1877 // SetArpNeighborLimit represents VPP binary API message 'set_arp_neighbor_limit'.
1878 type SetArpNeighborLimit struct {
1879         IsIPv6           uint8
1880         ArpNeighborLimit uint32
1881 }
1882
1883 func (*SetArpNeighborLimit) GetMessageName() string {
1884         return "set_arp_neighbor_limit"
1885 }
1886 func (*SetArpNeighborLimit) GetCrcString() string {
1887         return "97d01fd6"
1888 }
1889 func (*SetArpNeighborLimit) GetMessageType() api.MessageType {
1890         return api.RequestMessage
1891 }
1892
1893 // SetArpNeighborLimitReply represents VPP binary API message 'set_arp_neighbor_limit_reply'.
1894 type SetArpNeighborLimitReply struct {
1895         Retval int32
1896 }
1897
1898 func (*SetArpNeighborLimitReply) GetMessageName() string {
1899         return "set_arp_neighbor_limit_reply"
1900 }
1901 func (*SetArpNeighborLimitReply) GetCrcString() string {
1902         return "e8d4e804"
1903 }
1904 func (*SetArpNeighborLimitReply) GetMessageType() api.MessageType {
1905         return api.ReplyMessage
1906 }
1907
1908 // SetIPFlowHash represents VPP binary API message 'set_ip_flow_hash'.
1909 type SetIPFlowHash struct {
1910         VrfID     uint32
1911         IsIPv6    uint8
1912         Src       uint8
1913         Dst       uint8
1914         Sport     uint8
1915         Dport     uint8
1916         Proto     uint8
1917         Reverse   uint8
1918         Symmetric uint8
1919 }
1920
1921 func (*SetIPFlowHash) GetMessageName() string {
1922         return "set_ip_flow_hash"
1923 }
1924 func (*SetIPFlowHash) GetCrcString() string {
1925         return "a9084bfb"
1926 }
1927 func (*SetIPFlowHash) GetMessageType() api.MessageType {
1928         return api.RequestMessage
1929 }
1930
1931 // SetIPFlowHashReply represents VPP binary API message 'set_ip_flow_hash_reply'.
1932 type SetIPFlowHashReply struct {
1933         Retval int32
1934 }
1935
1936 func (*SetIPFlowHashReply) GetMessageName() string {
1937         return "set_ip_flow_hash_reply"
1938 }
1939 func (*SetIPFlowHashReply) GetCrcString() string {
1940         return "e8d4e804"
1941 }
1942 func (*SetIPFlowHashReply) GetMessageType() api.MessageType {
1943         return api.ReplyMessage
1944 }
1945
1946 // SwInterfaceIP6EnableDisable represents VPP binary API message 'sw_interface_ip6_enable_disable'.
1947 type SwInterfaceIP6EnableDisable struct {
1948         SwIfIndex uint32
1949         Enable    uint8
1950 }
1951
1952 func (*SwInterfaceIP6EnableDisable) GetMessageName() string {
1953         return "sw_interface_ip6_enable_disable"
1954 }
1955 func (*SwInterfaceIP6EnableDisable) GetCrcString() string {
1956         return "a36fadc0"
1957 }
1958 func (*SwInterfaceIP6EnableDisable) GetMessageType() api.MessageType {
1959         return api.RequestMessage
1960 }
1961
1962 // SwInterfaceIP6EnableDisableReply represents VPP binary API message 'sw_interface_ip6_enable_disable_reply'.
1963 type SwInterfaceIP6EnableDisableReply struct {
1964         Retval int32
1965 }
1966
1967 func (*SwInterfaceIP6EnableDisableReply) GetMessageName() string {
1968         return "sw_interface_ip6_enable_disable_reply"
1969 }
1970 func (*SwInterfaceIP6EnableDisableReply) GetCrcString() string {
1971         return "e8d4e804"
1972 }
1973 func (*SwInterfaceIP6EnableDisableReply) GetMessageType() api.MessageType {
1974         return api.ReplyMessage
1975 }
1976
1977 // SwInterfaceIP6SetLinkLocalAddress represents VPP binary API message 'sw_interface_ip6_set_link_local_address'.
1978 type SwInterfaceIP6SetLinkLocalAddress struct {
1979         SwIfIndex uint32
1980         Address   []byte `struc:"[16]byte"`
1981 }
1982
1983 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageName() string {
1984         return "sw_interface_ip6_set_link_local_address"
1985 }
1986 func (*SwInterfaceIP6SetLinkLocalAddress) GetCrcString() string {
1987         return "d73bf1ab"
1988 }
1989 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageType() api.MessageType {
1990         return api.RequestMessage
1991 }
1992
1993 // SwInterfaceIP6SetLinkLocalAddressReply represents VPP binary API message 'sw_interface_ip6_set_link_local_address_reply'.
1994 type SwInterfaceIP6SetLinkLocalAddressReply struct {
1995         Retval int32
1996 }
1997
1998 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageName() string {
1999         return "sw_interface_ip6_set_link_local_address_reply"
2000 }
2001 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetCrcString() string {
2002         return "e8d4e804"
2003 }
2004 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageType() api.MessageType {
2005         return api.ReplyMessage
2006 }
2007
2008 // SwInterfaceIP6ndRaConfig represents VPP binary API message 'sw_interface_ip6nd_ra_config'.
2009 type SwInterfaceIP6ndRaConfig struct {
2010         SwIfIndex       uint32
2011         Suppress        uint8
2012         Managed         uint8
2013         Other           uint8
2014         LlOption        uint8
2015         SendUnicast     uint8
2016         Cease           uint8
2017         IsNo            uint8
2018         DefaultRouter   uint8
2019         MaxInterval     uint32
2020         MinInterval     uint32
2021         Lifetime        uint32
2022         InitialCount    uint32
2023         InitialInterval uint32
2024 }
2025
2026 func (*SwInterfaceIP6ndRaConfig) GetMessageName() string {
2027         return "sw_interface_ip6nd_ra_config"
2028 }
2029 func (*SwInterfaceIP6ndRaConfig) GetCrcString() string {
2030         return "c3f02daa"
2031 }
2032 func (*SwInterfaceIP6ndRaConfig) GetMessageType() api.MessageType {
2033         return api.RequestMessage
2034 }
2035
2036 // SwInterfaceIP6ndRaConfigReply represents VPP binary API message 'sw_interface_ip6nd_ra_config_reply'.
2037 type SwInterfaceIP6ndRaConfigReply struct {
2038         Retval int32
2039 }
2040
2041 func (*SwInterfaceIP6ndRaConfigReply) GetMessageName() string {
2042         return "sw_interface_ip6nd_ra_config_reply"
2043 }
2044 func (*SwInterfaceIP6ndRaConfigReply) GetCrcString() string {
2045         return "e8d4e804"
2046 }
2047 func (*SwInterfaceIP6ndRaConfigReply) GetMessageType() api.MessageType {
2048         return api.ReplyMessage
2049 }
2050
2051 // SwInterfaceIP6ndRaPrefix represents VPP binary API message 'sw_interface_ip6nd_ra_prefix'.
2052 type SwInterfaceIP6ndRaPrefix struct {
2053         SwIfIndex    uint32
2054         Prefix       Prefix
2055         UseDefault   uint8
2056         NoAdvertise  uint8
2057         OffLink      uint8
2058         NoAutoconfig uint8
2059         NoOnlink     uint8
2060         IsNo         uint8
2061         ValLifetime  uint32
2062         PrefLifetime uint32
2063 }
2064
2065 func (*SwInterfaceIP6ndRaPrefix) GetMessageName() string {
2066         return "sw_interface_ip6nd_ra_prefix"
2067 }
2068 func (*SwInterfaceIP6ndRaPrefix) GetCrcString() string {
2069         return "6449c040"
2070 }
2071 func (*SwInterfaceIP6ndRaPrefix) GetMessageType() api.MessageType {
2072         return api.RequestMessage
2073 }
2074
2075 // SwInterfaceIP6ndRaPrefixReply represents VPP binary API message 'sw_interface_ip6nd_ra_prefix_reply'.
2076 type SwInterfaceIP6ndRaPrefixReply struct {
2077         Retval int32
2078 }
2079
2080 func (*SwInterfaceIP6ndRaPrefixReply) GetMessageName() string {
2081         return "sw_interface_ip6nd_ra_prefix_reply"
2082 }
2083 func (*SwInterfaceIP6ndRaPrefixReply) GetCrcString() string {
2084         return "e8d4e804"
2085 }
2086 func (*SwInterfaceIP6ndRaPrefixReply) GetMessageType() api.MessageType {
2087         return api.ReplyMessage
2088 }
2089
2090 // WantIP4ArpEvents represents VPP binary API message 'want_ip4_arp_events'.
2091 type WantIP4ArpEvents struct {
2092         EnableDisable uint8
2093         PID           uint32
2094         IP            IP4Address
2095 }
2096
2097 func (*WantIP4ArpEvents) GetMessageName() string {
2098         return "want_ip4_arp_events"
2099 }
2100 func (*WantIP4ArpEvents) GetCrcString() string {
2101         return "2678f421"
2102 }
2103 func (*WantIP4ArpEvents) GetMessageType() api.MessageType {
2104         return api.RequestMessage
2105 }
2106
2107 // WantIP4ArpEventsReply represents VPP binary API message 'want_ip4_arp_events_reply'.
2108 type WantIP4ArpEventsReply struct {
2109         Retval int32
2110 }
2111
2112 func (*WantIP4ArpEventsReply) GetMessageName() string {
2113         return "want_ip4_arp_events_reply"
2114 }
2115 func (*WantIP4ArpEventsReply) GetCrcString() string {
2116         return "e8d4e804"
2117 }
2118 func (*WantIP4ArpEventsReply) GetMessageType() api.MessageType {
2119         return api.ReplyMessage
2120 }
2121
2122 // WantIP6NdEvents represents VPP binary API message 'want_ip6_nd_events'.
2123 type WantIP6NdEvents struct {
2124         EnableDisable uint8
2125         PID           uint32
2126         IP            IP6Address
2127 }
2128
2129 func (*WantIP6NdEvents) GetMessageName() string {
2130         return "want_ip6_nd_events"
2131 }
2132 func (*WantIP6NdEvents) GetCrcString() string {
2133         return "08283da1"
2134 }
2135 func (*WantIP6NdEvents) GetMessageType() api.MessageType {
2136         return api.RequestMessage
2137 }
2138
2139 // WantIP6NdEventsReply represents VPP binary API message 'want_ip6_nd_events_reply'.
2140 type WantIP6NdEventsReply struct {
2141         Retval int32
2142 }
2143
2144 func (*WantIP6NdEventsReply) GetMessageName() string {
2145         return "want_ip6_nd_events_reply"
2146 }
2147 func (*WantIP6NdEventsReply) GetCrcString() string {
2148         return "e8d4e804"
2149 }
2150 func (*WantIP6NdEventsReply) GetMessageType() api.MessageType {
2151         return api.ReplyMessage
2152 }
2153
2154 // WantIP6RaEvents represents VPP binary API message 'want_ip6_ra_events'.
2155 type WantIP6RaEvents struct {
2156         EnableDisable uint8
2157         PID           uint32
2158 }
2159
2160 func (*WantIP6RaEvents) GetMessageName() string {
2161         return "want_ip6_ra_events"
2162 }
2163 func (*WantIP6RaEvents) GetCrcString() string {
2164         return "05b454b5"
2165 }
2166 func (*WantIP6RaEvents) GetMessageType() api.MessageType {
2167         return api.RequestMessage
2168 }
2169
2170 // WantIP6RaEventsReply represents VPP binary API message 'want_ip6_ra_events_reply'.
2171 type WantIP6RaEventsReply struct {
2172         Retval int32
2173 }
2174
2175 func (*WantIP6RaEventsReply) GetMessageName() string {
2176         return "want_ip6_ra_events_reply"
2177 }
2178 func (*WantIP6RaEventsReply) GetCrcString() string {
2179         return "e8d4e804"
2180 }
2181 func (*WantIP6RaEventsReply) GetMessageType() api.MessageType {
2182         return api.ReplyMessage
2183 }
2184
2185 func init() {
2186         api.RegisterMessage((*IoamDisable)(nil), "ip.IoamDisable")
2187         api.RegisterMessage((*IoamDisableReply)(nil), "ip.IoamDisableReply")
2188         api.RegisterMessage((*IoamEnable)(nil), "ip.IoamEnable")
2189         api.RegisterMessage((*IoamEnableReply)(nil), "ip.IoamEnableReply")
2190         api.RegisterMessage((*IP4ArpEvent)(nil), "ip.IP4ArpEvent")
2191         api.RegisterMessage((*IP6NdEvent)(nil), "ip.IP6NdEvent")
2192         api.RegisterMessage((*IP6RaEvent)(nil), "ip.IP6RaEvent")
2193         api.RegisterMessage((*IP6ndProxyAddDel)(nil), "ip.IP6ndProxyAddDel")
2194         api.RegisterMessage((*IP6ndProxyAddDelReply)(nil), "ip.IP6ndProxyAddDelReply")
2195         api.RegisterMessage((*IP6ndProxyDetails)(nil), "ip.IP6ndProxyDetails")
2196         api.RegisterMessage((*IP6ndProxyDump)(nil), "ip.IP6ndProxyDump")
2197         api.RegisterMessage((*IP6ndSendRouterSolicitation)(nil), "ip.IP6ndSendRouterSolicitation")
2198         api.RegisterMessage((*IP6ndSendRouterSolicitationReply)(nil), "ip.IP6ndSendRouterSolicitationReply")
2199         api.RegisterMessage((*IPAddressDetails)(nil), "ip.IPAddressDetails")
2200         api.RegisterMessage((*IPAddressDump)(nil), "ip.IPAddressDump")
2201         api.RegisterMessage((*IPContainerProxyAddDel)(nil), "ip.IPContainerProxyAddDel")
2202         api.RegisterMessage((*IPContainerProxyAddDelReply)(nil), "ip.IPContainerProxyAddDelReply")
2203         api.RegisterMessage((*IPContainerProxyDetails)(nil), "ip.IPContainerProxyDetails")
2204         api.RegisterMessage((*IPContainerProxyDump)(nil), "ip.IPContainerProxyDump")
2205         api.RegisterMessage((*IPDetails)(nil), "ip.IPDetails")
2206         api.RegisterMessage((*IPDump)(nil), "ip.IPDump")
2207         api.RegisterMessage((*IPMrouteAddDel)(nil), "ip.IPMrouteAddDel")
2208         api.RegisterMessage((*IPMrouteAddDelReply)(nil), "ip.IPMrouteAddDelReply")
2209         api.RegisterMessage((*IPMrouteDetails)(nil), "ip.IPMrouteDetails")
2210         api.RegisterMessage((*IPMrouteDump)(nil), "ip.IPMrouteDump")
2211         api.RegisterMessage((*IPMtableDetails)(nil), "ip.IPMtableDetails")
2212         api.RegisterMessage((*IPMtableDump)(nil), "ip.IPMtableDump")
2213         api.RegisterMessage((*IPNeighborAddDel)(nil), "ip.IPNeighborAddDel")
2214         api.RegisterMessage((*IPNeighborAddDelReply)(nil), "ip.IPNeighborAddDelReply")
2215         api.RegisterMessage((*IPNeighborDetails)(nil), "ip.IPNeighborDetails")
2216         api.RegisterMessage((*IPNeighborDump)(nil), "ip.IPNeighborDump")
2217         api.RegisterMessage((*IPProbeNeighbor)(nil), "ip.IPProbeNeighbor")
2218         api.RegisterMessage((*IPProbeNeighborReply)(nil), "ip.IPProbeNeighborReply")
2219         api.RegisterMessage((*IPPuntPolice)(nil), "ip.IPPuntPolice")
2220         api.RegisterMessage((*IPPuntPoliceReply)(nil), "ip.IPPuntPoliceReply")
2221         api.RegisterMessage((*IPPuntRedirect)(nil), "ip.IPPuntRedirect")
2222         api.RegisterMessage((*IPPuntRedirectDetails)(nil), "ip.IPPuntRedirectDetails")
2223         api.RegisterMessage((*IPPuntRedirectDump)(nil), "ip.IPPuntRedirectDump")
2224         api.RegisterMessage((*IPPuntRedirectReply)(nil), "ip.IPPuntRedirectReply")
2225         api.RegisterMessage((*IPReassemblyEnableDisable)(nil), "ip.IPReassemblyEnableDisable")
2226         api.RegisterMessage((*IPReassemblyEnableDisableReply)(nil), "ip.IPReassemblyEnableDisableReply")
2227         api.RegisterMessage((*IPReassemblyGet)(nil), "ip.IPReassemblyGet")
2228         api.RegisterMessage((*IPReassemblyGetReply)(nil), "ip.IPReassemblyGetReply")
2229         api.RegisterMessage((*IPReassemblySet)(nil), "ip.IPReassemblySet")
2230         api.RegisterMessage((*IPReassemblySetReply)(nil), "ip.IPReassemblySetReply")
2231         api.RegisterMessage((*IPRouteAddDel)(nil), "ip.IPRouteAddDel")
2232         api.RegisterMessage((*IPRouteAddDelReply)(nil), "ip.IPRouteAddDelReply")
2233         api.RegisterMessage((*IPRouteDetails)(nil), "ip.IPRouteDetails")
2234         api.RegisterMessage((*IPRouteDump)(nil), "ip.IPRouteDump")
2235         api.RegisterMessage((*IPScanNeighborEnableDisable)(nil), "ip.IPScanNeighborEnableDisable")
2236         api.RegisterMessage((*IPScanNeighborEnableDisableReply)(nil), "ip.IPScanNeighborEnableDisableReply")
2237         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDel)(nil), "ip.IPSourceAndPortRangeCheckAddDel")
2238         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckAddDelReply")
2239         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDel)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDel")
2240         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDelReply")
2241         api.RegisterMessage((*IPSourceCheckInterfaceAddDel)(nil), "ip.IPSourceCheckInterfaceAddDel")
2242         api.RegisterMessage((*IPSourceCheckInterfaceAddDelReply)(nil), "ip.IPSourceCheckInterfaceAddDelReply")
2243         api.RegisterMessage((*IPTableAddDel)(nil), "ip.IPTableAddDel")
2244         api.RegisterMessage((*IPTableAddDelReply)(nil), "ip.IPTableAddDelReply")
2245         api.RegisterMessage((*IPTableDetails)(nil), "ip.IPTableDetails")
2246         api.RegisterMessage((*IPTableDump)(nil), "ip.IPTableDump")
2247         api.RegisterMessage((*IPUnnumberedDetails)(nil), "ip.IPUnnumberedDetails")
2248         api.RegisterMessage((*IPUnnumberedDump)(nil), "ip.IPUnnumberedDump")
2249         api.RegisterMessage((*MfibSignalDetails)(nil), "ip.MfibSignalDetails")
2250         api.RegisterMessage((*MfibSignalDump)(nil), "ip.MfibSignalDump")
2251         api.RegisterMessage((*ProxyArpAddDel)(nil), "ip.ProxyArpAddDel")
2252         api.RegisterMessage((*ProxyArpAddDelReply)(nil), "ip.ProxyArpAddDelReply")
2253         api.RegisterMessage((*ProxyArpDetails)(nil), "ip.ProxyArpDetails")
2254         api.RegisterMessage((*ProxyArpDump)(nil), "ip.ProxyArpDump")
2255         api.RegisterMessage((*ProxyArpIntfcDetails)(nil), "ip.ProxyArpIntfcDetails")
2256         api.RegisterMessage((*ProxyArpIntfcDump)(nil), "ip.ProxyArpIntfcDump")
2257         api.RegisterMessage((*ProxyArpIntfcEnableDisable)(nil), "ip.ProxyArpIntfcEnableDisable")
2258         api.RegisterMessage((*ProxyArpIntfcEnableDisableReply)(nil), "ip.ProxyArpIntfcEnableDisableReply")
2259         api.RegisterMessage((*ResetFib)(nil), "ip.ResetFib")
2260         api.RegisterMessage((*ResetFibReply)(nil), "ip.ResetFibReply")
2261         api.RegisterMessage((*SetArpNeighborLimit)(nil), "ip.SetArpNeighborLimit")
2262         api.RegisterMessage((*SetArpNeighborLimitReply)(nil), "ip.SetArpNeighborLimitReply")
2263         api.RegisterMessage((*SetIPFlowHash)(nil), "ip.SetIPFlowHash")
2264         api.RegisterMessage((*SetIPFlowHashReply)(nil), "ip.SetIPFlowHashReply")
2265         api.RegisterMessage((*SwInterfaceIP6EnableDisable)(nil), "ip.SwInterfaceIP6EnableDisable")
2266         api.RegisterMessage((*SwInterfaceIP6EnableDisableReply)(nil), "ip.SwInterfaceIP6EnableDisableReply")
2267         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddress)(nil), "ip.SwInterfaceIP6SetLinkLocalAddress")
2268         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddressReply)(nil), "ip.SwInterfaceIP6SetLinkLocalAddressReply")
2269         api.RegisterMessage((*SwInterfaceIP6ndRaConfig)(nil), "ip.SwInterfaceIP6ndRaConfig")
2270         api.RegisterMessage((*SwInterfaceIP6ndRaConfigReply)(nil), "ip.SwInterfaceIP6ndRaConfigReply")
2271         api.RegisterMessage((*SwInterfaceIP6ndRaPrefix)(nil), "ip.SwInterfaceIP6ndRaPrefix")
2272         api.RegisterMessage((*SwInterfaceIP6ndRaPrefixReply)(nil), "ip.SwInterfaceIP6ndRaPrefixReply")
2273         api.RegisterMessage((*WantIP4ArpEvents)(nil), "ip.WantIP4ArpEvents")
2274         api.RegisterMessage((*WantIP4ArpEventsReply)(nil), "ip.WantIP4ArpEventsReply")
2275         api.RegisterMessage((*WantIP6NdEvents)(nil), "ip.WantIP6NdEvents")
2276         api.RegisterMessage((*WantIP6NdEventsReply)(nil), "ip.WantIP6NdEventsReply")
2277         api.RegisterMessage((*WantIP6RaEvents)(nil), "ip.WantIP6RaEvents")
2278         api.RegisterMessage((*WantIP6RaEventsReply)(nil), "ip.WantIP6RaEventsReply")
2279 }
2280
2281 // Messages returns list of all messages in this module.
2282 func AllMessages() []api.Message {
2283         return []api.Message{
2284                 (*IoamDisable)(nil),
2285                 (*IoamDisableReply)(nil),
2286                 (*IoamEnable)(nil),
2287                 (*IoamEnableReply)(nil),
2288                 (*IP4ArpEvent)(nil),
2289                 (*IP6NdEvent)(nil),
2290                 (*IP6RaEvent)(nil),
2291                 (*IP6ndProxyAddDel)(nil),
2292                 (*IP6ndProxyAddDelReply)(nil),
2293                 (*IP6ndProxyDetails)(nil),
2294                 (*IP6ndProxyDump)(nil),
2295                 (*IP6ndSendRouterSolicitation)(nil),
2296                 (*IP6ndSendRouterSolicitationReply)(nil),
2297                 (*IPAddressDetails)(nil),
2298                 (*IPAddressDump)(nil),
2299                 (*IPContainerProxyAddDel)(nil),
2300                 (*IPContainerProxyAddDelReply)(nil),
2301                 (*IPContainerProxyDetails)(nil),
2302                 (*IPContainerProxyDump)(nil),
2303                 (*IPDetails)(nil),
2304                 (*IPDump)(nil),
2305                 (*IPMrouteAddDel)(nil),
2306                 (*IPMrouteAddDelReply)(nil),
2307                 (*IPMrouteDetails)(nil),
2308                 (*IPMrouteDump)(nil),
2309                 (*IPMtableDetails)(nil),
2310                 (*IPMtableDump)(nil),
2311                 (*IPNeighborAddDel)(nil),
2312                 (*IPNeighborAddDelReply)(nil),
2313                 (*IPNeighborDetails)(nil),
2314                 (*IPNeighborDump)(nil),
2315                 (*IPProbeNeighbor)(nil),
2316                 (*IPProbeNeighborReply)(nil),
2317                 (*IPPuntPolice)(nil),
2318                 (*IPPuntPoliceReply)(nil),
2319                 (*IPPuntRedirect)(nil),
2320                 (*IPPuntRedirectDetails)(nil),
2321                 (*IPPuntRedirectDump)(nil),
2322                 (*IPPuntRedirectReply)(nil),
2323                 (*IPReassemblyEnableDisable)(nil),
2324                 (*IPReassemblyEnableDisableReply)(nil),
2325                 (*IPReassemblyGet)(nil),
2326                 (*IPReassemblyGetReply)(nil),
2327                 (*IPReassemblySet)(nil),
2328                 (*IPReassemblySetReply)(nil),
2329                 (*IPRouteAddDel)(nil),
2330                 (*IPRouteAddDelReply)(nil),
2331                 (*IPRouteDetails)(nil),
2332                 (*IPRouteDump)(nil),
2333                 (*IPScanNeighborEnableDisable)(nil),
2334                 (*IPScanNeighborEnableDisableReply)(nil),
2335                 (*IPSourceAndPortRangeCheckAddDel)(nil),
2336                 (*IPSourceAndPortRangeCheckAddDelReply)(nil),
2337                 (*IPSourceAndPortRangeCheckInterfaceAddDel)(nil),
2338                 (*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil),
2339                 (*IPSourceCheckInterfaceAddDel)(nil),
2340                 (*IPSourceCheckInterfaceAddDelReply)(nil),
2341                 (*IPTableAddDel)(nil),
2342                 (*IPTableAddDelReply)(nil),
2343                 (*IPTableDetails)(nil),
2344                 (*IPTableDump)(nil),
2345                 (*IPUnnumberedDetails)(nil),
2346                 (*IPUnnumberedDump)(nil),
2347                 (*MfibSignalDetails)(nil),
2348                 (*MfibSignalDump)(nil),
2349                 (*ProxyArpAddDel)(nil),
2350                 (*ProxyArpAddDelReply)(nil),
2351                 (*ProxyArpDetails)(nil),
2352                 (*ProxyArpDump)(nil),
2353                 (*ProxyArpIntfcDetails)(nil),
2354                 (*ProxyArpIntfcDump)(nil),
2355                 (*ProxyArpIntfcEnableDisable)(nil),
2356                 (*ProxyArpIntfcEnableDisableReply)(nil),
2357                 (*ResetFib)(nil),
2358                 (*ResetFibReply)(nil),
2359                 (*SetArpNeighborLimit)(nil),
2360                 (*SetArpNeighborLimitReply)(nil),
2361                 (*SetIPFlowHash)(nil),
2362                 (*SetIPFlowHashReply)(nil),
2363                 (*SwInterfaceIP6EnableDisable)(nil),
2364                 (*SwInterfaceIP6EnableDisableReply)(nil),
2365                 (*SwInterfaceIP6SetLinkLocalAddress)(nil),
2366                 (*SwInterfaceIP6SetLinkLocalAddressReply)(nil),
2367                 (*SwInterfaceIP6ndRaConfig)(nil),
2368                 (*SwInterfaceIP6ndRaConfigReply)(nil),
2369                 (*SwInterfaceIP6ndRaPrefix)(nil),
2370                 (*SwInterfaceIP6ndRaPrefixReply)(nil),
2371                 (*WantIP4ArpEvents)(nil),
2372                 (*WantIP4ArpEventsReply)(nil),
2373                 (*WantIP6NdEvents)(nil),
2374                 (*WantIP6NdEventsReply)(nil),
2375                 (*WantIP6RaEvents)(nil),
2376                 (*WantIP6RaEventsReply)(nil),
2377         }
2378 }
2379
2380 // RPCService represents RPC service API for ip module.
2381 type RPCService interface {
2382         DumpIP6ndProxy(ctx context.Context, in *IP6ndProxyDump) (RPCService_DumpIP6ndProxyClient, error)
2383         DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error)
2384         DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error)
2385         DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error)
2386         DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error)
2387         DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error)
2388         DumpIPNeighbor(ctx context.Context, in *IPNeighborDump) (RPCService_DumpIPNeighborClient, error)
2389         DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error)
2390         DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error)
2391         DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error)
2392         DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error)
2393         DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error)
2394         DumpProxyArp(ctx context.Context, in *ProxyArpDump) (RPCService_DumpProxyArpClient, error)
2395         DumpProxyArpIntfc(ctx context.Context, in *ProxyArpIntfcDump) (RPCService_DumpProxyArpIntfcClient, error)
2396         IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error)
2397         IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error)
2398         IP6ndProxyAddDel(ctx context.Context, in *IP6ndProxyAddDel) (*IP6ndProxyAddDelReply, error)
2399         IP6ndSendRouterSolicitation(ctx context.Context, in *IP6ndSendRouterSolicitation) (*IP6ndSendRouterSolicitationReply, error)
2400         IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error)
2401         IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
2402         IPNeighborAddDel(ctx context.Context, in *IPNeighborAddDel) (*IPNeighborAddDelReply, error)
2403         IPProbeNeighbor(ctx context.Context, in *IPProbeNeighbor) (*IPProbeNeighborReply, error)
2404         IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
2405         IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
2406         IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error)
2407         IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
2408         IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
2409         IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
2410         IPScanNeighborEnableDisable(ctx context.Context, in *IPScanNeighborEnableDisable) (*IPScanNeighborEnableDisableReply, error)
2411         IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
2412         IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
2413         IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error)
2414         IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
2415         ProxyArpAddDel(ctx context.Context, in *ProxyArpAddDel) (*ProxyArpAddDelReply, error)
2416         ProxyArpIntfcEnableDisable(ctx context.Context, in *ProxyArpIntfcEnableDisable) (*ProxyArpIntfcEnableDisableReply, error)
2417         ResetFib(ctx context.Context, in *ResetFib) (*ResetFibReply, error)
2418         SetArpNeighborLimit(ctx context.Context, in *SetArpNeighborLimit) (*SetArpNeighborLimitReply, error)
2419         SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
2420         SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
2421         SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
2422         SwInterfaceIP6ndRaConfig(ctx context.Context, in *SwInterfaceIP6ndRaConfig) (*SwInterfaceIP6ndRaConfigReply, error)
2423         SwInterfaceIP6ndRaPrefix(ctx context.Context, in *SwInterfaceIP6ndRaPrefix) (*SwInterfaceIP6ndRaPrefixReply, error)
2424         WantIP4ArpEvents(ctx context.Context, in *WantIP4ArpEvents) (*WantIP4ArpEventsReply, error)
2425         WantIP6NdEvents(ctx context.Context, in *WantIP6NdEvents) (*WantIP6NdEventsReply, error)
2426         WantIP6RaEvents(ctx context.Context, in *WantIP6RaEvents) (*WantIP6RaEventsReply, error)
2427 }
2428
2429 type serviceClient struct {
2430         ch api.Channel
2431 }
2432
2433 func NewServiceClient(ch api.Channel) RPCService {
2434         return &serviceClient{ch}
2435 }
2436
2437 func (c *serviceClient) DumpIP6ndProxy(ctx context.Context, in *IP6ndProxyDump) (RPCService_DumpIP6ndProxyClient, error) {
2438         stream := c.ch.SendMultiRequest(in)
2439         x := &serviceClient_DumpIP6ndProxyClient{stream}
2440         return x, nil
2441 }
2442
2443 type RPCService_DumpIP6ndProxyClient interface {
2444         Recv() (*IP6ndProxyDetails, error)
2445 }
2446
2447 type serviceClient_DumpIP6ndProxyClient struct {
2448         api.MultiRequestCtx
2449 }
2450
2451 func (c *serviceClient_DumpIP6ndProxyClient) Recv() (*IP6ndProxyDetails, error) {
2452         m := new(IP6ndProxyDetails)
2453         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2454         if err != nil {
2455                 return nil, err
2456         }
2457         if stop {
2458                 return nil, io.EOF
2459         }
2460         return m, nil
2461 }
2462
2463 func (c *serviceClient) DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error) {
2464         stream := c.ch.SendMultiRequest(in)
2465         x := &serviceClient_DumpIPAddressClient{stream}
2466         return x, nil
2467 }
2468
2469 type RPCService_DumpIPAddressClient interface {
2470         Recv() (*IPAddressDetails, error)
2471 }
2472
2473 type serviceClient_DumpIPAddressClient struct {
2474         api.MultiRequestCtx
2475 }
2476
2477 func (c *serviceClient_DumpIPAddressClient) Recv() (*IPAddressDetails, error) {
2478         m := new(IPAddressDetails)
2479         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2480         if err != nil {
2481                 return nil, err
2482         }
2483         if stop {
2484                 return nil, io.EOF
2485         }
2486         return m, nil
2487 }
2488
2489 func (c *serviceClient) DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error) {
2490         stream := c.ch.SendMultiRequest(in)
2491         x := &serviceClient_DumpIPContainerProxyClient{stream}
2492         return x, nil
2493 }
2494
2495 type RPCService_DumpIPContainerProxyClient interface {
2496         Recv() (*IPContainerProxyDetails, error)
2497 }
2498
2499 type serviceClient_DumpIPContainerProxyClient struct {
2500         api.MultiRequestCtx
2501 }
2502
2503 func (c *serviceClient_DumpIPContainerProxyClient) Recv() (*IPContainerProxyDetails, error) {
2504         m := new(IPContainerProxyDetails)
2505         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2506         if err != nil {
2507                 return nil, err
2508         }
2509         if stop {
2510                 return nil, io.EOF
2511         }
2512         return m, nil
2513 }
2514
2515 func (c *serviceClient) DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error) {
2516         stream := c.ch.SendMultiRequest(in)
2517         x := &serviceClient_DumpIPClient{stream}
2518         return x, nil
2519 }
2520
2521 type RPCService_DumpIPClient interface {
2522         Recv() (*IPDetails, error)
2523 }
2524
2525 type serviceClient_DumpIPClient struct {
2526         api.MultiRequestCtx
2527 }
2528
2529 func (c *serviceClient_DumpIPClient) Recv() (*IPDetails, error) {
2530         m := new(IPDetails)
2531         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2532         if err != nil {
2533                 return nil, err
2534         }
2535         if stop {
2536                 return nil, io.EOF
2537         }
2538         return m, nil
2539 }
2540
2541 func (c *serviceClient) DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error) {
2542         stream := c.ch.SendMultiRequest(in)
2543         x := &serviceClient_DumpIPMrouteClient{stream}
2544         return x, nil
2545 }
2546
2547 type RPCService_DumpIPMrouteClient interface {
2548         Recv() (*IPMrouteDetails, error)
2549 }
2550
2551 type serviceClient_DumpIPMrouteClient struct {
2552         api.MultiRequestCtx
2553 }
2554
2555 func (c *serviceClient_DumpIPMrouteClient) Recv() (*IPMrouteDetails, error) {
2556         m := new(IPMrouteDetails)
2557         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2558         if err != nil {
2559                 return nil, err
2560         }
2561         if stop {
2562                 return nil, io.EOF
2563         }
2564         return m, nil
2565 }
2566
2567 func (c *serviceClient) DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error) {
2568         stream := c.ch.SendMultiRequest(in)
2569         x := &serviceClient_DumpIPMtableClient{stream}
2570         return x, nil
2571 }
2572
2573 type RPCService_DumpIPMtableClient interface {
2574         Recv() (*IPMtableDetails, error)
2575 }
2576
2577 type serviceClient_DumpIPMtableClient struct {
2578         api.MultiRequestCtx
2579 }
2580
2581 func (c *serviceClient_DumpIPMtableClient) Recv() (*IPMtableDetails, error) {
2582         m := new(IPMtableDetails)
2583         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2584         if err != nil {
2585                 return nil, err
2586         }
2587         if stop {
2588                 return nil, io.EOF
2589         }
2590         return m, nil
2591 }
2592
2593 func (c *serviceClient) DumpIPNeighbor(ctx context.Context, in *IPNeighborDump) (RPCService_DumpIPNeighborClient, error) {
2594         stream := c.ch.SendMultiRequest(in)
2595         x := &serviceClient_DumpIPNeighborClient{stream}
2596         return x, nil
2597 }
2598
2599 type RPCService_DumpIPNeighborClient interface {
2600         Recv() (*IPNeighborDetails, error)
2601 }
2602
2603 type serviceClient_DumpIPNeighborClient struct {
2604         api.MultiRequestCtx
2605 }
2606
2607 func (c *serviceClient_DumpIPNeighborClient) Recv() (*IPNeighborDetails, error) {
2608         m := new(IPNeighborDetails)
2609         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2610         if err != nil {
2611                 return nil, err
2612         }
2613         if stop {
2614                 return nil, io.EOF
2615         }
2616         return m, nil
2617 }
2618
2619 func (c *serviceClient) DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error) {
2620         stream := c.ch.SendMultiRequest(in)
2621         x := &serviceClient_DumpIPPuntRedirectClient{stream}
2622         return x, nil
2623 }
2624
2625 type RPCService_DumpIPPuntRedirectClient interface {
2626         Recv() (*IPPuntRedirectDetails, error)
2627 }
2628
2629 type serviceClient_DumpIPPuntRedirectClient struct {
2630         api.MultiRequestCtx
2631 }
2632
2633 func (c *serviceClient_DumpIPPuntRedirectClient) Recv() (*IPPuntRedirectDetails, error) {
2634         m := new(IPPuntRedirectDetails)
2635         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2636         if err != nil {
2637                 return nil, err
2638         }
2639         if stop {
2640                 return nil, io.EOF
2641         }
2642         return m, nil
2643 }
2644
2645 func (c *serviceClient) DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error) {
2646         stream := c.ch.SendMultiRequest(in)
2647         x := &serviceClient_DumpIPRouteClient{stream}
2648         return x, nil
2649 }
2650
2651 type RPCService_DumpIPRouteClient interface {
2652         Recv() (*IPRouteDetails, error)
2653 }
2654
2655 type serviceClient_DumpIPRouteClient struct {
2656         api.MultiRequestCtx
2657 }
2658
2659 func (c *serviceClient_DumpIPRouteClient) Recv() (*IPRouteDetails, error) {
2660         m := new(IPRouteDetails)
2661         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2662         if err != nil {
2663                 return nil, err
2664         }
2665         if stop {
2666                 return nil, io.EOF
2667         }
2668         return m, nil
2669 }
2670
2671 func (c *serviceClient) DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error) {
2672         stream := c.ch.SendMultiRequest(in)
2673         x := &serviceClient_DumpIPTableClient{stream}
2674         return x, nil
2675 }
2676
2677 type RPCService_DumpIPTableClient interface {
2678         Recv() (*IPTableDetails, error)
2679 }
2680
2681 type serviceClient_DumpIPTableClient struct {
2682         api.MultiRequestCtx
2683 }
2684
2685 func (c *serviceClient_DumpIPTableClient) Recv() (*IPTableDetails, error) {
2686         m := new(IPTableDetails)
2687         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2688         if err != nil {
2689                 return nil, err
2690         }
2691         if stop {
2692                 return nil, io.EOF
2693         }
2694         return m, nil
2695 }
2696
2697 func (c *serviceClient) DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error) {
2698         stream := c.ch.SendMultiRequest(in)
2699         x := &serviceClient_DumpIPUnnumberedClient{stream}
2700         return x, nil
2701 }
2702
2703 type RPCService_DumpIPUnnumberedClient interface {
2704         Recv() (*IPUnnumberedDetails, error)
2705 }
2706
2707 type serviceClient_DumpIPUnnumberedClient struct {
2708         api.MultiRequestCtx
2709 }
2710
2711 func (c *serviceClient_DumpIPUnnumberedClient) Recv() (*IPUnnumberedDetails, error) {
2712         m := new(IPUnnumberedDetails)
2713         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2714         if err != nil {
2715                 return nil, err
2716         }
2717         if stop {
2718                 return nil, io.EOF
2719         }
2720         return m, nil
2721 }
2722
2723 func (c *serviceClient) DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error) {
2724         stream := c.ch.SendMultiRequest(in)
2725         x := &serviceClient_DumpMfibSignalClient{stream}
2726         return x, nil
2727 }
2728
2729 type RPCService_DumpMfibSignalClient interface {
2730         Recv() (*MfibSignalDetails, error)
2731 }
2732
2733 type serviceClient_DumpMfibSignalClient struct {
2734         api.MultiRequestCtx
2735 }
2736
2737 func (c *serviceClient_DumpMfibSignalClient) Recv() (*MfibSignalDetails, error) {
2738         m := new(MfibSignalDetails)
2739         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2740         if err != nil {
2741                 return nil, err
2742         }
2743         if stop {
2744                 return nil, io.EOF
2745         }
2746         return m, nil
2747 }
2748
2749 func (c *serviceClient) DumpProxyArp(ctx context.Context, in *ProxyArpDump) (RPCService_DumpProxyArpClient, error) {
2750         stream := c.ch.SendMultiRequest(in)
2751         x := &serviceClient_DumpProxyArpClient{stream}
2752         return x, nil
2753 }
2754
2755 type RPCService_DumpProxyArpClient interface {
2756         Recv() (*ProxyArpDetails, error)
2757 }
2758
2759 type serviceClient_DumpProxyArpClient struct {
2760         api.MultiRequestCtx
2761 }
2762
2763 func (c *serviceClient_DumpProxyArpClient) Recv() (*ProxyArpDetails, error) {
2764         m := new(ProxyArpDetails)
2765         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2766         if err != nil {
2767                 return nil, err
2768         }
2769         if stop {
2770                 return nil, io.EOF
2771         }
2772         return m, nil
2773 }
2774
2775 func (c *serviceClient) DumpProxyArpIntfc(ctx context.Context, in *ProxyArpIntfcDump) (RPCService_DumpProxyArpIntfcClient, error) {
2776         stream := c.ch.SendMultiRequest(in)
2777         x := &serviceClient_DumpProxyArpIntfcClient{stream}
2778         return x, nil
2779 }
2780
2781 type RPCService_DumpProxyArpIntfcClient interface {
2782         Recv() (*ProxyArpIntfcDetails, error)
2783 }
2784
2785 type serviceClient_DumpProxyArpIntfcClient struct {
2786         api.MultiRequestCtx
2787 }
2788
2789 func (c *serviceClient_DumpProxyArpIntfcClient) Recv() (*ProxyArpIntfcDetails, error) {
2790         m := new(ProxyArpIntfcDetails)
2791         stop, err := c.MultiRequestCtx.ReceiveReply(m)
2792         if err != nil {
2793                 return nil, err
2794         }
2795         if stop {
2796                 return nil, io.EOF
2797         }
2798         return m, nil
2799 }
2800
2801 func (c *serviceClient) IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error) {
2802         out := new(IoamDisableReply)
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) IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error) {
2811         out := new(IoamEnableReply)
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) IP6ndProxyAddDel(ctx context.Context, in *IP6ndProxyAddDel) (*IP6ndProxyAddDelReply, error) {
2820         out := new(IP6ndProxyAddDelReply)
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) IP6ndSendRouterSolicitation(ctx context.Context, in *IP6ndSendRouterSolicitation) (*IP6ndSendRouterSolicitationReply, error) {
2829         out := new(IP6ndSendRouterSolicitationReply)
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) IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error) {
2838         out := new(IPContainerProxyAddDelReply)
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) IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error) {
2847         out := new(IPMrouteAddDelReply)
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) IPNeighborAddDel(ctx context.Context, in *IPNeighborAddDel) (*IPNeighborAddDelReply, error) {
2856         out := new(IPNeighborAddDelReply)
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) IPProbeNeighbor(ctx context.Context, in *IPProbeNeighbor) (*IPProbeNeighborReply, error) {
2865         out := new(IPProbeNeighborReply)
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) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
2874         out := new(IPPuntPoliceReply)
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) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
2883         out := new(IPPuntRedirectReply)
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) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
2892         out := new(IPReassemblyEnableDisableReply)
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) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
2901         out := new(IPReassemblyGetReply)
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) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
2910         out := new(IPReassemblySetReply)
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) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
2919         out := new(IPRouteAddDelReply)
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) IPScanNeighborEnableDisable(ctx context.Context, in *IPScanNeighborEnableDisable) (*IPScanNeighborEnableDisableReply, error) {
2928         out := new(IPScanNeighborEnableDisableReply)
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) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
2937         out := new(IPSourceAndPortRangeCheckAddDelReply)
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) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
2946         out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
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) IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error) {
2955         out := new(IPSourceCheckInterfaceAddDelReply)
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) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
2964         out := new(IPTableAddDelReply)
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) ProxyArpAddDel(ctx context.Context, in *ProxyArpAddDel) (*ProxyArpAddDelReply, error) {
2973         out := new(ProxyArpAddDelReply)
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) ProxyArpIntfcEnableDisable(ctx context.Context, in *ProxyArpIntfcEnableDisable) (*ProxyArpIntfcEnableDisableReply, error) {
2982         out := new(ProxyArpIntfcEnableDisableReply)
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) ResetFib(ctx context.Context, in *ResetFib) (*ResetFibReply, error) {
2991         out := new(ResetFibReply)
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) SetArpNeighborLimit(ctx context.Context, in *SetArpNeighborLimit) (*SetArpNeighborLimitReply, error) {
3000         out := new(SetArpNeighborLimitReply)
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) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
3009         out := new(SetIPFlowHashReply)
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) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
3018         out := new(SwInterfaceIP6EnableDisableReply)
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) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
3027         out := new(SwInterfaceIP6SetLinkLocalAddressReply)
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) SwInterfaceIP6ndRaConfig(ctx context.Context, in *SwInterfaceIP6ndRaConfig) (*SwInterfaceIP6ndRaConfigReply, error) {
3036         out := new(SwInterfaceIP6ndRaConfigReply)
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) SwInterfaceIP6ndRaPrefix(ctx context.Context, in *SwInterfaceIP6ndRaPrefix) (*SwInterfaceIP6ndRaPrefixReply, error) {
3045         out := new(SwInterfaceIP6ndRaPrefixReply)
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) WantIP4ArpEvents(ctx context.Context, in *WantIP4ArpEvents) (*WantIP4ArpEventsReply, error) {
3054         out := new(WantIP4ArpEventsReply)
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) WantIP6NdEvents(ctx context.Context, in *WantIP6NdEvents) (*WantIP6NdEventsReply, error) {
3063         out := new(WantIP6NdEventsReply)
3064         err := c.ch.SendRequest(in).ReceiveReply(out)
3065         if err != nil {
3066                 return nil, err
3067         }
3068         return out, nil
3069 }
3070
3071 func (c *serviceClient) WantIP6RaEvents(ctx context.Context, in *WantIP6RaEvents) (*WantIP6RaEventsReply, error) {
3072         out := new(WantIP6RaEventsReply)
3073         err := c.ch.SendRequest(in).ReceiveReply(out)
3074         if err != nil {
3075                 return nil, err
3076         }
3077         return out, nil
3078 }
3079
3080 // This is a compile-time assertion to ensure that this generated file
3081 // is compatible with the GoVPP api package it is being compiled against.
3082 // A compilation error at this line likely means your copy of the
3083 // GoVPP api package needs to be updated.
3084 const _ = api.GoVppAPIPackageIsVersion1 // please upgrade the GoVPP api package
3085
3086 // Reference imports to suppress errors if they are not otherwise used.
3087 var _ = api.RegisterMessage
3088 var _ = bytes.NewBuffer
3089 var _ = context.Background
3090 var _ = io.Copy
3091 var _ = strconv.Itoa
3092 var _ = struc.Pack