summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorLaura Abbott <labbott@fedoraproject.org>2015-10-06 01:33:29 +0300
committerSasha Levin <sasha.levin@oracle.com>2016-04-14 03:44:38 +0300
commit720db91c2e5fb56544f935bd8d62d07faedbfb2a (patch)
treecbccad9fb567e5d03daf585c7e43154e5d6ddd7c /drivers/media
parent7bd07d0aae76e8331183bbbc2a60cfe7547fafcf (diff)
downloadlinux-720db91c2e5fb56544f935bd8d62d07faedbfb2a.tar.xz
[media] si2157: return -EINVAL if firmware blob is too big
[ Upstream commit d2cc2f0b35465951eaaf0387fd55e29835ed7ea6 ] A previous patch added a check if the firmware is too big, but it didn't set the return error code with the right value. [mchehab@osg.samsung.com: I ended by applying a v1 of Laura's patch, without the proper return code. This patch contains the difference between v2 and v1 of the Laura's "si2157: Bounds check firmware" patch] Cc: stable@kernel.org Signed-off-by: Laura Abbott <labbott@fedoraproject.org> Reviewed-by: Olli Salonen <olli.salonen@iki.fi> Tested-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/tuners/si2157.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/tuners/si2157.c b/drivers/media/tuners/si2157.c
index a9032717c759..446917439ae5 100644
--- a/drivers/media/tuners/si2157.c
+++ b/drivers/media/tuners/si2157.c
@@ -159,6 +159,7 @@ static int si2157_init(struct dvb_frontend *fe)
len = fw->data[fw->size - remaining];
if (len > SI2157_ARGLEN) {
dev_err(&s->client->dev, "Bad firmware length\n");
+ ret = -EINVAL;
goto err;
}
memcpy(cmd.args, &fw->data[(fw->size - remaining) + 1], len);