diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/auditfilter.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/kernel/auditfilter.c b/kernel/auditfilter.c index fbf24d121d97..a6fe71fd5d1b 100644 --- a/kernel/auditfilter.c +++ b/kernel/auditfilter.c | |||
| @@ -135,18 +135,18 @@ static void audit_remove_watch(struct audit_watch *watch) | |||
| 135 | static inline void audit_free_rule(struct audit_entry *e) | 135 | static inline void audit_free_rule(struct audit_entry *e) |
| 136 | { | 136 | { |
| 137 | int i; | 137 | int i; |
| 138 | 138 | struct audit_krule *erule = &e->rule; | |
| 139 | /* some rules don't have associated watches */ | 139 | /* some rules don't have associated watches */ |
| 140 | if (e->rule.watch) | 140 | if (erule->watch) |
| 141 | audit_put_watch(e->rule.watch); | 141 | audit_put_watch(erule->watch); |
| 142 | if (e->rule.fields) | 142 | if (erule->fields) |
| 143 | for (i = 0; i < e->rule.field_count; i++) { | 143 | for (i = 0; i < erule->field_count; i++) { |
| 144 | struct audit_field *f = &e->rule.fields[i]; | 144 | struct audit_field *f = &erule->fields[i]; |
| 145 | kfree(f->lsm_str); | 145 | kfree(f->lsm_str); |
| 146 | security_audit_rule_free(f->lsm_rule); | 146 | security_audit_rule_free(f->lsm_rule); |
| 147 | } | 147 | } |
| 148 | kfree(e->rule.fields); | 148 | kfree(erule->fields); |
| 149 | kfree(e->rule.filterkey); | 149 | kfree(erule->filterkey); |
| 150 | kfree(e); | 150 | kfree(e); |
| 151 | } | 151 | } |
| 152 | 152 | ||
