Add support for string types
[govpp.git] / examples / bin_api / interfaces / interfaces.ba.go
1 // Code generated by GoVPP binapi-generator. DO NOT EDIT.
2 //  source: interface.api.json
3
4 /*
5  Package interfaces is a generated from VPP binary API module 'interface'.
6
7  It contains following objects:
8          51 messages
9           1 alias
10          25 services
11
12 */
13 package interfaces
14
15 import "git.fd.io/govpp.git/api"
16 import "github.com/lunixbochs/struc"
17 import "bytes"
18
19 // Reference imports to suppress errors if they are not otherwise used.
20 var _ = api.RegisterMessage
21 var _ = struc.Pack
22 var _ = bytes.NewBuffer
23
24 // Services represents VPP binary API services:
25 //
26 //      "services": {
27 //          "create_subif": {
28 //              "reply": "create_subif_reply"
29 //          },
30 //          "sw_interface_set_ip_directed_broadcast": {
31 //              "reply": "sw_interface_set_ip_directed_broadcast_reply"
32 //          },
33 //          "delete_subif": {
34 //              "reply": "delete_subif_reply"
35 //          },
36 //          "sw_interface_get_mac_address": {
37 //              "reply": "sw_interface_get_mac_address_reply"
38 //          },
39 //          "sw_interface_tag_add_del": {
40 //              "reply": "sw_interface_tag_add_del_reply"
41 //          },
42 //          "collect_detailed_interface_stats": {
43 //              "reply": "collect_detailed_interface_stats_reply"
44 //          },
45 //          "sw_interface_dump": {
46 //              "reply": "sw_interface_details",
47 //              "stream": true
48 //          },
49 //          "sw_interface_set_rx_placement": {
50 //              "reply": "sw_interface_set_rx_placement_reply"
51 //          },
52 //          "sw_interface_add_del_address": {
53 //              "reply": "sw_interface_add_del_address_reply"
54 //          },
55 //          "sw_interface_get_table": {
56 //              "reply": "sw_interface_get_table_reply"
57 //          },
58 //          "interface_name_renumber": {
59 //              "reply": "interface_name_renumber_reply"
60 //          },
61 //          "create_loopback_instance": {
62 //              "reply": "create_loopback_instance_reply"
63 //          },
64 //          "sw_interface_set_mtu": {
65 //              "reply": "sw_interface_set_mtu_reply"
66 //          },
67 //          "want_interface_events": {
68 //              "reply": "want_interface_events_reply",
69 //              "events": [
70 //                  "sw_interface_event"
71 //              ]
72 //          },
73 //          "create_loopback": {
74 //              "reply": "create_loopback_reply"
75 //          },
76 //          "sw_interface_clear_stats": {
77 //              "reply": "sw_interface_clear_stats_reply"
78 //          },
79 //          "hw_interface_set_mtu": {
80 //              "reply": "hw_interface_set_mtu_reply"
81 //          },
82 //          "sw_interface_set_mac_address": {
83 //              "reply": "sw_interface_set_mac_address_reply"
84 //          },
85 //          "sw_interface_set_unnumbered": {
86 //              "reply": "sw_interface_set_unnumbered_reply"
87 //          },
88 //          "sw_interface_rx_placement_dump": {
89 //              "reply": "sw_interface_rx_placement_details",
90 //              "stream": true
91 //          },
92 //          "sw_interface_set_flags": {
93 //              "reply": "sw_interface_set_flags_reply"
94 //          },
95 //          "delete_loopback": {
96 //              "reply": "delete_loopback_reply"
97 //          },
98 //          "sw_interface_set_rx_mode": {
99 //              "reply": "sw_interface_set_rx_mode_reply"
100 //          },
101 //          "create_vlan_subif": {
102 //              "reply": "create_vlan_subif_reply"
103 //          },
104 //          "sw_interface_set_table": {
105 //              "reply": "sw_interface_set_table_reply"
106 //          }
107 //      },
108 //
109 type Services interface {
110         DumpSwInterface(*SwInterfaceDump) ([]*SwInterfaceDetails, error)
111         DumpSwInterfaceRxPlacement(*SwInterfaceRxPlacementDump) ([]*SwInterfaceRxPlacementDetails, error)
112         CollectDetailedInterfaceStats(*CollectDetailedInterfaceStats) (*CollectDetailedInterfaceStatsReply, error)
113         CreateLoopback(*CreateLoopback) (*CreateLoopbackReply, error)
114         CreateLoopbackInstance(*CreateLoopbackInstance) (*CreateLoopbackInstanceReply, error)
115         CreateSubif(*CreateSubif) (*CreateSubifReply, error)
116         CreateVlanSubif(*CreateVlanSubif) (*CreateVlanSubifReply, error)
117         DeleteLoopback(*DeleteLoopback) (*DeleteLoopbackReply, error)
118         DeleteSubif(*DeleteSubif) (*DeleteSubifReply, error)
119         HwInterfaceSetMtu(*HwInterfaceSetMtu) (*HwInterfaceSetMtuReply, error)
120         InterfaceNameRenumber(*InterfaceNameRenumber) (*InterfaceNameRenumberReply, error)
121         SwInterfaceAddDelAddress(*SwInterfaceAddDelAddress) (*SwInterfaceAddDelAddressReply, error)
122         SwInterfaceClearStats(*SwInterfaceClearStats) (*SwInterfaceClearStatsReply, error)
123         SwInterfaceGetMacAddress(*SwInterfaceGetMacAddress) (*SwInterfaceGetMacAddressReply, error)
124         SwInterfaceGetTable(*SwInterfaceGetTable) (*SwInterfaceGetTableReply, error)
125         SwInterfaceSetFlags(*SwInterfaceSetFlags) (*SwInterfaceSetFlagsReply, error)
126         SwInterfaceSetIPDirectedBroadcast(*SwInterfaceSetIPDirectedBroadcast) (*SwInterfaceSetIPDirectedBroadcastReply, error)
127         SwInterfaceSetMacAddress(*SwInterfaceSetMacAddress) (*SwInterfaceSetMacAddressReply, error)
128         SwInterfaceSetMtu(*SwInterfaceSetMtu) (*SwInterfaceSetMtuReply, error)
129         SwInterfaceSetRxMode(*SwInterfaceSetRxMode) (*SwInterfaceSetRxModeReply, error)
130         SwInterfaceSetRxPlacement(*SwInterfaceSetRxPlacement) (*SwInterfaceSetRxPlacementReply, error)
131         SwInterfaceSetTable(*SwInterfaceSetTable) (*SwInterfaceSetTableReply, error)
132         SwInterfaceSetUnnumbered(*SwInterfaceSetUnnumbered) (*SwInterfaceSetUnnumberedReply, error)
133         SwInterfaceTagAddDel(*SwInterfaceTagAddDel) (*SwInterfaceTagAddDelReply, error)
134         WantInterfaceEvents(*WantInterfaceEvents) (*WantInterfaceEventsReply, error)
135 }
136
137 /* Aliases */
138
139 // InterfaceIndex represents VPP binary API alias 'interface_index':
140 //
141 //      "interface_index": {
142 //          "type": "u32"
143 //      }
144 //
145 type InterfaceIndex uint32
146
147 /* Messages */
148
149 // SwInterfaceSetFlags represents VPP binary API message 'sw_interface_set_flags':
150 //
151 //      "sw_interface_set_flags",
152 //      [
153 //          "u16",
154 //          "_vl_msg_id"
155 //      ],
156 //      [
157 //          "u32",
158 //          "client_index"
159 //      ],
160 //      [
161 //          "u32",
162 //          "context"
163 //      ],
164 //      [
165 //          "u32",
166 //          "sw_if_index"
167 //      ],
168 //      [
169 //          "u8",
170 //          "admin_up_down"
171 //      ],
172 //      {
173 //          "crc": "0x555485f5"
174 //      }
175 //
176 type SwInterfaceSetFlags struct {
177         SwIfIndex   uint32
178         AdminUpDown uint8
179 }
180
181 func (*SwInterfaceSetFlags) GetMessageName() string {
182         return "sw_interface_set_flags"
183 }
184 func (*SwInterfaceSetFlags) GetCrcString() string {
185         return "555485f5"
186 }
187 func (*SwInterfaceSetFlags) GetMessageType() api.MessageType {
188         return api.RequestMessage
189 }
190
191 // SwInterfaceSetFlagsReply represents VPP binary API message 'sw_interface_set_flags_reply':
192 //
193 //      "sw_interface_set_flags_reply",
194 //      [
195 //          "u16",
196 //          "_vl_msg_id"
197 //      ],
198 //      [
199 //          "u32",
200 //          "context"
201 //      ],
202 //      [
203 //          "i32",
204 //          "retval"
205 //      ],
206 //      {
207 //          "crc": "0xe8d4e804"
208 //      }
209 //
210 type SwInterfaceSetFlagsReply struct {
211         Retval int32
212 }
213
214 func (*SwInterfaceSetFlagsReply) GetMessageName() string {
215         return "sw_interface_set_flags_reply"
216 }
217 func (*SwInterfaceSetFlagsReply) GetCrcString() string {
218         return "e8d4e804"
219 }
220 func (*SwInterfaceSetFlagsReply) GetMessageType() api.MessageType {
221         return api.ReplyMessage
222 }
223
224 // HwInterfaceSetMtu represents VPP binary API message 'hw_interface_set_mtu':
225 //
226 //      "hw_interface_set_mtu",
227 //      [
228 //          "u16",
229 //          "_vl_msg_id"
230 //      ],
231 //      [
232 //          "u32",
233 //          "client_index"
234 //      ],
235 //      [
236 //          "u32",
237 //          "context"
238 //      ],
239 //      [
240 //          "u32",
241 //          "sw_if_index"
242 //      ],
243 //      [
244 //          "u16",
245 //          "mtu"
246 //      ],
247 //      {
248 //          "crc": "0x132da1e7"
249 //      }
250 //
251 type HwInterfaceSetMtu struct {
252         SwIfIndex uint32
253         Mtu       uint16
254 }
255
256 func (*HwInterfaceSetMtu) GetMessageName() string {
257         return "hw_interface_set_mtu"
258 }
259 func (*HwInterfaceSetMtu) GetCrcString() string {
260         return "132da1e7"
261 }
262 func (*HwInterfaceSetMtu) GetMessageType() api.MessageType {
263         return api.RequestMessage
264 }
265
266 // HwInterfaceSetMtuReply represents VPP binary API message 'hw_interface_set_mtu_reply':
267 //
268 //      "hw_interface_set_mtu_reply",
269 //      [
270 //          "u16",
271 //          "_vl_msg_id"
272 //      ],
273 //      [
274 //          "u32",
275 //          "context"
276 //      ],
277 //      [
278 //          "i32",
279 //          "retval"
280 //      ],
281 //      {
282 //          "crc": "0xe8d4e804"
283 //      }
284 //
285 type HwInterfaceSetMtuReply struct {
286         Retval int32
287 }
288
289 func (*HwInterfaceSetMtuReply) GetMessageName() string {
290         return "hw_interface_set_mtu_reply"
291 }
292 func (*HwInterfaceSetMtuReply) GetCrcString() string {
293         return "e8d4e804"
294 }
295 func (*HwInterfaceSetMtuReply) GetMessageType() api.MessageType {
296         return api.ReplyMessage
297 }
298
299 // SwInterfaceSetMtu represents VPP binary API message 'sw_interface_set_mtu':
300 //
301 //      "sw_interface_set_mtu",
302 //      [
303 //          "u16",
304 //          "_vl_msg_id"
305 //      ],
306 //      [
307 //          "u32",
308 //          "client_index"
309 //      ],
310 //      [
311 //          "u32",
312 //          "context"
313 //      ],
314 //      [
315 //          "u32",
316 //          "sw_if_index"
317 //      ],
318 //      [
319 //          "u32",
320 //          "mtu",
321 //          4
322 //      ],
323 //      {
324 //          "crc": "0xd0008db8"
325 //      }
326 //
327 type SwInterfaceSetMtu struct {
328         SwIfIndex uint32
329         Mtu       []uint32 `struc:"[4]uint32"`
330 }
331
332 func (*SwInterfaceSetMtu) GetMessageName() string {
333         return "sw_interface_set_mtu"
334 }
335 func (*SwInterfaceSetMtu) GetCrcString() string {
336         return "d0008db8"
337 }
338 func (*SwInterfaceSetMtu) GetMessageType() api.MessageType {
339         return api.RequestMessage
340 }
341
342 // SwInterfaceSetMtuReply represents VPP binary API message 'sw_interface_set_mtu_reply':
343 //
344 //      "sw_interface_set_mtu_reply",
345 //      [
346 //          "u16",
347 //          "_vl_msg_id"
348 //      ],
349 //      [
350 //          "u32",
351 //          "context"
352 //      ],
353 //      [
354 //          "i32",
355 //          "retval"
356 //      ],
357 //      {
358 //          "crc": "0xe8d4e804"
359 //      }
360 //
361 type SwInterfaceSetMtuReply struct {
362         Retval int32
363 }
364
365 func (*SwInterfaceSetMtuReply) GetMessageName() string {
366         return "sw_interface_set_mtu_reply"
367 }
368 func (*SwInterfaceSetMtuReply) GetCrcString() string {
369         return "e8d4e804"
370 }
371 func (*SwInterfaceSetMtuReply) GetMessageType() api.MessageType {
372         return api.ReplyMessage
373 }
374
375 // SwInterfaceSetIPDirectedBroadcast represents VPP binary API message 'sw_interface_set_ip_directed_broadcast':
376 //
377 //      "sw_interface_set_ip_directed_broadcast",
378 //      [
379 //          "u16",
380 //          "_vl_msg_id"
381 //      ],
382 //      [
383 //          "u32",
384 //          "client_index"
385 //      ],
386 //      [
387 //          "u32",
388 //          "context"
389 //      ],
390 //      [
391 //          "u32",
392 //          "sw_if_index"
393 //      ],
394 //      [
395 //          "u8",
396 //          "enable"
397 //      ],
398 //      {
399 //          "crc": "0xa36fadc0"
400 //      }
401 //
402 type SwInterfaceSetIPDirectedBroadcast struct {
403         SwIfIndex uint32
404         Enable    uint8
405 }
406
407 func (*SwInterfaceSetIPDirectedBroadcast) GetMessageName() string {
408         return "sw_interface_set_ip_directed_broadcast"
409 }
410 func (*SwInterfaceSetIPDirectedBroadcast) GetCrcString() string {
411         return "a36fadc0"
412 }
413 func (*SwInterfaceSetIPDirectedBroadcast) GetMessageType() api.MessageType {
414         return api.RequestMessage
415 }
416
417 // SwInterfaceSetIPDirectedBroadcastReply represents VPP binary API message 'sw_interface_set_ip_directed_broadcast_reply':
418 //
419 //      "sw_interface_set_ip_directed_broadcast_reply",
420 //      [
421 //          "u16",
422 //          "_vl_msg_id"
423 //      ],
424 //      [
425 //          "u32",
426 //          "context"
427 //      ],
428 //      [
429 //          "i32",
430 //          "retval"
431 //      ],
432 //      {
433 //          "crc": "0xe8d4e804"
434 //      }
435 //
436 type SwInterfaceSetIPDirectedBroadcastReply struct {
437         Retval int32
438 }
439
440 func (*SwInterfaceSetIPDirectedBroadcastReply) GetMessageName() string {
441         return "sw_interface_set_ip_directed_broadcast_reply"
442 }
443 func (*SwInterfaceSetIPDirectedBroadcastReply) GetCrcString() string {
444         return "e8d4e804"
445 }
446 func (*SwInterfaceSetIPDirectedBroadcastReply) GetMessageType() api.MessageType {
447         return api.ReplyMessage
448 }
449
450 // SwInterfaceEvent represents VPP binary API message 'sw_interface_event':
451 //
452 //      "sw_interface_event",
453 //      [
454 //          "u16",
455 //          "_vl_msg_id"
456 //      ],
457 //      [
458 //          "u32",
459 //          "client_index"
460 //      ],
461 //      [
462 //          "u32",
463 //          "pid"
464 //      ],
465 //      [
466 //          "u32",
467 //          "sw_if_index"
468 //      ],
469 //      [
470 //          "u8",
471 //          "admin_up_down"
472 //      ],
473 //      [
474 //          "u8",
475 //          "link_up_down"
476 //      ],
477 //      [
478 //          "u8",
479 //          "deleted"
480 //      ],
481 //      {
482 //          "crc": "0xbf9938e4"
483 //      }
484 //
485 type SwInterfaceEvent struct {
486         PID         uint32
487         SwIfIndex   uint32
488         AdminUpDown uint8
489         LinkUpDown  uint8
490         Deleted     uint8
491 }
492
493 func (*SwInterfaceEvent) GetMessageName() string {
494         return "sw_interface_event"
495 }
496 func (*SwInterfaceEvent) GetCrcString() string {
497         return "bf9938e4"
498 }
499 func (*SwInterfaceEvent) GetMessageType() api.MessageType {
500         return api.EventMessage
501 }
502
503 // WantInterfaceEvents represents VPP binary API message 'want_interface_events':
504 //
505 //      "want_interface_events",
506 //      [
507 //          "u16",
508 //          "_vl_msg_id"
509 //      ],
510 //      [
511 //          "u32",
512 //          "client_index"
513 //      ],
514 //      [
515 //          "u32",
516 //          "context"
517 //      ],
518 //      [
519 //          "u32",
520 //          "enable_disable"
521 //      ],
522 //      [
523 //          "u32",
524 //          "pid"
525 //      ],
526 //      {
527 //          "crc": "0x476f5a08"
528 //      }
529 //
530 type WantInterfaceEvents struct {
531         EnableDisable uint32
532         PID           uint32
533 }
534
535 func (*WantInterfaceEvents) GetMessageName() string {
536         return "want_interface_events"
537 }
538 func (*WantInterfaceEvents) GetCrcString() string {
539         return "476f5a08"
540 }
541 func (*WantInterfaceEvents) GetMessageType() api.MessageType {
542         return api.RequestMessage
543 }
544
545 // WantInterfaceEventsReply represents VPP binary API message 'want_interface_events_reply':
546 //
547 //      "want_interface_events_reply",
548 //      [
549 //          "u16",
550 //          "_vl_msg_id"
551 //      ],
552 //      [
553 //          "u32",
554 //          "context"
555 //      ],
556 //      [
557 //          "i32",
558 //          "retval"
559 //      ],
560 //      {
561 //          "crc": "0xe8d4e804"
562 //      }
563 //
564 type WantInterfaceEventsReply struct {
565         Retval int32
566 }
567
568 func (*WantInterfaceEventsReply) GetMessageName() string {
569         return "want_interface_events_reply"
570 }
571 func (*WantInterfaceEventsReply) GetCrcString() string {
572         return "e8d4e804"
573 }
574 func (*WantInterfaceEventsReply) GetMessageType() api.MessageType {
575         return api.ReplyMessage
576 }
577
578 // SwInterfaceDetails represents VPP binary API message 'sw_interface_details':
579 //
580 //      "sw_interface_details",
581 //      [
582 //          "u16",
583 //          "_vl_msg_id"
584 //      ],
585 //      [
586 //          "u32",
587 //          "context"
588 //      ],
589 //      [
590 //          "u32",
591 //          "sw_if_index"
592 //      ],
593 //      [
594 //          "u32",
595 //          "sup_sw_if_index"
596 //      ],
597 //      [
598 //          "u32",
599 //          "l2_address_length"
600 //      ],
601 //      [
602 //          "u8",
603 //          "l2_address",
604 //          8
605 //      ],
606 //      [
607 //          "u8",
608 //          "interface_name",
609 //          64
610 //      ],
611 //      [
612 //          "u8",
613 //          "admin_up_down"
614 //      ],
615 //      [
616 //          "u8",
617 //          "link_up_down"
618 //      ],
619 //      [
620 //          "u8",
621 //          "link_duplex"
622 //      ],
623 //      [
624 //          "u32",
625 //          "link_speed"
626 //      ],
627 //      [
628 //          "u16",
629 //          "link_mtu"
630 //      ],
631 //      [
632 //          "u32",
633 //          "mtu",
634 //          4
635 //      ],
636 //      [
637 //          "u32",
638 //          "sub_id"
639 //      ],
640 //      [
641 //          "u8",
642 //          "sub_dot1ad"
643 //      ],
644 //      [
645 //          "u8",
646 //          "sub_dot1ah"
647 //      ],
648 //      [
649 //          "u8",
650 //          "sub_number_of_tags"
651 //      ],
652 //      [
653 //          "u16",
654 //          "sub_outer_vlan_id"
655 //      ],
656 //      [
657 //          "u16",
658 //          "sub_inner_vlan_id"
659 //      ],
660 //      [
661 //          "u8",
662 //          "sub_exact_match"
663 //      ],
664 //      [
665 //          "u8",
666 //          "sub_default"
667 //      ],
668 //      [
669 //          "u8",
670 //          "sub_outer_vlan_id_any"
671 //      ],
672 //      [
673 //          "u8",
674 //          "sub_inner_vlan_id_any"
675 //      ],
676 //      [
677 //          "u32",
678 //          "vtr_op"
679 //      ],
680 //      [
681 //          "u32",
682 //          "vtr_push_dot1q"
683 //      ],
684 //      [
685 //          "u32",
686 //          "vtr_tag1"
687 //      ],
688 //      [
689 //          "u32",
690 //          "vtr_tag2"
691 //      ],
692 //      [
693 //          "u8",
694 //          "tag",
695 //          64
696 //      ],
697 //      [
698 //          "u16",
699 //          "outer_tag"
700 //      ],
701 //      [
702 //          "u8",
703 //          "b_dmac",
704 //          6
705 //      ],
706 //      [
707 //          "u8",
708 //          "b_smac",
709 //          6
710 //      ],
711 //      [
712 //          "u16",
713 //          "b_vlanid"
714 //      ],
715 //      [
716 //          "u32",
717 //          "i_sid"
718 //      ],
719 //      {
720 //          "crc": "0xe4ee7eb6"
721 //      }
722 //
723 type SwInterfaceDetails struct {
724         SwIfIndex         uint32
725         SupSwIfIndex      uint32
726         L2AddressLength   uint32
727         L2Address         []byte `struc:"[8]byte"`
728         InterfaceName     []byte `struc:"[64]byte"`
729         AdminUpDown       uint8
730         LinkUpDown        uint8
731         LinkDuplex        uint8
732         LinkSpeed         uint32
733         LinkMtu           uint16
734         Mtu               []uint32 `struc:"[4]uint32"`
735         SubID             uint32
736         SubDot1ad         uint8
737         SubDot1ah         uint8
738         SubNumberOfTags   uint8
739         SubOuterVlanID    uint16
740         SubInnerVlanID    uint16
741         SubExactMatch     uint8
742         SubDefault        uint8
743         SubOuterVlanIDAny uint8
744         SubInnerVlanIDAny uint8
745         VtrOp             uint32
746         VtrPushDot1q      uint32
747         VtrTag1           uint32
748         VtrTag2           uint32
749         Tag               []byte `struc:"[64]byte"`
750         OuterTag          uint16
751         BDmac             []byte `struc:"[6]byte"`
752         BSmac             []byte `struc:"[6]byte"`
753         BVlanid           uint16
754         ISid              uint32
755 }
756
757 func (*SwInterfaceDetails) GetMessageName() string {
758         return "sw_interface_details"
759 }
760 func (*SwInterfaceDetails) GetCrcString() string {
761         return "e4ee7eb6"
762 }
763 func (*SwInterfaceDetails) GetMessageType() api.MessageType {
764         return api.ReplyMessage
765 }
766
767 // SwInterfaceDump represents VPP binary API message 'sw_interface_dump':
768 //
769 //      "sw_interface_dump",
770 //      [
771 //          "u16",
772 //          "_vl_msg_id"
773 //      ],
774 //      [
775 //          "u32",
776 //          "client_index"
777 //      ],
778 //      [
779 //          "u32",
780 //          "context"
781 //      ],
782 //      [
783 //          "u8",
784 //          "name_filter_valid"
785 //      ],
786 //      [
787 //          "u8",
788 //          "name_filter",
789 //          49
790 //      ],
791 //      {
792 //          "crc": "0x63f5e3b7"
793 //      }
794 //
795 type SwInterfaceDump struct {
796         NameFilterValid uint8
797         NameFilter      []byte `struc:"[49]byte"`
798 }
799
800 func (*SwInterfaceDump) GetMessageName() string {
801         return "sw_interface_dump"
802 }
803 func (*SwInterfaceDump) GetCrcString() string {
804         return "63f5e3b7"
805 }
806 func (*SwInterfaceDump) GetMessageType() api.MessageType {
807         return api.RequestMessage
808 }
809
810 // SwInterfaceAddDelAddress represents VPP binary API message 'sw_interface_add_del_address':
811 //
812 //      "sw_interface_add_del_address",
813 //      [
814 //          "u16",
815 //          "_vl_msg_id"
816 //      ],
817 //      [
818 //          "u32",
819 //          "client_index"
820 //      ],
821 //      [
822 //          "u32",
823 //          "context"
824 //      ],
825 //      [
826 //          "u32",
827 //          "sw_if_index"
828 //      ],
829 //      [
830 //          "u8",
831 //          "is_add"
832 //      ],
833 //      [
834 //          "u8",
835 //          "is_ipv6"
836 //      ],
837 //      [
838 //          "u8",
839 //          "del_all"
840 //      ],
841 //      [
842 //          "u8",
843 //          "address_length"
844 //      ],
845 //      [
846 //          "u8",
847 //          "address",
848 //          16
849 //      ],
850 //      {
851 //          "crc": "0x7b583179"
852 //      }
853 //
854 type SwInterfaceAddDelAddress struct {
855         SwIfIndex     uint32
856         IsAdd         uint8
857         IsIPv6        uint8
858         DelAll        uint8
859         AddressLength uint8
860         Address       []byte `struc:"[16]byte"`
861 }
862
863 func (*SwInterfaceAddDelAddress) GetMessageName() string {
864         return "sw_interface_add_del_address"
865 }
866 func (*SwInterfaceAddDelAddress) GetCrcString() string {
867         return "7b583179"
868 }
869 func (*SwInterfaceAddDelAddress) GetMessageType() api.MessageType {
870         return api.RequestMessage
871 }
872
873 // SwInterfaceAddDelAddressReply represents VPP binary API message 'sw_interface_add_del_address_reply':
874 //
875 //      "sw_interface_add_del_address_reply",
876 //      [
877 //          "u16",
878 //          "_vl_msg_id"
879 //      ],
880 //      [
881 //          "u32",
882 //          "context"
883 //      ],
884 //      [
885 //          "i32",
886 //          "retval"
887 //      ],
888 //      {
889 //          "crc": "0xe8d4e804"
890 //      }
891 //
892 type SwInterfaceAddDelAddressReply struct {
893         Retval int32
894 }
895
896 func (*SwInterfaceAddDelAddressReply) GetMessageName() string {
897         return "sw_interface_add_del_address_reply"
898 }
899 func (*SwInterfaceAddDelAddressReply) GetCrcString() string {
900         return "e8d4e804"
901 }
902 func (*SwInterfaceAddDelAddressReply) GetMessageType() api.MessageType {
903         return api.ReplyMessage
904 }
905
906 // SwInterfaceSetTable represents VPP binary API message 'sw_interface_set_table':
907 //
908 //      "sw_interface_set_table",
909 //      [
910 //          "u16",
911 //          "_vl_msg_id"
912 //      ],
913 //      [
914 //          "u32",
915 //          "client_index"
916 //      ],
917 //      [
918 //          "u32",
919 //          "context"
920 //      ],
921 //      [
922 //          "u32",
923 //          "sw_if_index"
924 //      ],
925 //      [
926 //          "u8",
927 //          "is_ipv6"
928 //      ],
929 //      [
930 //          "u32",
931 //          "vrf_id"
932 //      ],
933 //      {
934 //          "crc": "0xacb25d89"
935 //      }
936 //
937 type SwInterfaceSetTable struct {
938         SwIfIndex uint32
939         IsIPv6    uint8
940         VrfID     uint32
941 }
942
943 func (*SwInterfaceSetTable) GetMessageName() string {
944         return "sw_interface_set_table"
945 }
946 func (*SwInterfaceSetTable) GetCrcString() string {
947         return "acb25d89"
948 }
949 func (*SwInterfaceSetTable) GetMessageType() api.MessageType {
950         return api.RequestMessage
951 }
952
953 // SwInterfaceSetTableReply represents VPP binary API message 'sw_interface_set_table_reply':
954 //
955 //      "sw_interface_set_table_reply",
956 //      [
957 //          "u16",
958 //          "_vl_msg_id"
959 //      ],
960 //      [
961 //          "u32",
962 //          "context"
963 //      ],
964 //      [
965 //          "i32",
966 //          "retval"
967 //      ],
968 //      {
969 //          "crc": "0xe8d4e804"
970 //      }
971 //
972 type SwInterfaceSetTableReply struct {
973         Retval int32
974 }
975
976 func (*SwInterfaceSetTableReply) GetMessageName() string {
977         return "sw_interface_set_table_reply"
978 }
979 func (*SwInterfaceSetTableReply) GetCrcString() string {
980         return "e8d4e804"
981 }
982 func (*SwInterfaceSetTableReply) GetMessageType() api.MessageType {
983         return api.ReplyMessage
984 }
985
986 // SwInterfaceGetTable represents VPP binary API message 'sw_interface_get_table':
987 //
988 //      "sw_interface_get_table",
989 //      [
990 //          "u16",
991 //          "_vl_msg_id"
992 //      ],
993 //      [
994 //          "u32",
995 //          "client_index"
996 //      ],
997 //      [
998 //          "u32",
999 //          "context"
1000 //      ],
1001 //      [
1002 //          "u32",
1003 //          "sw_if_index"
1004 //      ],
1005 //      [
1006 //          "u8",
1007 //          "is_ipv6"
1008 //      ],
1009 //      {
1010 //          "crc": "0x6b7bcd0a"
1011 //      }
1012 //
1013 type SwInterfaceGetTable struct {
1014         SwIfIndex uint32
1015         IsIPv6    uint8
1016 }
1017
1018 func (*SwInterfaceGetTable) GetMessageName() string {
1019         return "sw_interface_get_table"
1020 }
1021 func (*SwInterfaceGetTable) GetCrcString() string {
1022         return "6b7bcd0a"
1023 }
1024 func (*SwInterfaceGetTable) GetMessageType() api.MessageType {
1025         return api.RequestMessage
1026 }
1027
1028 // SwInterfaceGetTableReply represents VPP binary API message 'sw_interface_get_table_reply':
1029 //
1030 //      "sw_interface_get_table_reply",
1031 //      [
1032 //          "u16",
1033 //          "_vl_msg_id"
1034 //      ],
1035 //      [
1036 //          "u32",
1037 //          "context"
1038 //      ],
1039 //      [
1040 //          "i32",
1041 //          "retval"
1042 //      ],
1043 //      [
1044 //          "u32",
1045 //          "vrf_id"
1046 //      ],
1047 //      {
1048 //          "crc": "0xa6eb0109"
1049 //      }
1050 //
1051 type SwInterfaceGetTableReply struct {
1052         Retval int32
1053         VrfID  uint32
1054 }
1055
1056 func (*SwInterfaceGetTableReply) GetMessageName() string {
1057         return "sw_interface_get_table_reply"
1058 }
1059 func (*SwInterfaceGetTableReply) GetCrcString() string {
1060         return "a6eb0109"
1061 }
1062 func (*SwInterfaceGetTableReply) GetMessageType() api.MessageType {
1063         return api.ReplyMessage
1064 }
1065
1066 // SwInterfaceSetUnnumbered represents VPP binary API message 'sw_interface_set_unnumbered':
1067 //
1068 //      "sw_interface_set_unnumbered",
1069 //      [
1070 //          "u16",
1071 //          "_vl_msg_id"
1072 //      ],
1073 //      [
1074 //          "u32",
1075 //          "client_index"
1076 //      ],
1077 //      [
1078 //          "u32",
1079 //          "context"
1080 //      ],
1081 //      [
1082 //          "u32",
1083 //          "sw_if_index"
1084 //      ],
1085 //      [
1086 //          "u32",
1087 //          "unnumbered_sw_if_index"
1088 //      ],
1089 //      [
1090 //          "u8",
1091 //          "is_add"
1092 //      ],
1093 //      {
1094 //          "crc": "0xa2c1bbda"
1095 //      }
1096 //
1097 type SwInterfaceSetUnnumbered struct {
1098         SwIfIndex           uint32
1099         UnnumberedSwIfIndex uint32
1100         IsAdd               uint8
1101 }
1102
1103 func (*SwInterfaceSetUnnumbered) GetMessageName() string {
1104         return "sw_interface_set_unnumbered"
1105 }
1106 func (*SwInterfaceSetUnnumbered) GetCrcString() string {
1107         return "a2c1bbda"
1108 }
1109 func (*SwInterfaceSetUnnumbered) GetMessageType() api.MessageType {
1110         return api.RequestMessage
1111 }
1112
1113 // SwInterfaceSetUnnumberedReply represents VPP binary API message 'sw_interface_set_unnumbered_reply':
1114 //
1115 //      "sw_interface_set_unnumbered_reply",
1116 //      [
1117 //          "u16",
1118 //          "_vl_msg_id"
1119 //      ],
1120 //      [
1121 //          "u32",
1122 //          "context"
1123 //      ],
1124 //      [
1125 //          "i32",
1126 //          "retval"
1127 //      ],
1128 //      {
1129 //          "crc": "0xe8d4e804"
1130 //      }
1131 //
1132 type SwInterfaceSetUnnumberedReply struct {
1133         Retval int32
1134 }
1135
1136 func (*SwInterfaceSetUnnumberedReply) GetMessageName() string {
1137         return "sw_interface_set_unnumbered_reply"
1138 }
1139 func (*SwInterfaceSetUnnumberedReply) GetCrcString() string {
1140         return "e8d4e804"
1141 }
1142 func (*SwInterfaceSetUnnumberedReply) GetMessageType() api.MessageType {
1143         return api.ReplyMessage
1144 }
1145
1146 // SwInterfaceClearStats represents VPP binary API message 'sw_interface_clear_stats':
1147 //
1148 //      "sw_interface_clear_stats",
1149 //      [
1150 //          "u16",
1151 //          "_vl_msg_id"
1152 //      ],
1153 //      [
1154 //          "u32",
1155 //          "client_index"
1156 //      ],
1157 //      [
1158 //          "u32",
1159 //          "context"
1160 //      ],
1161 //      [
1162 //          "u32",
1163 //          "sw_if_index"
1164 //      ],
1165 //      {
1166 //          "crc": "0x529cb13f"
1167 //      }
1168 //
1169 type SwInterfaceClearStats struct {
1170         SwIfIndex uint32
1171 }
1172
1173 func (*SwInterfaceClearStats) GetMessageName() string {
1174         return "sw_interface_clear_stats"
1175 }
1176 func (*SwInterfaceClearStats) GetCrcString() string {
1177         return "529cb13f"
1178 }
1179 func (*SwInterfaceClearStats) GetMessageType() api.MessageType {
1180         return api.RequestMessage
1181 }
1182
1183 // SwInterfaceClearStatsReply represents VPP binary API message 'sw_interface_clear_stats_reply':
1184 //
1185 //      "sw_interface_clear_stats_reply",
1186 //      [
1187 //          "u16",
1188 //          "_vl_msg_id"
1189 //      ],
1190 //      [
1191 //          "u32",
1192 //          "context"
1193 //      ],
1194 //      [
1195 //          "i32",
1196 //          "retval"
1197 //      ],
1198 //      {
1199 //          "crc": "0xe8d4e804"
1200 //      }
1201 //
1202 type SwInterfaceClearStatsReply struct {
1203         Retval int32
1204 }
1205
1206 func (*SwInterfaceClearStatsReply) GetMessageName() string {
1207         return "sw_interface_clear_stats_reply"
1208 }
1209 func (*SwInterfaceClearStatsReply) GetCrcString() string {
1210         return "e8d4e804"
1211 }
1212 func (*SwInterfaceClearStatsReply) GetMessageType() api.MessageType {
1213         return api.ReplyMessage
1214 }
1215
1216 // SwInterfaceTagAddDel represents VPP binary API message 'sw_interface_tag_add_del':
1217 //
1218 //      "sw_interface_tag_add_del",
1219 //      [
1220 //          "u16",
1221 //          "_vl_msg_id"
1222 //      ],
1223 //      [
1224 //          "u32",
1225 //          "client_index"
1226 //      ],
1227 //      [
1228 //          "u32",
1229 //          "context"
1230 //      ],
1231 //      [
1232 //          "u8",
1233 //          "is_add"
1234 //      ],
1235 //      [
1236 //          "u32",
1237 //          "sw_if_index"
1238 //      ],
1239 //      [
1240 //          "u8",
1241 //          "tag",
1242 //          64
1243 //      ],
1244 //      {
1245 //          "crc": "0x14cc636c"
1246 //      }
1247 //
1248 type SwInterfaceTagAddDel struct {
1249         IsAdd     uint8
1250         SwIfIndex uint32
1251         Tag       []byte `struc:"[64]byte"`
1252 }
1253
1254 func (*SwInterfaceTagAddDel) GetMessageName() string {
1255         return "sw_interface_tag_add_del"
1256 }
1257 func (*SwInterfaceTagAddDel) GetCrcString() string {
1258         return "14cc636c"
1259 }
1260 func (*SwInterfaceTagAddDel) GetMessageType() api.MessageType {
1261         return api.RequestMessage
1262 }
1263
1264 // SwInterfaceTagAddDelReply represents VPP binary API message 'sw_interface_tag_add_del_reply':
1265 //
1266 //      "sw_interface_tag_add_del_reply",
1267 //      [
1268 //          "u16",
1269 //          "_vl_msg_id"
1270 //      ],
1271 //      [
1272 //          "u32",
1273 //          "context"
1274 //      ],
1275 //      [
1276 //          "i32",
1277 //          "retval"
1278 //      ],
1279 //      {
1280 //          "crc": "0xe8d4e804"
1281 //      }
1282 //
1283 type SwInterfaceTagAddDelReply struct {
1284         Retval int32
1285 }
1286
1287 func (*SwInterfaceTagAddDelReply) GetMessageName() string {
1288         return "sw_interface_tag_add_del_reply"
1289 }
1290 func (*SwInterfaceTagAddDelReply) GetCrcString() string {
1291         return "e8d4e804"
1292 }
1293 func (*SwInterfaceTagAddDelReply) GetMessageType() api.MessageType {
1294         return api.ReplyMessage
1295 }
1296
1297 // SwInterfaceSetMacAddress represents VPP binary API message 'sw_interface_set_mac_address':
1298 //
1299 //      "sw_interface_set_mac_address",
1300 //      [
1301 //          "u16",
1302 //          "_vl_msg_id"
1303 //      ],
1304 //      [
1305 //          "u32",
1306 //          "client_index"
1307 //      ],
1308 //      [
1309 //          "u32",
1310 //          "context"
1311 //      ],
1312 //      [
1313 //          "u32",
1314 //          "sw_if_index"
1315 //      ],
1316 //      [
1317 //          "u8",
1318 //          "mac_address",
1319 //          6
1320 //      ],
1321 //      {
1322 //          "crc": "0xeed5dfca"
1323 //      }
1324 //
1325 type SwInterfaceSetMacAddress struct {
1326         SwIfIndex  uint32
1327         MacAddress []byte `struc:"[6]byte"`
1328 }
1329
1330 func (*SwInterfaceSetMacAddress) GetMessageName() string {
1331         return "sw_interface_set_mac_address"
1332 }
1333 func (*SwInterfaceSetMacAddress) GetCrcString() string {
1334         return "eed5dfca"
1335 }
1336 func (*SwInterfaceSetMacAddress) GetMessageType() api.MessageType {
1337         return api.RequestMessage
1338 }
1339
1340 // SwInterfaceSetMacAddressReply represents VPP binary API message 'sw_interface_set_mac_address_reply':
1341 //
1342 //      "sw_interface_set_mac_address_reply",
1343 //      [
1344 //          "u16",
1345 //          "_vl_msg_id"
1346 //      ],
1347 //      [
1348 //          "u32",
1349 //          "context"
1350 //      ],
1351 //      [
1352 //          "i32",
1353 //          "retval"
1354 //      ],
1355 //      {
1356 //          "crc": "0xe8d4e804"
1357 //      }
1358 //
1359 type SwInterfaceSetMacAddressReply struct {
1360         Retval int32
1361 }
1362
1363 func (*SwInterfaceSetMacAddressReply) GetMessageName() string {
1364         return "sw_interface_set_mac_address_reply"
1365 }
1366 func (*SwInterfaceSetMacAddressReply) GetCrcString() string {
1367         return "e8d4e804"
1368 }
1369 func (*SwInterfaceSetMacAddressReply) GetMessageType() api.MessageType {
1370         return api.ReplyMessage
1371 }
1372
1373 // SwInterfaceGetMacAddress represents VPP binary API message 'sw_interface_get_mac_address':
1374 //
1375 //      "sw_interface_get_mac_address",
1376 //      [
1377 //          "u16",
1378 //          "_vl_msg_id"
1379 //      ],
1380 //      [
1381 //          "u32",
1382 //          "client_index"
1383 //      ],
1384 //      [
1385 //          "u32",
1386 //          "context"
1387 //      ],
1388 //      [
1389 //          "u32",
1390 //          "sw_if_index"
1391 //      ],
1392 //      {
1393 //          "crc": "0x529cb13f"
1394 //      }
1395 //
1396 type SwInterfaceGetMacAddress struct {
1397         SwIfIndex uint32
1398 }
1399
1400 func (*SwInterfaceGetMacAddress) GetMessageName() string {
1401         return "sw_interface_get_mac_address"
1402 }
1403 func (*SwInterfaceGetMacAddress) GetCrcString() string {
1404         return "529cb13f"
1405 }
1406 func (*SwInterfaceGetMacAddress) GetMessageType() api.MessageType {
1407         return api.RequestMessage
1408 }
1409
1410 // SwInterfaceGetMacAddressReply represents VPP binary API message 'sw_interface_get_mac_address_reply':
1411 //
1412 //      "sw_interface_get_mac_address_reply",
1413 //      [
1414 //          "u16",
1415 //          "_vl_msg_id"
1416 //      ],
1417 //      [
1418 //          "u32",
1419 //          "context"
1420 //      ],
1421 //      [
1422 //          "i32",
1423 //          "retval"
1424 //      ],
1425 //      [
1426 //          "u8",
1427 //          "mac_address",
1428 //          6
1429 //      ],
1430 //      {
1431 //          "crc": "0x8ea538d3"
1432 //      }
1433 //
1434 type SwInterfaceGetMacAddressReply struct {
1435         Retval     int32
1436         MacAddress []byte `struc:"[6]byte"`
1437 }
1438
1439 func (*SwInterfaceGetMacAddressReply) GetMessageName() string {
1440         return "sw_interface_get_mac_address_reply"
1441 }
1442 func (*SwInterfaceGetMacAddressReply) GetCrcString() string {
1443         return "8ea538d3"
1444 }
1445 func (*SwInterfaceGetMacAddressReply) GetMessageType() api.MessageType {
1446         return api.ReplyMessage
1447 }
1448
1449 // SwInterfaceSetRxMode represents VPP binary API message 'sw_interface_set_rx_mode':
1450 //
1451 //      "sw_interface_set_rx_mode",
1452 //      [
1453 //          "u16",
1454 //          "_vl_msg_id"
1455 //      ],
1456 //      [
1457 //          "u32",
1458 //          "client_index"
1459 //      ],
1460 //      [
1461 //          "u32",
1462 //          "context"
1463 //      ],
1464 //      [
1465 //          "u32",
1466 //          "sw_if_index"
1467 //      ],
1468 //      [
1469 //          "u8",
1470 //          "queue_id_valid"
1471 //      ],
1472 //      [
1473 //          "u32",
1474 //          "queue_id"
1475 //      ],
1476 //      [
1477 //          "u8",
1478 //          "mode"
1479 //      ],
1480 //      {
1481 //          "crc": "0x2a1cc58c"
1482 //      }
1483 //
1484 type SwInterfaceSetRxMode struct {
1485         SwIfIndex    uint32
1486         QueueIDValid uint8
1487         QueueID      uint32
1488         Mode         uint8
1489 }
1490
1491 func (*SwInterfaceSetRxMode) GetMessageName() string {
1492         return "sw_interface_set_rx_mode"
1493 }
1494 func (*SwInterfaceSetRxMode) GetCrcString() string {
1495         return "2a1cc58c"
1496 }
1497 func (*SwInterfaceSetRxMode) GetMessageType() api.MessageType {
1498         return api.RequestMessage
1499 }
1500
1501 // SwInterfaceSetRxModeReply represents VPP binary API message 'sw_interface_set_rx_mode_reply':
1502 //
1503 //      "sw_interface_set_rx_mode_reply",
1504 //      [
1505 //          "u16",
1506 //          "_vl_msg_id"
1507 //      ],
1508 //      [
1509 //          "u32",
1510 //          "context"
1511 //      ],
1512 //      [
1513 //          "i32",
1514 //          "retval"
1515 //      ],
1516 //      {
1517 //          "crc": "0xe8d4e804"
1518 //      }
1519 //
1520 type SwInterfaceSetRxModeReply struct {
1521         Retval int32
1522 }
1523
1524 func (*SwInterfaceSetRxModeReply) GetMessageName() string {
1525         return "sw_interface_set_rx_mode_reply"
1526 }
1527 func (*SwInterfaceSetRxModeReply) GetCrcString() string {
1528         return "e8d4e804"
1529 }
1530 func (*SwInterfaceSetRxModeReply) GetMessageType() api.MessageType {
1531         return api.ReplyMessage
1532 }
1533
1534 // SwInterfaceSetRxPlacement represents VPP binary API message 'sw_interface_set_rx_placement':
1535 //
1536 //      "sw_interface_set_rx_placement",
1537 //      [
1538 //          "u16",
1539 //          "_vl_msg_id"
1540 //      ],
1541 //      [
1542 //          "u32",
1543 //          "client_index"
1544 //      ],
1545 //      [
1546 //          "u32",
1547 //          "context"
1548 //      ],
1549 //      [
1550 //          "u32",
1551 //          "sw_if_index"
1552 //      ],
1553 //      [
1554 //          "u32",
1555 //          "queue_id"
1556 //      ],
1557 //      [
1558 //          "u32",
1559 //          "worker_id"
1560 //      ],
1561 //      [
1562 //          "u8",
1563 //          "is_main"
1564 //      ],
1565 //      {
1566 //          "crc": "0x4ef4377d"
1567 //      }
1568 //
1569 type SwInterfaceSetRxPlacement struct {
1570         SwIfIndex uint32
1571         QueueID   uint32
1572         WorkerID  uint32
1573         IsMain    uint8
1574 }
1575
1576 func (*SwInterfaceSetRxPlacement) GetMessageName() string {
1577         return "sw_interface_set_rx_placement"
1578 }
1579 func (*SwInterfaceSetRxPlacement) GetCrcString() string {
1580         return "4ef4377d"
1581 }
1582 func (*SwInterfaceSetRxPlacement) GetMessageType() api.MessageType {
1583         return api.RequestMessage
1584 }
1585
1586 // SwInterfaceSetRxPlacementReply represents VPP binary API message 'sw_interface_set_rx_placement_reply':
1587 //
1588 //      "sw_interface_set_rx_placement_reply",
1589 //      [
1590 //          "u16",
1591 //          "_vl_msg_id"
1592 //      ],
1593 //      [
1594 //          "u32",
1595 //          "context"
1596 //      ],
1597 //      [
1598 //          "i32",
1599 //          "retval"
1600 //      ],
1601 //      {
1602 //          "crc": "0xe8d4e804"
1603 //      }
1604 //
1605 type SwInterfaceSetRxPlacementReply struct {
1606         Retval int32
1607 }
1608
1609 func (*SwInterfaceSetRxPlacementReply) GetMessageName() string {
1610         return "sw_interface_set_rx_placement_reply"
1611 }
1612 func (*SwInterfaceSetRxPlacementReply) GetCrcString() string {
1613         return "e8d4e804"
1614 }
1615 func (*SwInterfaceSetRxPlacementReply) GetMessageType() api.MessageType {
1616         return api.ReplyMessage
1617 }
1618
1619 // SwInterfaceRxPlacementDump represents VPP binary API message 'sw_interface_rx_placement_dump':
1620 //
1621 //      "sw_interface_rx_placement_dump",
1622 //      [
1623 //          "u16",
1624 //          "_vl_msg_id"
1625 //      ],
1626 //      [
1627 //          "u32",
1628 //          "client_index"
1629 //      ],
1630 //      [
1631 //          "u32",
1632 //          "context"
1633 //      ],
1634 //      [
1635 //          "u32",
1636 //          "sw_if_index"
1637 //      ],
1638 //      {
1639 //          "crc": "0x529cb13f"
1640 //      }
1641 //
1642 type SwInterfaceRxPlacementDump struct {
1643         SwIfIndex uint32
1644 }
1645
1646 func (*SwInterfaceRxPlacementDump) GetMessageName() string {
1647         return "sw_interface_rx_placement_dump"
1648 }
1649 func (*SwInterfaceRxPlacementDump) GetCrcString() string {
1650         return "529cb13f"
1651 }
1652 func (*SwInterfaceRxPlacementDump) GetMessageType() api.MessageType {
1653         return api.RequestMessage
1654 }
1655
1656 // SwInterfaceRxPlacementDetails represents VPP binary API message 'sw_interface_rx_placement_details':
1657 //
1658 //      "sw_interface_rx_placement_details",
1659 //      [
1660 //          "u16",
1661 //          "_vl_msg_id"
1662 //      ],
1663 //      [
1664 //          "u32",
1665 //          "client_index"
1666 //      ],
1667 //      [
1668 //          "u32",
1669 //          "context"
1670 //      ],
1671 //      [
1672 //          "u32",
1673 //          "sw_if_index"
1674 //      ],
1675 //      [
1676 //          "u32",
1677 //          "queue_id"
1678 //      ],
1679 //      [
1680 //          "u32",
1681 //          "worker_id"
1682 //      ],
1683 //      [
1684 //          "u8",
1685 //          "mode"
1686 //      ],
1687 //      {
1688 //          "crc": "0x0e9e33f4"
1689 //      }
1690 //
1691 type SwInterfaceRxPlacementDetails struct {
1692         SwIfIndex uint32
1693         QueueID   uint32
1694         WorkerID  uint32
1695         Mode      uint8
1696 }
1697
1698 func (*SwInterfaceRxPlacementDetails) GetMessageName() string {
1699         return "sw_interface_rx_placement_details"
1700 }
1701 func (*SwInterfaceRxPlacementDetails) GetCrcString() string {
1702         return "0e9e33f4"
1703 }
1704 func (*SwInterfaceRxPlacementDetails) GetMessageType() api.MessageType {
1705         return api.RequestMessage
1706 }
1707
1708 // InterfaceNameRenumber represents VPP binary API message 'interface_name_renumber':
1709 //
1710 //      "interface_name_renumber",
1711 //      [
1712 //          "u16",
1713 //          "_vl_msg_id"
1714 //      ],
1715 //      [
1716 //          "u32",
1717 //          "client_index"
1718 //      ],
1719 //      [
1720 //          "u32",
1721 //          "context"
1722 //      ],
1723 //      [
1724 //          "u32",
1725 //          "sw_if_index"
1726 //      ],
1727 //      [
1728 //          "u32",
1729 //          "new_show_dev_instance"
1730 //      ],
1731 //      {
1732 //          "crc": "0x39194269"
1733 //      }
1734 //
1735 type InterfaceNameRenumber struct {
1736         SwIfIndex          uint32
1737         NewShowDevInstance uint32
1738 }
1739
1740 func (*InterfaceNameRenumber) GetMessageName() string {
1741         return "interface_name_renumber"
1742 }
1743 func (*InterfaceNameRenumber) GetCrcString() string {
1744         return "39194269"
1745 }
1746 func (*InterfaceNameRenumber) GetMessageType() api.MessageType {
1747         return api.RequestMessage
1748 }
1749
1750 // InterfaceNameRenumberReply represents VPP binary API message 'interface_name_renumber_reply':
1751 //
1752 //      "interface_name_renumber_reply",
1753 //      [
1754 //          "u16",
1755 //          "_vl_msg_id"
1756 //      ],
1757 //      [
1758 //          "u32",
1759 //          "context"
1760 //      ],
1761 //      [
1762 //          "i32",
1763 //          "retval"
1764 //      ],
1765 //      {
1766 //          "crc": "0xe8d4e804"
1767 //      }
1768 //
1769 type InterfaceNameRenumberReply struct {
1770         Retval int32
1771 }
1772
1773 func (*InterfaceNameRenumberReply) GetMessageName() string {
1774         return "interface_name_renumber_reply"
1775 }
1776 func (*InterfaceNameRenumberReply) GetCrcString() string {
1777         return "e8d4e804"
1778 }
1779 func (*InterfaceNameRenumberReply) GetMessageType() api.MessageType {
1780         return api.ReplyMessage
1781 }
1782
1783 // CreateSubif represents VPP binary API message 'create_subif':
1784 //
1785 //      "create_subif",
1786 //      [
1787 //          "u16",
1788 //          "_vl_msg_id"
1789 //      ],
1790 //      [
1791 //          "u32",
1792 //          "client_index"
1793 //      ],
1794 //      [
1795 //          "u32",
1796 //          "context"
1797 //      ],
1798 //      [
1799 //          "u32",
1800 //          "sw_if_index"
1801 //      ],
1802 //      [
1803 //          "u32",
1804 //          "sub_id"
1805 //      ],
1806 //      [
1807 //          "u8",
1808 //          "no_tags"
1809 //      ],
1810 //      [
1811 //          "u8",
1812 //          "one_tag"
1813 //      ],
1814 //      [
1815 //          "u8",
1816 //          "two_tags"
1817 //      ],
1818 //      [
1819 //          "u8",
1820 //          "dot1ad"
1821 //      ],
1822 //      [
1823 //          "u8",
1824 //          "exact_match"
1825 //      ],
1826 //      [
1827 //          "u8",
1828 //          "default_sub"
1829 //      ],
1830 //      [
1831 //          "u8",
1832 //          "outer_vlan_id_any"
1833 //      ],
1834 //      [
1835 //          "u8",
1836 //          "inner_vlan_id_any"
1837 //      ],
1838 //      [
1839 //          "u16",
1840 //          "outer_vlan_id"
1841 //      ],
1842 //      [
1843 //          "u16",
1844 //          "inner_vlan_id"
1845 //      ],
1846 //      {
1847 //          "crc": "0x86cfe408"
1848 //      }
1849 //
1850 type CreateSubif struct {
1851         SwIfIndex      uint32
1852         SubID          uint32
1853         NoTags         uint8
1854         OneTag         uint8
1855         TwoTags        uint8
1856         Dot1ad         uint8
1857         ExactMatch     uint8
1858         DefaultSub     uint8
1859         OuterVlanIDAny uint8
1860         InnerVlanIDAny uint8
1861         OuterVlanID    uint16
1862         InnerVlanID    uint16
1863 }
1864
1865 func (*CreateSubif) GetMessageName() string {
1866         return "create_subif"
1867 }
1868 func (*CreateSubif) GetCrcString() string {
1869         return "86cfe408"
1870 }
1871 func (*CreateSubif) GetMessageType() api.MessageType {
1872         return api.RequestMessage
1873 }
1874
1875 // CreateSubifReply represents VPP binary API message 'create_subif_reply':
1876 //
1877 //      "create_subif_reply",
1878 //      [
1879 //          "u16",
1880 //          "_vl_msg_id"
1881 //      ],
1882 //      [
1883 //          "u32",
1884 //          "context"
1885 //      ],
1886 //      [
1887 //          "i32",
1888 //          "retval"
1889 //      ],
1890 //      [
1891 //          "u32",
1892 //          "sw_if_index"
1893 //      ],
1894 //      {
1895 //          "crc": "0xfda5941f"
1896 //      }
1897 //
1898 type CreateSubifReply struct {
1899         Retval    int32
1900         SwIfIndex uint32
1901 }
1902
1903 func (*CreateSubifReply) GetMessageName() string {
1904         return "create_subif_reply"
1905 }
1906 func (*CreateSubifReply) GetCrcString() string {
1907         return "fda5941f"
1908 }
1909 func (*CreateSubifReply) GetMessageType() api.MessageType {
1910         return api.ReplyMessage
1911 }
1912
1913 // CreateVlanSubif represents VPP binary API message 'create_vlan_subif':
1914 //
1915 //      "create_vlan_subif",
1916 //      [
1917 //          "u16",
1918 //          "_vl_msg_id"
1919 //      ],
1920 //      [
1921 //          "u32",
1922 //          "client_index"
1923 //      ],
1924 //      [
1925 //          "u32",
1926 //          "context"
1927 //      ],
1928 //      [
1929 //          "u32",
1930 //          "sw_if_index"
1931 //      ],
1932 //      [
1933 //          "u32",
1934 //          "vlan_id"
1935 //      ],
1936 //      {
1937 //          "crc": "0x70cadeda"
1938 //      }
1939 //
1940 type CreateVlanSubif struct {
1941         SwIfIndex uint32
1942         VlanID    uint32
1943 }
1944
1945 func (*CreateVlanSubif) GetMessageName() string {
1946         return "create_vlan_subif"
1947 }
1948 func (*CreateVlanSubif) GetCrcString() string {
1949         return "70cadeda"
1950 }
1951 func (*CreateVlanSubif) GetMessageType() api.MessageType {
1952         return api.RequestMessage
1953 }
1954
1955 // CreateVlanSubifReply represents VPP binary API message 'create_vlan_subif_reply':
1956 //
1957 //      "create_vlan_subif_reply",
1958 //      [
1959 //          "u16",
1960 //          "_vl_msg_id"
1961 //      ],
1962 //      [
1963 //          "u32",
1964 //          "context"
1965 //      ],
1966 //      [
1967 //          "i32",
1968 //          "retval"
1969 //      ],
1970 //      [
1971 //          "u32",
1972 //          "sw_if_index"
1973 //      ],
1974 //      {
1975 //          "crc": "0xfda5941f"
1976 //      }
1977 //
1978 type CreateVlanSubifReply struct {
1979         Retval    int32
1980         SwIfIndex uint32
1981 }
1982
1983 func (*CreateVlanSubifReply) GetMessageName() string {
1984         return "create_vlan_subif_reply"
1985 }
1986 func (*CreateVlanSubifReply) GetCrcString() string {
1987         return "fda5941f"
1988 }
1989 func (*CreateVlanSubifReply) GetMessageType() api.MessageType {
1990         return api.ReplyMessage
1991 }
1992
1993 // DeleteSubif represents VPP binary API message 'delete_subif':
1994 //
1995 //      "delete_subif",
1996 //      [
1997 //          "u16",
1998 //          "_vl_msg_id"
1999 //      ],
2000 //      [
2001 //          "u32",
2002 //          "client_index"
2003 //      ],
2004 //      [
2005 //          "u32",
2006 //          "context"
2007 //      ],
2008 //      [
2009 //          "u32",
2010 //          "sw_if_index"
2011 //      ],
2012 //      {
2013 //          "crc": "0x529cb13f"
2014 //      }
2015 //
2016 type DeleteSubif struct {
2017         SwIfIndex uint32
2018 }
2019
2020 func (*DeleteSubif) GetMessageName() string {
2021         return "delete_subif"
2022 }
2023 func (*DeleteSubif) GetCrcString() string {
2024         return "529cb13f"
2025 }
2026 func (*DeleteSubif) GetMessageType() api.MessageType {
2027         return api.RequestMessage
2028 }
2029
2030 // DeleteSubifReply represents VPP binary API message 'delete_subif_reply':
2031 //
2032 //      "delete_subif_reply",
2033 //      [
2034 //          "u16",
2035 //          "_vl_msg_id"
2036 //      ],
2037 //      [
2038 //          "u32",
2039 //          "context"
2040 //      ],
2041 //      [
2042 //          "i32",
2043 //          "retval"
2044 //      ],
2045 //      {
2046 //          "crc": "0xe8d4e804"
2047 //      }
2048 //
2049 type DeleteSubifReply struct {
2050         Retval int32
2051 }
2052
2053 func (*DeleteSubifReply) GetMessageName() string {
2054         return "delete_subif_reply"
2055 }
2056 func (*DeleteSubifReply) GetCrcString() string {
2057         return "e8d4e804"
2058 }
2059 func (*DeleteSubifReply) GetMessageType() api.MessageType {
2060         return api.ReplyMessage
2061 }
2062
2063 // CreateLoopback represents VPP binary API message 'create_loopback':
2064 //
2065 //      "create_loopback",
2066 //      [
2067 //          "u16",
2068 //          "_vl_msg_id"
2069 //      ],
2070 //      [
2071 //          "u32",
2072 //          "client_index"
2073 //      ],
2074 //      [
2075 //          "u32",
2076 //          "context"
2077 //      ],
2078 //      [
2079 //          "u8",
2080 //          "mac_address",
2081 //          6
2082 //      ],
2083 //      {
2084 //          "crc": "0x3b54129c"
2085 //      }
2086 //
2087 type CreateLoopback struct {
2088         MacAddress []byte `struc:"[6]byte"`
2089 }
2090
2091 func (*CreateLoopback) GetMessageName() string {
2092         return "create_loopback"
2093 }
2094 func (*CreateLoopback) GetCrcString() string {
2095         return "3b54129c"
2096 }
2097 func (*CreateLoopback) GetMessageType() api.MessageType {
2098         return api.RequestMessage
2099 }
2100
2101 // CreateLoopbackReply represents VPP binary API message 'create_loopback_reply':
2102 //
2103 //      "create_loopback_reply",
2104 //      [
2105 //          "u16",
2106 //          "_vl_msg_id"
2107 //      ],
2108 //      [
2109 //          "u32",
2110 //          "context"
2111 //      ],
2112 //      [
2113 //          "i32",
2114 //          "retval"
2115 //      ],
2116 //      [
2117 //          "u32",
2118 //          "sw_if_index"
2119 //      ],
2120 //      {
2121 //          "crc": "0xfda5941f"
2122 //      }
2123 //
2124 type CreateLoopbackReply struct {
2125         Retval    int32
2126         SwIfIndex uint32
2127 }
2128
2129 func (*CreateLoopbackReply) GetMessageName() string {
2130         return "create_loopback_reply"
2131 }
2132 func (*CreateLoopbackReply) GetCrcString() string {
2133         return "fda5941f"
2134 }
2135 func (*CreateLoopbackReply) GetMessageType() api.MessageType {
2136         return api.ReplyMessage
2137 }
2138
2139 // CreateLoopbackInstance represents VPP binary API message 'create_loopback_instance':
2140 //
2141 //      "create_loopback_instance",
2142 //      [
2143 //          "u16",
2144 //          "_vl_msg_id"
2145 //      ],
2146 //      [
2147 //          "u32",
2148 //          "client_index"
2149 //      ],
2150 //      [
2151 //          "u32",
2152 //          "context"
2153 //      ],
2154 //      [
2155 //          "u8",
2156 //          "mac_address",
2157 //          6
2158 //      ],
2159 //      [
2160 //          "u8",
2161 //          "is_specified"
2162 //      ],
2163 //      [
2164 //          "u32",
2165 //          "user_instance"
2166 //      ],
2167 //      {
2168 //          "crc": "0x7bbd53b6"
2169 //      }
2170 //
2171 type CreateLoopbackInstance struct {
2172         MacAddress   []byte `struc:"[6]byte"`
2173         IsSpecified  uint8
2174         UserInstance uint32
2175 }
2176
2177 func (*CreateLoopbackInstance) GetMessageName() string {
2178         return "create_loopback_instance"
2179 }
2180 func (*CreateLoopbackInstance) GetCrcString() string {
2181         return "7bbd53b6"
2182 }
2183 func (*CreateLoopbackInstance) GetMessageType() api.MessageType {
2184         return api.RequestMessage
2185 }
2186
2187 // CreateLoopbackInstanceReply represents VPP binary API message 'create_loopback_instance_reply':
2188 //
2189 //      "create_loopback_instance_reply",
2190 //      [
2191 //          "u16",
2192 //          "_vl_msg_id"
2193 //      ],
2194 //      [
2195 //          "u32",
2196 //          "context"
2197 //      ],
2198 //      [
2199 //          "i32",
2200 //          "retval"
2201 //      ],
2202 //      [
2203 //          "u32",
2204 //          "sw_if_index"
2205 //      ],
2206 //      {
2207 //          "crc": "0xfda5941f"
2208 //      }
2209 //
2210 type CreateLoopbackInstanceReply struct {
2211         Retval    int32
2212         SwIfIndex uint32
2213 }
2214
2215 func (*CreateLoopbackInstanceReply) GetMessageName() string {
2216         return "create_loopback_instance_reply"
2217 }
2218 func (*CreateLoopbackInstanceReply) GetCrcString() string {
2219         return "fda5941f"
2220 }
2221 func (*CreateLoopbackInstanceReply) GetMessageType() api.MessageType {
2222         return api.ReplyMessage
2223 }
2224
2225 // DeleteLoopback represents VPP binary API message 'delete_loopback':
2226 //
2227 //      "delete_loopback",
2228 //      [
2229 //          "u16",
2230 //          "_vl_msg_id"
2231 //      ],
2232 //      [
2233 //          "u32",
2234 //          "client_index"
2235 //      ],
2236 //      [
2237 //          "u32",
2238 //          "context"
2239 //      ],
2240 //      [
2241 //          "u32",
2242 //          "sw_if_index"
2243 //      ],
2244 //      {
2245 //          "crc": "0x529cb13f"
2246 //      }
2247 //
2248 type DeleteLoopback struct {
2249         SwIfIndex uint32
2250 }
2251
2252 func (*DeleteLoopback) GetMessageName() string {
2253         return "delete_loopback"
2254 }
2255 func (*DeleteLoopback) GetCrcString() string {
2256         return "529cb13f"
2257 }
2258 func (*DeleteLoopback) GetMessageType() api.MessageType {
2259         return api.RequestMessage
2260 }
2261
2262 // DeleteLoopbackReply represents VPP binary API message 'delete_loopback_reply':
2263 //
2264 //      "delete_loopback_reply",
2265 //      [
2266 //          "u16",
2267 //          "_vl_msg_id"
2268 //      ],
2269 //      [
2270 //          "u32",
2271 //          "context"
2272 //      ],
2273 //      [
2274 //          "i32",
2275 //          "retval"
2276 //      ],
2277 //      {
2278 //          "crc": "0xe8d4e804"
2279 //      }
2280 //
2281 type DeleteLoopbackReply struct {
2282         Retval int32
2283 }
2284
2285 func (*DeleteLoopbackReply) GetMessageName() string {
2286         return "delete_loopback_reply"
2287 }
2288 func (*DeleteLoopbackReply) GetCrcString() string {
2289         return "e8d4e804"
2290 }
2291 func (*DeleteLoopbackReply) GetMessageType() api.MessageType {
2292         return api.ReplyMessage
2293 }
2294
2295 // CollectDetailedInterfaceStats represents VPP binary API message 'collect_detailed_interface_stats':
2296 //
2297 //      "collect_detailed_interface_stats",
2298 //      [
2299 //          "u16",
2300 //          "_vl_msg_id"
2301 //      ],
2302 //      [
2303 //          "u32",
2304 //          "client_index"
2305 //      ],
2306 //      [
2307 //          "u32",
2308 //          "context"
2309 //      ],
2310 //      [
2311 //          "u32",
2312 //          "sw_if_index"
2313 //      ],
2314 //      [
2315 //          "u8",
2316 //          "enable_disable"
2317 //      ],
2318 //      {
2319 //          "crc": "0x69d24598"
2320 //      }
2321 //
2322 type CollectDetailedInterfaceStats struct {
2323         SwIfIndex     uint32
2324         EnableDisable uint8
2325 }
2326
2327 func (*CollectDetailedInterfaceStats) GetMessageName() string {
2328         return "collect_detailed_interface_stats"
2329 }
2330 func (*CollectDetailedInterfaceStats) GetCrcString() string {
2331         return "69d24598"
2332 }
2333 func (*CollectDetailedInterfaceStats) GetMessageType() api.MessageType {
2334         return api.RequestMessage
2335 }
2336
2337 // CollectDetailedInterfaceStatsReply represents VPP binary API message 'collect_detailed_interface_stats_reply':
2338 //
2339 //      "collect_detailed_interface_stats_reply",
2340 //      [
2341 //          "u16",
2342 //          "_vl_msg_id"
2343 //      ],
2344 //      [
2345 //          "u32",
2346 //          "context"
2347 //      ],
2348 //      [
2349 //          "i32",
2350 //          "retval"
2351 //      ],
2352 //      {
2353 //          "crc": "0xe8d4e804"
2354 //      }
2355 //
2356 type CollectDetailedInterfaceStatsReply struct {
2357         Retval int32
2358 }
2359
2360 func (*CollectDetailedInterfaceStatsReply) GetMessageName() string {
2361         return "collect_detailed_interface_stats_reply"
2362 }
2363 func (*CollectDetailedInterfaceStatsReply) GetCrcString() string {
2364         return "e8d4e804"
2365 }
2366 func (*CollectDetailedInterfaceStatsReply) GetMessageType() api.MessageType {
2367         return api.ReplyMessage
2368 }
2369
2370 func init() {
2371         api.RegisterMessage((*SwInterfaceSetFlags)(nil), "interface.SwInterfaceSetFlags")
2372         api.RegisterMessage((*SwInterfaceSetFlagsReply)(nil), "interface.SwInterfaceSetFlagsReply")
2373         api.RegisterMessage((*HwInterfaceSetMtu)(nil), "interface.HwInterfaceSetMtu")
2374         api.RegisterMessage((*HwInterfaceSetMtuReply)(nil), "interface.HwInterfaceSetMtuReply")
2375         api.RegisterMessage((*SwInterfaceSetMtu)(nil), "interface.SwInterfaceSetMtu")
2376         api.RegisterMessage((*SwInterfaceSetMtuReply)(nil), "interface.SwInterfaceSetMtuReply")
2377         api.RegisterMessage((*SwInterfaceSetIPDirectedBroadcast)(nil), "interface.SwInterfaceSetIPDirectedBroadcast")
2378         api.RegisterMessage((*SwInterfaceSetIPDirectedBroadcastReply)(nil), "interface.SwInterfaceSetIPDirectedBroadcastReply")
2379         api.RegisterMessage((*SwInterfaceEvent)(nil), "interface.SwInterfaceEvent")
2380         api.RegisterMessage((*WantInterfaceEvents)(nil), "interface.WantInterfaceEvents")
2381         api.RegisterMessage((*WantInterfaceEventsReply)(nil), "interface.WantInterfaceEventsReply")
2382         api.RegisterMessage((*SwInterfaceDetails)(nil), "interface.SwInterfaceDetails")
2383         api.RegisterMessage((*SwInterfaceDump)(nil), "interface.SwInterfaceDump")
2384         api.RegisterMessage((*SwInterfaceAddDelAddress)(nil), "interface.SwInterfaceAddDelAddress")
2385         api.RegisterMessage((*SwInterfaceAddDelAddressReply)(nil), "interface.SwInterfaceAddDelAddressReply")
2386         api.RegisterMessage((*SwInterfaceSetTable)(nil), "interface.SwInterfaceSetTable")
2387         api.RegisterMessage((*SwInterfaceSetTableReply)(nil), "interface.SwInterfaceSetTableReply")
2388         api.RegisterMessage((*SwInterfaceGetTable)(nil), "interface.SwInterfaceGetTable")
2389         api.RegisterMessage((*SwInterfaceGetTableReply)(nil), "interface.SwInterfaceGetTableReply")
2390         api.RegisterMessage((*SwInterfaceSetUnnumbered)(nil), "interface.SwInterfaceSetUnnumbered")
2391         api.RegisterMessage((*SwInterfaceSetUnnumberedReply)(nil), "interface.SwInterfaceSetUnnumberedReply")
2392         api.RegisterMessage((*SwInterfaceClearStats)(nil), "interface.SwInterfaceClearStats")
2393         api.RegisterMessage((*SwInterfaceClearStatsReply)(nil), "interface.SwInterfaceClearStatsReply")
2394         api.RegisterMessage((*SwInterfaceTagAddDel)(nil), "interface.SwInterfaceTagAddDel")
2395         api.RegisterMessage((*SwInterfaceTagAddDelReply)(nil), "interface.SwInterfaceTagAddDelReply")
2396         api.RegisterMessage((*SwInterfaceSetMacAddress)(nil), "interface.SwInterfaceSetMacAddress")
2397         api.RegisterMessage((*SwInterfaceSetMacAddressReply)(nil), "interface.SwInterfaceSetMacAddressReply")
2398         api.RegisterMessage((*SwInterfaceGetMacAddress)(nil), "interface.SwInterfaceGetMacAddress")
2399         api.RegisterMessage((*SwInterfaceGetMacAddressReply)(nil), "interface.SwInterfaceGetMacAddressReply")
2400         api.RegisterMessage((*SwInterfaceSetRxMode)(nil), "interface.SwInterfaceSetRxMode")
2401         api.RegisterMessage((*SwInterfaceSetRxModeReply)(nil), "interface.SwInterfaceSetRxModeReply")
2402         api.RegisterMessage((*SwInterfaceSetRxPlacement)(nil), "interface.SwInterfaceSetRxPlacement")
2403         api.RegisterMessage((*SwInterfaceSetRxPlacementReply)(nil), "interface.SwInterfaceSetRxPlacementReply")
2404         api.RegisterMessage((*SwInterfaceRxPlacementDump)(nil), "interface.SwInterfaceRxPlacementDump")
2405         api.RegisterMessage((*SwInterfaceRxPlacementDetails)(nil), "interface.SwInterfaceRxPlacementDetails")
2406         api.RegisterMessage((*InterfaceNameRenumber)(nil), "interface.InterfaceNameRenumber")
2407         api.RegisterMessage((*InterfaceNameRenumberReply)(nil), "interface.InterfaceNameRenumberReply")
2408         api.RegisterMessage((*CreateSubif)(nil), "interface.CreateSubif")
2409         api.RegisterMessage((*CreateSubifReply)(nil), "interface.CreateSubifReply")
2410         api.RegisterMessage((*CreateVlanSubif)(nil), "interface.CreateVlanSubif")
2411         api.RegisterMessage((*CreateVlanSubifReply)(nil), "interface.CreateVlanSubifReply")
2412         api.RegisterMessage((*DeleteSubif)(nil), "interface.DeleteSubif")
2413         api.RegisterMessage((*DeleteSubifReply)(nil), "interface.DeleteSubifReply")
2414         api.RegisterMessage((*CreateLoopback)(nil), "interface.CreateLoopback")
2415         api.RegisterMessage((*CreateLoopbackReply)(nil), "interface.CreateLoopbackReply")
2416         api.RegisterMessage((*CreateLoopbackInstance)(nil), "interface.CreateLoopbackInstance")
2417         api.RegisterMessage((*CreateLoopbackInstanceReply)(nil), "interface.CreateLoopbackInstanceReply")
2418         api.RegisterMessage((*DeleteLoopback)(nil), "interface.DeleteLoopback")
2419         api.RegisterMessage((*DeleteLoopbackReply)(nil), "interface.DeleteLoopbackReply")
2420         api.RegisterMessage((*CollectDetailedInterfaceStats)(nil), "interface.CollectDetailedInterfaceStats")
2421         api.RegisterMessage((*CollectDetailedInterfaceStatsReply)(nil), "interface.CollectDetailedInterfaceStatsReply")
2422 }