]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
selinux: Fix error return code in sel_ib_pkey_sid_slow()
authorChen Zhou <chenzhou10@huawei.com>
Thu, 12 Nov 2020 13:53:32 +0000 (21:53 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Nov 2020 17:27:58 +0000 (18:27 +0100)
commit c350f8bea271782e2733419bd2ab9bf4ec2051ef upstream.

Fix to return a negative error code from the error handling case
instead of 0 in function sel_ib_pkey_sid_slow(), as done elsewhere
in this function.

Cc: stable@vger.kernel.org
Fixes: 409dcf31538a ("selinux: Add a cache for quicker retreival of PKey SIDs")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Chen Zhou <chenzhou10@huawei.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
security/selinux/ibpkey.c

index e3614ee5f1c0ecb5697221a25ebfe46b885bb35f..36e61f622b5a57bb3d12dad70a5646b37f933ca3 100644 (file)
@@ -160,8 +160,10 @@ static int sel_ib_pkey_sid_slow(u64 subnet_prefix, u16 pkey_num, u32 *sid)
         * is valid, it just won't be added to the cache.
         */
        new = kzalloc(sizeof(*new), GFP_ATOMIC);
-       if (!new)
+       if (!new) {
+               ret = -ENOMEM;
                goto out;
+       }
 
        new->psec.subnet_prefix = subnet_prefix;
        new->psec.pkey = pkey_num;