From 9f8de37e28e955bbc5fb598634fc3649d564d3ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= Date: Sat, 5 Nov 2022 20:45:00 +0100 Subject: [PATCH] Update to 33.0.3p1 Security fix for CVE-2022-20128 CVE-2022-3168 Close: rhbz#2045196, rhbz#2139124 --- Disable-e2fsdroid-for-ppc64le.patch | 42 +++++++++++++++++++++++++ android-tools.spec | 49 +++++++++++++++++++---------- sources | 2 +- 3 files changed, 76 insertions(+), 17 deletions(-) create mode 100644 Disable-e2fsdroid-for-ppc64le.patch diff --git a/Disable-e2fsdroid-for-ppc64le.patch b/Disable-e2fsdroid-for-ppc64le.patch new file mode 100644 index 0000000..0411bc8 --- /dev/null +++ b/Disable-e2fsdroid-for-ppc64le.patch @@ -0,0 +1,42 @@ +diff -up android-tools-33.0.3p1/vendor/CMakeLists.mke2fs.txt.orig android-tools-33.0.3p1/vendor/CMakeLists.mke2fs.txt +--- android-tools-33.0.3p1/vendor/CMakeLists.mke2fs.txt.orig 2022-07-13 18:44:44.000000000 +0200 ++++ android-tools-33.0.3p1/vendor/CMakeLists.mke2fs.txt 2022-11-06 08:51:50.692313421 +0100 +@@ -117,27 +117,6 @@ target_link_libraries("${ANDROID_MKE2FS_ + target_include_directories("${ANDROID_MKE2FS_NAME}" PRIVATE + e2fsprogs/lib) + +-add_executable(e2fsdroid +- e2fsprogs/contrib/android/e2fsdroid.c +- e2fsprogs/contrib/android/basefs_allocator.c +- e2fsprogs/contrib/android/block_range.c +- e2fsprogs/contrib/android/base_fs.c +- e2fsprogs/contrib/android/fsmap.c +- e2fsprogs/contrib/android/block_list.c +- e2fsprogs/contrib/android/perms.c) +- +-include(CheckIncludeFile) +-CHECK_INCLUDE_FILE("sys/types.h" HAVE_SYS_TYPES_H) +- +-if(HAVE_SYS_TYPES_H) +- target_compile_definitions(e2fsdroid PUBLIC HAVE_SYS_TYPES_H) +-endif(HAVE_SYS_TYPES_H) +- +-target_link_libraries(e2fsdroid +- libext2fs libsparse libzip libcutils liblog libutil libbase libselinux libsepol z pcre2-8 pthread) +-target_include_directories(e2fsdroid PRIVATE +- e2fsprogs/lib e2fsprogs/lib/ext2fs selinux/libselinux/include core/libcutils/include e2fsprogs/misc) +- + add_executable(ext2simg + e2fsprogs/contrib/android/ext2simg.c) + +diff -up android-tools-33.0.3p1/vendor/CMakeLists.txt.orig android-tools-33.0.3p1/vendor/CMakeLists.txt +--- android-tools-33.0.3p1/vendor/CMakeLists.txt.orig 2022-11-05 10:01:04.000000000 +0100 ++++ android-tools-33.0.3p1/vendor/CMakeLists.txt 2022-11-06 09:09:11.351267287 +0100 +@@ -89,7 +89,6 @@ install(TARGETS + lpmake + lpunpack + simg2img +- e2fsdroid + ext2simg + DESTINATION bin) + diff --git a/android-tools.spec b/android-tools.spec index 9e05ac6..d4a5a52 100644 --- a/android-tools.spec +++ b/android-tools.spec @@ -1,7 +1,7 @@ %global _hardened_build 1 Name: android-tools -Version: 31.0.2 +Version: 33.0.3p1 Release: %autorelease Epoch: 1 Summary: Android platform tools(adb, fastboot) @@ -11,32 +11,32 @@ License: ASL 2.0 and (ASL 2.0 and BSD) URL: http://developer.android.com/guide/developing/tools/ # Sources with all needed patches and cmakelists live there now: -# Source0: https://github.com/nmeum/%{name}/releases/download/%{version}/%{name}-%{version}.tar.xz Source1: 51-android.rules Source2: adb.service +# e2fsdroid doesn't build on ppc64le +# See https://github.com/tytso/e2fsprogs/issues/127 +Patch0: Disable-e2fsdroid-for-ppc64le.patch -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd BuildRequires: brotli-devel BuildRequires: cmake BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: gtest-devel -BuildRequires: libusbx-devel -BuildRequires: systemd BuildRequires: golang -BuildRequires: golang(golang.org/x/crypto/chacha20) -BuildRequires: golang(golang.org/x/crypto/chacha20poly1305) -BuildRequires: golang(golang.org/x/crypto/curve25519) -BuildRequires: golang(golang.org/x/crypto/hkdf) -BuildRequires: golang(golang.org/x/crypto/xts) +BuildRequires: golang(golang.org/x/crypto/chacha20) +BuildRequires: golang(golang.org/x/crypto/chacha20poly1305) +BuildRequires: golang(golang.org/x/crypto/curve25519) +BuildRequires: golang(golang.org/x/crypto/hkdf) +BuildRequires: golang(golang.org/x/crypto/xts) +BuildRequires: libusbx-devel BuildRequires: libzstd-devel BuildRequires: lz4-devel +BuildRequires: multilib-rpm-config BuildRequires: pcre2-devel BuildRequires: perl BuildRequires: protobuf-devel +BuildRequires: systemd-rpm-macros Provides: adb = %{epoch}:%{version}-%{release} Provides: fastboot = %{epoch}:%{version}-%{release} @@ -69,7 +69,10 @@ to read and write the flash partitions. It needs the same USB device setup between the host and the target phone as adb. %prep -%autosetup +%setup -q +%ifarch ppc64le +%patch0 -p1 +%endif cp -p %{SOURCE1} 51-android.rules %build @@ -100,17 +103,31 @@ install -d -m 0775 ${RPM_BUILD_ROOT}%{_sharedstatedir}/adb #ASL2.0 and BSD %{_bindir}/adb #ASL2.0 +%{_bindir}/avbtool +%{_bindir}/mke2fs.android %{_bindir}/simg2img %{_bindir}/img2simg %{_bindir}/fastboot %{_bindir}/append2simg -%{_bindir}/mke2fs.android +%ifnarch ppc64le +%{_bindir}/e2fsdroid +%endif +%{_bindir}/ext2simg +%{_bindir}/lpadd +%{_bindir}/lpdump +%{_bindir}/lpflash +%{_bindir}/lpmake +%{_bindir}/lpunpack +%{_bindir}/mkbootimg +%{_bindir}/mkdtboimg +%{_bindir}/repack_bootimg +%{_bindir}/unpack_bootimg %{_datadir}/android-tools/completions/adb %{_datadir}/android-tools/completions/fastboot +%{_datadir}/android-tools/mkbootimg/gki/generate_gki_certificate.py +%{_datadir}/android-tools/mkbootimg/mkbootimg.py %{_datadir}/bash-completion/completions/adb %{_datadir}/bash-completion/completions/fastboot - - %changelog %autochangelog diff --git a/sources b/sources index 15543fe..5d9d6a2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (android-tools-31.0.2.tar.xz) = 55f592c2622ef5936f7aea254271fb0b4f57ffcae3ac089c79522efa0d27c31373ba936418a56758d553ebf290cabcd65582b2a6ae60f81bdea15711941664cb +SHA512 (android-tools-33.0.3p1.tar.xz) = 22ed3d9a71a962764998c8c4759215d24a1af121d43942c77c00878d636aea16a6b940811624bb1ae56ac416922d7262d5ced5436e646fe2dae0944b593ad4fe