[apparmor] [PATCH][NEXT] apparmor: Fix memory leak of rule on error exit path

John Johansen john.johansen at canonical.com
Thu May 17 20:05:56 UTC 2018


On 05/17/2018 12:53 PM, Tyler Hicks wrote:
> Currently on the error exit path the allocated rule is not free'd
> causing a memory leak. Fix this by calling aa_audit_rule_free().
> 
> Detected by CoverityScan, CID#1468966 ("Resource leaks")
> 
> Fixes: cb740f574c7b ("apparmor: modify audit rule support to support profile stacks")
> Signed-off-by: Tyler Hicks <tyhicks at canonical.com>

Acked-by: John Johansen <john.johansen at canonical.com>

and pulled into apparmor-next

> ---
>  security/apparmor/audit.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/security/apparmor/audit.c b/security/apparmor/audit.c
> index 575f3e9c8c80..eeaddfe0c0fb 100644
> --- a/security/apparmor/audit.c
> +++ b/security/apparmor/audit.c
> @@ -200,10 +200,12 @@ int aa_audit_rule_init(u32 field, u32 op, char *rulestr, void **vrule)
>  	/* Currently rules are treated as coming from the root ns */
>  	rule->label = aa_label_parse(&root_ns->unconfined->label, rulestr,
>  				     GFP_KERNEL, true, false);
> -	if (IS_ERR(rule->label))
> +	if (IS_ERR(rule->label)) {
> +		aa_audit_rule_free(rule);
>  		return PTR_ERR(rule->label);
> -	*vrule = rule;
> +	}
>  
> +	*vrule = rule;
>  	return 0;
>  }
>  
> 




More information about the AppArmor mailing list