diff options
author | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2015-04-28 18:34:40 -0300 |
---|---|---|
committer | Willy Tarreau <w@1wt.eu> | 2015-09-18 13:52:07 +0200 |
commit | 55e780c13d7c2a1ba5c31af81334b0fb40a77fca (patch) | |
tree | 82152f30c07230c69fc888dde019e2555aca7278 | |
parent | 9747205d2dbe6bbf72325dc11fdebf83a5ac7a50 (diff) |
s5h1420: fix a buffer overflow when checking userspace params
commit 12f4543f5d6811f864e6c4952eb27253c7466c02 upstream.
The maximum size for a DiSEqC command is 6, according to the
userspace API. However, the code allows to write up to 7 values:
drivers/media/dvb-frontends/s5h1420.c:193 s5h1420_send_master_cmd() error: buffer overflow 'cmd->msg' 6 <= 7
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
[bwh: Backported to 3.2: adjust filename]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
(cherry picked from commit 4bf124b5f179a9c169c57ef7cd3a74f239063ed1)
Signed-off-by: Willy Tarreau <w@1wt.eu>
-rw-r--r-- | drivers/media/dvb/frontends/s5h1420.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/dvb/frontends/s5h1420.c b/drivers/media/dvb/frontends/s5h1420.c index 2e9fd2893ede..6134578ae392 100644 --- a/drivers/media/dvb/frontends/s5h1420.c +++ b/drivers/media/dvb/frontends/s5h1420.c @@ -180,7 +180,7 @@ static int s5h1420_send_master_cmd (struct dvb_frontend* fe, int result = 0; dprintk("enter %s\n", __func__); - if (cmd->msg_len > 8) + if (cmd->msg_len > sizeof(cmd->msg)) return -EINVAL; /* setup for DISEQC */ |