aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/acl/hash_lookup_types.h
diff options
context:
space:
mode:
authorAndrew Yourtchenko <ayourtch@gmail.com>2017-08-10 14:19:58 +0200
committerAndrew Yourtchenko <ayourtch@gmail.com>2017-08-10 16:23:45 +0000
commitfaef07fdd048cf96626daa8e09ed995af8e30f00 (patch)
tree73af12cd016db9c04ef8efe8141dc93c9473951a /src/plugins/acl/hash_lookup_types.h
parent818eb54de01459ed3d823f8a9781bbed0845db82 (diff)
acl-plugin: hash lookup bitmask not cleared when ACL is unapplied from interface (VPP-935)
The logic in hash ACL bitmask update was using the vector of ACLs applied to the interface to rebuild the hash lookup mask. However, in transient cases (like doing group manipulation with hash ACLs), that will not hold true. Thus, make a local copy of for which ACL indices the hash_acl_apply was called previously, and maintain that one local to the hash_lookup.c file logic. Change-Id: I30187d68febce8bba2ab6ffbb1eee13b5c96a44b Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit 1de7d7044434196610190011ebb431f054701259)
Diffstat (limited to 'src/plugins/acl/hash_lookup_types.h')
-rw-r--r--src/plugins/acl/hash_lookup_types.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/acl/hash_lookup_types.h b/src/plugins/acl/hash_lookup_types.h
index fbc9777b83d..837cc0a802d 100644
--- a/src/plugins/acl/hash_lookup_types.h
+++ b/src/plugins/acl/hash_lookup_types.h
@@ -73,6 +73,8 @@ typedef struct {
* hash_ace_info_t=>mask_type_index bits set
*/
uword *mask_type_index_bitmap;
+ /* applied ACLs so we can track them independently from main ACL module */
+ u32 *applied_acls;
} applied_hash_acl_info_t;