diff options
author | Ondrej Mosnacek <omosnace@redhat.com> | 2020-02-03 12:27:23 +0100 |
---|---|---|
committer | Paul Moore <paul@paul-moore.com> | 2020-02-11 21:50:26 -0500 |
commit | 89d4d7c88d2b4f252adb434a28ea9b84d629aeb1 (patch) | |
tree | dc1a00d994efd42be540d6e63f170aa6eee0d8fa /security/selinux/ss/conditional.c | |
parent | 8794d7839038fc018e51d0afbf309b71069d9691 (diff) | |
download | linux-89d4d7c88d2b4f252adb434a28ea9b84d629aeb1.tar.gz linux-89d4d7c88d2b4f252adb434a28ea9b84d629aeb1.tar.bz2 linux-89d4d7c88d2b4f252adb434a28ea9b84d629aeb1.zip |
selinux: generalize evaluate_cond_node()
Both callers iterate the cond_list and call it for each node - turn it
into evaluate_cond_nodes(), which does the iteration for them.
Signed-off-by: Ondrej Mosnacek <omosnace@redhat.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'security/selinux/ss/conditional.c')
-rw-r--r-- | security/selinux/ss/conditional.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/security/selinux/ss/conditional.c b/security/selinux/ss/conditional.c index 669b766c260b..cce4a75fb3e7 100644 --- a/security/selinux/ss/conditional.c +++ b/security/selinux/ss/conditional.c @@ -86,7 +86,7 @@ static int cond_evaluate_expr(struct policydb *p, struct cond_expr *expr) * list appropriately. If the result of the expression is undefined * all of the rules are disabled for safety. */ -void evaluate_cond_node(struct policydb *p, struct cond_node *node) +static void evaluate_cond_node(struct policydb *p, struct cond_node *node) { struct avtab_node *avnode; int new_state; @@ -117,6 +117,14 @@ void evaluate_cond_node(struct policydb *p, struct cond_node *node) } } +void evaluate_cond_nodes(struct policydb *p) +{ + u32 i; + + for (i = 0; i < p->cond_list_len; i++) + evaluate_cond_node(p, &p->cond_list[i]); +} + int cond_policydb_init(struct policydb *p) { int rc; |