[PATCH] apparmor: fix odd_ptr_err.cocci warnings (fwd)

Navid Emamdoost navid.emamdoost at gmail.com
Thu Oct 24 18:35:24 UTC 2019


Hello,

I added Tyler to this conversation.
I believe v3 of the patch addresses this issue:
https://lore.kernel.org/patchwork/patch/1142523/


On Thu, Oct 24, 2019 at 6:28 AM Julia Lawall <julia.lawall at lip6.fr> wrote:
>
> Hello,
>
> The change suggested by Coccinelle is not correct, but the original code
> is not correct either because the argument to PTR_ERR should be a pointer,
> not an integer.
>
> julia
>
> ---------- Forwarded message ----------
> Date: Thu, 24 Oct 2019 18:21:57 +0800
> From: kbuild test robot <lkp at intel.com>
> To: kbuild at lists.01.org
> Cc: Julia Lawall <julia.lawall at lip6.fr>
> Subject: [PATCH] apparmor: fix odd_ptr_err.cocci warnings
>
> CC: kbuild-all at lists.01.org
> In-Reply-To: <20191021152348.3906-1-navid.emamdoost at gmail.com>
> References: <20191021152348.3906-1-navid.emamdoost at gmail.com>
> TO: Navid Emamdoost <navid.emamdoost at gmail.com>
>
> From: kbuild test robot <lkp at intel.com>
>
> security/apparmor/audit.c:199:5-11: inconsistent IS_ERR and PTR_ERR on line 202.
>
>  PTR_ERR should access the value just tested by IS_ERR
>
> Semantic patch information:
>  There can be false positives in the patch case, where it is the call to
>  IS_ERR that is wrong.
>
> Generated by: scripts/coccinelle/tests/odd_ptr_err.cocci
>
> Fixes: 6f939f24599c ("apparmor: Fix use-after-free in aa_audit_rule_init")
> CC: Navid Emamdoost <navid.emamdoost at gmail.com>
> Signed-off-by: kbuild test robot <lkp at intel.com>
> ---
>
> url:    https://github.com/0day-ci/linux/commits/Navid-Emamdoost/apparmor-Fix-use-after-free-in-aa_audit_rule_init/20191024-123239
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security.git next-testing
> :::::: branch date: 6 hours ago
> :::::: commit date: 6 hours ago
>
> Please take the patch only if it's a positive warning. Thanks!
>
>  audit.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- a/security/apparmor/audit.c
> +++ b/security/apparmor/audit.c
> @@ -199,7 +199,7 @@ int aa_audit_rule_init(u32 field, u32 op
>         if (IS_ERR(rule->label)) {
>                 int err = rule->label;
>                 aa_audit_rule_free(rule);
> -               return PTR_ERR(err);
> +               return PTR_ERR(rule->label);
>         }
>
>         *vrule = rule;



--
Navid.



More information about the Linux-security-module-archive mailing list