Files
FFmpeg/libavutil/tests
luoye-cpu 182bb23bf8 avutil/hdr_dynamic_metadata: reject oversized HDR10+ counts
av_dynamic_hdr_plus_to_t35() uses caller-supplied counts as loop
bounds over fixed-size arrays. A count slightly above an array
length can make the write loop read out of bounds while the
payload remains well within AV_HDR_PLUS_MAX_PAYLOAD_SIZE.

Reject counts above the array bounds with AVERROR(EINVAL), since
these are caller-supplied fields rather than data parsed off the
wire. The checks are gated like the reads they guard: the
targeted-system-display and mastering-display peak-luminance
counts and the bezier anchors are only read when their respective
flags are set. Rejecting oversized counts also keeps the payload
within AV_HDR_PLUS_MAX_PAYLOAD_SIZE, but the size assertion is not
a substitute for validating the array bounds.

FATE cases cover every rejected count and, for gated counts,
out-of-range values with their flags clear, which must still
serialize.

Signed-off-by: luoye-cpu <3412829159@qq.com>
2026-11-04 19:36:53 +00:00
..
…
…
…
…
…
…
…
…
…
2026-09-12 23:52:20 +00:00
…
…
…
…
…
…
…
…
2026-09-29 22:39:09 +02:00
…
…
…
…
…
…
…
…