JasPer is a collection of software (i.e., a library and application programs) for the coding and manipulation of images. This software can handle image data in a variety of formats. One such format supported by JasPer is the JPEG-2000 format defined in ISO/IEC 15444-1. This software was developed by Michael Adams from the Department of Electrical and Computer Engineering at the University of Victoria, Victoria, BC, Canada.
2.0.33 (2021-08-01) =================== * Fix a JP2/JPC decoder bug. * Fix a build issue impacting some platforms. 2.0.32 (2021-04-18) =================== * Test release performed with GitHub Actions. 2.0.29 (2021-04-16) =================== * Loosen some overly tight restrictions on JP2 codestreams, which caused some valid codestreams to be rejected. (#289) 2.0.28 (2021-03-29) =================== * Fix potential null pointer dereference in the JP2/JPC decoder. (#269) * Fix ignoring of JAS_STREAM_FILEOBJ_NOCLOSE at stream close time. (#286) * Fix integral type sizing problem in JP2 codec. (#284) 2.0.27 (2021-03-18) =================== * Check for an image containing no samples in the PGX decoder. (#271, #272, #273, #274, #275, #276, #281) * Check for dimensions of zero in the JPC and JPEG decoders. * Fix an arguably incorrect type for an integer literal in the PGX decoder. (#270) * Check for an invalid component reference in the JP2 decoder. (#269) * Check on integer size in JP2 decoder. (#278) 2.0.26 (2021-03-05) =================== * Fix JP2 decoder bug that can cause a null pointer dereference for some invalid CDEF boxes. (#268) (CVE-2021-3467) 2.0.25 (2021-02-07) =================== * Fix memory-related bugs in the JPEG-2000 codec resulting from attempting to decode invalid code streams. (#264, #265) This fix is associated with CVE-2021-26926 and CVE-2021-26927. * Fix wrong return value under some compilers (#260) * Fix CVE-2021-3272 heap buffer overflow in jp2_decode (#259) 2.0.24 (2021-01-03) =================== * Add JAS_VERSION_MAJOR, JAS_VERSION_MINOR, JAS_VERSION_PATCH for easier access to the JasPer version. * Fixes stack overflow bug on Windows, where variable-length arrays are not available. (#256) 2.0.23 (2020-12-08) =================== * Fix CVE-2020-27828, heap-overflow in cp_create() in jpc_enc.c https://github.com/jasper-software/jasper/issues/252 2.0.22 (2020-10-05) =================== * Update manual * Remove JPEG dummy codec. Jasper needs libjpeg for JPEG support * Fix test suite build failure regarding disabled MIF codec (#249) * Fix OpenGL/glut detection (#247) 2.0.21 (2020-09-20) =================== * Fix ZDI-15-529 https://github.com/jasper-software/jasper/pull/245 * Fix CVE-2018-19541 in decoder https://github.com/jasper-software/jasper/pull/244 2.0.20 (2020-09-05) =================== * Fix several ISO/IEC 15444-4 conformance bugs * Fix new variant of CVE-2016-9398 * Disable the MIF codec by default for security reasons (but it is still included in the library); in a future release, the MIF codec may also be excluded from the library by default * Add documentation for the I/O streams library API 2.0.19 (2020-07-11) =================== * Fix CVE-2018-9154 https://github.com/jasper-software/jasper/issues/215 https://github.com/jasper-software/jasper/issues/166 https://github.com/jasper-software/jasper/issues/175 https://github.com/jasper-maint/jasper/issues/8 * Fix CVE-2018-19541 in encoder https://github.com/jasper-software/jasper/pull/199 https://github.com/jasper-maint/jasper/issues/6 * Fix CVE-2016-9399, CVE-2017-13751 https://github.com/jasper-maint/jasper/issues/1 * Fix CVE-2018-19540 https://github.com/jasper-software/jasper/issues/182 https://github.com/jasper-maint/jasper/issues/22 * Fix CVE-2018-9055 https://github.com/jasper-maint/jasper/issues/9 * Fix CVE-2017-13748 https://github.com/jasper-software/jasper/issues/168 * Fix CVE-2017-5503, CVE-2017-5504, CVE-2017-5505 https://github.com/jasper-maint/jasper/issues/3 https://github.com/jasper-maint/jasper/issues/4 https://github.com/jasper-maint/jasper/issues/5 https://github.com/jasper-software/jasper/issues/88 https://github.com/jasper-software/jasper/issues/89 https://github.com/jasper-software/jasper/issues/90 * Fix CVE-2018-9252 https://github.com/jasper-maint/jasper/issues/16 * Fix CVE-2018-19139 https://github.com/jasper-maint/jasper/issues/14 * Fix CVE-2018-19543, CVE-2017-9782 https://github.com/jasper-maint/jasper/issues/13 https://github.com/jasper-maint/jasper/issues/18 https://github.com/jasper-software/jasper/issues/140 https://github.com/jasper-software/jasper/issues/182 * Fix CVE-2018-20570 https://github.com/jasper-maint/jasper/issues/11 https://github.com/jasper-software/jasper/issues/191 * Fix CVE-2018-20622 https://github.com/jasper-maint/jasper/issues/12 https://github.com/jasper-software/jasper/issues/193 * Fix CVE-2016-9398 https://github.com/jasper-maint/jasper/issues/10 * Fix CVE-2017-14132 https://github.com/jasper-maint/jasper/issues/17 * Fix CVE-2017-5499 https://github.com/jasper-maint/jasper/issues/2 https://github.com/jasper-software/jasper/issues/63 * Fix CVE-2018-18873 https://github.com/jasper-maint/jasper/issues/15 https://github.com/jasper-software/jasper/issues/184 * Fix https://github.com/jasper-software/jasper/issues/207 * Fix https://github.com/jasper-software/jasper/issues/194 part 1 * Fix CVE-2017-13750 https://github.com/jasper-software/jasper/issues/165 https://github.com/jasper-software/jasper/issues/174 * New option -DJAS_ENABLE_HIDDEN=true to not export internal symbols in the public symbol table * Fix various memory leaks * Plenty of code cleanups, and performance improvements * Some macros were changed to inline functions. This has to potential to impact some code that made assumptions about the implementation. Some potentially impacted macros include: jas_matrix_numrows, jas_matrix_numcols jas_matrix_get jas_seq_get, jas_seq_start, jas_seq_end jpc_ms_gettype jas_matrix_set and jas_seq_set is affected differently; the old macro was an actual expression returning the value, while the new function does not. The following macros have been changed, too, but are likely not affected, since they have been an rvalue-expression anyway: JP2_DTYPETOBPC, JP2_BPCTODTYPE JAS_IMAGE_CDT_{SETSGND,GETSGND,SETPREC,GETPREC} jas_image_cmptdtype macros from here jas_matrix_setv, jas_matrix_getvref jas_matrix_bind{row,col} the jpc_fix_ family the JPC_QCX and JPC_COX families
JasPer License Version 2.0 Copyright (c) 2001-2016 Michael David Adams Copyright (c) 1999-2000 Image Power, Inc. Copyright (c) 1999-2000 The University of British Columbia All rights reserved. Permission is hereby granted, free of charge, to any person (the "User") obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 1. The above copyright notices and this permission notice (which includes the disclaimer below) shall be included in all copies or substantial portions of the Software. 2. The name of a copyright holder shall not be used to endorse or promote products derived from the Software without specific prior written permission. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF THE SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. THE SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. NO ASSURANCES ARE PROVIDED BY THE COPYRIGHT HOLDERS THAT THE SOFTWARE DOES NOT INFRINGE THE PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OF ANY OTHER ENTITY. EACH COPYRIGHT HOLDER DISCLAIMS ANY LIABILITY TO THE USER FOR CLAIMS BROUGHT BY ANY OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR OTHERWISE. AS A CONDITION TO EXERCISING THE RIGHTS GRANTED HEREUNDER, EACH USER HEREBY ASSUMES SOLE RESPONSIBILITY TO SECURE ANY OTHER INTELLECTUAL PROPERTY RIGHTS NEEDED, IF ANY. THE SOFTWARE IS NOT FAULT-TOLERANT AND IS NOT INTENDED FOR USE IN MISSION-CRITICAL SYSTEMS, SUCH AS THOSE USED IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL SYSTEMS, DIRECT LIFE SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH THE FAILURE OF THE SOFTWARE OR SYSTEM COULD LEAD DIRECTLY TO DEATH, PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH RISK ACTIVITIES"). THE COPYRIGHT HOLDERS SPECIFICALLY DISCLAIM ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR HIGH RISK ACTIVITIES.
All bug reports should be submitted via the issue-tracking system provided by GitHub. To submit a bug report, go the the following URL and click on the "New issue" button:
https://github.com/jasper-software/jasper/issues
Please do not submit bug reports directly to the author of JasPer via email, as bug reports that are not submitted via the above issue-tracking system on GitHub are easy to be lost.