On 11/29/2024 2:17 PM, Michael Niedermayer wrote:
ambisonics mode > 1 does not initialize any layer but layer 0
is unconditionally dereferenced

Fixes: poc-2024-11
Fixes: null pointer dereference
Found-by: 苏童 <220235...@seu.edu.cn>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
---
  libavformat/iamf_parse.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/iamf_parse.c b/libavformat/iamf_parse.c
index 4aed894796f..1e1de167e6d 100644
--- a/libavformat/iamf_parse.c
+++ b/libavformat/iamf_parse.c
@@ -413,7 +413,7 @@ static int ambisonics_config(void *s, AVIOContext *pb,
ambisonics_mode = ffio_read_leb(pb);
      if (ambisonics_mode > 1)
-        return 0;
+        return AVERROR_INVALIDDATA;
output_channel_count = avio_r8(pb); // C
      substream_count = avio_r8(pb);  // N

Ok, but change the commit subject to something like "reject ambisonics mode > 1" or "abort on ambisonics mode > 1".

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to