Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1560787

Re: [PATCH 21/46] selinux: Two function calls less in range_read() after error detection

From Casey Schaufler <casey@schaufler-ca.com>
Newsgroups linux.kernel
Subject Re: [PATCH 21/46] selinux: Two function calls less in range_read() after error detection
Date 2017-01-17 17:40 +0100
Message-ID <t0EXF-VQ-41@gated-at.bofh.it> (permalink)
References <sZUrL-3Jh-9@gated-at.bofh.it> <sZUUO-47Q-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 1/15/2017 7:21 AM, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Sat, 14 Jan 2017 20:20:15 +0100
>
> Adjust a jump target to avoid two calls of the function "kfree" at the end
> after a memory allocation failed for the local variable "rt".
>
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
>  security/selinux/ss/policydb.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/security/selinux/ss/policydb.c b/security/selinux/ss/policydb.c
> index 4cd96ce51322..0d2f64558c0a 100644
> --- a/security/selinux/ss/policydb.c
> +++ b/security/selinux/ss/policydb.c
> @@ -1857,7 +1857,7 @@ static int range_read(struct policydb *p, void *fp)
>  		rt = kzalloc(sizeof(*rt), GFP_KERNEL);
>  		if (!rt) {
>  			rc = -ENOMEM;
> -			goto out;
> +			goto exit;

Why not "return rc;"?
goto to a return is wrong.

>  		}
>  
>  		rc = next_entry(buf, fp, (sizeof(u32) * 2));
> @@ -1909,6 +1909,7 @@ static int range_read(struct policydb *p, void *fp)
>  out:
>  	kfree(rt);
>  	kfree(r);
> +exit:
>  	return rc;
>  }
>  

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: [PATCH 21/46] selinux: Two function calls less in range_read()  after error detection Casey Schaufler <casey@schaufler-ca.com> - 2017-01-17 17:40 +0100

csiph-web