[FFmpeg-devel] [PATCH 1/2] avcodec/adpcm_data: extend ff_adpcm_ima_cunning_index_table

Michael Niedermayer michael at niedermayer.cc
Thu May 28 15:12:33 EEST 2020


Fixes: overread by 1
Fixes: 21880/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ADPCM_IMA_CUNNING_fuzzer-5717917221257216.fuzz

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavcodec/adpcm_data.c | 4 ++--
 libavcodec/adpcm_data.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/adpcm_data.c b/libavcodec/adpcm_data.c
index cb9d20948e..6fbde8aece 100644
--- a/libavcodec/adpcm_data.c
+++ b/libavcodec/adpcm_data.c
@@ -178,8 +178,8 @@ const int16_t ff_adpcm_mtaf_stepsize[32][16] = {
        -424, -1273, -2121, -2970, -3819, -4668, -5516, -6365, },
 };
 
-const int8_t ff_adpcm_ima_cunning_index_table[8] = {
-    -1, -1, -1, -1, 1, 2, 3, 4,
+const int8_t ff_adpcm_ima_cunning_index_table[9] = {
+    -1, -1, -1, -1, 1, 2, 3, 4, 5
 };
 
 const int16_t ff_adpcm_ima_cunning_step_table[61] = {
diff --git a/libavcodec/adpcm_data.h b/libavcodec/adpcm_data.h
index fa8a03ee1f..d678bfc71a 100644
--- a/libavcodec/adpcm_data.h
+++ b/libavcodec/adpcm_data.h
@@ -42,7 +42,7 @@ extern const int16_t ff_adpcm_yamaha_indexscale[];
 extern const int8_t  ff_adpcm_yamaha_difflookup[];
 extern const int16_t ff_adpcm_afc_coeffs[2][16];
 extern const int16_t ff_adpcm_mtaf_stepsize[32][16];
-extern const int8_t  ff_adpcm_ima_cunning_index_table[8];
+extern const int8_t  ff_adpcm_ima_cunning_index_table[9];
 extern const int16_t ff_adpcm_ima_cunning_step_table[61];
 
 #endif /* AVCODEC_ADPCM_DATA_H */
-- 
2.17.1



More information about the ffmpeg-devel mailing list