Revert "API: Add service definitions for events and singleton messages."
[vpp.git] / src / vpp / stats / stats.api
index 7f74585..b429faa 100644 (file)
@@ -18,6 +18,7 @@
     This file defines the stats API 
 */
 
+option version = "1.0.0";
 
 /** \brief Want Stats, enable/disable ALL stats updates
     @param client_index - opaque cookie to identify the sender
@@ -38,6 +39,8 @@ autoreply define want_stats
     @param context - sender context, to match reply w/ request
     @param enable_disable - 1 = enable stats, 0 = disable
     @param pid - pid of process requesting stats updates
+
+    Please consider using want_per_interface_simple_stats with sw_if_index=~0
 */
 autoreply define want_interface_simple_stats
 {
@@ -47,11 +50,33 @@ autoreply define want_interface_simple_stats
   u32 pid;
 };
 
+/** \brief Want Per Interface simple Stats, register for continuous stats
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable_disable - 1 = enable stats, 0 = disable
+    @param pid - pid of process requesting stats updates
+    @param num - number of sw_if_indexes
+    @param sw_ifs - array of sw_if_index
+*/
+autoreply define want_per_interface_simple_stats
+{
+  u32 client_index;
+  u32 context;
+  u32 enable_disable;
+  u32 pid;
+  u32 num;
+  u32 sw_ifs[num];
+
+};
+
 /** \brief Want Interface Combined Stats, register for continuous stats
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
     @param enable_disable - 1 = enable stats, 0 = disable
     @param pid - pid of process requesting stats updates
+
+    Please consider using want_per_interface_combined_stats with sw_if_index=~0
+
 */
 autoreply define want_interface_combined_stats
 {
@@ -61,6 +86,25 @@ autoreply define want_interface_combined_stats
   u32 pid;
 };
 
+/** \brief Want Per Interface Combined Stats, register for continuous stats
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable_disable - 1 = enable stats, 0 = disable
+    @param pid - pid of process requesting stats updates
+    @param num - number of sw_if_indexes
+    @param sw_ifs - array of sw_if_index
+*/
+autoreply define want_per_interface_combined_stats
+{
+  u32 client_index;
+  u32 context;
+  u32 enable_disable;
+  u32 pid;
+  u32 num;
+  u32 sw_ifs[num];
+
+};
+
 /** \brief Want IP4 FIB Stats, register for continuous stats
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
@@ -89,6 +133,34 @@ autoreply define want_ip6_fib_stats
   u32 pid;
 };
 
+/** \brief Want IP4 muilticast FIB Stats, register for continuous stats
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable_disable - 1 = enable stats, 0 = disable
+    @param pid - pid of process requesting stats updates
+*/
+autoreply define want_ip4_mfib_stats
+{
+  u32 client_index;
+  u32 context;
+  u32 enable_disable;
+  u32 pid;
+};
+
+/** \brief Want IP6 multicast FIB Stats, register for continuous stats
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable_disable - 1 = enable stats, 0 = disable
+    @param pid - pid of process requesting stats updates
+*/
+autoreply define want_ip6_mfib_stats
+{
+  u32 client_index;
+  u32 context;
+  u32 enable_disable;
+  u32 pid;
+};
+
 /** \brief Want IP4 NBR Stats, register for continuous stats
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
@@ -132,6 +204,22 @@ manual_print manual_endian define vnet_ip4_fib_counters
   vl_api_ip4_fib_counter_t c[count];
 };
 
+typeonly manual_print manual_endian define ip4_mfib_counter
+{
+  u8 source[4];
+  u8 group[4];
+  u8 group_length;
+  u64 packets;
+  u64 bytes;
+};
+
+manual_print manual_endian define vnet_ip4_mfib_counters
+{
+  u32 vrf_id;
+  u32 count;
+  vl_api_ip4_mfib_counter_t c[count];
+};
+
 typeonly manual_print manual_endian define ip4_nbr_counter
 {
   u32 address;
@@ -172,6 +260,22 @@ manual_print manual_endian define vnet_ip6_fib_counters
   vl_api_ip6_fib_counter_t c[count];
 };
 
+typeonly manual_print manual_endian define ip6_mfib_counter
+{
+  u8 source[16];
+  u8 group[16];
+  u8 group_length;
+  u64 packets;
+  u64 bytes;
+};
+
+manual_print manual_endian define vnet_ip6_mfib_counters
+{
+  u32 vrf_id;
+  u32 count;
+  vl_api_ip6_mfib_counter_t c[count];
+};
+
 typeonly manual_print manual_endian define ip6_nbr_counter
 {
   u64 address[2];