• Andreas Rheinhardt's avatar
    fftools/ffmpeg_opt: Check attachment filesize · 889ad93c
    Andreas Rheinhardt authored
    The data of an attachment file is put into an AVCodecParameter's
    extradata. The corresponding size field has type int, yet there was no
    check for the size to fit into an int. As a consequence, it was possible
    to create extradata with negative size (by using a big enough max_alloc).
    
    Other errors were also possible: If SIZE_MAX < INT64_MAX (e.g. on 32bit
    systems) then the file size might be truncated before the allocation;
    and avio_read() takes an int, too, so one would not have read as much
    as one desired.
    
    Furthermore, the extradata is now padded as is required.
    Reviewed-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
    Signed-off-by: 's avatarAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
    889ad93c
ffmpeg_opt.c 153 KB