[FFmpeg-cvslog] avformat/iamf_parse: add missing constrains for num_parameters in audio_element_oub()

James Almer git at videolan.org
Sun Feb 23 17:55:21 EET 2025


ffmpeg | branch: release/7.1 | James Almer <jamrial at gmail.com> | Mon Feb 17 11:41:24 2025 -0300| [b06845c6727a7c4391a7d5f607ae078aa0073c43] | committer: James Almer

avformat/iamf_parse: add missing constrains for num_parameters in audio_element_oub()

Fixes ticket #11475.

Signed-off-by: James Almer <jamrial at gmail.com>
(cherry picked from commit 0526535cd58444dd264e810b2f3348b4d96cff3b)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b06845c6727a7c4391a7d5f607ae078aa0073c43
---

 libavformat/iamf_parse.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/iamf_parse.c b/libavformat/iamf_parse.c
index 1ccb1007e9..7c784c6955 100644
--- a/libavformat/iamf_parse.c
+++ b/libavformat/iamf_parse.c
@@ -728,6 +728,12 @@ static int audio_element_obu(void *s, IAMFContext *c, AVIOContext *pb, int len)
     }
 
     num_parameters = ffio_read_leb(pbc);
+    if (num_parameters > 2 && audio_element_type == 0) {
+        av_log(s, AV_LOG_ERROR, "Audio Element parameter count %u is invalid"
+                                " for Channel representations\n", num_parameters);
+        ret = AVERROR_INVALIDDATA;
+        goto fail;
+    }
     if (num_parameters && audio_element_type != 0) {
         av_log(s, AV_LOG_ERROR, "Audio Element parameter count %u is invalid"
                                 " for Scene representations\n", num_parameters);



More information about the ffmpeg-cvslog mailing list