diff --git a/Sanity-check-size-passed-to-malloc.patch b/Sanity-check-size-passed-to-malloc.patch deleted file mode 100644 index dddbfde5354952168c46f74aae3c349bbec54d1b..0000000000000000000000000000000000000000 --- a/Sanity-check-size-passed-to-malloc.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 435a2ca802358a3debb6d164d2c33049131df81c Mon Sep 17 00:00:00 2001 -From: Phillip Hellewell -Date: Sat, 10 Mar 2018 18:05:39 -0700 -Subject: [PATCH 3/4] Sanity check size passed to malloc... - -Add sanity check before calling malloc in af_get_page() function to -avoid undefined behavior (e.g., seg fault) when dealing with a corrupt -AFF image with an invalid pagesize. - -Issue found by Luis Rocha (luiscrocha@gmail.com). ---- - lib/afflib_pages.cpp | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/lib/afflib_pages.cpp b/lib/afflib_pages.cpp -index 2569c2a..f8cf775 100644 ---- a/lib/afflib_pages.cpp -+++ b/lib/afflib_pages.cpp -@@ -219,6 +219,11 @@ int af_get_page(AFFILE *af,int64_t pagenum,unsigned char *data,size_t *bytes) - return -3; // read error - } - -+ /* Sanity check to avoid undefined behaviour when calling malloc below with pagesize from a corrupt AFF image. */ -+ if(af->image_pagesize <= 0 || af->image_pagesize > 16*1024*1024) -+ return -1; -+ -+ - /* Now uncompress directly into the buffer provided by the caller, unless the caller didn't - * provide a buffer. If that happens, allocate our own... - */ --- -2.13.6 - diff --git a/afflib-3.7.16.tar.gz b/afflib-3.7.16.tar.gz deleted file mode 100644 index 6c41595e2146178e6a672446d6046bda22312726..0000000000000000000000000000000000000000 Binary files a/afflib-3.7.16.tar.gz and /dev/null differ diff --git a/afflib.spec b/afflib.spec index b0224b4798f7405ed048fbd740625faded4a00bb..f8ab9db5fbc4c940c2a13abf1d3c8299093ccd2c 100644 --- a/afflib.spec +++ b/afflib.spec @@ -1,22 +1,25 @@ Name: afflib -Version: 3.7.16 -Release: 9 -Summary: Libraries supporting advanced forensic formats - +Version: 3.7.18 +Release: 3 +Summary: Library to support the Advanced Forensic Format License: BSD with advertising URL: https://github.com/sshock/AFFLIBv3 -Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz -Patch0: Sanity-check-size-passed-to-malloc.patch +Source0: %{url}/archive/v%{version}.tar.gz +BuildRequires: gcc-c++ libtool curl-devel expat-devel ncurses-devel +BuildRequires: libtermcap-devel openssl-devel python2-devel zlib-devel +BuildRequires: python2 python2-devel python2-setuptools +BuildRequires: python3 python3-devel python3-setuptools +Provides: bundled(lzma) = 443 -BuildRequires: gcc-c++ libtool curl-devel expat-devel lzma-devel zlib-devel -BuildRequires: ncurses-devel openssl-devel python2-devel +%description +Afflib is a library for support of the Advanced Forensic Format. -Provides: afftools = %{version}-%{release} -Obsoletes: afftools < %{version}-%{release} +%package -n afftools +Summary: The Utility for %{name} +Requires: %{name} = %{version}-%{release} -%description -AFF® is an open and extensible file format designed to store -disk images and associated metadata. +%description -n afftools +The %{name}-utils package contains utilities to use %{name}. %package devel Summary: Development files for %{name} @@ -24,44 +27,67 @@ Requires: %{name} = %{version}-%{release} Requires: openssl-devel pkgconfig %description devel -The %{name}-devel package contains libraries for -developing applications that use %{name}. +The %{name}-devel package contains libraries for developing +applications that use %{name}. + +%package -n python2-pyaff +Summary: The python2 binding for the AFFLIB +Provides: python-pyaff(aarch-64) = 3.7.18-2 +Provides: python-pyaff = 3.7.18-2 +Obsoletes: python-pyaff < 3.7.18-2 -%package help -Summary: Help for %{name} +%description -n python2-pyaff +Python2 bindings currently support a read-only file-like interface to AFFLIB and +basic metadata accessor functions. These bindings are not currently complete. -%description help -The %{name}-help package contains help for %{name}. +%package -n python3-pyaff +Summary: The python3 binding for the AFFLIB +Provides: python-pyaff(aarch-64) = 3.7.18-3 +Provides: python-pyaff = 3.7.18-3 +Obsoletes: python-pyaff < 3.7.18-3 + +%description -n python3-pyaff +Python3 bindings currently support a read-only file-like interface to AFFLIB and +basic metadata accessor functions. These bindings are not currently complete. %prep %autosetup -p1 -n AFFLIBv3-%{version} - find lzma443 -type f -exec chmod 0644 {} ';' chmod 0644 lib/base64.{h,cpp} - ./bootstrap.sh %build -%configure --enable-shared --disable-static --enable-python=yes --enable-s3=yes - +%configure --enable-shared --disable-static --enable-python=no --enable-s3=yes sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool %make_build - +cd pyaff +%global py_setup_args build_ext --include-dirs %{_builddir}/AFFLIBv3-%{version}/include --library-dirs %{_builddir}/AFFLIBv3-%{version}/lib/.libs +%py2_build +%py3_build %install %make_install %delete_la +cd pyaff +%py2_install +%py3_install -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post +/sbin/ldconfig +%postun +/sbin/ldconfig %files -%license COPYING +%doc AUTHORS BUGLIST.txt ChangeLog NEWS README COPYING +%doc doc/announce_2.2.txt %{_libdir}/*.so.* + +%files -n afftools %{_bindir}/aff* %{python2_sitearch}/* +%{_mandir}/man1/aff*.1.* %files devel %doc doc/crypto_design.txt doc/crypto_doc.txt @@ -69,14 +95,16 @@ sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool %{_libdir}/*.so %{_libdir}/pkgconfig/afflib.pc -%files help -%doc AUTHORS BUGLIST.txt ChangeLog NEWS README -%doc doc/announce_2.2.txt -%{_mandir}/man1/aff*.1.* +%files -n python2-pyaff +%doc pyaff/README COPYING +%{python2_sitearch}/PyAFF* +%{python2_sitearch}/pyaff* -%changelog -* Wed Mar 04 2019 yangjian - 3.7.16-9 -- Change buildrequires +%files -n python3-pyaff +%doc pyaff/README COPYING +%{python3_sitearch}/PyAFF* +%{python3_sitearch}/pyaff* -* Wed Feb 22 2019 yangjian - 3.7.16-8 -- Package init +%changelog +* Mon Jun 1 2020 wangyue - 3.7.18-3 +- package init diff --git a/v3.7.18.tar.gz b/v3.7.18.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3f26ad9b7c2ebd5e7158c47af940fd4b2daf135e Binary files /dev/null and b/v3.7.18.tar.gz differ