Even Rouault
a1d32a596a
opj_t1_encode_cblks: fix UBSAN signed integer overflow
...
Fixes #1053 / CVE-2018-5727
Note: I don't consider this issue to be a security vulnerability, in
practice.
At least with gcc or clang compilers on x86_64 which generate the same
assembly code with or without that fix.
2019-03-29 11:17:39 +01:00
Even Rouault
e1740e7ce7
Revert "[MJ2] Avoid index out of bounds access to pi->include[]"
...
This reverts commit c277159986
.
The commit didn't compile. include_size is not defined in openmj2
2019-03-29 10:40:58 +01:00
Young_X
bd88611ed9
[JP3D] To avoid divisions by zero / undefined behaviour on shift (CVE-2018-14423
...
Signed-off-by: Young_X <YangX92@hotmail.com>
2018-11-28 14:39:15 +08:00
Young_X
c58df14990
[OPENJP2] change the way to compute *p_tx0, *p_tx1, *p_ty0, *p_ty1 in function
...
opj_get_encoding_parameters
Signed-off-by: Young_X <YangX92@hotmail.com>
2018-11-28 14:39:14 +08:00
Young_X
c277159986
[MJ2] Avoid index out of bounds access to pi->include[]
...
Signed-off-by: Young_X <YangX92@hotmail.com>
2018-11-28 14:39:14 +08:00
Young_X
c5bd64ea14
[MJ2] To avoid divisions by zero / undefined behaviour on shift
...
Signed-off-by: Young_X <YangX92@hotmail.com>
2018-11-23 14:47:36 +08:00
ichlubna
c196b23b90
openjp3d: Int overflow fixed ( #1159 )
...
When compressing a lot of slices (starting from 44 FullHD slices with 3 8bit components in our experiments) the rate values are high enough to cause an int overflow that leads to negative lengths and wrong results. The cast happens too late.
2018-11-16 09:40:31 +01:00
Stefan Weil
948332e6ed
Fix some potential overflow issues ( #1161 )
...
* Fix some potential overflow issues
Put sizeof to the beginning of the multiplication to enforce that
size_t instead of smaller integer types is used for the calculation.
This fixes warnings from LGTM:
Multiplication result may overflow 'unsigned int'
before it is converted to 'unsigned long'.
It also allows removing some type casts.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
* Fix code indentation
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-10-31 20:44:30 +01:00
Nikola Forró
943db0f1c2
Fix several memory and resource leaks
...
Signed-off-by: Nikola Forró <nforro@redhat.com>
2018-10-31 16:16:22 +01:00
Even Rouault
cd900d9661
opj_thread_pool_setup(): fix infinite waiting if a thread creation failed
2018-10-18 11:45:45 +02:00
Even Rouault
8fc09e50e5
opj_jp2_apply_pclr(): remove useless assert that can trigger on some files ( fixes #1125 )
2018-09-22 23:47:56 +02:00
Even Rouault
5d94bcd89c
Merge pull request #1136 from reverson/master
...
Cast on uint ceildiv
2018-09-22 22:59:36 +02:00
Even Rouault
b54c06fb35
Merge pull request #1119 from stweil/ssize_t
...
Use local type declaration for POSIX standard type only for MS compiler
2018-09-22 22:59:17 +02:00
Even Rouault
17bbb0e23f
Merge pull request #1128 from stweil/typos
...
Fix some typos in code comments and documentation
2018-09-22 22:55:33 +02:00
Stefan Weil
31a03b390a
openjp2/jp2: Fix two format strings
...
Compiler warnings:
src/lib/openjp2/jp2.c:1008:35: warning:
too many arguments for format [-Wformat-extra-args]
src/lib/openjp2/j2k.c:1928:73: warning:
format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘OPJ_OFF_T {aka long int}’ [-Wformat=]
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-09-05 21:52:43 +02:00
Stefan Weil
3d6ffaf3f3
Fix some typos in code comments and documentation
...
All typos were found by Codespell.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-09-05 20:01:10 +02:00
Robert Everson
0fa7ebe254
Cast on uint ceildiv
2018-08-27 15:28:53 -07:00
Even Rouault
0c913b0aba
Avoid assertion when running opj_j2k_merge_ppt() several time due to e6674f7ed66abdb32a0be5944f618722b6a7b5d5 revert. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2785
2018-06-20 15:12:47 +02:00
Even Rouault
832dfd1866
Revert "Avoid assertion in opj_j2k_merge_ppt() in case premature EOC is encountered in opj_j2k_read_tile_header(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2785 . Credit to OSS Fuzz" ( fixes #1120 )
...
This reverts commit 9906fbf737
.
which broke decoding of images where TNsot == 0
2018-06-20 14:54:20 +02:00
Stefan Weil
4aaf52ec8d
Use local type declaration for POSIX standard type only for MS compiler
...
ssize_t is a POSIX type which is declared in POSIX include files.
Mingw-w64 provides it also for Windows.
Use the local declaration only with MS compilers.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-06-18 14:48:08 +02:00
Stefan Weil
b49fa93aa7
openjp3d: Convert ISO-8859 to UTF-8
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-02-25 18:27:01 +01:00
Even Rouault
90b1bffa7e
Merge pull request #1080 from setharnold/patch-1
...
fix unchecked integer multiplication overflow
2018-02-25 18:21:23 +01:00
Even Rouault
06f7d41243
bench_dwt: fix wrong index in iteration (issue found by Fethi Migaou)
2018-02-18 14:38:16 +01:00
setharnold
24d08ff94a
fix unchecked integer multiplication overflow
...
Hello, this fixes an unchecked integer multiplication overflow. Thanks.
2018-02-14 17:46:38 -08:00
Even Rouault
da5e897232
Avoid out-of-bounds write overflow due to uint32 overflow computation on images with huge dimensions. Credit to Google Autofuzz project for providing test case
2018-02-11 13:31:04 +01:00
Campbell Barton
6941bc67cf
Note that seek uses SEEK_SET behavior.
2018-01-18 15:16:03 +11:00
Even Rouault
07d526e4cb
opj_t2_encode_packet(): disable setting empty packet header bit to 1 when there is an empty packet
...
This effectively reverts commit 2609fb8077
since it has been reported that
such packets cause decoding issues with cinema J2K hardware
decoders: https://groups.google.com/forum/#!topic/openjpeg/M7M_fLX_Bco
2018-01-08 09:38:44 +01:00
Even Rouault
98cfdd3134
opj_j2k_read_cod: remove check for 'No more than one COD marker per tile' ( fixes #1043 )
...
This check was added per daed8cc919
to fix https://github.com/uclouvain/openjpeg/issues/476 , but it does not seem
to be necessary with latest master (issue476.jp2 doesn't cause memory issues),
and breaks reading legit files.
2017-11-30 14:48:34 +01:00
Even Rouault
936910cf7a
Fix typo in comments
2017-11-30 14:26:17 +01:00
Andrew Murray
157a3d8408
Changed cmake version test to allow for cmake 2.8.11.x
2017-11-14 21:45:09 +11:00
Even Rouault
be6ea90e13
opj_j2k_set_threads(): add sanity check to error out if called after opj_read_header()
2017-10-12 01:16:23 +02:00
Even Rouault
b8bf9bf789
Improve doc of opj_codec_set_threads()
2017-10-12 01:05:04 +02:00
Even Rouault
66297f07a4
Unix build: fix regression of 2.3.0 where a shared-only or static-only build lacks the installation target for the library ( #1019 , fixes regression introduced by 3dfc6ca2bc
)
2017-10-09 11:40:43 +02:00
Antonin Descampe
d45ccb048b
Merge pull request #1022 from rouault/partial_component_decoding
...
Add capability to decode only a subset of all components of an image.
2017-09-26 18:30:20 -03:00
Stefan Weil
f92d30f9e7
Add missing newline at end of file
...
This fixes warnings from the clang compiler:
/openjpeg/src/lib/openjp2/sparse_array.h:141:32: warning:
no newline at end of file [-Wnewline-eof]
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-09-21 17:37:07 +02:00
Even Rouault
4c8aba2add
Add assertion
2017-09-21 14:37:01 +02:00
Even Rouault
113e0976e2
Comment dead code (Coverity CID 94681)
2017-09-21 14:14:32 +02:00
Even Rouault
39082fc665
Workaround Coverity CID 113061
2017-09-21 14:13:16 +02:00
Even Rouault
7711307d86
Workaround Coverity CID 169392
2017-09-21 14:10:49 +02:00
Even Rouault
19e157871f
opj_j2k_get_default_thread_count(): validate value of OPJ_NUM_THREADS to fix Coverity 179465 and 179463
2017-09-21 14:06:03 +02:00
Even Rouault
68e596dada
Fix copy&paste error (Coverity CID 169394)
2017-09-21 13:54:14 +02:00
Even Rouault
b8c4b450c4
Use a #define J2K_MAX_POCS 32 to avoid hard-coded constant ( #349 )
2017-09-20 00:55:22 +02:00
Even Rouault
9cba05762d
Avoid index-out-of-bounds access when invoking opj_compress with -n 11 or higher. But not a proper fix itself (refs #493 )
2017-09-20 00:43:54 +02:00
Even Rouault
8df07d5866
Avoid relying on operator precedence (raised by cppcheck)
2017-09-19 18:35:52 +02:00
Even Rouault
c22ea12219
Workaroudn cppcheck (correct) warning about same code in then and else branches
2017-09-19 18:35:31 +02:00
Even Rouault
c84e594cff
Fix badly named variable in function prototype (raised by cppcheck)
2017-09-19 18:35:07 +02:00
Even Rouault
82ab7effe3
Remove redundant test (raised by cppcheck)
2017-09-19 18:34:49 +02:00
Even Rouault
ce8edf9bff
Replace C++ style comments by C ones
2017-09-19 18:25:55 +02:00
Even Rouault
d415723fd9
Replace C++ style comments by C ones
2017-09-19 18:22:07 +02:00
Even Rouault
e17bbde906
opj_set_decoded_components(): add a provision for a apply_color_transforms parameter in case we support it in the future
2017-09-19 17:48:07 +02:00