Michael Niedermayer
bdea5aec2d
avcodec/jpeg2000dec: Handle M_b = -1
...
Fixes: runtime error: shift exponent -1 is negative
Fixes: runtime error: shift exponent 32 is too large for 32-bit type 'int'
Fixes: 471846062/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_DEC_fuzzer-5835290976780288
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2026-03-02 18:12:40 +01:00
Michael Niedermayer
99515a3342
avcodec/jpeg2000htdec: Check Lcup and Lref
...
Fixes: use of uninitialized memory
Fixes: 482494999/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_DEC_fuzzer-6467586186608640
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2026-02-22 02:31:06 +00:00
Michael Niedermayer
e1472a4e0c
avcodec/jpeg2000dec: allow M_b == 31
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2026-02-03 12:39:32 +01:00
Michael Niedermayer
224b3ff82a
avcodec/jpeg2000htdec: Check pLSB
...
Fixes: negative shift and other undefined shifts
Fixes: 462335934/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_DEC_fuzzer-4538493775970304
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2025-12-27 21:42:20 +00:00
Osamu Watanabe and Pierre-Anthony Lemieux
c893dcce31
avcodec/jpeg2000: Fix undefined behaviour in left shift operations
...
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2024-12-07 15:41:30 -08:00
Osamu Watanabe and Pierre-Anthony Lemieux
82467b635e
avcodec/jpeg2000: Improve FF_DWT97_INT to pass ISO/IEC 15444-4 conformance tests
...
Fixes https://trac.ffmpeg.org/ticket/10123
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2024-11-08 08:30:07 -08:00
Osamu Watanabe and Pierre-Anthony Lemieux
d88a988d3d
avcodec/jpeg2000dec: Fix HT decoding
...
Fixes incorrect handling of MAGB_P value in Ccap15.
Fixes bugs in HT block decoding.
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2024-08-10 09:22:51 -07:00
Osamu Watanabe and Pierre-Anthony Lemieux
48b14732d8
avcodec/jpeg2000dec: Add support for placeholder passes
...
See Rec. ITU-T T.814 | ISO/IEC 15444-15, Annex B.
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2024-08-10 09:22:44 -07:00
Pierre-Anthony Lemieux and Osamu Watanabe
249c66bb22
avcodec/jpeg2000dec: fix HT block decoder
...
Addresses https://trac.ffmpeg.org/ticket/10905
Co-authored-by: Osamu Watanabe <owatanab@es.takushoku-u.ac.jp >
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2024-05-30 21:30:52 -07:00
Michael Niedermayer
7b7eea8e63
avcodec/jpeg2000htdec: warn about non zero roi shift
...
Suggested-by: Tomas Härdin <git@haerdin.se >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 18:17:27 +02:00
Andreas Rheinhardt
790f793844
avutil/common: Don't auto-include mem.h
...
There are lots of files that don't need it: The number of object
files that actually need it went down from 2011 to 884 here.
Keep it for external users in order to not cause breakages.
Also improve the other headers a bit while just at it.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-03-31 00:08:43 +01:00
Pierre-Anthony Lemieux and Michael Niedermayer
a1384b4e86
avcodec/jpeg2000htdec: check if block decoding will exceed internal precision
...
Intended to replace https://patchwork.ffmpeg.org/project/ffmpeg/patch/20230802000135.26482-3-michael@niedermayer.cc/
with a more accurate block decoding magnitude bound.
Fixes: 62433/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5828618092937216
Fixes: 58299/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5828618092937216
Previous-version-reviewed-by: Tomas Härdin <git@haerdin.se >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2023-12-14 23:53:10 +01:00
Michael Niedermayer
9549712056
avcodec/jpeg2000htdec: Consolidate jpeg2000 spec bits in jpeg2000_bitbuf_refill_backwards()
...
Code should make more sense now
Fixes: out of array access
Fixes: 58299/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-6627570448465920
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Pierre-Anthony Lemieux <pal@sandflow.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2023-08-05 19:52:00 +02:00
Michael Niedermayer
044ab532fc
avcodec/jpeg2000htdec: Avoid freeing uninitialized pointers in ff_jpeg2000_decode_htj2k()
...
Fixes: freeing of uninitialized pointers
Fixes: part of 58299
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Tomas Härdin <git@haerdin.se >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2023-08-04 00:06:26 +02:00
caleb and Michael Niedermayer
043a9d09cb
avcodec/jpeg2000htdec: Check for invalid magref length.
...
Fixes: shift exponent -8 is negative
Fixes: 58328/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-6007789196804096
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2023-06-23 02:06:45 +02:00
caleb and Pierre-Anthony Lemieux
b9c42cdf8d
avcodec/jpeg2000dec: add support for HTJ2K block decoding
...
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com >
2023-04-22 15:57:40 -07:00