API sw_interface_dump: Dump all if index is zero
[vpp.git] / src / vnet / interface.api
index 69de722..7a2c45a 100644 (file)
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-option version = "2.2.0";
+option version = "2.3.1";
 
 import "vnet/interface_types.api";
 
@@ -77,7 +77,6 @@ autoreply define sw_interface_set_ip_directed_broadcast
   u8  enable;
 };
 
-
 /** \brief Interface Event generated by want_interface_events
     @param client_index - opaque cookie to identify the sender
     @param pid - client pid registered to receive notification
@@ -112,7 +111,7 @@ autoreply define want_interface_events
 
 /** \brief Interface details structure (fix this) 
     @param sw_if_index - index of the interface
-    @param sup_sw_if_index - index of parent interface if any, else same as sw_if_index  
+    @param sup_sw_if_index - index of parent interface if any, else same as sw_if_index
     @param l2_address_length - length of the interface's l2 address
     @param pid - the interface's l2 address
     @param interface_name - name of the interface
@@ -194,7 +193,7 @@ define sw_interface_details
   u32 vtr_tag1;                        // first pushed tag
   u32 vtr_tag2;                        // second pushed tag
   u8 tag[64];
-  
+
   /* pbb tag rewrite info */
   u16 outer_tag;
   u8  b_dmac[6];
@@ -203,11 +202,20 @@ define sw_interface_details
   u32 i_sid;
 };
 
-/* works */
+/** \brief Request all or filtered subset of sw_interface_details
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param sw_if_index - index of the interface to dump info on, 0 or ~0 if on all
+      TODO: Support selecting only index==0 when CSIT is ready.
+    @param name_filter_valid - 1 if requesting a filtered subset of records else 0
+      if name filter is set as valid, sw_if_index value is ignored and all interfaces are examined
+    @param name_filter - interface name substring filter. Eg. loop1 returns [loop1, loop10]
+*/
 define sw_interface_dump
 {
   u32 client_index;
   u32 context;
+  vl_api_interface_index_t sw_if_index;
   u8 name_filter_valid;
   u8 name_filter[49];
 };