Compare commits

..

No commits in common. "c8s" and "c10s" have entirely different histories.
c8s ... c10s

11 changed files with 335 additions and 142 deletions

29
.gitignore vendored
View File

@ -1,2 +1,29 @@
SOURCES/jasper-2.0.14.tar.gz
clog
geojasper_src.zip
jasper-1.701.0.zip
jasper-1.900.0.zip
jasper-1.900.1.zip
/jasper-1.900.2.tar.gz
/jasper-1.900.3.tar.gz
/jasper-1.900.13.tar.gz
/jasper-1.900.28.tar.gz
/jasper-1.900.30.tar.gz
/jasper-2.0.2.tar.gz
/jasper-2.0.10.tar.gz
/jasper-2.0.12.tar.gz
/jasper-2.0.14.tar.gz
/jasper-version-2.0.16.tar.gz
/version-2.0.17.tar.gz
/version-2.0.22.tar.gz
/version-2.0.24.tar.gz
/version-2.0.25.tar.gz
/version-2.0.26.tar.gz
/version-2.0.27.tar.gz
/version-2.0.28.tar.gz
/version-2.0.32.tar.gz
/version-2.0.33.tar.gz
/jasper-version-3.0.0.tar.gz
/version-3.0.2.tar.gz
/version-3.0.5.tar.gz
/version-3.0.6.tar.gz
/version-4.1.0.tar.gz

View File

@ -1,6 +1,6 @@
--- !Policy
product_versions:
- rhel-8
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: desktop-qe.desktop-ci.tier1-gating.functional}

View File

