diff options
author | Kevin Hilman <khilman@linaro.org> | 2015-12-17 08:48:27 -0800 |
---|---|---|
committer | Kevin Hilman <khilman@linaro.org> | 2015-12-17 08:48:27 -0800 |
commit | d3d3a134d75d28034b950bc0b6682ba0be976f37 (patch) | |
tree | 71365703ae44c980a80f9b2c02d664cbc3ddd935 /drivers/media/tuners/si2157.c | |
parent | a143f427f3e7c6d80bc1d288334706a1f8237f5f (diff) | |
parent | 8b20b3796da06d8ada347c4eaf289c3127da155f (diff) |
Merge branch 'v4.1/topic/rt' into linux-linaro-lsk-v4.1-rt
Diffstat (limited to 'drivers/media/tuners/si2157.c')
-rw-r--r-- | drivers/media/tuners/si2157.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/media/tuners/si2157.c b/drivers/media/tuners/si2157.c index d74ae26621ca..c5dbba5b5bc9 100644 --- a/drivers/media/tuners/si2157.c +++ b/drivers/media/tuners/si2157.c @@ -165,6 +165,10 @@ static int si2157_init(struct dvb_frontend *fe) for (remaining = fw->size; remaining > 0; remaining -= 17) { len = fw->data[fw->size - remaining]; + if (len > SI2157_ARGLEN) { + dev_err(&client->dev, "Bad firmware length\n"); + goto err_release_firmware; + } memcpy(cmd.args, &fw->data[(fw->size - remaining) + 1], len); cmd.wlen = len; cmd.rlen = 1; |