mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 06:34:11 +08:00
media: dvb-frontends/stv0910: Fix possible buffer overflow
Fixes smatch error: drivers/media/dvb-frontends/stv0910.c:715 dvbs2_nbch() error: buffer overflow 'nbch[fectype]' 2 <= 28 Also, fixes the nbch array table by adding the DUMMY_PLF element at the top to match the enums (table element order was off by one before). Patch sent upstream aswell. Cc: Ralph Metzler <rjkm@metzlerbros.de> Signed-off-by: Daniel Scheller <d.scheller@gmx.net> Tested-by: Richard Scobie <r.scobie@clear.net.nz> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
cd21b33494
commit
13c8148962
@ -671,6 +671,7 @@ static int get_bit_error_rate_s(struct stv *state, u32 *bernumerator,
|
|||||||
static u32 dvbs2_nbch(enum dvbs2_mod_cod mod_cod, enum dvbs2_fectype fectype)
|
static u32 dvbs2_nbch(enum dvbs2_mod_cod mod_cod, enum dvbs2_fectype fectype)
|
||||||
{
|
{
|
||||||
static u32 nbch[][2] = {
|
static u32 nbch[][2] = {
|
||||||
|
{ 0, 0}, /* DUMMY_PLF */
|
||||||
{16200, 3240}, /* QPSK_1_4, */
|
{16200, 3240}, /* QPSK_1_4, */
|
||||||
{21600, 5400}, /* QPSK_1_3, */
|
{21600, 5400}, /* QPSK_1_3, */
|
||||||
{25920, 6480}, /* QPSK_2_5, */
|
{25920, 6480}, /* QPSK_2_5, */
|
||||||
@ -703,7 +704,7 @@ static u32 dvbs2_nbch(enum dvbs2_mod_cod mod_cod, enum dvbs2_fectype fectype)
|
|||||||
|
|
||||||
if (mod_cod >= DVBS2_QPSK_1_4 &&
|
if (mod_cod >= DVBS2_QPSK_1_4 &&
|
||||||
mod_cod <= DVBS2_32APSK_9_10 && fectype <= DVBS2_16K)
|
mod_cod <= DVBS2_32APSK_9_10 && fectype <= DVBS2_16K)
|
||||||
return nbch[fectype][mod_cod];
|
return nbch[mod_cod][fectype];
|
||||||
return 64800;
|
return 64800;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user