@ -1,13 +0,0 @@
diff -urNp old/src/libjasper/jpc/jpc_cs.c new/src/libjasper/jpc/jpc_cs.c
--- old/src/libjasper/jpc/jpc_cs.c 2018-05-30 09:01:54.160406645 +0200
+++ new/src/libjasper/jpc/jpc_cs.c 2018-05-30 09:05:24.527094308 +0200
@@ -795,6 +795,9 @@ static int jpc_cox_getcompparms(jpc_ms_t
if (compparms->numdlvls > 32) {
goto error;
}
+ if (compparms->qmfbid != JPC_COX_INS &&
+ compparms->qmfbid != JPC_COX_RFT)
+ goto error;
compparms->numrlvls = compparms->numdlvls + 1;
if (compparms->numrlvls > JPC_MAXRLVLS) {
goto error;

View File

@ -1,14 +0,0 @@
diff -urNp a/src/libjasper/jpc/jpc_enc.c b/src/libjasper/jpc/jpc_enc.c
--- a/src/libjasper/jpc/jpc_enc.c 2021-06-01 14:07:34.988061153 +0200
+++ b/src/libjasper/jpc/jpc_enc.c 2021-06-01 14:08:32.100584582 +0200
@@ -508,6 +508,10 @@ static jpc_enc_cp_t *cp_create(const cha
break;
case OPT_MAXRLVLS:
tccp->maxrlvls = atoi(jas_tvparser_getval(tvp));
+ if(tccp->maxrlvls > JPC_MAXRLVLS) {
+ jas_eprintf("invalid number of resolution levels upper than %d\n",JPC_MAXRLVLS);
+ goto error;
+ }
break;
case OPT_SOP:
cp->tcp.csty |= JPC_COD_SOP;

View File

@ -1,47 +0,0 @@
diff -urNp a/src/libjasper/jp2/jp2_dec.c b/src/libjasper/jp2/jp2_dec.c
--- a/src/libjasper/jp2/jp2_dec.c 2021-06-01 13:32:59.330396797 +0200
+++ b/src/libjasper/jp2/jp2_dec.c 2021-06-01 13:46:16.982925961 +0200
@@ -230,7 +230,8 @@ jas_image_t *jp2_decode(jas_stream_t *in
the value specified in the code stream? */
if (dec->ihdr->data.ihdr.numcmpts != JAS_CAST(jas_uint,
jas_image_numcmpts(dec->image))) {
- jas_eprintf("warning: number of components mismatch\n");
+ jas_eprintf("error: number of components mismatch (IHDR)\n");
+ goto error;
}
/* At least one component must be present. */
@@ -253,7 +254,8 @@ jas_image_t *jp2_decode(jas_stream_t *in
with the data in the code stream? */
if ((samedtype && dec->ihdr->data.ihdr.bpc != JP2_DTYPETOBPC(dtype)) ||
(!samedtype && dec->ihdr->data.ihdr.bpc != JP2_IHDR_BPCNULL)) {
- jas_eprintf("warning: component data type mismatch\n");
+ jas_eprintf("error: component data type mismatch (IHDR)\n");
+ goto error;
}
/* Is the compression type supported? */
@@ -265,9 +267,10 @@ jas_image_t *jp2_decode(jas_stream_t *in
if (dec->bpcc) {
/* Is the number of components indicated in the BPCC box
consistent with the code stream data? */
- if (dec->bpcc->data.bpcc.numcmpts != JAS_CAST(jas_uint, jas_image_numcmpts(
- dec->image))) {
- jas_eprintf("warning: number of components mismatch\n");
+ if (dec->bpcc->data.bpcc.numcmpts !=
+ JAS_CAST(jas_uint, jas_image_numcmpts(dec->image))) {
+ jas_eprintf("error: number of components mismatch (BPCC)\n");
+ goto error;
}
/* Is the component data type information indicated in the BPCC
box consistent with the code stream data? */
@@ -276,7 +279,8 @@ jas_image_t *jp2_decode(jas_stream_t *in
++i) {
if (jas_image_cmptdtype(dec->image, i) !=
JP2_BPCTODTYPE(dec->bpcc->data.bpcc.bpcs[i])) {
- jas_eprintf("warning: component data type mismatch\n");
+ jas_eprintf("error: component data type mismatch (BPCC)\n");
+ goto error;
}
}
} else {

View File

@ -1,18 +0,0 @@
diff -urNp a/src/libjasper/jp2/jp2_dec.c b/src/libjasper/jp2/jp2_dec.c
--- a/src/libjasper/jp2/jp2_dec.c 2021-06-01 13:50:54.213552191 +0200
+++ b/src/libjasper/jp2/jp2_dec.c 2021-06-01 14:02:40.016274587 +0200
@@ -396,6 +396,14 @@ jas_image_t *jp2_decode(jas_stream_t *in
}
}
+ /* Ensure that the number of channels being used by the decoder
+ matches the number of image components. */
+ if (dec->numchans != jas_image_numcmpts(dec->image)) {
+ jas_eprintf("error: mismatch in number of components (%d != %d)\n",
+ dec->numchans, jas_image_numcmpts(dec->image));
+ goto error;
+ }
+
/* Mark all components as being of unknown type. */
for (i = 0; i < JAS_CAST(jas_uint, jas_image_numcmpts(dec->image)); ++i) {

12
jasper-3.0.0-rpath.patch Normal file
View File

@ -0,0 +1,12 @@
diff -urNp old/CMakeLists.txt new/CMakeLists.txt
--- old/CMakeLists.txt 2022-01-31 10:40:07.521527316 +0100
+++ new/CMakeLists.txt 2022-01-31 10:41:00.960876005 +0100
@@ -606,7 +606,7 @@ if(JAS_ENABLE_SHARED)
# (but later on when installing)
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
- set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
+ #set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
# add the automatically determined parts of the RPATH
# which point to directories outside the build tree to the install RPATH

12
jasper-4.1.0-rpath.patch Normal file
View File

@ -0,0 +1,12 @@
diff -urNp a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt 2023-11-08 10:45:01.610146140 +0100
+++ b/CMakeLists.txt 2023-11-08 10:46:18.131824994 +0100
@@ -804,7 +804,7 @@ if(JAS_ENABLE_SHARED)
# (but later on when installing)
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
- set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
+ #set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
# add the automatically determined parts of the RPATH
# which point to directories outside the build tree to the install RPATH

View File

@ -0,0 +1,130 @@
diff -urNp a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt
--- a/src/app/CMakeLists.txt 2023-11-08 13:41:24.725949157 +0100
+++ b/src/app/CMakeLists.txt 2023-11-08 13:41:42.637087268 +0100
@@ -115,9 +115,6 @@ if(BASH_PROGRAM AND JAS_HAVE_ALL_NATIVE_
add_test(run_test_2
"${BASH_PROGRAM}" "${CMAKE_CURRENT_BINARY_DIR}/../../test/bin/wrapper"
"${CMAKE_CURRENT_SOURCE_DIR}/../../test/bin/run_test_2" -v)
- add_test(run_test_3
- "${BASH_PROGRAM}" "${CMAKE_CURRENT_BINARY_DIR}/../../test/bin/wrapper"
- "${CMAKE_CURRENT_SOURCE_DIR}/../../test/bin/run_test_3" -v)
if(JAS_ENABLE_CONFORMANCE_TESTS)
add_test(run_conformance_tests
"${BASH_PROGRAM}" "${CMAKE_CURRENT_BINARY_DIR}/../../test/bin/wrapper"
diff -urNp a/test/bin/run_test_3 b/test/bin/run_test_3
--- a/test/bin/run_test_3 2023-11-08 13:41:24.712949057 +0100
+++ b/test/bin/run_test_3 1970-01-01 01:00:00.000000000 +0100
@@ -1,113 +0,0 @@
-#! /usr/bin/env bash
-# Copyright (c) 2016 Michael David Adams
-################################################################################
-
-################################################################################
-
-if [ "${BASH_VERSINFO[0]}" -lt 4 ]; then
- echo "This test requires Bash 4 or greater."
- echo "This test is being skipped."
- exit 0
-fi
-
-cmd_dir=$(dirname "$0") || exit 1
-source "$cmd_dir"/utilities || exit 1
-top_dir="$cmd_dir/../.."
-sysinfo_program="$top_dir/build/sysinfo"
-
-debug_level="${JAS_DEBUG_LEVEL:-0}"
-if [ "$debug_level" -ge 1 ]; then
- set -xv
-fi
-
-################################################################################
-
-set_source_and_build_dirs || panic "cannot set source and build directories"
-
-################################################################################
-
-#abs_source_dir="$1"
-#abs_build_dir="$2"
-
-#export JAS_ABS_TOP_BUILDDIR="$abs_build_dir"
-#export JAS_TOP_BUILDDIR="$abs_build_dir"
-#export JAS_ABS_TOP_SRCDIR="$abs_source_dir"
-#export JAS_TOP_SRCDIR="$abs_source_dir"
-
-#$CMDDIR/rundectests jasper || exit 1
-
-oj_compress=$(which opj2_compress) || oj_compress=""
-oj_decompress=$(which opj2_decompress) || oj_decompress=""
-
-run_test="$cmd_dir/run_codec_test"
-
-codec_selectors=()
-codec_selectors+=(jasper_jasper)
-if [ -n "$oj_decompress" ]; then
- codec_selectors+=(jasper_oj)
-fi
-#codec_selectors+=(jasper_jj2k)
-#codec_selectors+=(jj2k_jasper)
-#codec_selectors+=(kakadu_jasper)
-#codec_selectors+=(jasper_kakadu)
-###codec_selectors+=(jasper_vm)
-###codec_selectors+=(vm_jasper)
-
-exclude_tests=()
-
-os="$("$sysinfo_program" -o)" || \
- panic "cannot get OS information"
-echo "OS: $os"
-
-if [ "$os" = windows ]; then
- eecho "WARNING: some tests disabled"
- exclude_tests+=(sgn_1)
-fi
-
-base_opts=()
-for test in "${exclude_tests[@]}"; do
- base_opts+=(-X "$test")
-done
-
-echo "STARTING AT `date`"
-
-num_errors=0
-failed_tests=()
-
-for codec_selector in "${codec_selectors[@]}"; do
- enc=$(echo "$codec_selector" | awk -v FS=_ '{print $1}' -)
- dec=$(echo "$codec_selector" | awk -v FS=_ '{print $2}' -)
- echo "############################################################"
- echo "START OF TESTS FOR ENCODER=$enc DECODER=$dec"
- echo "############################################################"
- opts=()
- opts+=(-v)
- opts+=(-e "$enc")
- opts+=(-d "$dec")
- opts+=(-E ignore)
- opts+=("${base_opts[@]}")
- #opts+=(-B)
- opts+=("$@")
- "$run_test" "${opts[@]}"
- status=$?
- if [ $status -ne 0 ]; then
- num_errors=$((num_errors + 1))
- failed_tests+=($codec_selector)
- #panic "running tests failed"
- fi
- echo "############################################################"
- echo "END OF TESTS"
- echo "############################################################"
-done
-
-echo "ENDING AT `date`"
-
-echo "############################################################"
-echo "TEST SUMMARY"
-echo "Number of codec selectors: ${#codec_selectors[@]}"
-echo "Number of errors: $num_errors"
-if [ "$num_errors" -gt 0 ]; then
- echo "STATUS: FAILED"
- exit 1
-fi
-echo "STATUS: PASSED"

View File

@ -5,22 +5,20 @@
Summary: Implementation of the JPEG-2000 standard, Part 1
Name: jasper
Version: 2.0.14
Version: 4.1.0
Release: 5%{?dist}
License: JasPer
License: JasPer-2.0
URL: http://www.ece.uvic.ca/~frodo/jasper/
Source0: http://www.ece.uvic.ca/~frodo/jasper/software/jasper-%{version}.tar.gz
Source0: https://github.com/jasper-software/%{name}/archive/refs/tags/version-%{version}.tar.gz
Patch1: jasper-2.0.14-CVE-2016-9396.patch
Patch2: jasper-2.0.14-CVE-2021-26927.patch
Patch3: jasper-2.0.14-CVE-2021-3272.patch
Patch4: jasper-2.0.14-CVE-2020-27828.patch
# skip hard-coded prefix/lib rpath
Patch1: jasper-4.1.0-rpath.patch
# architecture related patches
Patch100: jasper-2.0.2-test-ppc64-disable.patch
Patch101: jasper-2.0.2-test-ppc64le-disable.patch
Patch102: jasper-4.1.0-test-i686-disable.patch
# autoreconf
BuildRequires: cmake
@ -30,9 +28,10 @@ BuildRequires: libjpeg-devel
BuildRequires: libXmu-devel libXi-devel
BuildRequires: pkgconfig doxygen
BuildRequires: mesa-libGL-devel
BuildRequires: gcc
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
BuildRequires: gcc
BuildRequires: make
%description
This package contains an implementation of the image compression
@ -63,12 +62,9 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%prep
%setup -q -n %{name}-%{version}
%setup -q -n %{name}-version-%{version}
%patch1 -p1 -b .CVE-2016-9396
%patch2 -p1 -b .CVE-2021-26927
%patch3 -p1 -b .CVE-2021-3272
%patch4 -p1 -b .CVE-2020-27828
%patch 1 -p1 -b .rpath
# Need to disable one test to be able to build it on ppc64 arch
# At ppc64 this test just stuck (nothing happend - no exception or error)
@ -83,42 +79,32 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%patch 101 -p1 -b .test-ppc64le-disable
%endif
mkdir -p builder
%cmake -G "Unix Makefiles" \
-H%{_builddir}/%{name}-%{version} \
-B%{_builddir}/%{name}-%{version}/builder
%ifarch %ix86
%patch 102 -p1 -b .test-i686-disable
%endif
%build
pushd builder
make clean all
mkdir builder
%cmake \
-DJAS_ENABLE_DOC:BOOL=OFF \
-B builder
%make_build -C builder
popd
%install
pushd builder
make install DESTDIR=%{buildroot}
#%if "%{_arch}" != "arm" && "%{_arch}" != "i386"
# mv %{buildroot}/usr/lib %{buildroot}/usr/lib64
#%endif
make install/fast DESTDIR=%{buildroot} -C builder
# Unpackaged files
rm -f doc/README
rm -f %{buildroot}%{_libdir}/lib*.la
popd
%check
pushd builder
make test
popd
make test -C builder
%ldconfig_scriptlets libs
%files
%{_bindir}/imgcmp
%{_bindir}/imginfo
@ -134,8 +120,9 @@ popd
%{_libdir}/pkgconfig/jasper.pc
%files libs
%doc COPYRIGHT LICENSE README
%{_libdir}/libjasper.so*
%doc README.md
%license COPYRIGHT.txt LICENSE.txt
%{_libdir}/libjasper.so.7*
%files utils
%{_bindir}/jiv
@ -143,14 +130,131 @@ popd
%changelog
* Tue Jun 01 2021 Josef Ridky <jridky@redhat.com> - 2.0.14-5
- Fix CVE-2021-26927 (#1933860)
- Fix CVE-2021-26926 (#1922316)
- Fix CVE-2021-3272 (#1922283)
- Fix CVE-2020-27828 (#1905692)
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 4.1.0-5
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Wed May 30 2018 Josef Ridky <jridky@redhat.com> - 2.0.14-4
- Fix CVE-2016-9396 (#1583722)
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 4.1.0-4
- Bump release for June 2024 mass rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Nov 20 2023 Josef Ridky <jridky@redhat.com> - 4.1.0-1
- New upstream release 4.1.0
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jul 18 2023 Josef Ridky <jridky@redhat.com> - 3.0.6-3
- Migrate to SPDX license format
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Aug 01 2022 Josef Ridky <jridky@redhat.com> - 3.0.6-1
- New upstream release 3.0.6
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 01 2022 Josef Ridky <jridky@redhat.com> - 3.0.5-1
- New upstream release 3.0.5
* Mon Mar 14 2022 Josef Ridky <jridky@redhat.com> - 3.0.2-1
- New upstream release 3.0.2
* Mon Feb 14 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.0-4
- Backport upstream fix for avoiding c++ keyword
* Sun Feb 13 2022 Josef Ridky <jridky@redhat.com> - 3.0.0-3
- Rebuilt for libjasper.so.6
* Sun Feb 13 2022 Josef Ridky <jridky@redhat.com> - 3.0.0-2
* Bump spec for new build
* Wed Feb 09 2022 Josef Ridky <jridky@redhat.com> - 3.0.0-1
- New upstream release 3.0.0
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.33-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Sep 01 2021 Josef Ridky <jridky@redhat.com> - 2.0.33-1
- New upstream release 2.0.33 (#1988940)
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.32-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jun 02 2021 Josef Ridky <jridky@redhat.com> - 2.0.32-1
- New upstream release 2.0.32 (#1950621)
* Tue Mar 30 2021 Josef Ridky <jridky@redhat.com> - 2.0.28-1
- New upstream release 2.0.28 (#1944481)
* Wed Mar 24 2021 Josef Ridky <jridky@redhat.com> - 2.0.27-1
- New upstream release 2.0.27 (#1940455)
* Tue Mar 16 2021 Josef Ridky <jridky@redhat.com> - 2.0.26-2
- Fix CVE-2021-3443 (#1939233)
* Wed Mar 10 2021 Josef Ridky <jridky@redhat.com> - 2.0.26-1
- New upstream release 2.0.26 (#1935900)
* Tue Feb 09 2021 Josef Ridky <jridky@redhat.com> - 2.0.25-1
- New upstream release 2.0.25 (#1925996)
* Thu Jan 28 2021 Josef Ridky <jridky@redhat.com> - 2.0.24-3
- fix CVE-2021-3272 (#1921328)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.24-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jan 25 2021 Josef Ridky <jridky@redhat.com> - 2.0.24-1
- New upstream release 2.0.24 (#1905690)
* Wed Oct 07 2020 Josef Ridky <jridky@redhat.com> - 2.0.22-1
- New upstream release 2.0.22 (#1876161)
* Thu Aug 27 2020 Than Ngo <than@redhat.com> - 2.0.17-3
- add correct version
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.17-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 20 2020 Josef Ridky <jridky@redhat.com> - 2.0.17-1
- new upstream release (2.0.17)
- change of source URL to GitHub of Jasper
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.16-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Sep 17 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.0.16-1
- New version, rebuilt for new freeglut
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.14-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.14-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 19 2018 Rex Dieter <rdieter@fedoraproject.org> - 2.0.14-7
- cleanup cmake usage, move to %%build
- %%build: explicitly disable doc generation
- kill hard-coded rpath
- -libs: explicit soname so bumps aren't a surprise
- use %%license, %%make_build, 'make install/fast'
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.14-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed May 30 2018 Josef Ridky <jridky@redhat.com> - 2.0.14-5
- Fix CVE-2016-9396 (#1396986)
* Thu Mar 08 2018 Josef Ridky <jridky@redhat.com> - 2.0.14-4
- Fix gcc dependency
* Mon Feb 26 2018 Josef Ridky <jridky@redhat.com> - 2.0.14-3
- Clean spec file

View File

@ -1 +1 @@
SHA512 (jasper-2.0.14.tar.gz) = 9e5cffd2e899e37ba08890e2377ddfc3c2fb13d9fe00dea6b4612e4d241a6f4327de6835809b415c41ae4bf44208cf7871c1982ff5fc04ae6bc09fd376b0afc8
SHA512 (version-4.1.0.tar.gz) = 940841f4094987526ee23aed84f2b028b0f4d58cd2be91dcf737102018d8da111870959ad64710b14ae1ca4ca8361fc900ff6ecee31f0f23ef435bf7f0935462