policer: add api to configure input policing
Add a new API to apply a policer to an input interface.
Type: improvement
Signed-off-by: Brian Russell <brian@graphiant.com>
Change-Id: Ie8aff9120149b63d85363a9a5afdcaed60a93700
diff --git a/src/vnet/policer/policer.api b/src/vnet/policer/policer.api
index c3b8d7c..a664ab0 100644
--- a/src/vnet/policer/policer.api
+++ b/src/vnet/policer/policer.api
@@ -15,6 +15,7 @@
option version = "2.0.0";
+import "vnet/interface_types.api";
import "vnet/policer/policer_types.api";
/** \brief policer bind: Associate/disassociate a policer with a worker thread.
@@ -34,6 +35,23 @@
bool bind_enable;
};
+/** \brief policer input: Apply policer as an input feature.
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param name - policer name
+ @param sw_if_index - interface to apply the policer
+ @param apply - Apply/remove
+*/
+autoreply define policer_input
+{
+ u32 client_index;
+ u32 context;
+
+ string name[64];
+ vl_api_interface_index_t sw_if_index;
+ bool apply;
+};
+
/** \brief Add/del policer
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request