diff options
author | Johann Friedrichs <johann.friedrichs@web.de> | 2019-11-21 16:19:05 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-01-08 11:46:34 +0100 |
commit | 000e6751825d756d7eb3fb4028a41add595204d9 (patch) | |
tree | ef956a6c3c5d1b96eb7fa8d07e458af1f387fd8e /drivers/media | |
parent | media: au8522: improve formatting (diff) | |
download | linux-000e6751825d756d7eb3fb4028a41add595204d9.tar.xz linux-000e6751825d756d7eb3fb4028a41add595204d9.zip |
media: dvb-core: Fix receiving invalid EIT-sections
Resetting buf without resetting pusi_seen at a channel-switch can lead
to copying the rest of a section to the start of buf, but treating it as
a complete section, when the next pusi arrives.
EIT-sections starting without valid header were randomly received during
an EIT-scan on a transponder.
Signed-off-by: Johann Friedrichs <johann.friedrichs@web.de>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/dvb-core/dvb_demux.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/dvb-core/dvb_demux.c b/drivers/media/dvb-core/dvb_demux.c index 39a2c6ccf31d..5fde1d38b3e3 100644 --- a/drivers/media/dvb-core/dvb_demux.c +++ b/drivers/media/dvb-core/dvb_demux.c @@ -971,6 +971,7 @@ static int dmx_section_feed_start_filtering(struct dmx_section_feed *feed) dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base; dvbdmxfeed->feed.sec.secbufp = 0; dvbdmxfeed->feed.sec.seclen = 0; + dvbdmxfeed->pusi_seen = false; if (!dvbdmx->start_feed) { mutex_unlock(&dvbdmx->mutex); |