Browse Source

omadec: Properly check lengths before incrementing the position

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
tags/n2.1
Martin Storsjö 12 years ago
parent
commit
342c43d154
1 changed files with 5 additions and 1 deletions
  1. +5
    -1
      libavformat/omadec.c

+ 5
- 1
libavformat/omadec.c View File

@@ -172,7 +172,11 @@ static int nprobe(AVFormatContext *s, uint8_t *enc_header, unsigned size,
taglen = AV_RB32(&enc_header[pos + 32]);
datalen = AV_RB32(&enc_header[pos + 36]) >> 4;

pos += 44 + taglen;
pos += 44;
if (size - pos < taglen)
return -1;

pos += taglen;

if (datalen << 4 > size - pos)
return -1;


Loading…
Cancel
Save