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