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)
committerPaul Moore <paul@paul-moore.com>
Fri, 13 Nov 2020 01:16:09 +0000 (20:16 -0500)
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>
security/selinux/ibpkey.c

index f68a761..3a63a98 100644 (file)
@@ -151,8 +151,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;