diff mbox

[FFmpeg-devel,6/9] pvfdec: prevent overflow during block alignment calculation

Message ID add30cd0-1d71-483f-e221-f25dc72edfe2@googlemail.com
State Accepted
Commit 169c1cfa928040b83f2ac8386333ec5e5cff3df7
Headers show

Commit Message

Andreas Cadhalpun Jan. 26, 2017, 1:13 a.m. UTC
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
---
 libavformat/pvfdec.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Paul B Mahol Jan. 26, 2017, 8:37 a.m. UTC | #1
On 1/26/17, Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> wrote:
> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
> ---
>  libavformat/pvfdec.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>

lgtm
Andreas Cadhalpun Jan. 29, 2017, 12:24 a.m. UTC | #2
On 26.01.2017 09:37, Paul B Mahol wrote:
> On 1/26/17, Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> wrote:
>> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
>> ---
>>  libavformat/pvfdec.c | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
> 
> lgtm

Pushed.

Best regards,
Andreas
diff mbox

Patch

diff --git a/libavformat/pvfdec.c b/libavformat/pvfdec.c
index b9f6d4f2c2..c6652b9b43 100644
--- a/libavformat/pvfdec.c
+++ b/libavformat/pvfdec.c
@@ -19,6 +19,7 @@ 
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavcodec/internal.h"
 #include "avformat.h"
 #include "internal.h"
 #include "pcm.h"
@@ -44,7 +45,8 @@  static int pvf_read_header(AVFormatContext *s)
                &bps) != 3)
         return AVERROR_INVALIDDATA;
 
-    if (channels <= 0 || bps <= 0 || sample_rate <= 0)
+    if (channels <= 0 || channels > FF_SANE_NB_CHANNELS ||
+        bps <= 0 || bps > INT_MAX / FF_SANE_NB_CHANNELS || sample_rate <= 0)
         return AVERROR_INVALIDDATA;
 
     st = avformat_new_stream(s, NULL);