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