Release 0.3.0
[govpp.git] / examples / binapi / interfaces / interfaces.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2 // source: /usr/share/vpp/api/core/interface.api.json
3
4 /*
5 Package interfaces is a generated VPP binary API for 'interface' module.
6
7 It consists of:
8          10 enums
9           7 aliases
10           6 types
11           1 union
12          53 messages
13          26 services
14 */
15 package interfaces
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/ethernet_types"
26         interface_types "git.fd.io/govpp.git/examples/interface_types"
27         ip_types "git.fd.io/govpp.git/examples/ip_types"
28 )
29
30 const (
31         // ModuleName is the name of this module.
32         ModuleName = "interface"
33         // APIVersion is the API version of this module.
34         APIVersion = "3.2.2"
35         // VersionCrc is the CRC of this module.
36         VersionCrc = 0xfebc3ffa
37 )
38
39 type AddressFamily = ip_types.AddressFamily
40
41 type IfStatusFlags = interface_types.IfStatusFlags
42
43 type IfType = interface_types.IfType
44
45 type IPDscp = ip_types.IPDscp
46
47 type IPEcn = ip_types.IPEcn
48
49 type IPProto = ip_types.IPProto
50
51 type LinkDuplex = interface_types.LinkDuplex
52
53 type MtuProto = interface_types.MtuProto
54
55 type RxMode = interface_types.RxMode
56
57 type SubIfFlags = interface_types.SubIfFlags
58
59 type AddressWithPrefix = ip_types.AddressWithPrefix
60
61 type InterfaceIndex = interface_types.InterfaceIndex
62
63 type IP4Address = ip_types.IP4Address
64
65 type IP4AddressWithPrefix = ip_types.IP4AddressWithPrefix
66
67 type IP6Address = ip_types.IP6Address
68
69 type IP6AddressWithPrefix = ip_types.IP6AddressWithPrefix
70
71 type MacAddress = ethernet_types.MacAddress
72
73 type Address = ip_types.Address
74
75 type IP4Prefix = ip_types.IP4Prefix
76
77 type IP6Prefix = ip_types.IP6Prefix
78
79 type Mprefix = ip_types.Mprefix
80
81 type Prefix = ip_types.Prefix
82
83 type PrefixMatcher = ip_types.PrefixMatcher
84
85 type AddressUnion = ip_types.AddressUnion
86
87 // CollectDetailedInterfaceStats represents VPP binary API message 'collect_detailed_interface_stats'.
88 type CollectDetailedInterfaceStats struct {
89         SwIfIndex     InterfaceIndex
90         EnableDisable bool
91 }
92
93 func (m *CollectDetailedInterfaceStats) Reset() { *m = CollectDetailedInterfaceStats{} }
94 func (*CollectDetailedInterfaceStats) GetMessageName() string {
95         return "collect_detailed_interface_stats"
96 }
97 func (*CollectDetailedInterfaceStats) GetCrcString() string            { return "5501adee" }
98 func (*CollectDetailedInterfaceStats) GetMessageType() api.MessageType { return api.RequestMessage }
99
100 // CollectDetailedInterfaceStatsReply represents VPP binary API message 'collect_detailed_interface_stats_reply'.
101 type CollectDetailedInterfaceStatsReply struct {
102         Retval int32
103 }
104
105 func (m *CollectDetailedInterfaceStatsReply) Reset() { *m = CollectDetailedInterfaceStatsReply{} }
106 func (*CollectDetailedInterfaceStatsReply) GetMessageName() string {
107         return "collect_detailed_interface_stats_reply"
108 }
109 func (*CollectDetailedInterfaceStatsReply) GetCrcString() string            { return "e8d4e804" }
110 func (*CollectDetailedInterfaceStatsReply) GetMessageType() api.MessageType { return api.ReplyMessage }
111
112 // CreateLoopback represents VPP binary API message 'create_loopback'.
113 type CreateLoopback struct {
114         MacAddress MacAddress
115 }
116
117 func (m *CreateLoopback) Reset()                        { *m = CreateLoopback{} }
118 func (*CreateLoopback) GetMessageName() string          { return "create_loopback" }
119 func (*CreateLoopback) GetCrcString() string            { return "42bb5d22" }
120 func (*CreateLoopback) GetMessageType() api.MessageType { return api.RequestMessage }
121
122 // CreateLoopbackInstance represents VPP binary API message 'create_loopback_instance'.
123 type CreateLoopbackInstance struct {
124         MacAddress   MacAddress
125         IsSpecified  bool
126         UserInstance uint32
127 }
128
129 func (m *CreateLoopbackInstance) Reset()                        { *m = CreateLoopbackInstance{} }
130 func (*CreateLoopbackInstance) GetMessageName() string          { return "create_loopback_instance" }
131 func (*CreateLoopbackInstance) GetCrcString() string            { return "d36a3ee2" }
132 func (*CreateLoopbackInstance) GetMessageType() api.MessageType { return api.RequestMessage }
133
134 // CreateLoopbackInstanceReply represents VPP binary API message 'create_loopback_instance_reply'.
135 type CreateLoopbackInstanceReply struct {
136         Retval    int32
137         SwIfIndex InterfaceIndex
138 }
139
140 func (m *CreateLoopbackInstanceReply) Reset()                        { *m = CreateLoopbackInstanceReply{} }
141 func (*CreateLoopbackInstanceReply) GetMessageName() string          { return "create_loopback_instance_reply" }
142 func (*CreateLoopbackInstanceReply) GetCrcString() string            { return "5383d31f" }
143 func (*CreateLoopbackInstanceReply) GetMessageType() api.MessageType { return api.ReplyMessage }
144
145 // CreateLoopbackReply represents VPP binary API message 'create_loopback_reply'.
146 type CreateLoopbackReply struct {
147         Retval    int32
148         SwIfIndex InterfaceIndex
149 }
150
151 func (m *CreateLoopbackReply) Reset()                        { *m = CreateLoopbackReply{} }
152 func (*CreateLoopbackReply) GetMessageName() string          { return "create_loopback_reply" }
153 func (*CreateLoopbackReply) GetCrcString() string            { return "5383d31f" }
154 func (*CreateLoopbackReply) GetMessageType() api.MessageType { return api.ReplyMessage }
155
156 // CreateSubif represents VPP binary API message 'create_subif'.
157 type CreateSubif struct {
158         SwIfIndex   InterfaceIndex
159         SubID       uint32
160         SubIfFlags  SubIfFlags
161         OuterVlanID uint16
162         InnerVlanID uint16
163 }
164
165 func (m *CreateSubif) Reset()                        { *m = CreateSubif{} }
166 func (*CreateSubif) GetMessageName() string          { return "create_subif" }
167 func (*CreateSubif) GetCrcString() string            { return "cb371063" }
168 func (*CreateSubif) GetMessageType() api.MessageType { return api.RequestMessage }
169
170 // CreateSubifReply represents VPP binary API message 'create_subif_reply'.
171 type CreateSubifReply struct {
172         Retval    int32
173         SwIfIndex InterfaceIndex
174 }
175
176 func (m *CreateSubifReply) Reset()                        { *m = CreateSubifReply{} }
177 func (*CreateSubifReply) GetMessageName() string          { return "create_subif_reply" }
178 func (*CreateSubifReply) GetCrcString() string            { return "5383d31f" }
179 func (*CreateSubifReply) GetMessageType() api.MessageType { return api.ReplyMessage }
180
181 // CreateVlanSubif represents VPP binary API message 'create_vlan_subif'.
182 type CreateVlanSubif struct {
183         SwIfIndex InterfaceIndex
184         VlanID    uint32
185 }
186
187 func (m *CreateVlanSubif) Reset()                        { *m = CreateVlanSubif{} }
188 func (*CreateVlanSubif) GetMessageName() string          { return "create_vlan_subif" }
189 func (*CreateVlanSubif) GetCrcString() string            { return "af34ac8b" }
190 func (*CreateVlanSubif) GetMessageType() api.MessageType { return api.RequestMessage }
191
192 // CreateVlanSubifReply represents VPP binary API message 'create_vlan_subif_reply'.
193 type CreateVlanSubifReply struct {
194         Retval    int32
195         SwIfIndex InterfaceIndex
196 }
197
198 func (m *CreateVlanSubifReply) Reset()                        { *m = CreateVlanSubifReply{} }
199 func (*CreateVlanSubifReply) GetMessageName() string          { return "create_vlan_subif_reply" }
200 func (*CreateVlanSubifReply) GetCrcString() string            { return "5383d31f" }
201 func (*CreateVlanSubifReply) GetMessageType() api.MessageType { return api.ReplyMessage }
202
203 // DeleteLoopback represents VPP binary API message 'delete_loopback'.
204 type DeleteLoopback struct {
205         SwIfIndex InterfaceIndex
206 }
207
208 func (m *DeleteLoopback) Reset()                        { *m = DeleteLoopback{} }
209 func (*DeleteLoopback) GetMessageName() string          { return "delete_loopback" }
210 func (*DeleteLoopback) GetCrcString() string            { return "f9e6675e" }
211 func (*DeleteLoopback) GetMessageType() api.MessageType { return api.RequestMessage }
212
213 // DeleteLoopbackReply represents VPP binary API message 'delete_loopback_reply'.
214 type DeleteLoopbackReply struct {
215         Retval int32
216 }
217
218 func (m *DeleteLoopbackReply) Reset()                        { *m = DeleteLoopbackReply{} }
219 func (*DeleteLoopbackReply) GetMessageName() string          { return "delete_loopback_reply" }
220 func (*DeleteLoopbackReply) GetCrcString() string            { return "e8d4e804" }
221 func (*DeleteLoopbackReply) GetMessageType() api.MessageType { return api.ReplyMessage }
222
223 // DeleteSubif represents VPP binary API message 'delete_subif'.
224 type DeleteSubif struct {
225         SwIfIndex InterfaceIndex
226 }
227
228 func (m *DeleteSubif) Reset()                        { *m = DeleteSubif{} }
229 func (*DeleteSubif) GetMessageName() string          { return "delete_subif" }
230 func (*DeleteSubif) GetCrcString() string            { return "f9e6675e" }
231 func (*DeleteSubif) GetMessageType() api.MessageType { return api.RequestMessage }
232
233 // DeleteSubifReply represents VPP binary API message 'delete_subif_reply'.
234 type DeleteSubifReply struct {
235         Retval int32
236 }
237
238 func (m *DeleteSubifReply) Reset()                        { *m = DeleteSubifReply{} }
239 func (*DeleteSubifReply) GetMessageName() string          { return "delete_subif_reply" }
240 func (*DeleteSubifReply) GetCrcString() string            { return "e8d4e804" }
241 func (*DeleteSubifReply) GetMessageType() api.MessageType { return api.ReplyMessage }
242
243 // HwInterfaceSetMtu represents VPP binary API message 'hw_interface_set_mtu'.
244 type HwInterfaceSetMtu struct {
245         SwIfIndex InterfaceIndex
246         Mtu       uint16
247 }
248
249 func (m *HwInterfaceSetMtu) Reset()                        { *m = HwInterfaceSetMtu{} }
250 func (*HwInterfaceSetMtu) GetMessageName() string          { return "hw_interface_set_mtu" }
251 func (*HwInterfaceSetMtu) GetCrcString() string            { return "e6746899" }
252 func (*HwInterfaceSetMtu) GetMessageType() api.MessageType { return api.RequestMessage }
253
254 // HwInterfaceSetMtuReply represents VPP binary API message 'hw_interface_set_mtu_reply'.
255 type HwInterfaceSetMtuReply struct {
256         Retval int32
257 }
258
259 func (m *HwInterfaceSetMtuReply) Reset()                        { *m = HwInterfaceSetMtuReply{} }
260 func (*HwInterfaceSetMtuReply) GetMessageName() string          { return "hw_interface_set_mtu_reply" }
261 func (*HwInterfaceSetMtuReply) GetCrcString() string            { return "e8d4e804" }
262 func (*HwInterfaceSetMtuReply) GetMessageType() api.MessageType { return api.ReplyMessage }
263
264 // InterfaceNameRenumber represents VPP binary API message 'interface_name_renumber'.
265 type InterfaceNameRenumber struct {
266         SwIfIndex          InterfaceIndex
267         NewShowDevInstance uint32
268 }
269
270 func (m *InterfaceNameRenumber) Reset()                        { *m = InterfaceNameRenumber{} }
271 func (*InterfaceNameRenumber) GetMessageName() string          { return "interface_name_renumber" }
272 func (*InterfaceNameRenumber) GetCrcString() string            { return "2b8858b8" }
273 func (*InterfaceNameRenumber) GetMessageType() api.MessageType { return api.RequestMessage }
274
275 // InterfaceNameRenumberReply represents VPP binary API message 'interface_name_renumber_reply'.
276 type InterfaceNameRenumberReply struct {
277         Retval int32
278 }
279
280 func (m *InterfaceNameRenumberReply) Reset()                        { *m = InterfaceNameRenumberReply{} }
281 func (*InterfaceNameRenumberReply) GetMessageName() string          { return "interface_name_renumber_reply" }
282 func (*InterfaceNameRenumberReply) GetCrcString() string            { return "e8d4e804" }
283 func (*InterfaceNameRenumberReply) GetMessageType() api.MessageType { return api.ReplyMessage }
284
285 // SwInterfaceAddDelAddress represents VPP binary API message 'sw_interface_add_del_address'.
286 type SwInterfaceAddDelAddress struct {
287         SwIfIndex InterfaceIndex
288         IsAdd     bool
289         DelAll    bool
290         Prefix    AddressWithPrefix
291 }
292
293 func (m *SwInterfaceAddDelAddress) Reset()                        { *m = SwInterfaceAddDelAddress{} }
294 func (*SwInterfaceAddDelAddress) GetMessageName() string          { return "sw_interface_add_del_address" }
295 func (*SwInterfaceAddDelAddress) GetCrcString() string            { return "5803d5c4" }
296 func (*SwInterfaceAddDelAddress) GetMessageType() api.MessageType { return api.RequestMessage }
297
298 // SwInterfaceAddDelAddressReply represents VPP binary API message 'sw_interface_add_del_address_reply'.
299 type SwInterfaceAddDelAddressReply struct {
300         Retval int32
301 }
302
303 func (m *SwInterfaceAddDelAddressReply) Reset() { *m = SwInterfaceAddDelAddressReply{} }
304 func (*SwInterfaceAddDelAddressReply) GetMessageName() string {
305         return "sw_interface_add_del_address_reply"
306 }
307 func (*SwInterfaceAddDelAddressReply) GetCrcString() string            { return "e8d4e804" }
308 func (*SwInterfaceAddDelAddressReply) GetMessageType() api.MessageType { return api.ReplyMessage }
309
310 // SwInterfaceAddDelMacAddress represents VPP binary API message 'sw_interface_add_del_mac_address'.
311 type SwInterfaceAddDelMacAddress struct {
312         SwIfIndex uint32
313         Addr      MacAddress
314         IsAdd     uint8
315 }
316
317 func (m *SwInterfaceAddDelMacAddress) Reset() { *m = SwInterfaceAddDelMacAddress{} }
318 func (*SwInterfaceAddDelMacAddress) GetMessageName() string {
319         return "sw_interface_add_del_mac_address"
320 }
321 func (*SwInterfaceAddDelMacAddress) GetCrcString() string            { return "638bb9f4" }
322 func (*SwInterfaceAddDelMacAddress) GetMessageType() api.MessageType { return api.RequestMessage }
323
324 // SwInterfaceAddDelMacAddressReply represents VPP binary API message 'sw_interface_add_del_mac_address_reply'.
325 type SwInterfaceAddDelMacAddressReply struct {
326         Retval int32
327 }
328
329 func (m *SwInterfaceAddDelMacAddressReply) Reset() { *m = SwInterfaceAddDelMacAddressReply{} }
330 func (*SwInterfaceAddDelMacAddressReply) GetMessageName() string {
331         return "sw_interface_add_del_mac_address_reply"
332 }
333 func (*SwInterfaceAddDelMacAddressReply) GetCrcString() string            { return "e8d4e804" }
334 func (*SwInterfaceAddDelMacAddressReply) GetMessageType() api.MessageType { return api.ReplyMessage }
335
336 // SwInterfaceClearStats represents VPP binary API message 'sw_interface_clear_stats'.
337 type SwInterfaceClearStats struct {
338         SwIfIndex InterfaceIndex
339 }
340
341 func (m *SwInterfaceClearStats) Reset()                        { *m = SwInterfaceClearStats{} }
342 func (*SwInterfaceClearStats) GetMessageName() string          { return "sw_interface_clear_stats" }
343 func (*SwInterfaceClearStats) GetCrcString() string            { return "f9e6675e" }
344 func (*SwInterfaceClearStats) GetMessageType() api.MessageType { return api.RequestMessage }
345
346 // SwInterfaceClearStatsReply represents VPP binary API message 'sw_interface_clear_stats_reply'.
347 type SwInterfaceClearStatsReply struct {
348         Retval int32
349 }
350
351 func (m *SwInterfaceClearStatsReply) Reset()                        { *m = SwInterfaceClearStatsReply{} }
352 func (*SwInterfaceClearStatsReply) GetMessageName() string          { return "sw_interface_clear_stats_reply" }
353 func (*SwInterfaceClearStatsReply) GetCrcString() string            { return "e8d4e804" }
354 func (*SwInterfaceClearStatsReply) GetMessageType() api.MessageType { return api.ReplyMessage }
355
356 // SwInterfaceDetails represents VPP binary API message 'sw_interface_details'.
357 type SwInterfaceDetails struct {
358         SwIfIndex        InterfaceIndex
359         SupSwIfIndex     uint32
360         L2Address        MacAddress
361         Flags            IfStatusFlags
362         Type             IfType
363         LinkDuplex       LinkDuplex
364         LinkSpeed        uint32
365         LinkMtu          uint16
366         Mtu              []uint32 `struc:"[4]uint32"`
367         SubID            uint32
368         SubNumberOfTags  uint8
369         SubOuterVlanID   uint16
370         SubInnerVlanID   uint16
371         SubIfFlags       SubIfFlags
372         VtrOp            uint32
373         VtrPushDot1q     uint32
374         VtrTag1          uint32
375         VtrTag2          uint32
376         OuterTag         uint16
377         BDmac            MacAddress
378         BSmac            MacAddress
379         BVlanid          uint16
380         ISid             uint32
381         InterfaceName    string `struc:"[64]byte"`
382         InterfaceDevType string `struc:"[64]byte"`
383         Tag              string `struc:"[64]byte"`
384 }
385
386 func (m *SwInterfaceDetails) Reset()                        { *m = SwInterfaceDetails{} }
387 func (*SwInterfaceDetails) GetMessageName() string          { return "sw_interface_details" }
388 func (*SwInterfaceDetails) GetCrcString() string            { return "17b69fa2" }
389 func (*SwInterfaceDetails) GetMessageType() api.MessageType { return api.ReplyMessage }
390
391 // SwInterfaceDump represents VPP binary API message 'sw_interface_dump'.
392 type SwInterfaceDump struct {
393         SwIfIndex         InterfaceIndex
394         NameFilterValid   bool
395         XXX_NameFilterLen uint32 `struc:"sizeof=NameFilter"`
396         NameFilter        string
397 }
398
399 func (m *SwInterfaceDump) Reset()                        { *m = SwInterfaceDump{} }
400 func (*SwInterfaceDump) GetMessageName() string          { return "sw_interface_dump" }
401 func (*SwInterfaceDump) GetCrcString() string            { return "aa610c27" }
402 func (*SwInterfaceDump) GetMessageType() api.MessageType { return api.RequestMessage }
403
404 // SwInterfaceEvent represents VPP binary API message 'sw_interface_event'.
405 type SwInterfaceEvent struct {
406         PID       uint32
407         SwIfIndex InterfaceIndex
408         Flags     IfStatusFlags
409         Deleted   bool
410 }
411
412 func (m *SwInterfaceEvent) Reset()                        { *m = SwInterfaceEvent{} }
413 func (*SwInterfaceEvent) GetMessageName() string          { return "sw_interface_event" }
414 func (*SwInterfaceEvent) GetCrcString() string            { return "f709f78d" }
415 func (*SwInterfaceEvent) GetMessageType() api.MessageType { return api.EventMessage }
416
417 // SwInterfaceGetMacAddress represents VPP binary API message 'sw_interface_get_mac_address'.
418 type SwInterfaceGetMacAddress struct {
419         SwIfIndex InterfaceIndex
420 }
421
422 func (m *SwInterfaceGetMacAddress) Reset()                        { *m = SwInterfaceGetMacAddress{} }
423 func (*SwInterfaceGetMacAddress) GetMessageName() string          { return "sw_interface_get_mac_address" }
424 func (*SwInterfaceGetMacAddress) GetCrcString() string            { return "f9e6675e" }
425 func (*SwInterfaceGetMacAddress) GetMessageType() api.MessageType { return api.RequestMessage }
426
427 // SwInterfaceGetMacAddressReply represents VPP binary API message 'sw_interface_get_mac_address_reply'.
428 type SwInterfaceGetMacAddressReply struct {
429         Retval     int32
430         MacAddress MacAddress
431 }
432
433 func (m *SwInterfaceGetMacAddressReply) Reset() { *m = SwInterfaceGetMacAddressReply{} }
434 func (*SwInterfaceGetMacAddressReply) GetMessageName() string {
435         return "sw_interface_get_mac_address_reply"
436 }
437 func (*SwInterfaceGetMacAddressReply) GetCrcString() string            { return "40ef2c08" }
438 func (*SwInterfaceGetMacAddressReply) GetMessageType() api.MessageType { return api.ReplyMessage }
439
440 // SwInterfaceGetTable represents VPP binary API message 'sw_interface_get_table'.
441 type SwInterfaceGetTable struct {
442         SwIfIndex InterfaceIndex
443         IsIPv6    bool
444 }
445
446 func (m *SwInterfaceGetTable) Reset()                        { *m = SwInterfaceGetTable{} }
447 func (*SwInterfaceGetTable) GetMessageName() string          { return "sw_interface_get_table" }
448 func (*SwInterfaceGetTable) GetCrcString() string            { return "2d033de4" }
449 func (*SwInterfaceGetTable) GetMessageType() api.MessageType { return api.RequestMessage }
450
451 // SwInterfaceGetTableReply represents VPP binary API message 'sw_interface_get_table_reply'.
452 type SwInterfaceGetTableReply struct {
453         Retval int32
454         VrfID  uint32
455 }
456
457 func (m *SwInterfaceGetTableReply) Reset()                        { *m = SwInterfaceGetTableReply{} }
458 func (*SwInterfaceGetTableReply) GetMessageName() string          { return "sw_interface_get_table_reply" }
459 func (*SwInterfaceGetTableReply) GetCrcString() string            { return "a6eb0109" }
460 func (*SwInterfaceGetTableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
461
462 // SwInterfaceRxPlacementDetails represents VPP binary API message 'sw_interface_rx_placement_details'.
463 type SwInterfaceRxPlacementDetails struct {
464         SwIfIndex InterfaceIndex
465         QueueID   uint32
466         WorkerID  uint32
467         Mode      RxMode
468 }
469
470 func (m *SwInterfaceRxPlacementDetails) Reset() { *m = SwInterfaceRxPlacementDetails{} }
471 func (*SwInterfaceRxPlacementDetails) GetMessageName() string {
472         return "sw_interface_rx_placement_details"
473 }
474 func (*SwInterfaceRxPlacementDetails) GetCrcString() string            { return "f6d7d024" }
475 func (*SwInterfaceRxPlacementDetails) GetMessageType() api.MessageType { return api.RequestMessage }
476
477 // SwInterfaceRxPlacementDump represents VPP binary API message 'sw_interface_rx_placement_dump'.
478 type SwInterfaceRxPlacementDump struct {
479         SwIfIndex InterfaceIndex
480 }
481
482 func (m *SwInterfaceRxPlacementDump) Reset()                        { *m = SwInterfaceRxPlacementDump{} }
483 func (*SwInterfaceRxPlacementDump) GetMessageName() string          { return "sw_interface_rx_placement_dump" }
484 func (*SwInterfaceRxPlacementDump) GetCrcString() string            { return "f9e6675e" }
485 func (*SwInterfaceRxPlacementDump) GetMessageType() api.MessageType { return api.RequestMessage }
486
487 // SwInterfaceSetFlags represents VPP binary API message 'sw_interface_set_flags'.
488 type SwInterfaceSetFlags struct {
489         SwIfIndex InterfaceIndex
490         Flags     IfStatusFlags
491 }
492
493 func (m *SwInterfaceSetFlags) Reset()                        { *m = SwInterfaceSetFlags{} }
494 func (*SwInterfaceSetFlags) GetMessageName() string          { return "sw_interface_set_flags" }
495 func (*SwInterfaceSetFlags) GetCrcString() string            { return "6a2b491a" }
496 func (*SwInterfaceSetFlags) GetMessageType() api.MessageType { return api.RequestMessage }
497
498 // SwInterfaceSetFlagsReply represents VPP binary API message 'sw_interface_set_flags_reply'.
499 type SwInterfaceSetFlagsReply struct {
500         Retval int32
501 }
502
503 func (m *SwInterfaceSetFlagsReply) Reset()                        { *m = SwInterfaceSetFlagsReply{} }
504 func (*SwInterfaceSetFlagsReply) GetMessageName() string          { return "sw_interface_set_flags_reply" }
505 func (*SwInterfaceSetFlagsReply) GetCrcString() string            { return "e8d4e804" }
506 func (*SwInterfaceSetFlagsReply) GetMessageType() api.MessageType { return api.ReplyMessage }
507
508 // SwInterfaceSetIPDirectedBroadcast represents VPP binary API message 'sw_interface_set_ip_directed_broadcast'.
509 type SwInterfaceSetIPDirectedBroadcast struct {
510         SwIfIndex InterfaceIndex
511         Enable    bool
512 }
513
514 func (m *SwInterfaceSetIPDirectedBroadcast) Reset() { *m = SwInterfaceSetIPDirectedBroadcast{} }
515 func (*SwInterfaceSetIPDirectedBroadcast) GetMessageName() string {
516         return "sw_interface_set_ip_directed_broadcast"
517 }
518 func (*SwInterfaceSetIPDirectedBroadcast) GetCrcString() string            { return "ae6cfcfb" }
519 func (*SwInterfaceSetIPDirectedBroadcast) GetMessageType() api.MessageType { return api.RequestMessage }
520
521 // SwInterfaceSetIPDirectedBroadcastReply represents VPP binary API message 'sw_interface_set_ip_directed_broadcast_reply'.
522 type SwInterfaceSetIPDirectedBroadcastReply struct {
523         Retval int32
524 }
525
526 func (m *SwInterfaceSetIPDirectedBroadcastReply) Reset() {
527         *m = SwInterfaceSetIPDirectedBroadcastReply{}
528 }
529 func (*SwInterfaceSetIPDirectedBroadcastReply) GetMessageName() string {
530         return "sw_interface_set_ip_directed_broadcast_reply"
531 }
532 func (*SwInterfaceSetIPDirectedBroadcastReply) GetCrcString() string { return "e8d4e804" }
533 func (*SwInterfaceSetIPDirectedBroadcastReply) GetMessageType() api.MessageType {
534         return api.ReplyMessage
535 }
536
537 // SwInterfaceSetMacAddress represents VPP binary API message 'sw_interface_set_mac_address'.
538 type SwInterfaceSetMacAddress struct {
539         SwIfIndex  InterfaceIndex
540         MacAddress MacAddress
541 }
542
543 func (m *SwInterfaceSetMacAddress) Reset()                        { *m = SwInterfaceSetMacAddress{} }
544 func (*SwInterfaceSetMacAddress) GetMessageName() string          { return "sw_interface_set_mac_address" }
545 func (*SwInterfaceSetMacAddress) GetCrcString() string            { return "6aca746a" }
546 func (*SwInterfaceSetMacAddress) GetMessageType() api.MessageType { return api.RequestMessage }
547
548 // SwInterfaceSetMacAddressReply represents VPP binary API message 'sw_interface_set_mac_address_reply'.
549 type SwInterfaceSetMacAddressReply struct {
550         Retval int32
551 }
552
553 func (m *SwInterfaceSetMacAddressReply) Reset() { *m = SwInterfaceSetMacAddressReply{} }
554 func (*SwInterfaceSetMacAddressReply) GetMessageName() string {
555         return "sw_interface_set_mac_address_reply"
556 }
557 func (*SwInterfaceSetMacAddressReply) GetCrcString() string            { return "e8d4e804" }
558 func (*SwInterfaceSetMacAddressReply) GetMessageType() api.MessageType { return api.ReplyMessage }
559
560 // SwInterfaceSetMtu represents VPP binary API message 'sw_interface_set_mtu'.
561 type SwInterfaceSetMtu struct {
562         SwIfIndex InterfaceIndex
563         Mtu       []uint32 `struc:"[4]uint32"`
564 }
565
566 func (m *SwInterfaceSetMtu) Reset()                        { *m = SwInterfaceSetMtu{} }
567 func (*SwInterfaceSetMtu) GetMessageName() string          { return "sw_interface_set_mtu" }
568 func (*SwInterfaceSetMtu) GetCrcString() string            { return "5cbe85e5" }
569 func (*SwInterfaceSetMtu) GetMessageType() api.MessageType { return api.RequestMessage }
570
571 // SwInterfaceSetMtuReply represents VPP binary API message 'sw_interface_set_mtu_reply'.
572 type SwInterfaceSetMtuReply struct {
573         Retval int32
574 }
575
576 func (m *SwInterfaceSetMtuReply) Reset()                        { *m = SwInterfaceSetMtuReply{} }
577 func (*SwInterfaceSetMtuReply) GetMessageName() string          { return "sw_interface_set_mtu_reply" }
578 func (*SwInterfaceSetMtuReply) GetCrcString() string            { return "e8d4e804" }
579 func (*SwInterfaceSetMtuReply) GetMessageType() api.MessageType { return api.ReplyMessage }
580
581 // SwInterfaceSetRxMode represents VPP binary API message 'sw_interface_set_rx_mode'.
582 type SwInterfaceSetRxMode struct {
583         SwIfIndex    InterfaceIndex
584         QueueIDValid bool
585         QueueID      uint32
586         Mode         RxMode
587 }
588
589 func (m *SwInterfaceSetRxMode) Reset()                        { *m = SwInterfaceSetRxMode{} }
590 func (*SwInterfaceSetRxMode) GetMessageName() string          { return "sw_interface_set_rx_mode" }
591 func (*SwInterfaceSetRxMode) GetCrcString() string            { return "780f5cee" }
592 func (*SwInterfaceSetRxMode) GetMessageType() api.MessageType { return api.RequestMessage }
593
594 // SwInterfaceSetRxModeReply represents VPP binary API message 'sw_interface_set_rx_mode_reply'.
595 type SwInterfaceSetRxModeReply struct {
596         Retval int32
597 }
598
599 func (m *SwInterfaceSetRxModeReply) Reset()                        { *m = SwInterfaceSetRxModeReply{} }
600 func (*SwInterfaceSetRxModeReply) GetMessageName() string          { return "sw_interface_set_rx_mode_reply" }
601 func (*SwInterfaceSetRxModeReply) GetCrcString() string            { return "e8d4e804" }
602 func (*SwInterfaceSetRxModeReply) GetMessageType() api.MessageType { return api.ReplyMessage }
603
604 // SwInterfaceSetRxPlacement represents VPP binary API message 'sw_interface_set_rx_placement'.
605 type SwInterfaceSetRxPlacement struct {
606         SwIfIndex InterfaceIndex
607         QueueID   uint32
608         WorkerID  uint32
609         IsMain    bool
610 }
611
612 func (m *SwInterfaceSetRxPlacement) Reset()                        { *m = SwInterfaceSetRxPlacement{} }
613 func (*SwInterfaceSetRxPlacement) GetMessageName() string          { return "sw_interface_set_rx_placement" }
614 func (*SwInterfaceSetRxPlacement) GetCrcString() string            { return "db65f3c9" }
615 func (*SwInterfaceSetRxPlacement) GetMessageType() api.MessageType { return api.RequestMessage }
616
617 // SwInterfaceSetRxPlacementReply represents VPP binary API message 'sw_interface_set_rx_placement_reply'.
618 type SwInterfaceSetRxPlacementReply struct {
619         Retval int32
620 }
621
622 func (m *SwInterfaceSetRxPlacementReply) Reset() { *m = SwInterfaceSetRxPlacementReply{} }
623 func (*SwInterfaceSetRxPlacementReply) GetMessageName() string {
624         return "sw_interface_set_rx_placement_reply"
625 }
626 func (*SwInterfaceSetRxPlacementReply) GetCrcString() string            { return "e8d4e804" }
627 func (*SwInterfaceSetRxPlacementReply) GetMessageType() api.MessageType { return api.ReplyMessage }
628
629 // SwInterfaceSetTable represents VPP binary API message 'sw_interface_set_table'.
630 type SwInterfaceSetTable struct {
631         SwIfIndex InterfaceIndex
632         IsIPv6    bool
633         VrfID     uint32
634 }
635
636 func (m *SwInterfaceSetTable) Reset()                        { *m = SwInterfaceSetTable{} }
637 func (*SwInterfaceSetTable) GetMessageName() string          { return "sw_interface_set_table" }
638 func (*SwInterfaceSetTable) GetCrcString() string            { return "df42a577" }
639 func (*SwInterfaceSetTable) GetMessageType() api.MessageType { return api.RequestMessage }
640
641 // SwInterfaceSetTableReply represents VPP binary API message 'sw_interface_set_table_reply'.
642 type SwInterfaceSetTableReply struct {
643         Retval int32
644 }
645
646 func (m *SwInterfaceSetTableReply) Reset()                        { *m = SwInterfaceSetTableReply{} }
647 func (*SwInterfaceSetTableReply) GetMessageName() string          { return "sw_interface_set_table_reply" }
648 func (*SwInterfaceSetTableReply) GetCrcString() string            { return "e8d4e804" }
649 func (*SwInterfaceSetTableReply) GetMessageType() api.MessageType { return api.ReplyMessage }
650
651 // SwInterfaceSetUnnumbered represents VPP binary API message 'sw_interface_set_unnumbered'.
652 type SwInterfaceSetUnnumbered struct {
653         SwIfIndex           InterfaceIndex
654         UnnumberedSwIfIndex InterfaceIndex
655         IsAdd               bool
656 }
657
658 func (m *SwInterfaceSetUnnumbered) Reset()                        { *m = SwInterfaceSetUnnumbered{} }
659 func (*SwInterfaceSetUnnumbered) GetMessageName() string          { return "sw_interface_set_unnumbered" }
660 func (*SwInterfaceSetUnnumbered) GetCrcString() string            { return "938ef33b" }
661 func (*SwInterfaceSetUnnumbered) GetMessageType() api.MessageType { return api.RequestMessage }
662
663 // SwInterfaceSetUnnumberedReply represents VPP binary API message 'sw_interface_set_unnumbered_reply'.
664 type SwInterfaceSetUnnumberedReply struct {
665         Retval int32
666 }
667
668 func (m *SwInterfaceSetUnnumberedReply) Reset() { *m = SwInterfaceSetUnnumberedReply{} }
669 func (*SwInterfaceSetUnnumberedReply) GetMessageName() string {
670         return "sw_interface_set_unnumbered_reply"
671 }
672 func (*SwInterfaceSetUnnumberedReply) GetCrcString() string            { return "e8d4e804" }
673 func (*SwInterfaceSetUnnumberedReply) GetMessageType() api.MessageType { return api.ReplyMessage }
674
675 // SwInterfaceTagAddDel represents VPP binary API message 'sw_interface_tag_add_del'.
676 type SwInterfaceTagAddDel struct {
677         IsAdd     bool
678         SwIfIndex InterfaceIndex
679         Tag       string `struc:"[64]byte"`
680 }
681
682 func (m *SwInterfaceTagAddDel) Reset()                        { *m = SwInterfaceTagAddDel{} }
683 func (*SwInterfaceTagAddDel) GetMessageName() string          { return "sw_interface_tag_add_del" }
684 func (*SwInterfaceTagAddDel) GetCrcString() string            { return "426f8bc1" }
685 func (*SwInterfaceTagAddDel) GetMessageType() api.MessageType { return api.RequestMessage }
686
687 // SwInterfaceTagAddDelReply represents VPP binary API message 'sw_interface_tag_add_del_reply'.
688 type SwInterfaceTagAddDelReply struct {
689         Retval int32
690 }
691
692 func (m *SwInterfaceTagAddDelReply) Reset()                        { *m = SwInterfaceTagAddDelReply{} }
693 func (*SwInterfaceTagAddDelReply) GetMessageName() string          { return "sw_interface_tag_add_del_reply" }
694 func (*SwInterfaceTagAddDelReply) GetCrcString() string            { return "e8d4e804" }
695 func (*SwInterfaceTagAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage }
696
697 // WantInterfaceEvents represents VPP binary API message 'want_interface_events'.
698 type WantInterfaceEvents struct {
699         EnableDisable uint32
700         PID           uint32
701 }
702
703 func (m *WantInterfaceEvents) Reset()                        { *m = WantInterfaceEvents{} }
704 func (*WantInterfaceEvents) GetMessageName() string          { return "want_interface_events" }
705 func (*WantInterfaceEvents) GetCrcString() string            { return "476f5a08" }
706 func (*WantInterfaceEvents) GetMessageType() api.MessageType { return api.RequestMessage }
707
708 // WantInterfaceEventsReply represents VPP binary API message 'want_interface_events_reply'.
709 type WantInterfaceEventsReply struct {
710         Retval int32
711 }
712
713 func (m *WantInterfaceEventsReply) Reset()                        { *m = WantInterfaceEventsReply{} }
714 func (*WantInterfaceEventsReply) GetMessageName() string          { return "want_interface_events_reply" }
715 func (*WantInterfaceEventsReply) GetCrcString() string            { return "e8d4e804" }
716 func (*WantInterfaceEventsReply) GetMessageType() api.MessageType { return api.ReplyMessage }
717
718 func init() {
719         api.RegisterMessage((*CollectDetailedInterfaceStats)(nil), "interface.CollectDetailedInterfaceStats")
720         api.RegisterMessage((*CollectDetailedInterfaceStatsReply)(nil), "interface.CollectDetailedInterfaceStatsReply")
721         api.RegisterMessage((*CreateLoopback)(nil), "interface.CreateLoopback")
722         api.RegisterMessage((*CreateLoopbackInstance)(nil), "interface.CreateLoopbackInstance")
723         api.RegisterMessage((*CreateLoopbackInstanceReply)(nil), "interface.CreateLoopbackInstanceReply")
724         api.RegisterMessage((*CreateLoopbackReply)(nil), "interface.CreateLoopbackReply")
725         api.RegisterMessage((*CreateSubif)(nil), "interface.CreateSubif")
726         api.RegisterMessage((*CreateSubifReply)(nil), "interface.CreateSubifReply")
727         api.RegisterMessage((*CreateVlanSubif)(nil), "interface.CreateVlanSubif")
728         api.RegisterMessage((*CreateVlanSubifReply)(nil), "interface.CreateVlanSubifReply")
729         api.RegisterMessage((*DeleteLoopback)(nil), "interface.DeleteLoopback")
730         api.RegisterMessage((*DeleteLoopbackReply)(nil), "interface.DeleteLoopbackReply")
731         api.RegisterMessage((*DeleteSubif)(nil), "interface.DeleteSubif")
732         api.RegisterMessage((*DeleteSubifReply)(nil), "interface.DeleteSubifReply")
733         api.RegisterMessage((*HwInterfaceSetMtu)(nil), "interface.HwInterfaceSetMtu")
734         api.RegisterMessage((*HwInterfaceSetMtuReply)(nil), "interface.HwInterfaceSetMtuReply")
735         api.RegisterMessage((*InterfaceNameRenumber)(nil), "interface.InterfaceNameRenumber")
736         api.RegisterMessage((*InterfaceNameRenumberReply)(nil), "interface.InterfaceNameRenumberReply")
737         api.RegisterMessage((*SwInterfaceAddDelAddress)(nil), "interface.SwInterfaceAddDelAddress")
738         api.RegisterMessage((*SwInterfaceAddDelAddressReply)(nil), "interface.SwInterfaceAddDelAddressReply")
739         api.RegisterMessage((*SwInterfaceAddDelMacAddress)(nil), "interface.SwInterfaceAddDelMacAddress")
740         api.RegisterMessage((*SwInterfaceAddDelMacAddressReply)(nil), "interface.SwInterfaceAddDelMacAddressReply")
741         api.RegisterMessage((*SwInterfaceClearStats)(nil), "interface.SwInterfaceClearStats")
742         api.RegisterMessage((*SwInterfaceClearStatsReply)(nil), "interface.SwInterfaceClearStatsReply")
743         api.RegisterMessage((*SwInterfaceDetails)(nil), "interface.SwInterfaceDetails")
744         api.RegisterMessage((*SwInterfaceDump)(nil), "interface.SwInterfaceDump")
745         api.RegisterMessage((*SwInterfaceEvent)(nil), "interface.SwInterfaceEvent")
746         api.RegisterMessage((*SwInterfaceGetMacAddress)(nil), "interface.SwInterfaceGetMacAddress")
747         api.RegisterMessage((*SwInterfaceGetMacAddressReply)(nil), "interface.SwInterfaceGetMacAddressReply")
748         api.RegisterMessage((*SwInterfaceGetTable)(nil), "interface.SwInterfaceGetTable")
749         api.RegisterMessage((*SwInterfaceGetTableReply)(nil), "interface.SwInterfaceGetTableReply")
750         api.RegisterMessage((*SwInterfaceRxPlacementDetails)(nil), "interface.SwInterfaceRxPlacementDetails")
751         api.RegisterMessage((*SwInterfaceRxPlacementDump)(nil), "interface.SwInterfaceRxPlacementDump")
752         api.RegisterMessage((*SwInterfaceSetFlags)(nil), "interface.SwInterfaceSetFlags")
753         api.RegisterMessage((*SwInterfaceSetFlagsReply)(nil), "interface.SwInterfaceSetFlagsReply")
754         api.RegisterMessage((*SwInterfaceSetIPDirectedBroadcast)(nil), "interface.SwInterfaceSetIPDirectedBroadcast")
755         api.RegisterMessage((*SwInterfaceSetIPDirectedBroadcastReply)(nil), "interface.SwInterfaceSetIPDirectedBroadcastReply")
756         api.RegisterMessage((*SwInterfaceSetMacAddress)(nil), "interface.SwInterfaceSetMacAddress")
757         api.RegisterMessage((*SwInterfaceSetMacAddressReply)(nil), "interface.SwInterfaceSetMacAddressReply")
758         api.RegisterMessage((*SwInterfaceSetMtu)(nil), "interface.SwInterfaceSetMtu")
759         api.RegisterMessage((*SwInterfaceSetMtuReply)(nil), "interface.SwInterfaceSetMtuReply")
760         api.RegisterMessage((*SwInterfaceSetRxMode)(nil), "interface.SwInterfaceSetRxMode")
761         api.RegisterMessage((*SwInterfaceSetRxModeReply)(nil), "interface.SwInterfaceSetRxModeReply")
762         api.RegisterMessage((*SwInterfaceSetRxPlacement)(nil), "interface.SwInterfaceSetRxPlacement")
763         api.RegisterMessage((*SwInterfaceSetRxPlacementReply)(nil), "interface.SwInterfaceSetRxPlacementReply")
764         api.RegisterMessage((*SwInterfaceSetTable)(nil), "interface.SwInterfaceSetTable")
765         api.RegisterMessage((*SwInterfaceSetTableReply)(nil), "interface.SwInterfaceSetTableReply")
766         api.RegisterMessage((*SwInterfaceSetUnnumbered)(nil), "interface.SwInterfaceSetUnnumbered")
767         api.RegisterMessage((*SwInterfaceSetUnnumberedReply)(nil), "interface.SwInterfaceSetUnnumberedReply")
768         api.RegisterMessage((*SwInterfaceTagAddDel)(nil), "interface.SwInterfaceTagAddDel")
769         api.RegisterMessage((*SwInterfaceTagAddDelReply)(nil), "interface.SwInterfaceTagAddDelReply")
770         api.RegisterMessage((*WantInterfaceEvents)(nil), "interface.WantInterfaceEvents")
771         api.RegisterMessage((*WantInterfaceEventsReply)(nil), "interface.WantInterfaceEventsReply")
772 }
773
774 // Messages returns list of all messages in this module.
775 func AllMessages() []api.Message {
776         return []api.Message{
777                 (*CollectDetailedInterfaceStats)(nil),
778                 (*CollectDetailedInterfaceStatsReply)(nil),
779                 (*CreateLoopback)(nil),
780                 (*CreateLoopbackInstance)(nil),
781                 (*CreateLoopbackInstanceReply)(nil),
782                 (*CreateLoopbackReply)(nil),
783                 (*CreateSubif)(nil),
784                 (*CreateSubifReply)(nil),
785                 (*CreateVlanSubif)(nil),
786                 (*CreateVlanSubifReply)(nil),
787                 (*DeleteLoopback)(nil),
788                 (*DeleteLoopbackReply)(nil),
789                 (*DeleteSubif)(nil),
790                 (*DeleteSubifReply)(nil),
791                 (*HwInterfaceSetMtu)(nil),
792                 (*HwInterfaceSetMtuReply)(nil),
793                 (*InterfaceNameRenumber)(nil),
794                 (*InterfaceNameRenumberReply)(nil),
795                 (*SwInterfaceAddDelAddress)(nil),
796                 (*SwInterfaceAddDelAddressReply)(nil),
797                 (*SwInterfaceAddDelMacAddress)(nil),
798                 (*SwInterfaceAddDelMacAddressReply)(nil),
799                 (*SwInterfaceClearStats)(nil),
800                 (*SwInterfaceClearStatsReply)(nil),
801                 (*SwInterfaceDetails)(nil),
802                 (*SwInterfaceDump)(nil),
803                 (*SwInterfaceEvent)(nil),
804                 (*SwInterfaceGetMacAddress)(nil),
805                 (*SwInterfaceGetMacAddressReply)(nil),
806                 (*SwInterfaceGetTable)(nil),
807                 (*SwInterfaceGetTableReply)(nil),
808                 (*SwInterfaceRxPlacementDetails)(nil),
809                 (*SwInterfaceRxPlacementDump)(nil),
810                 (*SwInterfaceSetFlags)(nil),
811                 (*SwInterfaceSetFlagsReply)(nil),
812                 (*SwInterfaceSetIPDirectedBroadcast)(nil),
813                 (*SwInterfaceSetIPDirectedBroadcastReply)(nil),
814                 (*SwInterfaceSetMacAddress)(nil),
815                 (*SwInterfaceSetMacAddressReply)(nil),
816                 (*SwInterfaceSetMtu)(nil),
817                 (*SwInterfaceSetMtuReply)(nil),
818                 (*SwInterfaceSetRxMode)(nil),
819                 (*SwInterfaceSetRxModeReply)(nil),
820                 (*SwInterfaceSetRxPlacement)(nil),
821                 (*SwInterfaceSetRxPlacementReply)(nil),
822                 (*SwInterfaceSetTable)(nil),
823                 (*SwInterfaceSetTableReply)(nil),
824                 (*SwInterfaceSetUnnumbered)(nil),
825                 (*SwInterfaceSetUnnumberedReply)(nil),
826                 (*SwInterfaceTagAddDel)(nil),
827                 (*SwInterfaceTagAddDelReply)(nil),
828                 (*WantInterfaceEvents)(nil),
829                 (*WantInterfaceEventsReply)(nil),
830         }
831 }
832
833 // RPCService represents RPC service API for interface module.
834 type RPCService interface {
835         DumpSwInterface(ctx context.Context, in *SwInterfaceDump) (RPCService_DumpSwInterfaceClient, error)
836         DumpSwInterfaceRxPlacement(ctx context.Context, in *SwInterfaceRxPlacementDump) (RPCService_DumpSwInterfaceRxPlacementClient, error)
837         CollectDetailedInterfaceStats(ctx context.Context, in *CollectDetailedInterfaceStats) (*CollectDetailedInterfaceStatsReply, error)
838         CreateLoopback(ctx context.Context, in *CreateLoopback) (*CreateLoopbackReply, error)
839         CreateLoopbackInstance(ctx context.Context, in *CreateLoopbackInstance) (*CreateLoopbackInstanceReply, error)
840         CreateSubif(ctx context.Context, in *CreateSubif) (*CreateSubifReply, error)
841         CreateVlanSubif(ctx context.Context, in *CreateVlanSubif) (*CreateVlanSubifReply, error)
842         DeleteLoopback(ctx context.Context, in *DeleteLoopback) (*DeleteLoopbackReply, error)
843         DeleteSubif(ctx context.Context, in *DeleteSubif) (*DeleteSubifReply, error)
844         HwInterfaceSetMtu(ctx context.Context, in *HwInterfaceSetMtu) (*HwInterfaceSetMtuReply, error)
845         InterfaceNameRenumber(ctx context.Context, in *InterfaceNameRenumber) (*InterfaceNameRenumberReply, error)
846         SwInterfaceAddDelAddress(ctx context.Context, in *SwInterfaceAddDelAddress) (*SwInterfaceAddDelAddressReply, error)
847         SwInterfaceAddDelMacAddress(ctx context.Context, in *SwInterfaceAddDelMacAddress) (*SwInterfaceAddDelMacAddressReply, error)
848         SwInterfaceClearStats(ctx context.Context, in *SwInterfaceClearStats) (*SwInterfaceClearStatsReply, error)
849         SwInterfaceGetMacAddress(ctx context.Context, in *SwInterfaceGetMacAddress) (*SwInterfaceGetMacAddressReply, error)
850         SwInterfaceGetTable(ctx context.Context, in *SwInterfaceGetTable) (*SwInterfaceGetTableReply, error)
851         SwInterfaceSetFlags(ctx context.Context, in *SwInterfaceSetFlags) (*SwInterfaceSetFlagsReply, error)
852         SwInterfaceSetIPDirectedBroadcast(ctx context.Context, in *SwInterfaceSetIPDirectedBroadcast) (*SwInterfaceSetIPDirectedBroadcastReply, error)
853         SwInterfaceSetMacAddress(ctx context.Context, in *SwInterfaceSetMacAddress) (*SwInterfaceSetMacAddressReply, error)
854         SwInterfaceSetMtu(ctx context.Context, in *SwInterfaceSetMtu) (*SwInterfaceSetMtuReply, error)
855         SwInterfaceSetRxMode(ctx context.Context, in *SwInterfaceSetRxMode) (*SwInterfaceSetRxModeReply, error)
856         SwInterfaceSetRxPlacement(ctx context.Context, in *SwInterfaceSetRxPlacement) (*SwInterfaceSetRxPlacementReply, error)
857         SwInterfaceSetTable(ctx context.Context, in *SwInterfaceSetTable) (*SwInterfaceSetTableReply, error)
858         SwInterfaceSetUnnumbered(ctx context.Context, in *SwInterfaceSetUnnumbered) (*SwInterfaceSetUnnumberedReply, error)
859         SwInterfaceTagAddDel(ctx context.Context, in *SwInterfaceTagAddDel) (*SwInterfaceTagAddDelReply, error)
860         WantInterfaceEvents(ctx context.Context, in *WantInterfaceEvents) (*WantInterfaceEventsReply, error)
861 }
862
863 type serviceClient struct {
864         ch api.Channel
865 }
866
867 func NewServiceClient(ch api.Channel) RPCService {
868         return &serviceClient{ch}
869 }
870
871 func (c *serviceClient) DumpSwInterface(ctx context.Context, in *SwInterfaceDump) (RPCService_DumpSwInterfaceClient, error) {
872         stream := c.ch.SendMultiRequest(in)
873         x := &serviceClient_DumpSwInterfaceClient{stream}
874         return x, nil
875 }
876
877 type RPCService_DumpSwInterfaceClient interface {
878         Recv() (*SwInterfaceDetails, error)
879 }
880
881 type serviceClient_DumpSwInterfaceClient struct {
882         api.MultiRequestCtx
883 }
884
885 func (c *serviceClient_DumpSwInterfaceClient) Recv() (*SwInterfaceDetails, error) {
886         m := new(SwInterfaceDetails)
887         stop, err := c.MultiRequestCtx.ReceiveReply(m)
888         if err != nil {
889                 return nil, err
890         }
891         if stop {
892                 return nil, io.EOF
893         }
894         return m, nil
895 }
896
897 func (c *serviceClient) DumpSwInterfaceRxPlacement(ctx context.Context, in *SwInterfaceRxPlacementDump) (RPCService_DumpSwInterfaceRxPlacementClient, error) {
898         stream := c.ch.SendMultiRequest(in)
899         x := &serviceClient_DumpSwInterfaceRxPlacementClient{stream}
900         return x, nil
901 }
902
903 type RPCService_DumpSwInterfaceRxPlacementClient interface {
904         Recv() (*SwInterfaceRxPlacementDetails, error)
905 }
906
907 type serviceClient_DumpSwInterfaceRxPlacementClient struct {
908         api.MultiRequestCtx
909 }
910
911 func (c *serviceClient_DumpSwInterfaceRxPlacementClient) Recv() (*SwInterfaceRxPlacementDetails, error) {
912         m := new(SwInterfaceRxPlacementDetails)
913         stop, err := c.MultiRequestCtx.ReceiveReply(m)
914         if err != nil {
915                 return nil, err
916         }
917         if stop {
918                 return nil, io.EOF
919         }
920         return m, nil
921 }
922
923 func (c *serviceClient) CollectDetailedInterfaceStats(ctx context.Context, in *CollectDetailedInterfaceStats) (*CollectDetailedInterfaceStatsReply, error) {
924         out := new(CollectDetailedInterfaceStatsReply)
925         err := c.ch.SendRequest(in).ReceiveReply(out)
926         if err != nil {
927                 return nil, err
928         }
929         return out, nil
930 }
931
932 func (c *serviceClient) CreateLoopback(ctx context.Context, in *CreateLoopback) (*CreateLoopbackReply, error) {
933         out := new(CreateLoopbackReply)
934         err := c.ch.SendRequest(in).ReceiveReply(out)
935         if err != nil {
936                 return nil, err
937         }
938         return out, nil
939 }
940
941 func (c *serviceClient) CreateLoopbackInstance(ctx context.Context, in *CreateLoopbackInstance) (*CreateLoopbackInstanceReply, error) {
942         out := new(CreateLoopbackInstanceReply)
943         err := c.ch.SendRequest(in).ReceiveReply(out)
944         if err != nil {
945                 return nil, err
946         }
947         return out, nil
948 }
949
950 func (c *serviceClient) CreateSubif(ctx context.Context, in *CreateSubif) (*CreateSubifReply, error) {
951         out := new(CreateSubifReply)
952         err := c.ch.SendRequest(in).ReceiveReply(out)
953         if err != nil {
954                 return nil, err
955         }
956         return out, nil
957 }
958
959 func (c *serviceClient) CreateVlanSubif(ctx context.Context, in *CreateVlanSubif) (*CreateVlanSubifReply, error) {
960         out := new(CreateVlanSubifReply)
961         err := c.ch.SendRequest(in).ReceiveReply(out)
962         if err != nil {
963                 return nil, err
964         }
965         return out, nil
966 }
967
968 func (c *serviceClient) DeleteLoopback(ctx context.Context, in *DeleteLoopback) (*DeleteLoopbackReply, error) {
969         out := new(DeleteLoopbackReply)
970         err := c.ch.SendRequest(in).ReceiveReply(out)
971         if err != nil {
972                 return nil, err
973         }
974         return out, nil
975 }
976
977 func (c *serviceClient) DeleteSubif(ctx context.Context, in *DeleteSubif) (*DeleteSubifReply, error) {
978         out := new(DeleteSubifReply)
979         err := c.ch.SendRequest(in).ReceiveReply(out)
980         if err != nil {
981                 return nil, err
982         }
983         return out, nil
984 }
985
986 func (c *serviceClient) HwInterfaceSetMtu(ctx context.Context, in *HwInterfaceSetMtu) (*HwInterfaceSetMtuReply, error) {
987         out := new(HwInterfaceSetMtuReply)
988         err := c.ch.SendRequest(in).ReceiveReply(out)
989         if err != nil {
990                 return nil, err
991         }
992         return out, nil
993 }
994
995 func (c *serviceClient) InterfaceNameRenumber(ctx context.Context, in *InterfaceNameRenumber) (*InterfaceNameRenumberReply, error) {
996         out := new(InterfaceNameRenumberReply)
997         err := c.ch.SendRequest(in).ReceiveReply(out)
998         if err != nil {
999                 return nil, err
1000         }
1001         return out, nil
1002 }
1003
1004 func (c *serviceClient) SwInterfaceAddDelAddress(ctx context.Context, in *SwInterfaceAddDelAddress) (*SwInterfaceAddDelAddressReply, error) {
1005         out := new(SwInterfaceAddDelAddressReply)
1006         err := c.ch.SendRequest(in).ReceiveReply(out)
1007         if err != nil {
1008                 return nil, err
1009         }
1010         return out, nil
1011 }
1012
1013 func (c *serviceClient) SwInterfaceAddDelMacAddress(ctx context.Context, in *SwInterfaceAddDelMacAddress) (*SwInterfaceAddDelMacAddressReply, error) {
1014         out := new(SwInterfaceAddDelMacAddressReply)
1015         err := c.ch.SendRequest(in).ReceiveReply(out)
1016         if err != nil {
1017                 return nil, err
1018         }
1019         return out, nil
1020 }
1021
1022 func (c *serviceClient) SwInterfaceClearStats(ctx context.Context, in *SwInterfaceClearStats) (*SwInterfaceClearStatsReply, error) {
1023         out := new(SwInterfaceClearStatsReply)
1024         err := c.ch.SendRequest(in).ReceiveReply(out)
1025         if err != nil {
1026                 return nil, err
1027         }
1028         return out, nil
1029 }
1030
1031 func (c *serviceClient) SwInterfaceGetMacAddress(ctx context.Context, in *SwInterfaceGetMacAddress) (*SwInterfaceGetMacAddressReply, error) {
1032         out := new(SwInterfaceGetMacAddressReply)
1033         err := c.ch.SendRequest(in).ReceiveReply(out)
1034         if err != nil {
1035                 return nil, err
1036         }
1037         return out, nil
1038 }
1039
1040 func (c *serviceClient) SwInterfaceGetTable(ctx context.Context, in *SwInterfaceGetTable) (*SwInterfaceGetTableReply, error) {
1041         out := new(SwInterfaceGetTableReply)
1042         err := c.ch.SendRequest(in).ReceiveReply(out)
1043         if err != nil {
1044                 return nil, err
1045         }
1046         return out, nil
1047 }
1048
1049 func (c *serviceClient) SwInterfaceSetFlags(ctx context.Context, in *SwInterfaceSetFlags) (*SwInterfaceSetFlagsReply, error) {
1050         out := new(SwInterfaceSetFlagsReply)
1051         err := c.ch.SendRequest(in).ReceiveReply(out)
1052         if err != nil {
1053                 return nil, err
1054         }
1055         return out, nil
1056 }
1057
1058 func (c *serviceClient) SwInterfaceSetIPDirectedBroadcast(ctx context.Context, in *SwInterfaceSetIPDirectedBroadcast) (*SwInterfaceSetIPDirectedBroadcastReply, error) {
1059         out := new(SwInterfaceSetIPDirectedBroadcastReply)
1060         err := c.ch.SendRequest(in).ReceiveReply(out)
1061         if err != nil {
1062                 return nil, err
1063         }
1064         return out, nil
1065 }
1066
1067 func (c *serviceClient) SwInterfaceSetMacAddress(ctx context.Context, in *SwInterfaceSetMacAddress) (*SwInterfaceSetMacAddressReply, error) {
1068         out := new(SwInterfaceSetMacAddressReply)
1069         err := c.ch.SendRequest(in).ReceiveReply(out)
1070         if err != nil {
1071                 return nil, err
1072         }
1073         return out, nil
1074 }
1075
1076 func (c *serviceClient) SwInterfaceSetMtu(ctx context.Context, in *SwInterfaceSetMtu) (*SwInterfaceSetMtuReply, error) {
1077         out := new(SwInterfaceSetMtuReply)
1078         err := c.ch.SendRequest(in).ReceiveReply(out)
1079         if err != nil {
1080                 return nil, err
1081         }
1082         return out, nil
1083 }
1084
1085 func (c *serviceClient) SwInterfaceSetRxMode(ctx context.Context, in *SwInterfaceSetRxMode) (*SwInterfaceSetRxModeReply, error) {
1086         out := new(SwInterfaceSetRxModeReply)
1087         err := c.ch.SendRequest(in).ReceiveReply(out)
1088         if err != nil {
1089                 return nil, err
1090         }
1091         return out, nil
1092 }
1093
1094 func (c *serviceClient) SwInterfaceSetRxPlacement(ctx context.Context, in *SwInterfaceSetRxPlacement) (*SwInterfaceSetRxPlacementReply, error) {
1095         out := new(SwInterfaceSetRxPlacementReply)
1096         err := c.ch.SendRequest(in).ReceiveReply(out)
1097         if err != nil {
1098                 return nil, err
1099         }
1100         return out, nil
1101 }
1102
1103 func (c *serviceClient) SwInterfaceSetTable(ctx context.Context, in *SwInterfaceSetTable) (*SwInterfaceSetTableReply, error) {
1104         out := new(SwInterfaceSetTableReply)
1105         err := c.ch.SendRequest(in).ReceiveReply(out)
1106         if err != nil {
1107                 return nil, err
1108         }
1109         return out, nil
1110 }
1111
1112 func (c *serviceClient) SwInterfaceSetUnnumbered(ctx context.Context, in *SwInterfaceSetUnnumbered) (*SwInterfaceSetUnnumberedReply, error) {
1113         out := new(SwInterfaceSetUnnumberedReply)
1114         err := c.ch.SendRequest(in).ReceiveReply(out)
1115         if err != nil {
1116                 return nil, err
1117         }
1118         return out, nil
1119 }
1120
1121 func (c *serviceClient) SwInterfaceTagAddDel(ctx context.Context, in *SwInterfaceTagAddDel) (*SwInterfaceTagAddDelReply, error) {
1122         out := new(SwInterfaceTagAddDelReply)
1123         err := c.ch.SendRequest(in).ReceiveReply(out)
1124         if err != nil {
1125                 return nil, err
1126         }
1127         return out, nil
1128 }
1129
1130 func (c *serviceClient) WantInterfaceEvents(ctx context.Context, in *WantInterfaceEvents) (*WantInterfaceEventsReply, error) {
1131         out := new(WantInterfaceEventsReply)
1132         err := c.ch.SendRequest(in).ReceiveReply(out)
1133         if err != nil {
1134                 return nil, err
1135         }
1136         return out, nil
1137 }
1138
1139 // This is a compile-time assertion to ensure that this generated file
1140 // is compatible with the GoVPP api package it is being compiled against.
1141 // A compilation error at this line likely means your copy of the
1142 // GoVPP api package needs to be updated.
1143 const _ = api.GoVppAPIPackageIsVersion1 // please upgrade the GoVPP api package
1144
1145 // Reference imports to suppress errors if they are not otherwise used.
1146 var _ = api.RegisterMessage
1147 var _ = bytes.NewBuffer
1148 var _ = context.Background
1149 var _ = io.Copy
1150 var _ = strconv.Itoa
1151 var _ = struc.Pack