Browse Source

avformat/rmdec: check against mismatching int4 interleaver parameters which would leave uninitialized holes

Fixes use of uninitialized memory
Fixes: msan_uninit-mem_7f9cf38857c0_4582_coop.ra
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.2-rc1
Michael Niedermayer 12 years ago
parent
commit
4e394a98f2
1 changed files with 4 additions and 0 deletions
  1. +4
    -0
      libavformat/rmdec.c

+ 4
- 0
libavformat/rmdec.c View File

@@ -271,6 +271,10 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
sub_packet_h <= 1 ||
ast->coded_framesize * sub_packet_h > (2 + (sub_packet_h & 1)) * ast->audio_framesize)
return AVERROR_INVALIDDATA;
if (ast->coded_framesize * sub_packet_h != 2*ast->audio_framesize) {
avpriv_request_sample(s, "mismatching interleaver parameters");
return AVERROR_INVALIDDATA;
}
break;
case DEINT_ID_GENR:
if (ast->sub_packet_size <= 0 ||


Loading…
Cancel
Save