]> git.itanic.dy.fi Git - linux-stable/commitdiff
net/mlx5: Fix uninitialized variable bug in outlen_write()
authorYueHaibing <yuehaibing@huawei.com>
Mon, 21 Nov 2022 11:22:04 +0000 (19:22 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 10:16:31 +0000 (11:16 +0100)
[ Upstream commit 3f5769a074c13d8f08455e40586600419e02a880 ]

If sscanf() return 0, outlen is uninitialized and used in kzalloc(),
this is unexpected. We should return -EINVAL if the string is invalid.

Fixes: e126ba97dba9 ("mlx5: Add driver for Mellanox Connect-IB adapters")
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/cmd.c

index 6ae9a198737167675342ccff29ac6197f97ae8c0..ad8be0a81546c9ee555bfdb077301eac887e720e 100644 (file)
@@ -1309,8 +1309,8 @@ static ssize_t outlen_write(struct file *filp, const char __user *buf,
                return -EFAULT;
 
        err = sscanf(outlen_str, "%d", &outlen);
-       if (err < 0)
-               return err;
+       if (err != 1)
+               return -EINVAL;
 
        ptr = kzalloc(outlen, GFP_KERNEL);
        if (!ptr)