ffmpeg/libavformat
Michael Niedermayer 30aea1efec avformat/ffmetadec: finalize AVBPrint on errors
Fixes: memleak
Fixes: 26450/clusterfuzz-testcase-minimized-ffmpeg_dem_FFMETADATA_fuzzer-6249850443923456

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit a927128617)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-09-10 16:04:26 +02:00
..
tests
.gitignore
3dostr.c
4xm.c avformat/4xm: Check that a video stream was created before returning packets for it 2020-07-05 01:47:56 +02:00
Makefile
a64.c
aacdec.c avformat/aacdec: resync to the next adts frame on invalid data instead of aborting 2019-07-20 21:47:55 -03:00
aadec.c avformat/aadec: Check toc_size to contain the minimum to demuxer uses 2020-05-21 15:32:28 +02:00
ac3dec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
acm.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
act.c
adp.c
ads.c
adtsenc.c
adxdec.c
aea.c
afc.c
aiff.h
aiffdec.c
aiffenc.c
aixdec.c
allformats.c
amr.c libavformat/amr.c: Check return value from avio_read() 2020-05-19 17:17:36 +02:00
anm.c
apc.c
ape.c
apetag.c
apetag.h
apngdec.c
apngenc.c avformat/apngenc: Add deinit function 2020-07-01 21:31:59 +02:00
aptxdec.c
aqtitledec.c avformat/aqtitledec: Fix memleak upon read header failure 2020-07-01 21:33:39 +02:00
asf.c
asf.h
asfcrypt.c
asfcrypt.h
asfdec_f.c avformat/asfdec_f: Check name_len for overflow 2021-09-10 16:04:26 +02:00
asfdec_o.c
asfenc.c
assdec.c avformat/assdec: Fix memleak upon read header failure 2020-07-01 21:33:54 +02:00
assenc.c
ast.c
ast.h
astdec.c
astenc.c
async.c
au.c
audiointerleave.c
audiointerleave.h
av1.c avformat/av1: Fix leak of dynamic buffer in case of parsing failure 2019-12-06 21:33:47 -03:00
av1.h avformat/av1: combine high_bitdepth and twelve_bit into a single bitdepth value 2019-08-05 15:02:45 -03:00
avc.c avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak 2020-07-01 21:39:54 +02:00
avc.h avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak 2020-07-01 21:39:54 +02:00
avformat.h avformat: Don't suggest deprecated function 2019-07-13 14:07:59 -03:00
avformatres.rc
avi.h
avidec.c avformat/avidec: Fix io_fsize overflow 2020-10-05 21:28:08 +02:00
avienc.c libavformat/avienc: Check bits per sample for PAL8 2020-05-19 17:17:35 +02:00
avio.c
avio.h
avio_internal.h
aviobuf.c avformat/aviobuf: Don't check for overflow after it happened 2020-07-01 21:32:50 +02:00
avisynth.c
avlanguage.c
avlanguage.h
avr.c
avs.c
bethsoftvid.c avformat/bethsoftvid: Fix potential memleak upon reallocation failure 2020-05-20 01:09:57 +02:00
bfi.c
bink.c
bintext.c avformat/bintext: avoid division by zero 2020-01-19 13:47:21 +01:00
bit.c
bluray.c
bmv.c
boadec.c avformat/boadec: Check that channels and block_align are set 2021-09-10 16:04:26 +02:00
brstm.c
c93.c
cache.c
caf.c
caf.h
cafdec.c
cafenc.c
cavsvideodec.c
cdg.c avformat/cdg: Fix integer overflow in duration computation 2020-10-05 21:28:08 +02:00
cdxl.c avformat/cdxl: Fix integer overflow in intermediate 2019-12-31 19:51:55 +01:00
chromaprint.c
cinedec.c
codec2.c
concat.c
concatdec.c
crcenc.c
crypto.c
cutils.c
dash.c
dash.h
dashdec.c avformat/dashdec: Don't allocate and leak strings that are never used 2020-03-30 08:03:58 +02:00
dashenc.c avformat/dashenc: Fix leak of AVFormatContext on error 2020-05-20 02:36:02 +02:00
data_uri.c
dauddec.c
daudenc.c
davs2.c
dcstr.c
dfa.c
dhav.c
diracdec.c
dnxhddec.c
dsfdec.c
dsicin.c
dss.c
dtsdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
dtshddec.c
dump.c lavf/dump: More disposition flag dump 2019-07-03 10:35:16 +08:00
dv.c
dv.h
dvbsub.c
dvbtxt.c
dvenc.c
dxa.c avformat/dxa: Use av_rescale() for duration computation 2021-09-10 16:04:26 +02:00
eacdata.c
electronicarts.c avformat/electronicarts: Check if there are any streams 2020-10-05 21:28:08 +02:00
epafdec.c
ffmeta.h
ffmetadec.c avformat/ffmetadec: finalize AVBPrint on errors 2021-09-10 16:04:26 +02:00
ffmetaenc.c
fifo.c
fifo_test.c
file.c
file_open.c
filmstripdec.c
filmstripenc.c
fitsdec.c avformat/fitsdec: Fix potential leak of string in AVBPrint 2020-05-20 02:34:46 +02:00
fitsenc.c
flac_picture.c
flac_picture.h
flacdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
flacenc.c
flacenc.h
flacenc_header.c
flic.c
flv.h
flvdec.c avformat/flvdec: Check for EOF in amf_parse_object() 2021-09-10 16:04:26 +02:00
flvenc.c
format.c
framecrcenc.c
framehash.c
frmdec.c
fsb.c
ftp.c
g722.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
g723_1.c
g726.c
g729dec.c
gdv.c
genh.c
gif.c
gifdec.c
golomb_tab.c
gopher.c
gsmdec.c
gxf.c
gxf.h
gxfenc.c
h261dec.c
h263dec.c
h264dec.c
hashenc.c
hcom.c
hdsenc.c
hevc.c
hevc.h
hevcdec.c
hls.c avformat/hls: Pass a copy of the URL for probing 2020-07-05 01:47:57 +02:00
hlsenc.c avformat/hlsenc: use old way for fragment mp4 in HLS PUT method 2019-07-15 21:56:04 +08:00
hlsplaylist.c
hlsplaylist.h
hlsproto.c
hnm.c avformat/hnm: Check for extradata allocation failure 2020-07-02 01:25:24 +02:00
http.c avformat/http: change error message from numeric code to string 2019-07-11 09:35:31 +08:00
http.h
httpauth.c
httpauth.h
icecast.c
icodec.c avformat/icodec: Change order of operations to avoid NULL dereference 2021-09-10 16:04:26 +02:00
icoenc.c
id3v1.c
id3v1.h
id3v2.c avformat/id3v2: Fix double-free on error 2019-12-31 19:51:57 +01:00
id3v2.h
id3v2enc.c
idcin.c
idroqdec.c
idroqenc.c
iff.c avformat/iff: Check data_size not overflowing int64 2021-09-10 16:04:26 +02:00
ifv.c avformat/ifv: Check for EOF in read_index() 2019-07-19 01:23:23 +02:00
ilbc.c
img2.c
img2.h
img2_alias_pix.c
img2_brender_pix.c
img2dec.c
img2enc.c
ingenientdec.c
internal.h lavf/avio: remove ffio_open2_wrapper function 2019-07-21 10:05:40 +08:00
ip.c
ip.h
ipmovie.c
ircam.c
ircam.h
ircamdec.c
ircamenc.c
isom.c avcodec/magicyuv: add support for recently added YUV444P10 2019-07-11 16:53:09 +02:00
isom.h
iss.c
iv8.c
ivfdec.c
ivfenc.c
jacosubdec.c avformat/jacosubdec: Fix memleak upon read header failure 2020-07-01 21:33:59 +02:00
jacosubenc.c
jvdec.c
latmenc.c
libavformat.v
libgme.c
libmodplug.c
libopenmpt.c
librtmp.c
libsmbclient.c
libsrt.c
libssh.c
lmlm4.c
loasdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
log2_tab.c
lrc.c
lrc.h
lrcdec.c avformat/lrcdec: Fix memleak upon read header failure 2020-07-01 21:34:43 +02:00
lrcenc.c
lvfdec.c
lxfdec.c
m4vdec.c
matroska.c
matroska.h
matroskadec.c avformat/matroskadec: Fix memleaks in WebM DASH manifest demuxer 2020-07-01 21:33:10 +02:00
matroskaenc.c avformat/matroskaenc: Don't use NULL for %s format string 2020-07-01 21:38:47 +02:00
md5proto.c
metadata.c
metadata.h
mgsts.c
microdvddec.c avformat/microdvddec: skip malformed lines without frame number. 2020-07-05 01:47:56 +02:00
microdvdenc.c
mj2kdec.c
mkvtimestamp_v2.c
mlpdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
mlvdec.c avformat/mlvdec: fail reading a packet with 0 streams 2020-07-05 01:47:56 +02:00
mm.c avformat/mm: Check for existence of audio stream 2020-07-10 21:31:36 +02:00
mmf.c
mms.c
mms.h
mmsh.c
mmst.c
mov.c avformat/mov: Check comp_brand_size 2020-10-05 21:28:08 +02:00
mov_chan.c
mov_chan.h
mov_esds.c
movenc.c avformat/movenc: Fix undefined shift 2020-05-20 03:33:45 +02:00
movenc.h
movenccenc.c
movenccenc.h
movenchint.c
mp3dec.c avformat/mp3dec: Check that the frame fits within the probe buffer 2019-12-31 19:51:56 +01:00
mp3enc.c
mpc.c avformat/mpc: deallocate frames array on errors 2019-08-04 21:16:28 +02:00
mpc8.c
mpeg.c avformat/mpeg: Check avio_read() return value in get_pts() 2020-10-05 21:28:08 +02:00
mpeg.h
mpegenc.c avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE 2020-05-21 15:32:28 +02:00
mpegts.c avformat/mpegts: Shuffle avio_seek 2020-05-19 17:17:36 +02:00
mpegts.h
mpegtsenc.c
mpegvideodec.c
mpjpeg.c
mpjpegdec.c
mpl2dec.c avformat/mpl2dec: Fix integer overflow with duration 2020-07-05 01:47:56 +02:00
mpsubdec.c avformat/mpsubdec: Fix memleak upon read header failure 2020-07-01 21:36:38 +02:00
msf.c
msnwc_tcp.c
mtaf.c
mtv.c
musx.c
mux.c avformat/mux: correct error msg for when BSF filtering fails 2019-07-20 15:41:28 +05:30
mvdec.c avformat/mvdec: Fix integer overflow with billions of channels 2020-07-05 01:47:56 +02:00
mvi.c
mxf.c
mxf.h
mxfdec.c avformat/mxfdec: free duplicated utf16 strings 2020-07-05 01:47:56 +02:00
mxfenc.c avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak 2020-07-01 21:39:54 +02:00
mxg.c
ncdec.c
network.c
network.h
nistspheredec.c
nspdec.c
nsvdec.c avformat/nsvdec: Fix memleaks on errors while reading the header 2020-05-19 17:17:36 +02:00
nullenc.c
nut.c
nut.h
nutdec.c
nutenc.c avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags() 2019-12-31 19:51:56 +01:00
nuv.c
oggdec.c avformat/oggdec: Check for EOF after page header 2020-05-19 17:17:36 +02:00
oggdec.h
oggenc.c avformat/oggenc: Don't free AVStream's priv_data, fix memleak 2020-05-20 02:03:53 +02:00
oggparsecelt.c
oggparsedaala.c
oggparsedirac.c
oggparseflac.c
oggparseogm.c
oggparseopus.c
oggparseskeleton.c
oggparsespeex.c
oggparsetheora.c
oggparsevorbis.c avformat/oggparsevorbis: Error out on double init of vp 2020-07-05 01:47:56 +02:00
oggparsevp8.c
oma.c
oma.h
omadec.c avformat/omadec: Fix memleaks upon read_header failure 2020-07-01 21:33:18 +02:00
omaenc.c
options.c
options_table.h
os_support.c
os_support.h
paf.c
pcm.c
pcm.h
pcmdec.c
pcmenc.c
pjsdec.c avformat/pjsdec: Fix memleak upon read header failure 2020-07-01 21:36:51 +02:00
pmpdec.c
prompeg.c
protocols.c
psxstr.c
pva.c
pvfdec.c
qcp.c
qtpalette.c
qtpalette.h
r3d.c
rawdec.c avformat/rawdec: fix identifier names 2020-07-05 01:47:56 +02:00
rawdec.h avformat/rawdec: fix identifier names 2020-07-05 01:47:56 +02:00
rawenc.c lavf/rawenc: Only accept the appropriate stream type for raw muxers. 2019-09-06 16:25:05 -03:00
rawenc.h
rawutils.c
rawvideodec.c
rdt.c
rdt.h
realtextdec.c avformat/realtextdec: free queue on error 2019-09-04 20:26:35 +02:00
redspark.c
replaygain.c
replaygain.h
riff.c avformat/avidec: add support for recognizing HEVC fourcc when demuxing 2019-09-02 22:06:00 +02:00
riff.h avformat/avidec: add support for recognizing HEVC fourcc when demuxing 2019-09-02 22:06:00 +02:00
riffdec.c
riffenc.c
rl2.c
rm.c
rm.h
rmdec.c avformat/rmdec: sanity check coded_framesize 2021-09-10 16:04:26 +02:00
rmenc.c
rmsipr.c
rmsipr.h
rpl.c avformat/rpl: Replace strcpy with av_strlcpy 2019-07-10 12:54:57 +02:00
rsd.c
rso.c
rso.h
rsodec.c
rsoenc.c
rtmp.h
rtmpcrypt.c
rtmpcrypt.h
rtmpdh.c
rtmpdh.h
rtmpdigest.c
rtmphttp.c
rtmppkt.c
rtmppkt.h
rtmpproto.c
rtp.c
rtp.h
rtpdec.c
rtpdec.h
rtpdec_ac3.c
rtpdec_amr.c
rtpdec_asf.c
rtpdec_dv.c
rtpdec_formats.h
rtpdec_g726.c
rtpdec_h261.c
rtpdec_h263.c
rtpdec_h263_rfc2190.c
rtpdec_h264.c
rtpdec_hevc.c
rtpdec_ilbc.c
rtpdec_jpeg.c
rtpdec_latm.c
rtpdec_mpa_robust.c
rtpdec_mpeg4.c
rtpdec_mpeg12.c
rtpdec_mpegts.c
rtpdec_qcelp.c
rtpdec_qdm2.c
rtpdec_qt.c
rtpdec_rfc4175.c
rtpdec_svq3.c
rtpdec_vc2hq.c
rtpdec_vp8.c
rtpdec_vp9.c
rtpdec_xiph.c
rtpenc.c
rtpenc.h
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c
rtpenc_chain.h
rtpenc_h261.c
rtpenc_h263.c
rtpenc_h263_rfc2190.c
rtpenc_h264_hevc.c
rtpenc_jpeg.c
rtpenc_latm.c
rtpenc_mpegts.c
rtpenc_mpv.c
rtpenc_vc2hq.c
rtpenc_vp8.c
rtpenc_vp9.c
rtpenc_xiph.c
rtpproto.c
rtpproto.h
rtsp.c Revert "avformat/rtp: Pass sources and block filter addresses via sdp file for rtp" 2020-04-05 11:59:49 +02:00
rtsp.h
rtspcodes.h
rtspdec.c
rtspenc.c
s337m.c
samidec.c avformat/samidec: Fix memleak upon read header failure 2020-07-01 21:37:08 +02:00
sapdec.c
sapenc.c
sauce.c
sauce.h
sbcdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
sbgdec.c
sccdec.c avformat/sccdec: Fix memleak upon read header failure 2020-07-01 21:37:21 +02:00
sccenc.c
sctp.c
sdp.c avformat/sdp: Fix potential write beyond end of buffer 2020-07-10 21:31:39 +02:00
sdr2.c
sdsdec.c
sdxdec.c
segafilm.c
segafilmenc.c avformat/segafilmenc: Fix undefined left shift of 1 by 31 places 2020-05-20 02:44:52 +02:00
segment.c
serdec.c
shortendec.c avformat/shortendec: Check k in probe 2019-12-31 19:51:56 +01:00
sierravmd.c
siff.c avformat/siff: Reject audio packets without audio stream 2020-10-05 21:28:08 +02:00
smacker.c
smjpeg.c
smjpeg.h
smjpegdec.c avformat/smjpegdec: Check the existence of referred streams 2020-07-07 19:28:29 +02:00
smjpegenc.c
smoothstreamingenc.c avformat/smoothstreaming: Fix memleaks on errors 2020-05-20 01:07:22 +02:00
smush.c
sol.c
sox.h
soxdec.c
soxenc.c
spdif.c
spdif.h
spdifdec.c
spdifenc.c
srtdec.c avformat/srtdec: Fix memleak upon read header failure 2020-07-01 21:37:34 +02:00
srtenc.c
srtp.c
srtp.h
srtpproto.c
stldec.c avformat/stldec: Fix memleak upon read header failure 2020-07-01 21:37:54 +02:00
subfile.c libavformat/subfile: Improve AVSEEK_SIZE/SEEK_END seeking 2019-07-01 12:12:04 +02:00
subtitles.c avformat/subtitles: Don't increment packet counter prematurely 2020-05-20 01:10:43 +02:00
subtitles.h
subviewer1dec.c avformat/subviewer1dec: Fix memleak upon read header failure 2020-07-01 21:38:19 +02:00
subviewerdec.c avformat/subviewerdec: fail on AV_NOPTS_VALUE 2021-09-10 16:04:26 +02:00
supdec.c
supenc.c
svag.c
swf.c
swf.h
swfdec.c
swfenc.c avformat/swfenc: Fix integer overflow in frame rate handling 2020-05-21 15:32:28 +02:00
takdec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
tcp.c
tedcaptionsdec.c avformat/tedcaptionsdec: Fix memleak upon read header failure 2020-07-01 21:38:30 +02:00
tee.c
tee_common.c
tee_common.h
teeproto.c
thp.c avformat/thp: Check fps 2020-07-05 01:47:56 +02:00
tiertexseq.c
tls.c
tls.h
tls_gnutls.c lavf/tls_gnutls: check for interrupt inside handshake loop 2020-09-04 21:34:37 +03:00
tls_libtls.c
tls_mbedtls.c
tls_openssl.c
tls_schannel.c avformat/tls_schannel: immediately return decrypted data if available 2020-09-04 19:04:55 +03:00
tls_securetransport.c
tmv.c
tta.c
ttaenc.c
tty.c
txd.c
ty.c
udp.c
uncodedframecrcenc.c
unix.c
url.c
url.h
urldecode.c
urldecode.h
utils.c avformat/utils: reorder duration computation to avoid overflow 2020-07-05 01:47:57 +02:00
v210.c
vag.c
vapoursynth.c
vc1dec.c
vc1test.c
vc1testenc.c
version.h Bump minor versions to separate 4.2 from master 2019-07-21 18:36:18 +02:00
vividas.c avformat/vividas: Check for EOF in first loop in track_header() 2021-09-10 16:04:26 +02:00
vivo.c
voc.c
voc.h
voc_packet.c
vocdec.c
vocenc.c
vorbiscomment.c
vorbiscomment.h
vpcc.c
vpcc.h
vpk.c
vplayerdec.c avformat/vplayerdec: Fix memleak upon read header failure 2020-07-01 21:38:35 +02:00
vqf.c avformat/vqf: Check header_size 2019-06-29 19:22:19 +02:00
w64.c
w64.h
wavdec.c lafv/wavdec: Fail bext parsing on incomplete reads 2019-08-04 21:16:28 +02:00
wavenc.c
wc3movie.c avformat/wc3movie: Cleanup on wc3_read_header() failure 2020-10-05 21:28:08 +02:00
webm_chunk.c avformat/webm_chunk: Close IO if writing header fails 2020-05-20 04:15:00 +02:00
webmdashenc.c avformat/webmdashenc: Check codec types 2020-05-20 01:22:38 +02:00
webpenc.c
webvttdec.c avformat/webvttdec: Fix memleak upon read header failure 2020-07-01 21:38:41 +02:00
webvttenc.c
westwood_aud.c
westwood_vqa.c
wsddec.c avformat/rawdec: Make the raw packet size configurable 2019-07-17 23:18:50 +02:00
wtv.h
wtv_common.c
wtvdec.c avformat/wtvdec: Fix memleak when reading header fails 2020-05-20 02:36:58 +02:00
wtvenc.c
wv.c
wv.h
wvdec.c
wvedec.c
wvenc.c
xa.c
xmv.c avformat/xmv: Make bitrate 64bit 2019-07-14 22:17:43 +02:00
xvag.c
xwma.c
yop.c
yuv4mpeg.h
yuv4mpegdec.c
yuv4mpegenc.c