]> git.baikalelectronics.ru Git - kernel.git/commit
media: av7110: prevent underflow in write_ts_to_decoder()
authorDan Carpenter <error27@gmail.com>
Tue, 7 Mar 2023 10:00:23 +0000 (11:00 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 May 2023 09:35:36 +0000 (11:35 +0200)
commit79cfa4d15065004857718582af8b5e665196e411
tree7ed6e23606ad6d4d83d6a2db06bf24e997895e96
parent8d3839d23a4541351f7299424b2ae3c66c5af092
media: av7110: prevent underflow in write_ts_to_decoder()

[ Upstream commit eed9496a0501357aa326ddd6b71408189ed872eb ]

The buf[4] value comes from the user via ts_play().  It is a value in
the u8 range.  The final length we pass to av7110_ipack_instant_repack()
is "len - (buf[4] + 1) - 4" so add a check to ensure that the length is
not negative.  It's not clear that passing a negative len value does
anything bad necessarily, but it's not best practice.

With the new bounds checking the "if (!len)" condition is no longer
possible or required so remove that.

Fixes: b0f45248bf38 ("V4L/DVB (11759): dvb-ttpci: Add TS replay capability")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/pci/ttpci/av7110_av.c