lisp: API cleanup
[vpp.git] / src / vnet / lisp-cp / one.api
1 /*
2  * Copyright (c) 2015-2017 Cisco and/or its affiliates.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at:
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15
16 option version = "2.0.0";
17
18 import "vnet/interface_types.api";
19 import "vnet/lisp-cp/lisp_types.api";
20
21 /** \brief add or delete locator_set
22     @param client_index - opaque cookie to identify the sender
23     @param context - sender context, to match reply w/ request
24     @param is_add - add address if non-zero, else delete
25     @param locator_set_name - locator name
26     @param locator_num - number of locators
27     @param locators - locator records
28 */
29 manual_endian manual_print define one_add_del_locator_set
30 {
31   u32 client_index;
32   u32 context;
33   bool is_add [default=true];
34   string locator_set_name[64];
35   u32 locator_num;
36   vl_api_local_locator_t locators[locator_num];
37 };
38
39 /** \brief Reply for locator_set add/del
40     @param context - returned sender context, to match reply w/ request
41     @param retval - return code
42     @param ls_index - locator set index
43 */
44 define one_add_del_locator_set_reply
45 {
46   u32 context;
47   i32 retval;
48   u32 ls_index;
49 };
50
51 /** \brief add or delete locator for locator set
52     @param client_index - opaque cookie to identify the sender
53     @param context - sender context, to match reply w/ request
54     @param is_add - add address if non-zero, else delete
55     @param locator_set_name - name of locator_set to add/del locator
56     @param sw_if_index - index of the interface
57     @param priority - priority of the locator
58     @param weight - weight of the locator
59 */
60 autoreply define one_add_del_locator
61 {
62   u32 client_index;
63   u32 context;
64   bool is_add [default=true];
65   string locator_set_name[64];
66   vl_api_interface_index_t sw_if_index;
67   u8 priority;
68   u8 weight;
69 };
70
71
72 /** \brief add or delete ONE eid-table
73     @param client_index - opaque cookie to identify the sender
74     @param context - sender context, to match reply w/ request
75     @param is_add - add address if non-zero, else delete
76     @param eid_type:
77       0 : ipv4
78       1 : ipv6
79       2 : mac
80     @param eid - EID can be ip4, ip6 or mac
81     @param prefix_len - prefix len
82     @param locator_set_name - name of locator_set to add/del eid-table
83     @param vni - virtual network instance
84     @param key - secret key
85 */
86 autoreply define one_add_del_local_eid
87 {
88   u32 client_index;
89   u32 context;
90   bool is_add [default=true];
91   vl_api_eid_t eid;
92   string locator_set_name[64];
93   u32 vni;
94   vl_api_hmac_key_t key;
95 };
96
97 /** \brief Set TTL for map register messages
98     @param client_index - opaque cookie to identify the sender
99     @param context - sender context, to match reply w/ request
100     @param ttl - time to live
101 */
102 autoreply define one_map_register_set_ttl
103 {
104   u32 client_index;
105   u32 context;
106   u32 ttl;
107 };
108
109 /** \brief Get TTL for map register messages
110     @param client_index - opaque cookie to identify the sender
111     @param context - sender context, to match reply w/ request
112 */
113 define show_one_map_register_ttl
114 {
115   u32 client_index;
116   u32 context;
117 };
118
119 /** \brief Contains current TTL for map register messages
120     @param client_index - opaque cookie to identify the sender
121     @param retval - return code
122     @param ttl - time to live
123 */
124 define show_one_map_register_ttl_reply
125 {
126   u32 context;
127   i32 retval;
128   u32 ttl;
129 };
130
131 /** \brief Add/delete map server
132     @param client_index - opaque cookie to identify the sender
133     @param context - sender context, to match reply w/ request
134     @param is_add - add address if non-zero; delete otherwise
135     @param is_ipv6 - if non-zero the address is ipv6, else ipv4
136     @param ip_address - map server IP address
137 */
138 autoreply define one_add_del_map_server
139 {
140   u32 client_index;
141   u32 context;
142   bool is_add [default=true];
143   vl_api_address_t ip_address;
144 };
145
146 /** \brief add or delete map-resolver
147     @param client_index - opaque cookie to identify the sender
148     @param context - sender context, to match reply w/ request
149     @param is_add - add address if non-zero, else delete
150     @param is_ipv6 - if non-zero the address is ipv6, else ipv4
151     @param ip_address - array of address bytes
152 */
153 autoreply define one_add_del_map_resolver
154 {
155   u32 client_index;
156   u32 context;
157   bool is_add [default=true];
158   vl_api_address_t ip_address;
159 };
160
161 /** \brief enable or disable ONE feature
162     @param client_index - opaque cookie to identify the sender
163     @param context - sender context, to match reply w/ request
164     @param is_enable - enable protocol if non-zero, else disable
165 */
166 autoreply define one_enable_disable
167 {
168   u32 client_index;
169   u32 context;
170   bool is_enable [default=true];
171 };
172
173 /** \brief configure or delete ONE NSH mapping
174     @param client_index - opaque cookie to identify the sender
175     @param context - sender context, to match reply w/ request
176     @param ls_name - locator set name
177     @param is_add - add locator set if non-zero; delete otherwise
178 */
179 autoreply define one_nsh_set_locator_set
180 {
181   u32 client_index;
182   u32 context;
183   bool is_add [default=true];
184   string ls_name[64];
185 };
186
187 /** \brief configure or disable ONE PITR node
188     @param client_index - opaque cookie to identify the sender
189     @param context - sender context, to match reply w/ request
190     @param ls_name - locator set name
191     @param is_add - add locator set if non-zero, else disable pitr
192 */
193 autoreply define one_pitr_set_locator_set
194 {
195   u32 client_index;
196   u32 context;
197   bool is_add [default=true];
198   string ls_name[64];
199 };
200
201 /** \brief configure or disable use of PETR
202     @param client_index - opaque cookie to identify the sender
203     @param context - sender context, to match reply w/ request
204     @param is_ip4 - Address is IPv4 if set and IPv6 otherwise
205     @param address - PETR IP address
206     @param is_add - add locator set if non-zero, else disable PETR
207 */
208 autoreply define one_use_petr
209 {
210   u32 client_index;
211   u32 context;
212   vl_api_address_t ip_address;
213   bool is_add [default=true];
214 };
215
216 /** \brief Request for ONE PETR status
217     @param client_index - opaque cookie to identify the sender
218     @param context - sender context, to match reply w/ request
219 */
220 define show_one_use_petr
221 {
222   u32 client_index;
223   u32 context;
224 };
225
226 /** \brief ONE PETR status, enable or disable
227     @param context - sender context, to match reply w/ request
228     @param enable - ONE PETR enable if non-zero, else disable
229     @param is_ip4 - Address is IPv4 if non-zero, else IPv6
230     @param address - PETR IP address
231 */
232 define show_one_use_petr_reply
233 {
234   u32 context;
235   i32 retval;
236   bool status;
237   vl_api_address_t ip_address;
238 };
239
240 /** \brief Get state of ONE RLOC probing
241     @param client_index - opaque cookie to identify the sender
242     @param context - sender context, to match reply w/ request
243 */
244 define show_one_rloc_probe_state
245 {
246   u32 client_index;
247   u32 context;
248 };
249
250 /** \brief Reply for show_one_rloc_probe_state
251     @param context - returned sender context, to match reply w/ request
252     @param retval - return code
253     @param is_enable - state of RLOC probing
254 */
255 define show_one_rloc_probe_state_reply
256 {
257   u32 context;
258   i32 retval;
259   bool is_enable;
260 };
261
262 /** \brief enable/disable ONE RLOC probing
263     @param client_index - opaque cookie to identify the sender
264     @param context - sender context, to match reply w/ request
265     @param is_enable - enable if non-zero; disable otherwise
266 */
267 autoreply define one_rloc_probe_enable_disable
268 {
269   u32 client_index;
270   u32 context;
271   bool is_enable [default=true];
272 };
273
274 /** \brief enable/disable ONE map-register
275     @param client_index - opaque cookie to identify the sender
276     @param context - sender context, to match reply w/ request
277     @param is_enable - enable if non-zero; disable otherwise
278 */
279 autoreply define one_map_register_enable_disable
280 {
281   u32 client_index;
282   u32 context;
283   bool is_enable [default=true];
284 };
285
286 /** \brief Get state of ONE map-register
287     @param client_index - opaque cookie to identify the sender
288     @param context - sender context, to match reply w/ request
289 */
290 define show_one_map_register_state
291 {
292   u32 client_index;
293   u32 context;
294 };
295
296 /** \brief Reply for show_one_map_register_state
297     @param context - returned sender context, to match reply w/ request
298     @param retval - return code
299 */
300 define show_one_map_register_state_reply
301 {
302   u32 context;
303   i32 retval;
304   bool is_enable;
305 };
306
307 enum one_map_mode
308 {
309         ONE_MAP_MODE_API_DST_ONLY = 0,
310         ONE_MAP_MODE_API_SRC_DST = 1,
311 };
312
313 /** \brief set ONE map-request mode. Based on configuration VPP will send
314       src/dest or just normal destination map requests.
315     @param client_index - opaque cookie to identify the sender
316     @param context - sender context, to match reply w/ request
317     @param mode - new map-request mode. Supported values are:
318       0 - destination only
319       1 - source/destination
320 */
321 autoreply define one_map_request_mode
322 {
323   u32 client_index;
324   u32 context;
325   vl_api_one_map_mode_t mode;
326 };
327
328 /** \brief Request for ONE map-request mode
329     @param client_index - opaque cookie to identify the sender
330     @param context - sender context, to match reply w/ request
331 */
332 define show_one_map_request_mode
333 {
334   u32 client_index;
335   u32 context;
336 };
337
338 /** \brief Reply for show_one_map_request_mode
339     @param context - returned sender context, to match reply w/ request
340     @param retval - return code
341     @param mode - map-request mode
342 */
343 define show_one_map_request_mode_reply
344 {
345   u32 context;
346   i32 retval;
347   vl_api_one_map_mode_t mode;
348 };
349
350 /** \brief add or delete remote static mapping
351     @param client_index - opaque cookie to identify the sender
352     @param context - sender context, to match reply w/ request
353     @param is_add - add address if non-zero, else delete
354     @param is_src_dst - flag indicating src/dst based routing policy
355     @param del_all - if set, delete all remote mappings
356     @param vni - virtual network instance
357     @param action - negative map-reply action
358     @param deid - dst EID
359     @param seid - src EID, valid only if is_src_dst is enabled
360     @param rloc_num - number of remote locators
361     @param rlocs - remote locator records
362 */
363 autoreply manual_print manual_endian define one_add_del_remote_mapping
364 {
365   u32 client_index;
366   u32 context;
367   bool is_add [default=true];
368   bool is_src_dst;
369   bool del_all;
370   u32 vni;
371   u8 action;
372   vl_api_eid_t deid;
373   vl_api_eid_t seid;
374   u32 rloc_num;
375   vl_api_remote_locator_t rlocs[rloc_num];
376 };
377
378 typedef one_l2_arp_entry
379 {
380   vl_api_mac_address_t mac;
381   vl_api_ip4_address_t ip4;
382 };
383
384 /** \brief Add/delete L2 ARP entries
385     @param client_index - opaque cookie to identify the sender
386     @param context - sender context, to match reply w/ request
387     @param is_add - add if non-zero; delete otherwise
388     @param bd - bridge domain
389     @param entry - ARP entry
390 */
391 autoreply define one_add_del_l2_arp_entry
392 {
393   u32 client_index;
394   u32 context;
395   bool is_add [default=true];
396   u32 bd;
397   vl_api_one_l2_arp_entry_t entry;
398 };
399
400 /** \brief Request for L2 ARP entries from specified bridge domain
401     @param client_index - opaque cookie to identify the sender
402     @param context - sender context, to match reply w/ request
403     @param bd - bridge domain
404 */
405 define one_l2_arp_entries_get
406 {
407   u32 client_index;
408   u32 context;
409   u32 bd;
410 };
411
412 /** \brief Reply with L2 ARP entries from specified bridge domain
413     @param context - sender context, to match reply w/ request
414     @param retval - error code
415     @param count - number of elements in the list
416     @param vl_api_one_arp_entry_t - list of entries
417 */
418 manual_print manual_endian define one_l2_arp_entries_get_reply
419 {
420   u32 context;
421   i32 retval;
422   u32 count;
423   vl_api_one_l2_arp_entry_t entries[count];
424 };
425
426 typedef one_ndp_entry
427 {
428   vl_api_mac_address_t mac;
429   vl_api_ip6_address_t ip6;
430 };
431
432
433 autoreply define one_add_del_ndp_entry
434 {
435   u32 client_index;
436   u32 context;
437   bool is_add [default=true];
438   u32 bd;
439   vl_api_one_ndp_entry_t entry;
440 };
441
442 define one_ndp_entries_get
443 {
444   u32 client_index;
445   u32 context;
446   u32 bd;
447 };
448
449 manual_print manual_endian define one_ndp_entries_get_reply
450 {
451   u32 context;
452   i32 retval;
453   u32 count;
454   vl_api_one_ndp_entry_t entries[count];
455 };
456
457 /** \brief Set ONE transport protocol
458     @param client_index - opaque cookie to identify the sender
459     @param context - sender context, to match reply w/ request
460     @param protocol - supported values:
461       1: UDP based LISP (default)
462       2: binary API
463 */
464 autoreply define one_set_transport_protocol
465 {
466   u32 client_index;
467   u32 context;
468   u8 protocol;
469 };
470
471 define one_get_transport_protocol
472 {
473   u32 client_index;
474   u32 context;
475 };
476
477 define one_get_transport_protocol_reply
478 {
479   u32 context;
480   i32 retval;
481   u8 protocol;
482 };
483
484 /** \brief Request for list of bridge domains used by neighbor discovery
485     @param client_index - opaque cookie to identify the sender
486     @param context - sender context, to match reply w/ request
487 */
488 define one_ndp_bd_get
489 {
490   u32 client_index;
491   u32 context;
492 };
493
494 /** \brief Reply with list of bridge domains used by neighbor discovery
495     @param context - sender context, to match reply w/ request
496     @param count - number of elements in the list
497     @param bridge_domains - list of BDs
498 */
499 manual_print manual_endian define one_ndp_bd_get_reply
500 {
501   u32 context;
502   i32 retval;
503   u32 count;
504   u32 bridge_domains[count];
505 };
506
507 /** \brief Request for list of bridge domains used by L2 ARP table
508     @param client_index - opaque cookie to identify the sender
509     @param context - sender context, to match reply w/ request
510 */
511 define one_l2_arp_bd_get
512 {
513   u32 client_index;
514   u32 context;
515 };
516
517 /** \brief Reply with list of bridge domains used by L2 ARP table
518     @param context - sender context, to match reply w/ request
519     @param count - number of elements in the list
520     @param bridge_domains - list of BDs
521 */
522 manual_print manual_endian define one_l2_arp_bd_get_reply
523 {
524   u32 context;
525   i32 retval;
526   u32 count;
527   u32 bridge_domains[count];
528 };
529
530 /** \brief add or delete ONE adjacency adjacency
531     @param client_index - opaque cookie to identify the sender
532     @param context - sender context, to match reply w/ request
533     @param is_add - add address if non-zero, else delete
534     @param vni - virtual network instance
535     @param reid - remote EID
536     @param leid - local EID
537 */
538 autoreply define one_add_del_adjacency
539 {
540   u32 client_index;
541   u32 context;
542   u8 is_add;
543   u32 vni;
544   vl_api_eid_t reid;
545   vl_api_eid_t leid;
546 };
547
548 /** \brief add or delete map request itr rlocs
549     @param client_index - opaque cookie to identify the sender
550     @param context - sender context, to match reply w/ request
551     @param is_add - add address if non-zero, else delete
552     @param locator_set_name - locator set name
553 */
554 autoreply define one_add_del_map_request_itr_rlocs
555 {
556   u32 client_index;
557   u32 context;
558   bool is_add [default=true];
559   string locator_set_name[64];
560 };
561
562 /** \brief map/unmap vni/bd_index to vrf
563     @param client_index - opaque cookie to identify the sender
564     @param context - sender context, to match reply w/ request
565     @param is_add - add or delete mapping
566     @param dp_table - virtual network id/bridge domain index
567     @param vrf - vrf
568     @param is_l2 - is l2
569 */
570 autoreply define one_eid_table_add_del_map
571 {
572   u32 client_index;
573   u32 context;
574   bool is_add [default=true];
575   u32 vni;
576   u32 dp_table;
577   bool is_l2;
578 };
579
580 /** \brief Request for map one locator status
581     @param client_index - opaque cookie to identify the sender
582     @param context - sender context, to match reply w/ request
583     @param locator_set_index - index of locator_set
584     @param ls_name - locator set name
585     @param is_index_set - flag indicating whether ls_name or ls_index is set
586  */
587 define one_locator_dump
588 {
589   u32 client_index;
590   u32 context;
591   u32 ls_index;
592   string ls_name[64];
593   bool is_index_set;
594 };
595
596 /** \brief ONE locator_set status
597     @param local - if is set, then locator is local
598     @param locator_set_name - name of the locator_set
599     @param sw_if_index - sw_if_index of the locator
600     @param priority - locator priority
601     @param weight - locator weight
602   */
603 define one_locator_details
604 {
605   u32 context;
606   u8 local;
607   vl_api_interface_index_t sw_if_index;
608   vl_api_address_t ip_address;
609   u8 priority;
610   u8 weight;
611 };
612
613 /** \brief ONE locator_set status
614     @param context - sender context, to match reply w/ request
615     @param ls_index - locator set index
616     @param ls_name - name of the locator set
617  */
618 define one_locator_set_details
619 {
620   u32 context;
621   u32 ls_index;
622   string ls_name[64];
623 };
624
625 enum one_filter
626 {
627         ONE_FILTER_API_ALL = 0,
628         ONE_FILTER_API_LOCAL = 1,
629         ONE_FILTER_API_REMOTE = 2,
630 };
631
632 /** \brief Request for locator_set summary status
633     @param client_index - opaque cookie to identify the sender
634     @param context - sender context, to match reply w/ request
635     @param filter - filter type
636       Supported values:
637         0: all locator sets
638         1: local locator sets
639         2: remote locator sets
640  */
641 define one_locator_set_dump
642 {
643   u32 client_index;
644   u32 context;
645   vl_api_one_filter_t filter;
646 };
647
648 /** \brief Dump ONE eid-table
649     @param client_index - opaque cookie to identify the sender
650     @param context - sender context, to match reply w/ request
651     @param locator_set_index - index of locator_set, if ~0 then the mapping
652                                 is negative
653     @param action - negative map request action
654     @param is_local - local if non-zero, else remote
655     @param is_src_dst - EID is type of source/destination
656     @param deid - EID can be ip4, ip6 or mac
657     @param seid - source EID can be ip4, ip6 or mac
658     @param vni - virtual network instance
659     @param ttl - time to live
660     @param authoritative - authoritative
661     @param key - secret key
662 */
663
664 // FIXME: action, authoritative
665
666 define one_eid_table_details
667 {
668   u32 context;
669   u32 locator_set_index;
670   u8 action;
671   bool is_local;
672   bool is_src_dst;
673   u32 vni;
674   vl_api_eid_t deid;
675   vl_api_eid_t seid;
676   u32 ttl;
677   u8 authoritative;
678   vl_api_hmac_key_t key;
679 };
680
681 /** \brief Request for eid table summary status
682     @param client_index - opaque cookie to identify the sender
683     @param context - sender context, to match reply w/ request
684     @param eid_set - if non-zero request info about specific mapping
685     @param vni - virtual network instance; valid only if eid_set != 0
686     @param eid - endpoint identifier
687     @param filter - filter type;
688       Support values:
689         0: all eid
690         1: local eid
691         2: remote eid
692  */
693 define one_eid_table_dump
694 {
695   u32 client_index;
696   u32 context;
697   bool eid_set;
698   u32 vni;
699   vl_api_eid_t eid;
700   vl_api_one_filter_t filter;
701 };
702
703 /** \brief ONE adjacency
704     @param eid_type -
705       0 : ipv4
706       1 : ipv6
707       2 : mac
708     @param reid - remote EID
709     @param leid - local EID
710     @param reid_prefix_len - remote EID IP prefix length
711     @param leid_prefix_len - local EID IP prefix length
712   */
713 typedef one_adjacency
714 {
715   vl_api_eid_t reid;
716   vl_api_eid_t leid;
717 };
718
719 /** \brief ONE adjacency reply
720     @param count - number of adjacencies
721     @param adjacencies - array of adjacencies
722   */
723 manual_endian manual_print define one_adjacencies_get_reply
724 {
725   u32 context;
726   i32 retval;
727   u32 count;
728   vl_api_one_adjacency_t adjacencies[count];
729 };
730
731 /** \brief Request for ONE adjacencies
732     @param client_index - opaque cookie to identify the sender
733     @param context - sender context, to match reply w/ request
734     @param vni - filter adjacencies by VNI
735  */
736 define one_adjacencies_get
737 {
738   u32 client_index;
739   u32 context;
740   u32 vni;
741 };
742
743 /** \brief Shows relationship between vni and vrf/bd
744     @param dp_table - VRF index or bridge domain index
745     @param vni - virtual network instance
746   */
747 define one_eid_table_map_details
748 {
749   u32 context;
750   u32 vni;
751   u32 dp_table;
752 };
753
754 /** \brief Request for one_eid_table_map_details
755     @param client_index - opaque cookie to identify the sender
756     @param context - sender context, to match reply w/ request
757     @param is_l2 - if set dump vni/bd mappings else vni/vrf
758  */
759 define one_eid_table_map_dump
760 {
761   u32 client_index;
762   u32 context;
763   bool is_l2;
764 };
765
766 /** \brief Dumps all VNIs used in mappings
767     @param client_index - opaque cookie to identify the sender
768     @param context - sender context, to match reply w/ request
769   */
770 define one_eid_table_vni_dump
771 {
772   u32 client_index;
773   u32 context;
774 };
775
776 /** \brief reply to one_eid_table_vni_dump
777     @param context - sender context, to match reply w/ request
778     @param vni - virtual network instance
779  */
780 define one_eid_table_vni_details
781 {
782   u32 context;
783   u32 vni;
784 };
785
786 /** \brief ONE map resolver status
787     @param is_ipv6 - if non-zero the address is ipv6, else ipv4
788     @param ip_address - array of address bytes
789  */
790 define one_map_resolver_details
791 {
792   u32 context;
793   vl_api_address_t ip_address;
794 };
795
796 /** \brief Request for map resolver summary status
797     @param client_index - opaque cookie to identify the sender
798     @param context - sender context, to match reply w/ request
799  */
800 define one_map_resolver_dump
801 {
802   u32 client_index;
803   u32 context;
804 };
805
806 /** \brief ONE map server details
807     @param is_ipv6 - if non-zero the address is ipv6, else ipv4
808     @param ip_address - array of address bytes
809  */
810 define one_map_server_details
811 {
812   u32 context;
813   vl_api_address_t ip_address;
814 };
815
816 /** \brief Request for map server summary status
817     @param client_index - opaque cookie to identify the sender
818     @param context - sender context, to match reply w/ request
819  */
820 define one_map_server_dump
821 {
822   u32 client_index;
823   u32 context;
824 };
825
826 /** \brief Request for ONE status
827     @param client_index - opaque cookie to identify the sender
828     @param context - sender context, to match reply w/ request
829 */
830 define show_one_status
831 {
832   u32 client_index;
833   u32 context;
834 };
835
836 /** \brief ONE status
837     @param context - sender context, to match reply w/ request
838     @param feature_status - enabled if non-zero, else disabled
839     @param gpe_status - enabled if non-zero, else disabled
840 */
841 define show_one_status_reply
842 {
843   u32 context;
844   i32 retval;
845   bool feature_status;
846   bool gpe_status;
847 };
848
849 /** \brief Get ONE map request itr rlocs status
850     @param context - sender context, to match reply w/ request
851     @param locator_set_name - name of the locator_set
852  */
853 define one_get_map_request_itr_rlocs
854 {
855   u32 client_index;
856   u32 context;
857 };
858
859 /** \brief Request for map request itr rlocs summary status
860  */
861 define one_get_map_request_itr_rlocs_reply
862 {
863   u32 context;
864   i32 retval;
865   string locator_set_name[64];
866 };
867
868 /** \brief Request for ONE NSH mapping
869     @param client_index - opaque cookie to identify the sender
870     @param context - sender context, to match reply w/ request
871 */
872 define show_one_nsh_mapping
873 {
874   u32 client_index;
875   u32 context;
876 };
877
878 /** \brief Reply for ONE NSH mapping
879     @param context - sender context, to match reply w/ request
880     @param is_set - is ONE NSH mapping set
881     @param locator_set_name - name of the locator_set if NSH mapping is set
882 */
883 define show_one_nsh_mapping_reply
884 {
885   u32 context;
886   i32 retval;
887   bool is_set;
888   string locator_set_name[64];
889 };
890
891 /** \brief Request for ONE PITR status
892     @param client_index - opaque cookie to identify the sender
893     @param context - sender context, to match reply w/ request
894 */
895 define show_one_pitr
896 {
897   u32 client_index;
898   u32 context;
899 };
900
901 /** \brief Status of ONE PITR, enable or disable
902     @param context - sender context, to match reply w/ request
903     @param status - ONE PITR enable if non-zero, else disable
904     @param locator_set_name -  name of the locator_set
905 */
906 define show_one_pitr_reply
907 {
908   u32 context;
909   i32 retval;
910   bool status;
911   string locator_set_name[64];
912 };
913
914 define one_stats_dump
915 {
916   u32 client_index;
917   u32 context;
918 };
919
920 define one_stats_details
921 {
922   u32 context;
923   u32 vni;
924   vl_api_eid_t deid;
925   vl_api_eid_t seid;
926   vl_api_address_t rloc;
927   vl_api_address_t lloc;
928
929   u32 pkt_count;
930   u32 bytes;
931 };
932
933 autoreply define one_stats_flush
934 {
935   u32 client_index;
936   u32 context;
937 };
938
939 autoreply define one_stats_enable_disable
940 {
941   u32 client_index;
942   u32 context;
943   bool is_enable [default=true];
944 };
945
946 define show_one_stats_enable_disable
947 {
948   u32 client_index;
949   u32 context;
950 };
951
952 define show_one_stats_enable_disable_reply
953 {
954   u32 context;
955   i32 retval;
956   bool is_enable;
957 };
958
959 autoreply define one_map_register_fallback_threshold
960 {
961   u32 client_index;
962   u32 context;
963   u32 value;
964 };
965
966 define show_one_map_register_fallback_threshold
967 {
968   u32 client_index;
969   u32 context;
970 };
971
972 define show_one_map_register_fallback_threshold_reply
973 {
974   u32 context;
975   i32 retval;
976   u32 value;
977 };
978
979 autoreply define one_enable_disable_xtr_mode
980 {
981   u32 client_index;
982   u32 context;
983   bool is_enable [default=true];
984 };
985
986 define one_show_xtr_mode
987 {
988   u32 client_index;
989   u32 context;
990 };
991
992 define one_show_xtr_mode_reply
993 {
994   u32 context;
995   i32 retval;
996   bool is_enable;
997 };
998
999 autoreply define one_enable_disable_petr_mode
1000 {
1001   u32 client_index;
1002   u32 context;
1003   bool is_enable [default=true];
1004 };
1005
1006 define one_show_petr_mode
1007 {
1008   u32 client_index;
1009   u32 context;
1010 };
1011
1012 define one_show_petr_mode_reply
1013 {
1014   u32 context;
1015   i32 retval;
1016   bool is_enable;
1017 };
1018
1019 autoreply define one_enable_disable_pitr_mode
1020 {
1021   u32 client_index;
1022   u32 context;
1023   bool is_enable [default=true];
1024 };
1025
1026 define one_show_pitr_mode
1027 {
1028   u32 client_index;
1029   u32 context;
1030 };
1031
1032 define one_show_pitr_mode_reply
1033 {
1034   u32 context;
1035   i32 retval;
1036   bool is_enable;
1037 };
1038
1039 /*
1040  * Local Variables:
1041  * eval: (c-set-style "gnu")
1042  * End:
1043  */