acl-plugin: implement ACL lookup contexts for "ACL as a service" use by other plugins
[vpp.git] / src / plugins / acl / hash_lookup_types.h
index 1fa197e..1a20ebf 100644 (file)
@@ -38,10 +38,11 @@ typedef struct {
 typedef struct {
   /* The mask types present in this ACL */
   uword *mask_type_index_bitmap;
-  /* hash ACL applied on these interfaces */
-  u32 *inbound_sw_if_index_list;
-  u32 *outbound_sw_if_index_list;
+  /* hash ACL applied on these lookup contexts */
+  u32 *lc_index_list;
   hash_ace_info_t *rules;
+  /* a boolean flag set when the hash acl info is initialized */
+  int hash_acl_exists;
 } hash_acl_info_t;
 
 typedef struct {
@@ -68,6 +69,10 @@ typedef struct {
    * number of hits on this entry
    */
   u64 hitcount;
+  /*
+   * acl position in vector of ACLs within lookup context
+   */
+  u32 acl_position;
   /*
    * Action of this applied ACE
    */