ffmpeg/libavcodec/vvc
Frank Plowman 01701bdcd5 lavc/vvc: Prevent OOB access in subpic_tiles
The previous logic relied on the subpicture boundaries coinciding with
the tile boundaries.  Per 6.3.1 of H.266 (V3), vertical subpicture
boundaries are always tile boundaries however the same cannot be said
for horizontal subpicture boundaries.  Furthermore, it is possible to
construct an illegal bitstream where vertical subpicture boundaries are
not coincident with tile boundaries.  In these cases, the condition of
the while loop would never be satisfied resulting in an OOB read on
col_bd/row_bd.

Patch fixes this issue by replacing != with <, thereby not requiring
subpicture boundaries and tile boundaries to be coincident.

Signed-off-by: Frank Plowman <post@frankplowman.com>
2024-08-31 15:05:23 +08:00
..
cabac.c avcodec: use the renamed av_zero_extend 2024-06-13 20:36:09 -03:00
cabac.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
ctu.c avcodec/vvcdec: do not zero frame msf mmi table 2024-08-15 20:33:57 +08:00
ctu.h avcodec/vvcdec: split ctu table to zero init and no zero init parts 2024-08-15 20:19:45 +08:00
data.c avcodec/vvcdec: add vvc inter filters for RPR 2024-05-21 20:20:25 +08:00
data.h avcodec/vvcdec: add vvc inter filters for RPR 2024-05-21 20:20:25 +08:00
dec.c avcodec/vvc_parser: move avctx->has_b_frames initialization to dec 2024-08-15 20:50:24 +08:00
dec.h avcodec/vvcdec: split ctu table to zero init and no zero init parts 2024-08-15 20:19:45 +08:00
dsp.c avcodec/vvcdec: bdof, do not pad sources and gradients to simplify the code 2024-08-31 13:57:51 +08:00
dsp.h avcodec/vvcdec: bdof, do not pad sources and gradients to simplify the code 2024-08-31 13:57:51 +08:00
dsp_template.c avcodec/vvc/dsp: prefix TxType and TxSize with VVC 2024-08-15 20:52:14 +08:00
filter.c avcodec/vvcdec: format, fix indent for vvc_deblock_bs 2024-08-31 14:16:19 +08:00
filter.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
filter_template.c avcodec/vvc: Remove write-only assignments in alf_filter_chroma 2024-07-17 21:23:41 +08:00
inter.c avcodec/vvcdec: split ctu table to zero init and no zero init parts 2024-08-15 20:19:45 +08:00
inter.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
inter_template.c avcodec/vvcdec: bdof, do not pad sources and gradients to simplify the code 2024-08-31 13:57:51 +08:00
intra.c avcodec/vvc/dsp: prefix TxType and TxSize with VVC 2024-08-15 20:52:14 +08:00
intra.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
intra_template.c avcodec: use the renamed av_zero_extend 2024-06-13 20:36:09 -03:00
intra_utils.c avcodec: use the renamed av_zero_extend 2024-06-13 20:36:09 -03:00
itx_1d.c avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
itx_1d.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
Makefile avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
mvs.c avcodec/vvcdec: do not zero frame msf mmi table 2024-08-15 20:33:57 +08:00
mvs.h lavc/vvc: Validate IBC block vector 2024-06-27 20:38:34 +08:00
ps.c lavc/vvc: Prevent OOB access in subpic_tiles 2024-08-31 15:05:23 +08:00
ps.h avcodec/vvcdec: ps, derive virtual boundaries 2024-06-25 19:32:17 +08:00
refs.c avcodec/vvc/refs: Use unsigned mask 2024-07-10 18:10:08 +02:00
refs.h avcodec/vvc: Rename vvc_?foo->foo 2024-04-04 16:45:00 +02:00
thread.c avcodec/vvcdec: move frame tab memset from the main thread to worker threads 2024-08-15 20:33:57 +08:00
thread.h avcodec/vvcdec: move frame tab memset from the main thread to worker threads 2024-08-15 20:33:57 +08:00