Fix import path in examples/binapi
[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          15 enums
9           7 aliases
10          14 types
11           1 union
12          60 messages
13          30 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         ethernet_types "git.fd.io/govpp.git/examples/binapi/ethernet_types"
26         interface_types "git.fd.io/govpp.git/examples/binapi/interface_types"
27         ip_types "git.fd.io/govpp.git/examples/binapi/ip_types"
28 )
29
30 const (
31         // ModuleName is the name of this module.
32         ModuleName = "ip"
33         // APIVersion is the API version of this module.
34         APIVersion = "3.0.1"
35         // VersionCrc is the CRC of this module.
36         VersionCrc = 0xfc3fea46
37 )
38
39 type AddressFamily = ip_types.AddressFamily
40
41 // FibPathFlags represents VPP binary API enum 'fib_path_flags'.
42 type FibPathFlags uint32
43
44 const (
45         FIB_API_PATH_FLAG_NONE                 FibPathFlags = 0
46         FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED FibPathFlags = 1
47         FIB_API_PATH_FLAG_RESOLVE_VIA_HOST     FibPathFlags = 2
48         FIB_API_PATH_FLAG_POP_PW_CW            FibPathFlags = 4
49 )
50
51 var FibPathFlags_name = map[uint32]string{
52         0: "FIB_API_PATH_FLAG_NONE",
53         1: "FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED",
54         2: "FIB_API_PATH_FLAG_RESOLVE_VIA_HOST",
55         4: "FIB_API_PATH_FLAG_POP_PW_CW",
56 }
57
58 var FibPathFlags_value = map[string]uint32{
59         "FIB_API_PATH_FLAG_NONE":                 0,
60         "FIB_API_PATH_FLAG_RESOLVE_VIA_ATTACHED": 1,
61         "FIB_API_PATH_FLAG_RESOLVE_VIA_HOST":     2,
62         "FIB_API_PATH_FLAG_POP_PW_CW":            4,
63 }
64
65 func (x FibPathFlags) String() string {
66         s, ok := FibPathFlags_name[uint32(x)]
67         if ok {
68                 return s
69         }
70         return strconv.Itoa(int(x))
71 }
72
73 // FibPathNhProto represents VPP binary API enum 'fib_path_nh_proto'.
74 type FibPathNhProto uint32
75
76 const (
77         FIB_API_PATH_NH_PROTO_IP4      FibPathNhProto = 0
78         FIB_API_PATH_NH_PROTO_IP6      FibPathNhProto = 1
79         FIB_API_PATH_NH_PROTO_MPLS     FibPathNhProto = 2
80         FIB_API_PATH_NH_PROTO_ETHERNET FibPathNhProto = 3
81         FIB_API_PATH_NH_PROTO_BIER     FibPathNhProto = 4
82 )
83
84 var FibPathNhProto_name = map[uint32]string{
85         0: "FIB_API_PATH_NH_PROTO_IP4",
86         1: "FIB_API_PATH_NH_PROTO_IP6",
87         2: "FIB_API_PATH_NH_PROTO_MPLS",
88         3: "FIB_API_PATH_NH_PROTO_ETHERNET",
89         4: "FIB_API_PATH_NH_PROTO_BIER",
90 }
91
92 var FibPathNhProto_value = map[string]uint32{
93         "FIB_API_PATH_NH_PROTO_IP4":      0,
94         "FIB_API_PATH_NH_PROTO_IP6":      1,
95         "FIB_API_PATH_NH_PROTO_MPLS":     2,
96         "FIB_API_PATH_NH_PROTO_ETHERNET": 3,
97         "FIB_API_PATH_NH_PROTO_BIER":     4,
98 }
99
100 func (x FibPathNhProto) String() string {
101         s, ok := FibPathNhProto_name[uint32(x)]
102         if ok {
103                 return s
104         }
105         return strconv.Itoa(int(x))
106 }
107
108 // FibPathType represents VPP binary API enum 'fib_path_type'.
109 type FibPathType uint32
110
111 const (
112         FIB_API_PATH_TYPE_NORMAL        FibPathType = 0
113         FIB_API_PATH_TYPE_LOCAL         FibPathType = 1
114         FIB_API_PATH_TYPE_DROP          FibPathType = 2
115         FIB_API_PATH_TYPE_UDP_ENCAP     FibPathType = 3
116         FIB_API_PATH_TYPE_BIER_IMP      FibPathType = 4
117         FIB_API_PATH_TYPE_ICMP_UNREACH  FibPathType = 5
118         FIB_API_PATH_TYPE_ICMP_PROHIBIT FibPathType = 6
119         FIB_API_PATH_TYPE_SOURCE_LOOKUP FibPathType = 7
120         FIB_API_PATH_TYPE_DVR           FibPathType = 8
121         FIB_API_PATH_TYPE_INTERFACE_RX  FibPathType = 9
122         FIB_API_PATH_TYPE_CLASSIFY      FibPathType = 10
123 )
124
125 var FibPathType_name = map[uint32]string{
126         0:  "FIB_API_PATH_TYPE_NORMAL",
127         1:  "FIB_API_PATH_TYPE_LOCAL",
128         2:  "FIB_API_PATH_TYPE_DROP",
129         3:  "FIB_API_PATH_TYPE_UDP_ENCAP",
130         4:  "FIB_API_PATH_TYPE_BIER_IMP",
131         5:  "FIB_API_PATH_TYPE_ICMP_UNREACH",
132         6:  "FIB_API_PATH_TYPE_ICMP_PROHIBIT",
133         7:  "FIB_API_PATH_TYPE_SOURCE_LOOKUP",
134         8:  "FIB_API_PATH_TYPE_DVR",
135         9:  "FIB_API_PATH_TYPE_INTERFACE_RX",
136         10: "FIB_API_PATH_TYPE_CLASSIFY",
137 }
138
139 var FibPathType_value = map[string]uint32{
140         "FIB_API_PATH_TYPE_NORMAL":        0,
141         "FIB_API_PATH_TYPE_LOCAL":         1,
142         "FIB_API_PATH_TYPE_DROP":          2,
143         "FIB_API_PATH_TYPE_UDP_ENCAP":     3,
144         "FIB_API_PATH_TYPE_BIER_IMP":      4,
145         "FIB_API_PATH_TYPE_ICMP_UNREACH":  5,
146         "FIB_API_PATH_TYPE_ICMP_PROHIBIT": 6,
147         "FIB_API_PATH_TYPE_SOURCE_LOOKUP": 7,
148         "FIB_API_PATH_TYPE_DVR":           8,
149         "FIB_API_PATH_TYPE_INTERFACE_RX":  9,
150         "FIB_API_PATH_TYPE_CLASSIFY":      10,
151 }
152
153 func (x FibPathType) String() string {
154         s, ok := FibPathType_name[uint32(x)]
155         if ok {
156                 return s
157         }
158         return strconv.Itoa(int(x))
159 }
160
161 type IfStatusFlags = interface_types.IfStatusFlags
162
163 type IfType = interface_types.IfType
164
165 type IPDscp = ip_types.IPDscp
166
167 type IPEcn = ip_types.IPEcn
168
169 type IPProto = ip_types.IPProto
170
171 // IPReassType represents VPP binary API enum 'ip_reass_type'.
172 type IPReassType uint32
173
174 const (
175         IP_REASS_TYPE_FULL            IPReassType = 0
176         IP_REASS_TYPE_SHALLOW_VIRTUAL IPReassType = 1
177 )
178
179 var IPReassType_name = map[uint32]string{
180         0: "IP_REASS_TYPE_FULL",
181         1: "IP_REASS_TYPE_SHALLOW_VIRTUAL",
182 }
183
184 var IPReassType_value = map[string]uint32{
185         "IP_REASS_TYPE_FULL":            0,
186         "IP_REASS_TYPE_SHALLOW_VIRTUAL": 1,
187 }
188
189 func (x IPReassType) String() string {
190         s, ok := IPReassType_name[uint32(x)]
191         if ok {
192                 return s
193         }
194         return strconv.Itoa(int(x))
195 }
196
197 type LinkDuplex = interface_types.LinkDuplex
198
199 // MfibItfFlags represents VPP binary API enum 'mfib_itf_flags'.
200 type MfibItfFlags uint32
201
202 const (
203         MFIB_API_ITF_FLAG_NONE           MfibItfFlags = 0
204         MFIB_API_ITF_FLAG_NEGATE_SIGNAL  MfibItfFlags = 1
205         MFIB_API_ITF_FLAG_ACCEPT         MfibItfFlags = 2
206         MFIB_API_ITF_FLAG_FORWARD        MfibItfFlags = 4
207         MFIB_API_ITF_FLAG_SIGNAL_PRESENT MfibItfFlags = 8
208         MFIB_API_ITF_FLAG_DONT_PRESERVE  MfibItfFlags = 16
209 )
210
211 var MfibItfFlags_name = map[uint32]string{
212         0:  "MFIB_API_ITF_FLAG_NONE",
213         1:  "MFIB_API_ITF_FLAG_NEGATE_SIGNAL",
214         2:  "MFIB_API_ITF_FLAG_ACCEPT",
215         4:  "MFIB_API_ITF_FLAG_FORWARD",
216         8:  "MFIB_API_ITF_FLAG_SIGNAL_PRESENT",
217         16: "MFIB_API_ITF_FLAG_DONT_PRESERVE",
218 }
219
220 var MfibItfFlags_value = map[string]uint32{
221         "MFIB_API_ITF_FLAG_NONE":           0,
222         "MFIB_API_ITF_FLAG_NEGATE_SIGNAL":  1,
223         "MFIB_API_ITF_FLAG_ACCEPT":         2,
224         "MFIB_API_ITF_FLAG_FORWARD":        4,
225         "MFIB_API_ITF_FLAG_SIGNAL_PRESENT": 8,
226         "MFIB_API_ITF_FLAG_DONT_PRESERVE":  16,
227 }
228
229 func (x MfibItfFlags) String() string {
230         s, ok := MfibItfFlags_name[uint32(x)]
231         if ok {
232                 return s
233         }
234         return strconv.Itoa(int(x))
235 }
236
237 type MtuProto = interface_types.MtuProto
238
239 type RxMode = interface_types.RxMode
240
241 type SubIfFlags = interface_types.SubIfFlags
242
243 type AddressWithPrefix = ip_types.AddressWithPrefix
244
245 type InterfaceIndex = interface_types.InterfaceIndex
246
247 type IP4Address = ip_types.IP4Address
248
249 type IP4AddressWithPrefix = ip_types.IP4AddressWithPrefix
250
251 type IP6Address = ip_types.IP6Address
252
253 type IP6AddressWithPrefix = ip_types.IP6AddressWithPrefix
254
255 type MacAddress = ethernet_types.MacAddress
256
257 type Address = ip_types.Address
258
259 // FibMplsLabel represents VPP binary API type 'fib_mpls_label'.
260 type FibMplsLabel struct {
261         IsUniform uint8
262         Label     uint32
263         TTL       uint8
264         Exp       uint8
265 }
266
267 func (*FibMplsLabel) GetTypeName() string { return "fib_mpls_label" }
268
269 // FibPath represents VPP binary API type 'fib_path'.
270 type FibPath struct {
271         SwIfIndex  uint32
272         TableID    uint32
273         RpfID      uint32
274         Weight     uint8
275         Preference uint8
276         Type       FibPathType
277         Flags      FibPathFlags
278         Proto      FibPathNhProto
279         Nh         FibPathNh
280         NLabels    uint8
281         LabelStack []FibMplsLabel `struc:"[16]FibMplsLabel"`
282 }
283
284 func (*FibPath) GetTypeName() string { return "fib_path" }
285
286 // FibPathNh represents VPP binary API type 'fib_path_nh'.
287 type FibPathNh struct {
288         Address            AddressUnion
289         ViaLabel           uint32
290         ObjID              uint32
291         ClassifyTableIndex uint32
292 }
293
294 func (*FibPathNh) GetTypeName() string { return "fib_path_nh" }
295
296 type IP4Prefix = ip_types.IP4Prefix
297
298 type IP6Prefix = ip_types.IP6Prefix
299
300 // IPMroute represents VPP binary API type 'ip_mroute'.
301 type IPMroute struct {
302         TableID    uint32
303         EntryFlags uint32
304         RpfID      uint32
305         Prefix     Mprefix
306         NPaths     uint8 `struc:"sizeof=Paths"`
307         Paths      []MfibPath
308 }
309
310 func (*IPMroute) GetTypeName() string { return "ip_mroute" }
311
312 // IPRoute represents VPP binary API type 'ip_route'.
313 type IPRoute struct {
314         TableID    uint32
315         StatsIndex uint32
316         Prefix     Prefix
317         NPaths     uint8 `struc:"sizeof=Paths"`
318         Paths      []FibPath
319 }
320
321 func (*IPRoute) GetTypeName() string { return "ip_route" }
322
323 // IPTable represents VPP binary API type 'ip_table'.
324 type IPTable struct {
325         TableID uint32
326         IsIP6   bool
327         Name    string `struc:"[64]byte"`
328 }
329
330 func (*IPTable) GetTypeName() string { return "ip_table" }
331
332 // MfibPath represents VPP binary API type 'mfib_path'.
333 type MfibPath struct {
334         ItfFlags MfibItfFlags
335         Path     FibPath
336 }
337
338 func (*MfibPath) GetTypeName() string { return "mfib_path" }
339
340 type Mprefix = ip_types.Mprefix
341
342 type Prefix = ip_types.Prefix
343
344 type PrefixMatcher = ip_types.PrefixMatcher
345
346 // PuntRedirect represents VPP binary API type 'punt_redirect'.
347 type PuntRedirect struct {
348         RxSwIfIndex InterfaceIndex
349         TxSwIfIndex InterfaceIndex
350         Nh          Address
351 }
352
353 func (*PuntRedirect) GetTypeName() string { return "punt_redirect" }
354
355 type AddressUnion = ip_types.AddressUnion
356
357 // IoamDisable represents VPP binary API message 'ioam_disable'.
358 type IoamDisable struct {
359         ID uint16
360 }
361
362 func (m *IoamDisable) Reset()                        { *m = IoamDisable{} }
363 func (*IoamDisable) GetMessageName() string          { return "ioam_disable" }
364 func (*IoamDisable) GetCrcString() string            { return "6b16a45e" }
365 func (*IoamDisable) GetMessageType() api.MessageType { return api.RequestMessage }
366
367 // IoamDisableReply represents VPP binary API message 'ioam_disable_reply'.
368 type IoamDisableReply struct {
369         Retval int32
370 }
371
372 func (m *IoamDisableReply) Reset()                        { *m = IoamDisableReply{} }
373 func (*IoamDisableReply) GetMessageName() string          { return "ioam_disable_reply" }
374 func (*IoamDisableReply) GetCrcString() string            { return "e8d4e804" }
375 func (*IoamDisableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
376
377 // IoamEnable represents VPP binary API message 'ioam_enable'.
378 type IoamEnable struct {
379         ID          uint16
380         Seqno       bool
381         Analyse     bool
382         PotEnable   bool
383         TraceEnable bool
384         NodeID      uint32
385 }
386
387 func (m *IoamEnable) Reset()                        { *m = IoamEnable{} }
388 func (*IoamEnable) GetMessageName() string          { return "ioam_enable" }
389 func (*IoamEnable) GetCrcString() string            { return "51ccd868" }
390 func (*IoamEnable) GetMessageType() api.MessageType { return api.RequestMessage }
391
392 // IoamEnableReply represents VPP binary API message 'ioam_enable_reply'.
393 type IoamEnableReply struct {
394         Retval int32
395 }
396
397 func (m *IoamEnableReply) Reset()                        { *m = IoamEnableReply{} }
398 func (*IoamEnableReply) GetMessageName() string          { return "ioam_enable_reply" }
399 func (*IoamEnableReply) GetCrcString() string            { return "e8d4e804" }
400 func (*IoamEnableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
401
402 // IPAddressDetails represents VPP binary API message 'ip_address_details'.
403 type IPAddressDetails struct {
404         SwIfIndex InterfaceIndex
405         Prefix    AddressWithPrefix
406 }
407
408 func (m *IPAddressDetails) Reset()                        { *m = IPAddressDetails{} }
409 func (*IPAddressDetails) GetMessageName() string          { return "ip_address_details" }
410 func (*IPAddressDetails) GetCrcString() string            { return "b1199745" }
411 func (*IPAddressDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
412
413 // IPAddressDump represents VPP binary API message 'ip_address_dump'.
414 type IPAddressDump struct {
415         SwIfIndex InterfaceIndex
416         IsIPv6    bool
417 }
418
419 func (m *IPAddressDump) Reset()                        { *m = IPAddressDump{} }
420 func (*IPAddressDump) GetMessageName() string          { return "ip_address_dump" }
421 func (*IPAddressDump) GetCrcString() string            { return "2d033de4" }
422 func (*IPAddressDump) GetMessageType() api.MessageType { return api.RequestMessage }
423
424 // IPContainerProxyAddDel represents VPP binary API message 'ip_container_proxy_add_del'.
425 type IPContainerProxyAddDel struct {
426         Pfx       Prefix
427         SwIfIndex InterfaceIndex
428         IsAdd     bool
429 }
430
431 func (m *IPContainerProxyAddDel) Reset()                        { *m = IPContainerProxyAddDel{} }
432 func (*IPContainerProxyAddDel) GetMessageName() string          { return "ip_container_proxy_add_del" }
433 func (*IPContainerProxyAddDel) GetCrcString() string            { return "91189f40" }
434 func (*IPContainerProxyAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
435
436 // IPContainerProxyAddDelReply represents VPP binary API message 'ip_container_proxy_add_del_reply'.
437 type IPContainerProxyAddDelReply struct {
438         Retval int32
439 }
440
441 func (m *IPContainerProxyAddDelReply) Reset() { *m = IPContainerProxyAddDelReply{} }
442 func (*IPContainerProxyAddDelReply) GetMessageName() string {
443         return "ip_container_proxy_add_del_reply"
444 }
445 func (*IPContainerProxyAddDelReply) GetCrcString() string            { return "e8d4e804" }
446 func (*IPContainerProxyAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
447
448 // IPContainerProxyDetails represents VPP binary API message 'ip_container_proxy_details'.
449 type IPContainerProxyDetails struct {
450         SwIfIndex InterfaceIndex
451         Prefix    Prefix
452 }
453
454 func (m *IPContainerProxyDetails) Reset()                        { *m = IPContainerProxyDetails{} }
455 func (*IPContainerProxyDetails) GetMessageName() string          { return "ip_container_proxy_details" }
456 func (*IPContainerProxyDetails) GetCrcString() string            { return "0ee460e8" }
457 func (*IPContainerProxyDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
458
459 // IPContainerProxyDump represents VPP binary API message 'ip_container_proxy_dump'.
460 type IPContainerProxyDump struct{}
461
462 func (m *IPContainerProxyDump) Reset()                        { *m = IPContainerProxyDump{} }
463 func (*IPContainerProxyDump) GetMessageName() string          { return "ip_container_proxy_dump" }
464 func (*IPContainerProxyDump) GetCrcString() string            { return "51077d14" }
465 func (*IPContainerProxyDump) GetMessageType() api.MessageType { return api.RequestMessage }
466
467 // IPDetails represents VPP binary API message 'ip_details'.
468 type IPDetails struct {
469         SwIfIndex InterfaceIndex
470         IsIPv6    bool
471 }
472
473 func (m *IPDetails) Reset()                        { *m = IPDetails{} }
474 func (*IPDetails) GetMessageName() string          { return "ip_details" }
475 func (*IPDetails) GetCrcString() string            { return "eb152d07" }
476 func (*IPDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
477
478 // IPDump represents VPP binary API message 'ip_dump'.
479 type IPDump struct {
480         IsIPv6 bool
481 }
482
483 func (m *IPDump) Reset()                        { *m = IPDump{} }
484 func (*IPDump) GetMessageName() string          { return "ip_dump" }
485 func (*IPDump) GetCrcString() string            { return "98d231ca" }
486 func (*IPDump) GetMessageType() api.MessageType { return api.RequestMessage }
487
488 // IPMrouteAddDel represents VPP binary API message 'ip_mroute_add_del'.
489 type IPMrouteAddDel struct {
490         IsAdd       bool
491         IsMultipath bool
492         Route       IPMroute
493 }
494
495 func (m *IPMrouteAddDel) Reset()                        { *m = IPMrouteAddDel{} }
496 func (*IPMrouteAddDel) GetMessageName() string          { return "ip_mroute_add_del" }
497 func (*IPMrouteAddDel) GetCrcString() string            { return "f6627d17" }
498 func (*IPMrouteAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
499
500 // IPMrouteAddDelReply represents VPP binary API message 'ip_mroute_add_del_reply'.
501 type IPMrouteAddDelReply struct {
502         Retval     int32
503         StatsIndex uint32
504 }
505
506 func (m *IPMrouteAddDelReply) Reset()                        { *m = IPMrouteAddDelReply{} }
507 func (*IPMrouteAddDelReply) GetMessageName() string          { return "ip_mroute_add_del_reply" }
508 func (*IPMrouteAddDelReply) GetCrcString() string            { return "1992deab" }
509 func (*IPMrouteAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
510
511 // IPMrouteDetails represents VPP binary API message 'ip_mroute_details'.
512 type IPMrouteDetails struct {
513         Route IPMroute
514 }
515
516 func (m *IPMrouteDetails) Reset()                        { *m = IPMrouteDetails{} }
517 func (*IPMrouteDetails) GetMessageName() string          { return "ip_mroute_details" }
518 func (*IPMrouteDetails) GetCrcString() string            { return "c1cb4b44" }
519 func (*IPMrouteDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
520
521 // IPMrouteDump represents VPP binary API message 'ip_mroute_dump'.
522 type IPMrouteDump struct {
523         Table IPTable
524 }
525
526 func (m *IPMrouteDump) Reset()                        { *m = IPMrouteDump{} }
527 func (*IPMrouteDump) GetMessageName() string          { return "ip_mroute_dump" }
528 func (*IPMrouteDump) GetCrcString() string            { return "b9d2e09e" }
529 func (*IPMrouteDump) GetMessageType() api.MessageType { return api.RequestMessage }
530
531 // IPMtableDetails represents VPP binary API message 'ip_mtable_details'.
532 type IPMtableDetails struct {
533         Table IPTable
534 }
535
536 func (m *IPMtableDetails) Reset()                        { *m = IPMtableDetails{} }
537 func (*IPMtableDetails) GetMessageName() string          { return "ip_mtable_details" }
538 func (*IPMtableDetails) GetCrcString() string            { return "b9d2e09e" }
539 func (*IPMtableDetails) GetMessageType() api.MessageType { return api.RequestMessage }
540
541 // IPMtableDump represents VPP binary API message 'ip_mtable_dump'.
542 type IPMtableDump struct{}
543
544 func (m *IPMtableDump) Reset()                        { *m = IPMtableDump{} }
545 func (*IPMtableDump) GetMessageName() string          { return "ip_mtable_dump" }
546 func (*IPMtableDump) GetCrcString() string            { return "51077d14" }
547 func (*IPMtableDump) GetMessageType() api.MessageType { return api.RequestMessage }
548
549 // IPPuntPolice represents VPP binary API message 'ip_punt_police'.
550 type IPPuntPolice struct {
551         PolicerIndex uint32
552         IsAdd        bool
553         IsIP6        bool
554 }
555
556 func (m *IPPuntPolice) Reset()                        { *m = IPPuntPolice{} }
557 func (*IPPuntPolice) GetMessageName() string          { return "ip_punt_police" }
558 func (*IPPuntPolice) GetCrcString() string            { return "db867cea" }
559 func (*IPPuntPolice) GetMessageType() api.MessageType { return api.RequestMessage }
560
561 // IPPuntPoliceReply represents VPP binary API message 'ip_punt_police_reply'.
562 type IPPuntPoliceReply struct {
563         Retval int32
564 }
565
566 func (m *IPPuntPoliceReply) Reset()                        { *m = IPPuntPoliceReply{} }
567 func (*IPPuntPoliceReply) GetMessageName() string          { return "ip_punt_police_reply" }
568 func (*IPPuntPoliceReply) GetCrcString() string            { return "e8d4e804" }
569 func (*IPPuntPoliceReply) GetMessageType() api.MessageType { return api.ReplyMessage }
570
571 // IPPuntRedirect represents VPP binary API message 'ip_punt_redirect'.
572 type IPPuntRedirect struct {
573         Punt  PuntRedirect
574         IsAdd bool
575 }
576
577 func (m *IPPuntRedirect) Reset()                        { *m = IPPuntRedirect{} }
578 func (*IPPuntRedirect) GetMessageName() string          { return "ip_punt_redirect" }
579 func (*IPPuntRedirect) GetCrcString() string            { return "a9a5592c" }
580 func (*IPPuntRedirect) GetMessageType() api.MessageType { return api.RequestMessage }
581
582 // IPPuntRedirectDetails represents VPP binary API message 'ip_punt_redirect_details'.
583 type IPPuntRedirectDetails struct {
584         Punt PuntRedirect
585 }
586
587 func (m *IPPuntRedirectDetails) Reset()                        { *m = IPPuntRedirectDetails{} }
588 func (*IPPuntRedirectDetails) GetMessageName() string          { return "ip_punt_redirect_details" }
589 func (*IPPuntRedirectDetails) GetCrcString() string            { return "3924f5d3" }
590 func (*IPPuntRedirectDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
591
592 // IPPuntRedirectDump represents VPP binary API message 'ip_punt_redirect_dump'.
593 type IPPuntRedirectDump struct {
594         SwIfIndex InterfaceIndex
595         IsIPv6    bool
596 }
597
598 func (m *IPPuntRedirectDump) Reset()                        { *m = IPPuntRedirectDump{} }
599 func (*IPPuntRedirectDump) GetMessageName() string          { return "ip_punt_redirect_dump" }
600 func (*IPPuntRedirectDump) GetCrcString() string            { return "2d033de4" }
601 func (*IPPuntRedirectDump) GetMessageType() api.MessageType { return api.RequestMessage }
602
603 // IPPuntRedirectReply represents VPP binary API message 'ip_punt_redirect_reply'.
604 type IPPuntRedirectReply struct {
605         Retval int32
606 }
607
608 func (m *IPPuntRedirectReply) Reset()                        { *m = IPPuntRedirectReply{} }
609 func (*IPPuntRedirectReply) GetMessageName() string          { return "ip_punt_redirect_reply" }
610 func (*IPPuntRedirectReply) GetCrcString() string            { return "e8d4e804" }
611 func (*IPPuntRedirectReply) GetMessageType() api.MessageType { return api.ReplyMessage }
612
613 // IPReassemblyEnableDisable represents VPP binary API message 'ip_reassembly_enable_disable'.
614 type IPReassemblyEnableDisable struct {
615         SwIfIndex InterfaceIndex
616         EnableIP4 bool
617         EnableIP6 bool
618         Type      IPReassType
619 }
620
621 func (m *IPReassemblyEnableDisable) Reset()                        { *m = IPReassemblyEnableDisable{} }
622 func (*IPReassemblyEnableDisable) GetMessageName() string          { return "ip_reassembly_enable_disable" }
623 func (*IPReassemblyEnableDisable) GetCrcString() string            { return "885c85a6" }
624 func (*IPReassemblyEnableDisable) GetMessageType() api.MessageType { return api.RequestMessage }
625
626 // IPReassemblyEnableDisableReply represents VPP binary API message 'ip_reassembly_enable_disable_reply'.
627 type IPReassemblyEnableDisableReply struct {
628         Retval int32
629 }
630
631 func (m *IPReassemblyEnableDisableReply) Reset() { *m = IPReassemblyEnableDisableReply{} }
632 func (*IPReassemblyEnableDisableReply) GetMessageName() string {
633         return "ip_reassembly_enable_disable_reply"
634 }
635 func (*IPReassemblyEnableDisableReply) GetCrcString() string            { return "e8d4e804" }
636 func (*IPReassemblyEnableDisableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
637
638 // IPReassemblyGet represents VPP binary API message 'ip_reassembly_get'.
639 type IPReassemblyGet struct {
640         IsIP6 bool
641         Type  IPReassType
642 }
643
644 func (m *IPReassemblyGet) Reset()                        { *m = IPReassemblyGet{} }
645 func (*IPReassemblyGet) GetMessageName() string          { return "ip_reassembly_get" }
646 func (*IPReassemblyGet) GetCrcString() string            { return "ea13ff63" }
647 func (*IPReassemblyGet) GetMessageType() api.MessageType { return api.RequestMessage }
648
649 // IPReassemblyGetReply represents VPP binary API message 'ip_reassembly_get_reply'.
650 type IPReassemblyGetReply struct {
651         Retval               int32
652         TimeoutMs            uint32
653         MaxReassemblies      uint32
654         MaxReassemblyLength  uint32
655         ExpireWalkIntervalMs uint32
656         IsIP6                bool
657 }
658
659 func (m *IPReassemblyGetReply) Reset()                        { *m = IPReassemblyGetReply{} }
660 func (*IPReassemblyGetReply) GetMessageName() string          { return "ip_reassembly_get_reply" }
661 func (*IPReassemblyGetReply) GetCrcString() string            { return "d5eb8d34" }
662 func (*IPReassemblyGetReply) GetMessageType() api.MessageType { return api.ReplyMessage }
663
664 // IPReassemblySet represents VPP binary API message 'ip_reassembly_set'.
665 type IPReassemblySet struct {
666         TimeoutMs            uint32
667         MaxReassemblies      uint32
668         MaxReassemblyLength  uint32
669         ExpireWalkIntervalMs uint32
670         IsIP6                bool
671         Type                 IPReassType
672 }
673
674 func (m *IPReassemblySet) Reset()                        { *m = IPReassemblySet{} }
675 func (*IPReassemblySet) GetMessageName() string          { return "ip_reassembly_set" }
676 func (*IPReassemblySet) GetCrcString() string            { return "16467d25" }
677 func (*IPReassemblySet) GetMessageType() api.MessageType { return api.RequestMessage }
678
679 // IPReassemblySetReply represents VPP binary API message 'ip_reassembly_set_reply'.
680 type IPReassemblySetReply struct {
681         Retval int32
682 }
683
684 func (m *IPReassemblySetReply) Reset()                        { *m = IPReassemblySetReply{} }
685 func (*IPReassemblySetReply) GetMessageName() string          { return "ip_reassembly_set_reply" }
686 func (*IPReassemblySetReply) GetCrcString() string            { return "e8d4e804" }
687 func (*IPReassemblySetReply) GetMessageType() api.MessageType { return api.ReplyMessage }
688
689 // IPRouteAddDel represents VPP binary API message 'ip_route_add_del'.
690 type IPRouteAddDel struct {
691         IsAdd       bool
692         IsMultipath bool
693         Route       IPRoute
694 }
695
696 func (m *IPRouteAddDel) Reset()                        { *m = IPRouteAddDel{} }
697 func (*IPRouteAddDel) GetMessageName() string          { return "ip_route_add_del" }
698 func (*IPRouteAddDel) GetCrcString() string            { return "c1ff832d" }
699 func (*IPRouteAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
700
701 // IPRouteAddDelReply represents VPP binary API message 'ip_route_add_del_reply'.
702 type IPRouteAddDelReply struct {
703         Retval     int32
704         StatsIndex uint32
705 }
706
707 func (m *IPRouteAddDelReply) Reset()                        { *m = IPRouteAddDelReply{} }
708 func (*IPRouteAddDelReply) GetMessageName() string          { return "ip_route_add_del_reply" }
709 func (*IPRouteAddDelReply) GetCrcString() string            { return "1992deab" }
710 func (*IPRouteAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
711
712 // IPRouteDetails represents VPP binary API message 'ip_route_details'.
713 type IPRouteDetails struct {
714         Route IPRoute
715 }
716
717 func (m *IPRouteDetails) Reset()                        { *m = IPRouteDetails{} }
718 func (*IPRouteDetails) GetMessageName() string          { return "ip_route_details" }
719 func (*IPRouteDetails) GetCrcString() string            { return "d1ffaae1" }
720 func (*IPRouteDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
721
722 // IPRouteDump represents VPP binary API message 'ip_route_dump'.
723 type IPRouteDump struct {
724         Table IPTable
725 }
726
727 func (m *IPRouteDump) Reset()                        { *m = IPRouteDump{} }
728 func (*IPRouteDump) GetMessageName() string          { return "ip_route_dump" }
729 func (*IPRouteDump) GetCrcString() string            { return "b9d2e09e" }
730 func (*IPRouteDump) GetMessageType() api.MessageType { return api.RequestMessage }
731
732 // IPSourceAndPortRangeCheckAddDel represents VPP binary API message 'ip_source_and_port_range_check_add_del'.
733 type IPSourceAndPortRangeCheckAddDel struct {
734         IsAdd          bool
735         Prefix         Prefix
736         NumberOfRanges uint8
737         LowPorts       []uint16 `struc:"[32]uint16"`
738         HighPorts      []uint16 `struc:"[32]uint16"`
739         VrfID          uint32
740 }
741
742 func (m *IPSourceAndPortRangeCheckAddDel) Reset() { *m = IPSourceAndPortRangeCheckAddDel{} }
743 func (*IPSourceAndPortRangeCheckAddDel) GetMessageName() string {
744         return "ip_source_and_port_range_check_add_del"
745 }
746 func (*IPSourceAndPortRangeCheckAddDel) GetCrcString() string            { return "8bfc76f2" }
747 func (*IPSourceAndPortRangeCheckAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
748
749 // IPSourceAndPortRangeCheckAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_add_del_reply'.
750 type IPSourceAndPortRangeCheckAddDelReply struct {
751         Retval int32
752 }
753
754 func (m *IPSourceAndPortRangeCheckAddDelReply) Reset() { *m = IPSourceAndPortRangeCheckAddDelReply{} }
755 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageName() string {
756         return "ip_source_and_port_range_check_add_del_reply"
757 }
758 func (*IPSourceAndPortRangeCheckAddDelReply) GetCrcString() string { return "e8d4e804" }
759 func (*IPSourceAndPortRangeCheckAddDelReply) GetMessageType() api.MessageType {
760         return api.ReplyMessage
761 }
762
763 // IPSourceAndPortRangeCheckInterfaceAddDel represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del'.
764 type IPSourceAndPortRangeCheckInterfaceAddDel struct {
765         IsAdd       bool
766         SwIfIndex   InterfaceIndex
767         TCPInVrfID  uint32
768         TCPOutVrfID uint32
769         UDPInVrfID  uint32
770         UDPOutVrfID uint32
771 }
772
773 func (m *IPSourceAndPortRangeCheckInterfaceAddDel) Reset() {
774         *m = IPSourceAndPortRangeCheckInterfaceAddDel{}
775 }
776 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageName() string {
777         return "ip_source_and_port_range_check_interface_add_del"
778 }
779 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetCrcString() string { return "e1ba8987" }
780 func (*IPSourceAndPortRangeCheckInterfaceAddDel) GetMessageType() api.MessageType {
781         return api.RequestMessage
782 }
783
784 // IPSourceAndPortRangeCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_and_port_range_check_interface_add_del_reply'.
785 type IPSourceAndPortRangeCheckInterfaceAddDelReply struct {
786         Retval int32
787 }
788
789 func (m *IPSourceAndPortRangeCheckInterfaceAddDelReply) Reset() {
790         *m = IPSourceAndPortRangeCheckInterfaceAddDelReply{}
791 }
792 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageName() string {
793         return "ip_source_and_port_range_check_interface_add_del_reply"
794 }
795 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetCrcString() string { return "e8d4e804" }
796 func (*IPSourceAndPortRangeCheckInterfaceAddDelReply) GetMessageType() api.MessageType {
797         return api.ReplyMessage
798 }
799
800 // IPSourceCheckInterfaceAddDel represents VPP binary API message 'ip_source_check_interface_add_del'.
801 type IPSourceCheckInterfaceAddDel struct {
802         IsAdd     bool
803         Loose     bool
804         SwIfIndex InterfaceIndex
805 }
806
807 func (m *IPSourceCheckInterfaceAddDel) Reset() { *m = IPSourceCheckInterfaceAddDel{} }
808 func (*IPSourceCheckInterfaceAddDel) GetMessageName() string {
809         return "ip_source_check_interface_add_del"
810 }
811 func (*IPSourceCheckInterfaceAddDel) GetCrcString() string            { return "6612356b" }
812 func (*IPSourceCheckInterfaceAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
813
814 // IPSourceCheckInterfaceAddDelReply represents VPP binary API message 'ip_source_check_interface_add_del_reply'.
815 type IPSourceCheckInterfaceAddDelReply struct {
816         Retval int32
817 }
818
819 func (m *IPSourceCheckInterfaceAddDelReply) Reset() { *m = IPSourceCheckInterfaceAddDelReply{} }
820 func (*IPSourceCheckInterfaceAddDelReply) GetMessageName() string {
821         return "ip_source_check_interface_add_del_reply"
822 }
823 func (*IPSourceCheckInterfaceAddDelReply) GetCrcString() string            { return "e8d4e804" }
824 func (*IPSourceCheckInterfaceAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
825
826 // IPTableAddDel represents VPP binary API message 'ip_table_add_del'.
827 type IPTableAddDel struct {
828         IsAdd bool
829         Table IPTable
830 }
831
832 func (m *IPTableAddDel) Reset()                        { *m = IPTableAddDel{} }
833 func (*IPTableAddDel) GetMessageName() string          { return "ip_table_add_del" }
834 func (*IPTableAddDel) GetCrcString() string            { return "0ffdaec0" }
835 func (*IPTableAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
836
837 // IPTableAddDelReply represents VPP binary API message 'ip_table_add_del_reply'.
838 type IPTableAddDelReply struct {
839         Retval int32
840 }
841
842 func (m *IPTableAddDelReply) Reset()                        { *m = IPTableAddDelReply{} }
843 func (*IPTableAddDelReply) GetMessageName() string          { return "ip_table_add_del_reply" }
844 func (*IPTableAddDelReply) GetCrcString() string            { return "e8d4e804" }
845 func (*IPTableAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
846
847 // IPTableDetails represents VPP binary API message 'ip_table_details'.
848 type IPTableDetails struct {
849         Table IPTable
850 }
851
852 func (m *IPTableDetails) Reset()                        { *m = IPTableDetails{} }
853 func (*IPTableDetails) GetMessageName() string          { return "ip_table_details" }
854 func (*IPTableDetails) GetCrcString() string            { return "c79fca0f" }
855 func (*IPTableDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
856
857 // IPTableDump represents VPP binary API message 'ip_table_dump'.
858 type IPTableDump struct{}
859
860 func (m *IPTableDump) Reset()                        { *m = IPTableDump{} }
861 func (*IPTableDump) GetMessageName() string          { return "ip_table_dump" }
862 func (*IPTableDump) GetCrcString() string            { return "51077d14" }
863 func (*IPTableDump) GetMessageType() api.MessageType { return api.RequestMessage }
864
865 // IPTableFlush represents VPP binary API message 'ip_table_flush'.
866 type IPTableFlush struct {
867         Table IPTable
868 }
869
870 func (m *IPTableFlush) Reset()                        { *m = IPTableFlush{} }
871 func (*IPTableFlush) GetMessageName() string          { return "ip_table_flush" }
872 func (*IPTableFlush) GetCrcString() string            { return "b9d2e09e" }
873 func (*IPTableFlush) GetMessageType() api.MessageType { return api.RequestMessage }
874
875 // IPTableFlushReply represents VPP binary API message 'ip_table_flush_reply'.
876 type IPTableFlushReply struct {
877         Retval int32
878 }
879
880 func (m *IPTableFlushReply) Reset()                        { *m = IPTableFlushReply{} }
881 func (*IPTableFlushReply) GetMessageName() string          { return "ip_table_flush_reply" }
882 func (*IPTableFlushReply) GetCrcString() string            { return "e8d4e804" }
883 func (*IPTableFlushReply) GetMessageType() api.MessageType { return api.ReplyMessage }
884
885 // IPTableReplaceBegin represents VPP binary API message 'ip_table_replace_begin'.
886 type IPTableReplaceBegin struct {
887         Table IPTable
888 }
889
890 func (m *IPTableReplaceBegin) Reset()                        { *m = IPTableReplaceBegin{} }
891 func (*IPTableReplaceBegin) GetMessageName() string          { return "ip_table_replace_begin" }
892 func (*IPTableReplaceBegin) GetCrcString() string            { return "b9d2e09e" }
893 func (*IPTableReplaceBegin) GetMessageType() api.MessageType { return api.RequestMessage }
894
895 // IPTableReplaceBeginReply represents VPP binary API message 'ip_table_replace_begin_reply'.
896 type IPTableReplaceBeginReply struct {
897         Retval int32
898 }
899
900 func (m *IPTableReplaceBeginReply) Reset()                        { *m = IPTableReplaceBeginReply{} }
901 func (*IPTableReplaceBeginReply) GetMessageName() string          { return "ip_table_replace_begin_reply" }
902 func (*IPTableReplaceBeginReply) GetCrcString() string            { return "e8d4e804" }
903 func (*IPTableReplaceBeginReply) GetMessageType() api.MessageType { return api.ReplyMessage }
904
905 // IPTableReplaceEnd represents VPP binary API message 'ip_table_replace_end'.
906 type IPTableReplaceEnd struct {
907         Table IPTable
908 }
909
910 func (m *IPTableReplaceEnd) Reset()                        { *m = IPTableReplaceEnd{} }
911 func (*IPTableReplaceEnd) GetMessageName() string          { return "ip_table_replace_end" }
912 func (*IPTableReplaceEnd) GetCrcString() string            { return "b9d2e09e" }
913 func (*IPTableReplaceEnd) GetMessageType() api.MessageType { return api.RequestMessage }
914
915 // IPTableReplaceEndReply represents VPP binary API message 'ip_table_replace_end_reply'.
916 type IPTableReplaceEndReply struct {
917         Retval int32
918 }
919
920 func (m *IPTableReplaceEndReply) Reset()                        { *m = IPTableReplaceEndReply{} }
921 func (*IPTableReplaceEndReply) GetMessageName() string          { return "ip_table_replace_end_reply" }
922 func (*IPTableReplaceEndReply) GetCrcString() string            { return "e8d4e804" }
923 func (*IPTableReplaceEndReply) GetMessageType() api.MessageType { return api.ReplyMessage }
924
925 // IPUnnumberedDetails represents VPP binary API message 'ip_unnumbered_details'.
926 type IPUnnumberedDetails struct {
927         SwIfIndex   InterfaceIndex
928         IPSwIfIndex InterfaceIndex
929 }
930
931 func (m *IPUnnumberedDetails) Reset()                        { *m = IPUnnumberedDetails{} }
932 func (*IPUnnumberedDetails) GetMessageName() string          { return "ip_unnumbered_details" }
933 func (*IPUnnumberedDetails) GetCrcString() string            { return "aa12a483" }
934 func (*IPUnnumberedDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
935
936 // IPUnnumberedDump represents VPP binary API message 'ip_unnumbered_dump'.
937 type IPUnnumberedDump struct {
938         SwIfIndex InterfaceIndex
939 }
940
941 func (m *IPUnnumberedDump) Reset()                        { *m = IPUnnumberedDump{} }
942 func (*IPUnnumberedDump) GetMessageName() string          { return "ip_unnumbered_dump" }
943 func (*IPUnnumberedDump) GetCrcString() string            { return "f9e6675e" }
944 func (*IPUnnumberedDump) GetMessageType() api.MessageType { return api.RequestMessage }
945
946 // MfibSignalDetails represents VPP binary API message 'mfib_signal_details'.
947 type MfibSignalDetails struct {
948         SwIfIndex    InterfaceIndex
949         TableID      uint32
950         Prefix       Mprefix
951         IPPacketLen  uint16
952         IPPacketData []byte `struc:"[256]byte"`
953 }
954
955 func (m *MfibSignalDetails) Reset()                        { *m = MfibSignalDetails{} }
956 func (*MfibSignalDetails) GetMessageName() string          { return "mfib_signal_details" }
957 func (*MfibSignalDetails) GetCrcString() string            { return "64398a9a" }
958 func (*MfibSignalDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
959
960 // MfibSignalDump represents VPP binary API message 'mfib_signal_dump'.
961 type MfibSignalDump struct{}
962
963 func (m *MfibSignalDump) Reset()                        { *m = MfibSignalDump{} }
964 func (*MfibSignalDump) GetMessageName() string          { return "mfib_signal_dump" }
965 func (*MfibSignalDump) GetCrcString() string            { return "51077d14" }
966 func (*MfibSignalDump) GetMessageType() api.MessageType { return api.RequestMessage }
967
968 // SetIPFlowHash represents VPP binary API message 'set_ip_flow_hash'.
969 type SetIPFlowHash struct {
970         VrfID     uint32
971         IsIPv6    bool
972         Src       bool
973         Dst       bool
974         Sport     bool
975         Dport     bool
976         Proto     bool
977         Reverse   bool
978         Symmetric bool
979 }
980
981 func (m *SetIPFlowHash) Reset()                        { *m = SetIPFlowHash{} }
982 func (*SetIPFlowHash) GetMessageName() string          { return "set_ip_flow_hash" }
983 func (*SetIPFlowHash) GetCrcString() string            { return "084ee09e" }
984 func (*SetIPFlowHash) GetMessageType() api.MessageType { return api.RequestMessage }
985
986 // SetIPFlowHashReply represents VPP binary API message 'set_ip_flow_hash_reply'.
987 type SetIPFlowHashReply struct {
988         Retval int32
989 }
990
991 func (m *SetIPFlowHashReply) Reset()                        { *m = SetIPFlowHashReply{} }
992 func (*SetIPFlowHashReply) GetMessageName() string          { return "set_ip_flow_hash_reply" }
993 func (*SetIPFlowHashReply) GetCrcString() string            { return "e8d4e804" }
994 func (*SetIPFlowHashReply) GetMessageType() api.MessageType { return api.ReplyMessage }
995
996 // SwInterfaceIP6EnableDisable represents VPP binary API message 'sw_interface_ip6_enable_disable'.
997 type SwInterfaceIP6EnableDisable struct {
998         SwIfIndex InterfaceIndex
999         Enable    bool
1000 }
1001
1002 func (m *SwInterfaceIP6EnableDisable) Reset()                        { *m = SwInterfaceIP6EnableDisable{} }
1003 func (*SwInterfaceIP6EnableDisable) GetMessageName() string          { return "sw_interface_ip6_enable_disable" }
1004 func (*SwInterfaceIP6EnableDisable) GetCrcString() string            { return "ae6cfcfb" }
1005 func (*SwInterfaceIP6EnableDisable) GetMessageType() api.MessageType { return api.RequestMessage }
1006
1007 // SwInterfaceIP6EnableDisableReply represents VPP binary API message 'sw_interface_ip6_enable_disable_reply'.
1008 type SwInterfaceIP6EnableDisableReply struct {
1009         Retval int32
1010 }
1011
1012 func (m *SwInterfaceIP6EnableDisableReply) Reset() { *m = SwInterfaceIP6EnableDisableReply{} }
1013 func (*SwInterfaceIP6EnableDisableReply) GetMessageName() string {
1014         return "sw_interface_ip6_enable_disable_reply"
1015 }
1016 func (*SwInterfaceIP6EnableDisableReply) GetCrcString() string            { return "e8d4e804" }
1017 func (*SwInterfaceIP6EnableDisableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
1018
1019 // SwInterfaceIP6SetLinkLocalAddress represents VPP binary API message 'sw_interface_ip6_set_link_local_address'.
1020 type SwInterfaceIP6SetLinkLocalAddress struct {
1021         SwIfIndex InterfaceIndex
1022         IP        IP6Address
1023 }
1024
1025 func (m *SwInterfaceIP6SetLinkLocalAddress) Reset() { *m = SwInterfaceIP6SetLinkLocalAddress{} }
1026 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageName() string {
1027         return "sw_interface_ip6_set_link_local_address"
1028 }
1029 func (*SwInterfaceIP6SetLinkLocalAddress) GetCrcString() string            { return "2931d9fa" }
1030 func (*SwInterfaceIP6SetLinkLocalAddress) GetMessageType() api.MessageType { return api.RequestMessage }
1031
1032 // SwInterfaceIP6SetLinkLocalAddressReply represents VPP binary API message 'sw_interface_ip6_set_link_local_address_reply'.
1033 type SwInterfaceIP6SetLinkLocalAddressReply struct {
1034         Retval int32
1035 }
1036
1037 func (m *SwInterfaceIP6SetLinkLocalAddressReply) Reset() {
1038         *m = SwInterfaceIP6SetLinkLocalAddressReply{}
1039 }
1040 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageName() string {
1041         return "sw_interface_ip6_set_link_local_address_reply"
1042 }
1043 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetCrcString() string { return "e8d4e804" }
1044 func (*SwInterfaceIP6SetLinkLocalAddressReply) GetMessageType() api.MessageType {
1045         return api.ReplyMessage
1046 }
1047
1048 func init() {
1049         api.RegisterMessage((*IoamDisable)(nil), "ip.IoamDisable")
1050         api.RegisterMessage((*IoamDisableReply)(nil), "ip.IoamDisableReply")
1051         api.RegisterMessage((*IoamEnable)(nil), "ip.IoamEnable")
1052         api.RegisterMessage((*IoamEnableReply)(nil), "ip.IoamEnableReply")
1053         api.RegisterMessage((*IPAddressDetails)(nil), "ip.IPAddressDetails")
1054         api.RegisterMessage((*IPAddressDump)(nil), "ip.IPAddressDump")
1055         api.RegisterMessage((*IPContainerProxyAddDel)(nil), "ip.IPContainerProxyAddDel")
1056         api.RegisterMessage((*IPContainerProxyAddDelReply)(nil), "ip.IPContainerProxyAddDelReply")
1057         api.RegisterMessage((*IPContainerProxyDetails)(nil), "ip.IPContainerProxyDetails")
1058         api.RegisterMessage((*IPContainerProxyDump)(nil), "ip.IPContainerProxyDump")
1059         api.RegisterMessage((*IPDetails)(nil), "ip.IPDetails")
1060         api.RegisterMessage((*IPDump)(nil), "ip.IPDump")
1061         api.RegisterMessage((*IPMrouteAddDel)(nil), "ip.IPMrouteAddDel")
1062         api.RegisterMessage((*IPMrouteAddDelReply)(nil), "ip.IPMrouteAddDelReply")
1063         api.RegisterMessage((*IPMrouteDetails)(nil), "ip.IPMrouteDetails")
1064         api.RegisterMessage((*IPMrouteDump)(nil), "ip.IPMrouteDump")
1065         api.RegisterMessage((*IPMtableDetails)(nil), "ip.IPMtableDetails")
1066         api.RegisterMessage((*IPMtableDump)(nil), "ip.IPMtableDump")
1067         api.RegisterMessage((*IPPuntPolice)(nil), "ip.IPPuntPolice")
1068         api.RegisterMessage((*IPPuntPoliceReply)(nil), "ip.IPPuntPoliceReply")
1069         api.RegisterMessage((*IPPuntRedirect)(nil), "ip.IPPuntRedirect")
1070         api.RegisterMessage((*IPPuntRedirectDetails)(nil), "ip.IPPuntRedirectDetails")
1071         api.RegisterMessage((*IPPuntRedirectDump)(nil), "ip.IPPuntRedirectDump")
1072         api.RegisterMessage((*IPPuntRedirectReply)(nil), "ip.IPPuntRedirectReply")
1073         api.RegisterMessage((*IPReassemblyEnableDisable)(nil), "ip.IPReassemblyEnableDisable")
1074         api.RegisterMessage((*IPReassemblyEnableDisableReply)(nil), "ip.IPReassemblyEnableDisableReply")
1075         api.RegisterMessage((*IPReassemblyGet)(nil), "ip.IPReassemblyGet")
1076         api.RegisterMessage((*IPReassemblyGetReply)(nil), "ip.IPReassemblyGetReply")
1077         api.RegisterMessage((*IPReassemblySet)(nil), "ip.IPReassemblySet")
1078         api.RegisterMessage((*IPReassemblySetReply)(nil), "ip.IPReassemblySetReply")
1079         api.RegisterMessage((*IPRouteAddDel)(nil), "ip.IPRouteAddDel")
1080         api.RegisterMessage((*IPRouteAddDelReply)(nil), "ip.IPRouteAddDelReply")
1081         api.RegisterMessage((*IPRouteDetails)(nil), "ip.IPRouteDetails")
1082         api.RegisterMessage((*IPRouteDump)(nil), "ip.IPRouteDump")
1083         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDel)(nil), "ip.IPSourceAndPortRangeCheckAddDel")
1084         api.RegisterMessage((*IPSourceAndPortRangeCheckAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckAddDelReply")
1085         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDel)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDel")
1086         api.RegisterMessage((*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil), "ip.IPSourceAndPortRangeCheckInterfaceAddDelReply")
1087         api.RegisterMessage((*IPSourceCheckInterfaceAddDel)(nil), "ip.IPSourceCheckInterfaceAddDel")
1088         api.RegisterMessage((*IPSourceCheckInterfaceAddDelReply)(nil), "ip.IPSourceCheckInterfaceAddDelReply")
1089         api.RegisterMessage((*IPTableAddDel)(nil), "ip.IPTableAddDel")
1090         api.RegisterMessage((*IPTableAddDelReply)(nil), "ip.IPTableAddDelReply")
1091         api.RegisterMessage((*IPTableDetails)(nil), "ip.IPTableDetails")
1092         api.RegisterMessage((*IPTableDump)(nil), "ip.IPTableDump")
1093         api.RegisterMessage((*IPTableFlush)(nil), "ip.IPTableFlush")
1094         api.RegisterMessage((*IPTableFlushReply)(nil), "ip.IPTableFlushReply")
1095         api.RegisterMessage((*IPTableReplaceBegin)(nil), "ip.IPTableReplaceBegin")
1096         api.RegisterMessage((*IPTableReplaceBeginReply)(nil), "ip.IPTableReplaceBeginReply")
1097         api.RegisterMessage((*IPTableReplaceEnd)(nil), "ip.IPTableReplaceEnd")
1098         api.RegisterMessage((*IPTableReplaceEndReply)(nil), "ip.IPTableReplaceEndReply")
1099         api.RegisterMessage((*IPUnnumberedDetails)(nil), "ip.IPUnnumberedDetails")
1100         api.RegisterMessage((*IPUnnumberedDump)(nil), "ip.IPUnnumberedDump")
1101         api.RegisterMessage((*MfibSignalDetails)(nil), "ip.MfibSignalDetails")
1102         api.RegisterMessage((*MfibSignalDump)(nil), "ip.MfibSignalDump")
1103         api.RegisterMessage((*SetIPFlowHash)(nil), "ip.SetIPFlowHash")
1104         api.RegisterMessage((*SetIPFlowHashReply)(nil), "ip.SetIPFlowHashReply")
1105         api.RegisterMessage((*SwInterfaceIP6EnableDisable)(nil), "ip.SwInterfaceIP6EnableDisable")
1106         api.RegisterMessage((*SwInterfaceIP6EnableDisableReply)(nil), "ip.SwInterfaceIP6EnableDisableReply")
1107         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddress)(nil), "ip.SwInterfaceIP6SetLinkLocalAddress")
1108         api.RegisterMessage((*SwInterfaceIP6SetLinkLocalAddressReply)(nil), "ip.SwInterfaceIP6SetLinkLocalAddressReply")
1109 }
1110
1111 // Messages returns list of all messages in this module.
1112 func AllMessages() []api.Message {
1113         return []api.Message{
1114                 (*IoamDisable)(nil),
1115                 (*IoamDisableReply)(nil),
1116                 (*IoamEnable)(nil),
1117                 (*IoamEnableReply)(nil),
1118                 (*IPAddressDetails)(nil),
1119                 (*IPAddressDump)(nil),
1120                 (*IPContainerProxyAddDel)(nil),
1121                 (*IPContainerProxyAddDelReply)(nil),
1122                 (*IPContainerProxyDetails)(nil),
1123                 (*IPContainerProxyDump)(nil),
1124                 (*IPDetails)(nil),
1125                 (*IPDump)(nil),
1126                 (*IPMrouteAddDel)(nil),
1127                 (*IPMrouteAddDelReply)(nil),
1128                 (*IPMrouteDetails)(nil),
1129                 (*IPMrouteDump)(nil),
1130                 (*IPMtableDetails)(nil),
1131                 (*IPMtableDump)(nil),
1132                 (*IPPuntPolice)(nil),
1133                 (*IPPuntPoliceReply)(nil),
1134                 (*IPPuntRedirect)(nil),
1135                 (*IPPuntRedirectDetails)(nil),
1136                 (*IPPuntRedirectDump)(nil),
1137                 (*IPPuntRedirectReply)(nil),
1138                 (*IPReassemblyEnableDisable)(nil),
1139                 (*IPReassemblyEnableDisableReply)(nil),
1140                 (*IPReassemblyGet)(nil),
1141                 (*IPReassemblyGetReply)(nil),
1142                 (*IPReassemblySet)(nil),
1143                 (*IPReassemblySetReply)(nil),
1144                 (*IPRouteAddDel)(nil),
1145                 (*IPRouteAddDelReply)(nil),
1146                 (*IPRouteDetails)(nil),
1147                 (*IPRouteDump)(nil),
1148                 (*IPSourceAndPortRangeCheckAddDel)(nil),
1149                 (*IPSourceAndPortRangeCheckAddDelReply)(nil),
1150                 (*IPSourceAndPortRangeCheckInterfaceAddDel)(nil),
1151                 (*IPSourceAndPortRangeCheckInterfaceAddDelReply)(nil),
1152                 (*IPSourceCheckInterfaceAddDel)(nil),
1153                 (*IPSourceCheckInterfaceAddDelReply)(nil),
1154                 (*IPTableAddDel)(nil),
1155                 (*IPTableAddDelReply)(nil),
1156                 (*IPTableDetails)(nil),
1157                 (*IPTableDump)(nil),
1158                 (*IPTableFlush)(nil),
1159                 (*IPTableFlushReply)(nil),
1160                 (*IPTableReplaceBegin)(nil),
1161                 (*IPTableReplaceBeginReply)(nil),
1162                 (*IPTableReplaceEnd)(nil),
1163                 (*IPTableReplaceEndReply)(nil),
1164                 (*IPUnnumberedDetails)(nil),
1165                 (*IPUnnumberedDump)(nil),
1166                 (*MfibSignalDetails)(nil),
1167                 (*MfibSignalDump)(nil),
1168                 (*SetIPFlowHash)(nil),
1169                 (*SetIPFlowHashReply)(nil),
1170                 (*SwInterfaceIP6EnableDisable)(nil),
1171                 (*SwInterfaceIP6EnableDisableReply)(nil),
1172                 (*SwInterfaceIP6SetLinkLocalAddress)(nil),
1173                 (*SwInterfaceIP6SetLinkLocalAddressReply)(nil),
1174         }
1175 }
1176
1177 // RPCService represents RPC service API for ip module.
1178 type RPCService interface {
1179         DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error)
1180         DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error)
1181         DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error)
1182         DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error)
1183         DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error)
1184         DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error)
1185         DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error)
1186         DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error)
1187         DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error)
1188         DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error)
1189         IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error)
1190         IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error)
1191         IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error)
1192         IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
1193         IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
1194         IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
1195         IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error)
1196         IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
1197         IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
1198         IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
1199         IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
1200         IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
1201         IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error)
1202         IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
1203         IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error)
1204         IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error)
1205         IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error)
1206         SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
1207         SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
1208         SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
1209 }
1210
1211 type serviceClient struct {
1212         ch api.Channel
1213 }
1214
1215 func NewServiceClient(ch api.Channel) RPCService {
1216         return &serviceClient{ch}
1217 }
1218
1219 func (c *serviceClient) DumpIPAddress(ctx context.Context, in *IPAddressDump) (RPCService_DumpIPAddressClient, error) {
1220         stream := c.ch.SendMultiRequest(in)
1221         x := &serviceClient_DumpIPAddressClient{stream}
1222         return x, nil
1223 }
1224
1225 type RPCService_DumpIPAddressClient interface {
1226         Recv() (*IPAddressDetails, error)
1227 }
1228
1229 type serviceClient_DumpIPAddressClient struct {
1230         api.MultiRequestCtx
1231 }
1232
1233 func (c *serviceClient_DumpIPAddressClient) Recv() (*IPAddressDetails, error) {
1234         m := new(IPAddressDetails)
1235         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1236         if err != nil {
1237                 return nil, err
1238         }
1239         if stop {
1240                 return nil, io.EOF
1241         }
1242         return m, nil
1243 }
1244
1245 func (c *serviceClient) DumpIPContainerProxy(ctx context.Context, in *IPContainerProxyDump) (RPCService_DumpIPContainerProxyClient, error) {
1246         stream := c.ch.SendMultiRequest(in)
1247         x := &serviceClient_DumpIPContainerProxyClient{stream}
1248         return x, nil
1249 }
1250
1251 type RPCService_DumpIPContainerProxyClient interface {
1252         Recv() (*IPContainerProxyDetails, error)
1253 }
1254
1255 type serviceClient_DumpIPContainerProxyClient struct {
1256         api.MultiRequestCtx
1257 }
1258
1259 func (c *serviceClient_DumpIPContainerProxyClient) Recv() (*IPContainerProxyDetails, error) {
1260         m := new(IPContainerProxyDetails)
1261         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1262         if err != nil {
1263                 return nil, err
1264         }
1265         if stop {
1266                 return nil, io.EOF
1267         }
1268         return m, nil
1269 }
1270
1271 func (c *serviceClient) DumpIP(ctx context.Context, in *IPDump) (RPCService_DumpIPClient, error) {
1272         stream := c.ch.SendMultiRequest(in)
1273         x := &serviceClient_DumpIPClient{stream}
1274         return x, nil
1275 }
1276
1277 type RPCService_DumpIPClient interface {
1278         Recv() (*IPDetails, error)
1279 }
1280
1281 type serviceClient_DumpIPClient struct {
1282         api.MultiRequestCtx
1283 }
1284
1285 func (c *serviceClient_DumpIPClient) Recv() (*IPDetails, error) {
1286         m := new(IPDetails)
1287         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1288         if err != nil {
1289                 return nil, err
1290         }
1291         if stop {
1292                 return nil, io.EOF
1293         }
1294         return m, nil
1295 }
1296
1297 func (c *serviceClient) DumpIPMroute(ctx context.Context, in *IPMrouteDump) (RPCService_DumpIPMrouteClient, error) {
1298         stream := c.ch.SendMultiRequest(in)
1299         x := &serviceClient_DumpIPMrouteClient{stream}
1300         return x, nil
1301 }
1302
1303 type RPCService_DumpIPMrouteClient interface {
1304         Recv() (*IPMrouteDetails, error)
1305 }
1306
1307 type serviceClient_DumpIPMrouteClient struct {
1308         api.MultiRequestCtx
1309 }
1310
1311 func (c *serviceClient_DumpIPMrouteClient) Recv() (*IPMrouteDetails, error) {
1312         m := new(IPMrouteDetails)
1313         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1314         if err != nil {
1315                 return nil, err
1316         }
1317         if stop {
1318                 return nil, io.EOF
1319         }
1320         return m, nil
1321 }
1322
1323 func (c *serviceClient) DumpIPMtable(ctx context.Context, in *IPMtableDump) (RPCService_DumpIPMtableClient, error) {
1324         stream := c.ch.SendMultiRequest(in)
1325         x := &serviceClient_DumpIPMtableClient{stream}
1326         return x, nil
1327 }
1328
1329 type RPCService_DumpIPMtableClient interface {
1330         Recv() (*IPMtableDetails, error)
1331 }
1332
1333 type serviceClient_DumpIPMtableClient struct {
1334         api.MultiRequestCtx
1335 }
1336
1337 func (c *serviceClient_DumpIPMtableClient) Recv() (*IPMtableDetails, error) {
1338         m := new(IPMtableDetails)
1339         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1340         if err != nil {
1341                 return nil, err
1342         }
1343         if stop {
1344                 return nil, io.EOF
1345         }
1346         return m, nil
1347 }
1348
1349 func (c *serviceClient) DumpIPPuntRedirect(ctx context.Context, in *IPPuntRedirectDump) (RPCService_DumpIPPuntRedirectClient, error) {
1350         stream := c.ch.SendMultiRequest(in)
1351         x := &serviceClient_DumpIPPuntRedirectClient{stream}
1352         return x, nil
1353 }
1354
1355 type RPCService_DumpIPPuntRedirectClient interface {
1356         Recv() (*IPPuntRedirectDetails, error)
1357 }
1358
1359 type serviceClient_DumpIPPuntRedirectClient struct {
1360         api.MultiRequestCtx
1361 }
1362
1363 func (c *serviceClient_DumpIPPuntRedirectClient) Recv() (*IPPuntRedirectDetails, error) {
1364         m := new(IPPuntRedirectDetails)
1365         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1366         if err != nil {
1367                 return nil, err
1368         }
1369         if stop {
1370                 return nil, io.EOF
1371         }
1372         return m, nil
1373 }
1374
1375 func (c *serviceClient) DumpIPRoute(ctx context.Context, in *IPRouteDump) (RPCService_DumpIPRouteClient, error) {
1376         stream := c.ch.SendMultiRequest(in)
1377         x := &serviceClient_DumpIPRouteClient{stream}
1378         return x, nil
1379 }
1380
1381 type RPCService_DumpIPRouteClient interface {
1382         Recv() (*IPRouteDetails, error)
1383 }
1384
1385 type serviceClient_DumpIPRouteClient struct {
1386         api.MultiRequestCtx
1387 }
1388
1389 func (c *serviceClient_DumpIPRouteClient) Recv() (*IPRouteDetails, error) {
1390         m := new(IPRouteDetails)
1391         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1392         if err != nil {
1393                 return nil, err
1394         }
1395         if stop {
1396                 return nil, io.EOF
1397         }
1398         return m, nil
1399 }
1400
1401 func (c *serviceClient) DumpIPTable(ctx context.Context, in *IPTableDump) (RPCService_DumpIPTableClient, error) {
1402         stream := c.ch.SendMultiRequest(in)
1403         x := &serviceClient_DumpIPTableClient{stream}
1404         return x, nil
1405 }
1406
1407 type RPCService_DumpIPTableClient interface {
1408         Recv() (*IPTableDetails, error)
1409 }
1410
1411 type serviceClient_DumpIPTableClient struct {
1412         api.MultiRequestCtx
1413 }
1414
1415 func (c *serviceClient_DumpIPTableClient) Recv() (*IPTableDetails, error) {
1416         m := new(IPTableDetails)
1417         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1418         if err != nil {
1419                 return nil, err
1420         }
1421         if stop {
1422                 return nil, io.EOF
1423         }
1424         return m, nil
1425 }
1426
1427 func (c *serviceClient) DumpIPUnnumbered(ctx context.Context, in *IPUnnumberedDump) (RPCService_DumpIPUnnumberedClient, error) {
1428         stream := c.ch.SendMultiRequest(in)
1429         x := &serviceClient_DumpIPUnnumberedClient{stream}
1430         return x, nil
1431 }
1432
1433 type RPCService_DumpIPUnnumberedClient interface {
1434         Recv() (*IPUnnumberedDetails, error)
1435 }
1436
1437 type serviceClient_DumpIPUnnumberedClient struct {
1438         api.MultiRequestCtx
1439 }
1440
1441 func (c *serviceClient_DumpIPUnnumberedClient) Recv() (*IPUnnumberedDetails, error) {
1442         m := new(IPUnnumberedDetails)
1443         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1444         if err != nil {
1445                 return nil, err
1446         }
1447         if stop {
1448                 return nil, io.EOF
1449         }
1450         return m, nil
1451 }
1452
1453 func (c *serviceClient) DumpMfibSignal(ctx context.Context, in *MfibSignalDump) (RPCService_DumpMfibSignalClient, error) {
1454         stream := c.ch.SendMultiRequest(in)
1455         x := &serviceClient_DumpMfibSignalClient{stream}
1456         return x, nil
1457 }
1458
1459 type RPCService_DumpMfibSignalClient interface {
1460         Recv() (*MfibSignalDetails, error)
1461 }
1462
1463 type serviceClient_DumpMfibSignalClient struct {
1464         api.MultiRequestCtx
1465 }
1466
1467 func (c *serviceClient_DumpMfibSignalClient) Recv() (*MfibSignalDetails, error) {
1468         m := new(MfibSignalDetails)
1469         stop, err := c.MultiRequestCtx.ReceiveReply(m)
1470         if err != nil {
1471                 return nil, err
1472         }
1473         if stop {
1474                 return nil, io.EOF
1475         }
1476         return m, nil
1477 }
1478
1479 func (c *serviceClient) IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error) {
1480         out := new(IoamDisableReply)
1481         err := c.ch.SendRequest(in).ReceiveReply(out)
1482         if err != nil {
1483                 return nil, err
1484         }
1485         return out, nil
1486 }
1487
1488 func (c *serviceClient) IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error) {
1489         out := new(IoamEnableReply)
1490         err := c.ch.SendRequest(in).ReceiveReply(out)
1491         if err != nil {
1492                 return nil, err
1493         }
1494         return out, nil
1495 }
1496
1497 func (c *serviceClient) IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error) {
1498         out := new(IPContainerProxyAddDelReply)
1499         err := c.ch.SendRequest(in).ReceiveReply(out)
1500         if err != nil {
1501                 return nil, err
1502         }
1503         return out, nil
1504 }
1505
1506 func (c *serviceClient) IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error) {
1507         out := new(IPMrouteAddDelReply)
1508         err := c.ch.SendRequest(in).ReceiveReply(out)
1509         if err != nil {
1510                 return nil, err
1511         }
1512         return out, nil
1513 }
1514
1515 func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
1516         out := new(IPPuntPoliceReply)
1517         err := c.ch.SendRequest(in).ReceiveReply(out)
1518         if err != nil {
1519                 return nil, err
1520         }
1521         return out, nil
1522 }
1523
1524 func (c *serviceClient) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
1525         out := new(IPPuntRedirectReply)
1526         err := c.ch.SendRequest(in).ReceiveReply(out)
1527         if err != nil {
1528                 return nil, err
1529         }
1530         return out, nil
1531 }
1532
1533 func (c *serviceClient) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
1534         out := new(IPReassemblyEnableDisableReply)
1535         err := c.ch.SendRequest(in).ReceiveReply(out)
1536         if err != nil {
1537                 return nil, err
1538         }
1539         return out, nil
1540 }
1541
1542 func (c *serviceClient) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
1543         out := new(IPReassemblyGetReply)
1544         err := c.ch.SendRequest(in).ReceiveReply(out)
1545         if err != nil {
1546                 return nil, err
1547         }
1548         return out, nil
1549 }
1550
1551 func (c *serviceClient) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
1552         out := new(IPReassemblySetReply)
1553         err := c.ch.SendRequest(in).ReceiveReply(out)
1554         if err != nil {
1555                 return nil, err
1556         }
1557         return out, nil
1558 }
1559
1560 func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
1561         out := new(IPRouteAddDelReply)
1562         err := c.ch.SendRequest(in).ReceiveReply(out)
1563         if err != nil {
1564                 return nil, err
1565         }
1566         return out, nil
1567 }
1568
1569 func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
1570         out := new(IPSourceAndPortRangeCheckAddDelReply)
1571         err := c.ch.SendRequest(in).ReceiveReply(out)
1572         if err != nil {
1573                 return nil, err
1574         }
1575         return out, nil
1576 }
1577
1578 func (c *serviceClient) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
1579         out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
1580         err := c.ch.SendRequest(in).ReceiveReply(out)
1581         if err != nil {
1582                 return nil, err
1583         }
1584         return out, nil
1585 }
1586
1587 func (c *serviceClient) IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error) {
1588         out := new(IPSourceCheckInterfaceAddDelReply)
1589         err := c.ch.SendRequest(in).ReceiveReply(out)
1590         if err != nil {
1591                 return nil, err
1592         }
1593         return out, nil
1594 }
1595
1596 func (c *serviceClient) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
1597         out := new(IPTableAddDelReply)
1598         err := c.ch.SendRequest(in).ReceiveReply(out)
1599         if err != nil {
1600                 return nil, err
1601         }
1602         return out, nil
1603 }
1604
1605 func (c *serviceClient) IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error) {
1606         out := new(IPTableFlushReply)
1607         err := c.ch.SendRequest(in).ReceiveReply(out)
1608         if err != nil {
1609                 return nil, err
1610         }
1611         return out, nil
1612 }
1613
1614 func (c *serviceClient) IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error) {
1615         out := new(IPTableReplaceBeginReply)
1616         err := c.ch.SendRequest(in).ReceiveReply(out)
1617         if err != nil {
1618                 return nil, err
1619         }
1620         return out, nil
1621 }
1622
1623 func (c *serviceClient) IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error) {
1624         out := new(IPTableReplaceEndReply)
1625         err := c.ch.SendRequest(in).ReceiveReply(out)
1626         if err != nil {
1627                 return nil, err
1628         }
1629         return out, nil
1630 }
1631
1632 func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
1633         out := new(SetIPFlowHashReply)
1634         err := c.ch.SendRequest(in).ReceiveReply(out)
1635         if err != nil {
1636                 return nil, err
1637         }
1638         return out, nil
1639 }
1640
1641 func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
1642         out := new(SwInterfaceIP6EnableDisableReply)
1643         err := c.ch.SendRequest(in).ReceiveReply(out)
1644         if err != nil {
1645                 return nil, err
1646         }
1647         return out, nil
1648 }
1649
1650 func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
1651         out := new(SwInterfaceIP6SetLinkLocalAddressReply)
1652         err := c.ch.SendRequest(in).ReceiveReply(out)
1653         if err != nil {
1654                 return nil, err
1655         }
1656         return out, nil
1657 }
1658
1659 // This is a compile-time assertion to ensure that this generated file
1660 // is compatible with the GoVPP api package it is being compiled against.
1661 // A compilation error at this line likely means your copy of the
1662 // GoVPP api package needs to be updated.
1663 const _ = api.GoVppAPIPackageIsVersion1 // please upgrade the GoVPP api package
1664
1665 // Reference imports to suppress errors if they are not otherwise used.
1666 var _ = api.RegisterMessage
1667 var _ = bytes.NewBuffer
1668 var _ = context.Background
1669 var _ = io.Copy
1670 var _ = strconv.Itoa
1671 var _ = struc.Pack