[FFmpeg-devel] [PATCH] avcodec/pnm: Check that the header is not truncated
Paul B Mahol
onemda at gmail.com
Sat Dec 14 21:58:55 EET 2019
lgtm
On 12/14/19, Michael Niedermayer <michael at niedermayer.cc> wrote:
> Fixes: Ticket8430
>
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
> libavcodec/pnm.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/libavcodec/pnm.c b/libavcodec/pnm.c
> index b4e5d3076b..b5c2881948 100644
> --- a/libavcodec/pnm.c
> +++ b/libavcodec/pnm.c
> @@ -117,6 +117,9 @@ int ff_pnm_decode_header(AVCodecContext *avctx,
> PNMContext * const s)
> return AVERROR_INVALIDDATA;
> }
> }
> + if (!pnm_space(s->bytestream[-1]))
> + return AVERROR_INVALIDDATA;
> +
> /* check that all tags are present */
> if (w <= 0 || h <= 0 || maxval <= 0 || maxval > UINT16_MAX || depth
> <= 0 || tuple_type[0] == '\0' ||
> av_image_check_size(w, h, 0, avctx) || s->bytestream >=
> s->bytestream_end)
> @@ -197,6 +200,10 @@ int ff_pnm_decode_header(AVCodecContext *avctx,
> PNMContext * const s)
> }
> }else
> s->maxval=1;
> +
> + if (!pnm_space(s->bytestream[-1]))
> + return AVERROR_INVALIDDATA;
> +
> /* more check if YUV420 */
> if (av_pix_fmt_desc_get(avctx->pix_fmt)->flags &
> AV_PIX_FMT_FLAG_PLANAR) {
> if ((avctx->width & 1) != 0)
> --
> 2.24.0
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list