lkml.org 
[lkml]   [2017]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH 42/46] selinux: One function call less in roles_init() after error detection
    On Sun, Jan 15, 2017 at 10:42 AM, SF Markus Elfring
    <elfring@users.sourceforge.net> wrote:
    > From: Markus Elfring <elfring@users.sourceforge.net>
    > Date: Sun, 15 Jan 2017 12:56:54 +0100
    >
    > The kfree() function was called in up to two cases by the
    > roles_init() function during error handling even if the passed variable
    > contained a null pointer.
    >
    > * Adjust a jump target according to the Linux coding style convention.
    >
    > * Delete an initialisation for the variable "key" at the beginning
    > which became unnecessary with this refactoring.
    >
    > Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
    > ---
    > security/selinux/ss/policydb.c | 7 ++++---
    > 1 file changed, 4 insertions(+), 3 deletions(-)

    Dropped due to unnecessary code churn with no significant advantage.

    > diff --git a/security/selinux/ss/policydb.c b/security/selinux/ss/policydb.c
    > index be445abf047b..7dd5c6f7786f 100644
    > --- a/security/selinux/ss/policydb.c
    > +++ b/security/selinux/ss/policydb.c
    > @@ -174,7 +174,7 @@ static struct policydb_compat_info *policydb_lookup_compat(int version)
    > */
    > static int roles_init(struct policydb *p)
    > {
    > - char *key = NULL;
    > + char *key;
    > int rc;
    > struct role_datum *role;
    >
    > @@ -185,13 +185,13 @@ static int roles_init(struct policydb *p)
    > role->value = ++p->p_roles.nprim;
    > if (role->value != OBJECT_R_VAL) {
    > rc = -EINVAL;
    > - goto out;
    > + goto free_role;
    > }
    >
    > key = kstrdup(OBJECT_R, GFP_KERNEL);
    > if (!key) {
    > rc = -ENOMEM;
    > - goto out;
    > + goto free_role;
    > }
    >
    > rc = hashtab_insert(p->p_roles.table, key, role);
    > @@ -201,6 +201,7 @@ static int roles_init(struct policydb *p)
    > return 0;
    > out:
    > kfree(key);
    > +free_role:
    > kfree(role);
    > return rc;
    > }
    > --
    > 2.11.0
    >



    --
    paul moore
    www.paul-moore.com

    \
     
     \ /
      Last update: 2017-03-29 17:45    [W:2.302 / U:1.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site