hs-test: cache docker build in local filesystem
[vpp.git] / src / plugins / acl / acl.api
index 5d808fd..404b512 100644 (file)
@@ -19,7 +19,7 @@
     used to control the ACL plugin
 */
 
-option version = "2.0.0";
+option version = "2.0.1";
 
 import "plugins/acl/acl_types.api";
 import "vnet/interface_types.api";
@@ -102,7 +102,7 @@ define acl_plugin_get_conn_table_max_entries_reply
     @r - Rules for this access-list
 */
 
-manual_print manual_endian define acl_add_replace
+ define acl_add_replace
 {
   u32 client_index;
   u32 context;
@@ -110,7 +110,7 @@ manual_print manual_endian define acl_add_replace
   string tag[64]; /* What gets in here gets out in the corresponding tag field when dumping the ACLs. */
   u32 count;
   vl_api_acl_rule_t r[count];
-  option vat_help = "<acl-idx> [<ipv4|ipv6>] <permit|permit+reflect|deny|action N> [src IP/plen] [dst IP/plen] [sport X-Y] [dport X-Y] [proto P] [tcpflags FL MASK], ... , ...";
+  option vat_help = "<acl-idx> <permit|permit+reflect|deny|action N> [src IP/plen] [dst IP/plen] [sport X-Y] [dport X-Y] [proto P] [tcpflags FL MASK], ... , ...";
 };
 
 /** \brief Reply to add/replace ACL
@@ -132,7 +132,7 @@ define acl_add_replace_reply
     @param acl_index - ACL index to delete
 */
 
-autoreply manual_print define acl_del
+autoreply define acl_del
 {
   u32 client_index;
   u32 context;
@@ -151,7 +151,7 @@ autoreply manual_print define acl_del
     @param acl_index - index of ACL for the operation
 */
 
-autoreply manual_print define acl_interface_add_del
+autoreply define acl_interface_add_del
 {
   u32 client_index;
   u32 context;
@@ -175,7 +175,7 @@ autoreply manual_print define acl_interface_add_del
     @param acls - vector of ACL indices
 */
 
-autoreply manual_print define acl_interface_set_acl_list
+autoreply define acl_interface_set_acl_list
 {
   u32 client_index;
   u32 context;
@@ -213,7 +213,7 @@ define acl_dump
     @param r - Array of rules within this ACL
 */
 
-manual_endian manual_print define acl_details
+define acl_details
 {
   u32 context;
   u32 acl_index;
@@ -261,7 +261,7 @@ define acl_interface_list_details
     @param r - vector of MACIP ACL rules
 */
 
-manual_endian manual_print define macip_acl_add
+define macip_acl_add
 {
   u32 client_index;
   u32 context;
@@ -293,7 +293,7 @@ define macip_acl_add_reply
     @param r - vector of MACIP ACL rules
 */
 
-manual_endian manual_print define macip_acl_add_replace
+define macip_acl_add_replace
 {
   u32 client_index;
   u32 context;
@@ -301,7 +301,7 @@ manual_endian manual_print define macip_acl_add_replace
   string tag[64];
   u32 count;
   vl_api_macip_acl_rule_t r[count];
-  option vat_help = "<acl-idx> [<ipv4|ipv6>] <permit|deny|action N> [count <count>] [src] ip <ipaddress/[plen]> mac <mac> mask <mac_mask>, ... , ...";
+  option vat_help = "<acl-idx> <permit|deny|action N> [count <count>] [src] ip <ipaddress/[plen]> mac <mac> mask <mac_mask>, ... , ...";
 };
 
 /** \brief Reply to add/replace MACIP ACL
@@ -323,7 +323,7 @@ define macip_acl_add_replace_reply
     @param acl_index - MACIP ACL index to delete
 */
 
-autoreply manual_print define macip_acl_del
+autoreply define macip_acl_del
 {
   u32 client_index;
   u32 context;
@@ -339,7 +339,7 @@ autoreply manual_print define macip_acl_del
     @param acl_index - MACIP ACL index
 */
 
-autoreply manual_print define macip_acl_interface_add_del
+autoreply  define macip_acl_interface_add_del
 {
   u32 client_index;
   u32 context;
@@ -372,7 +372,7 @@ define macip_acl_dump
     @param r - rules comprising this MACIP ACL
 */
 
-manual_endian manual_print define macip_acl_details
+  define macip_acl_details
 {
   u32 context;
   u32 acl_index;
@@ -442,7 +442,7 @@ define macip_acl_interface_list_details
     @param whitelist - vector of whitelisted ethertypes
 */
 
-autoreply manual_print define acl_interface_set_etype_whitelist
+autoreply  define acl_interface_set_etype_whitelist
 {
   u32 client_index;
   u32 context;
@@ -497,3 +497,43 @@ autoreply define acl_stats_intf_counters_enable
   bool enable;
   option vat_help = "[disable]";
 };
+
+/** \brief Enable hash-based ACL lookups (default) or disable them (use linear search)
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable - whether to enable or disable the usage of hash lookup algorithm
+*/
+
+autoreply define acl_plugin_use_hash_lookup_set
+{
+  option status="in_progress";
+  u32 client_index;
+  u32 context;
+  bool enable;
+};
+
+/** \brief Get if the hash-based ACL lookups are enabled (default) or not (use linear search)
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+*/
+
+
+define acl_plugin_use_hash_lookup_get
+{
+  option status="in_progress";
+  u32 client_index;
+  u32 context;
+};
+
+
+/** \brief Reply with the previous state of the hash lookup
+    @param context - returned sender context, to match reply w/ request
+    @param prev_enable - previous state of the hash lookup use
+*/
+
+define acl_plugin_use_hash_lookup_get_reply
+{
+  option status="in_progress";
+  u32 context;
+  bool enable;
+};