diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2019-12-25 12:55:34 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2019-12-25 12:58:43 +0000 |
commit | c6f860efa48243eff4a733b083327e4e681f7386 (patch) | |
tree | be86e302919be6ca306e12d8027c9ece2b89536f /community/chromium | |
parent | 1e697147022325620c2e31c4417460f09c9df59d (diff) | |
download | aports-c6f860efa48243eff4a733b083327e4e681f7386.tar.bz2 aports-c6f860efa48243eff4a733b083327e4e681f7386.tar.xz |
community/chromium: upgrade to 79.0.3945.88
CVE-2019-13725: Use after free in Bluetooth.
CVE-2019-13726: Heap buffer overflow in password manager.
CVE-2019-13727: Insufficient policy enforcement in WebSockets.
CVE-2019-13728: Out of bounds write in V8.
CVE-2019-13729: Use after free in WebSockets.
CVE-2019-13730: Type Confusion in V8.
CVE-2019-13732: Use after free in WebAudio.
CVE-2019-13734: Out of bounds write in SQLite.
CVE-2019-13735: Out of bounds write in V8.
CVE-2019-13736: Integer overflow in PDFium.
CVE-2019-13737: Insufficient policy enforcement in autocomplete.
CVE-2019-13738: Insufficient policy enforcement in navigation.
CVE-2019-13739: Incorrect security UI in Omnibox.
CVE-2019-13740: Incorrect security UI in sharing.
CVE-2019-13741: Insufficient validation of untrusted input in Blink.
CVE-2019-13742: Incorrect security UI in Omnibox.
CVE-2019-13743: Incorrect security UI in external protocol handling.
CVE-2019-13744: Insufficient policy enforcement in cookies.
CVE-2019-13745: Insufficient policy enforcement in audio.
CVE-2019-13746: Insufficient policy enforcement in Omnibox.
CVE-2019-13747: Uninitialized Use in rendering.
CVE-2019-13748: Insufficient policy enforcement in developer tools.
CVE-2019-13749: Incorrect security UI in Omnibox.
CVE-2019-13750: Insufficient data validation in SQLite.
CVE-2019-13751: Uninitialized Use in SQLite.
CVE-2019-13752: Out of bounds read in SQLite.
CVE-2019-13753: Out of bounds read in SQLite.
CVE-2019-13754: Insufficient policy enforcement in extensions.
CVE-2019-13755: Insufficient policy enforcement in extensions.
CVE-2019-13756: Incorrect security UI in printing.
CVE-2019-13757: Incorrect security UI in Omnibox.
CVE-2019-13758: Insufficient policy enforcement in navigation.
CVE-2019-13759: Incorrect security UI in interstitials.
CVE-2019-13761: Incorrect security UI in Omnibox.
CVE-2019-13762: Insufficient policy enforcement in downloads.
CVE-2019-13763: Insufficient policy enforcement in payments.
CVE-2019-13764: Type Confusion in V8.
CVE-2019-13767: Use after free in media picker.
ref #11043
Diffstat (limited to 'community/chromium')
7 files changed, 77 insertions, 193 deletions
diff --git a/community/chromium/APKBUILD b/community/chromium/APKBUILD index cbd8b20d75..1bc12fa550 100644 --- a/community/chromium/APKBUILD +++ b/community/chromium/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Carlo Landmeter <clandmeter@gmail.com> # Maintainer: Carlo Landmeter <clandmeter@gmail.com> pkgname=chromium -pkgver=78.0.3904.108 +pkgver=79.0.3945.88 pkgrel=0 pkgdesc="chromium web browser" url="http://www.chromium.org/" @@ -98,10 +98,9 @@ source="https://commondatastorage.googleapis.com/chromium-browser-official/$pkgn no-mallinfo.patch resolver.patch swiftshader.patch - secure_getenv.patch + chromium-system-harfbuzz.patch + create-extra-view-redefinition.patch llvm-remove-unsupported-compiler-warnings.patch - upstream-dns_util-make-DohUpgradeEntry-non-const.patch - upstream-fix-shutdown-crash-in-ProfileManager.patch chromium-use-alpine-target.patch media-base.patch @@ -338,7 +337,7 @@ chromedriver() { mv "$pkgdir"/usr/bin/chromedriver "$subpkgdir"/usr/bin } -sha512sums="9801634358974dbe61484963599719b7c5571d32c70d7568287ab6b72054ed82afa146a0470c53129266a9fbc4a24dc50a43d552b8f1756776907c2760f15589 chromium-78.0.3904.108.tar.xz +sha512sums="6474da7225beb9c99c01dc234b820924dd2fb3d736f53abbac02556f3bec43acd09aa02224666c4a735417500d10f57265ab130c29cce27124e5a69463cf5e0d chromium-79.0.3945.88.tar.xz a3bb959c65944ae2fb765725cedcffd743a58bc0c2cd1f1999d15fe79801d00f3474b08b4ed7b48859ed921eb57093d0ad09d90f201d729ed9b8a419a591ed29 pstables-2.8.h b9a810416dd7a8ffc3a5ced85ad9acebda1665bd08a57eec7b189698cc5f74d2c3fd69044e20fcb83297a43214b2772a1312b2c6122ea0eb716abacf39524d60 chromium-launcher.sh f6d962b9e4c22dd42183df3db5d3202dab33eccecafb1bf63ca678147289581262db1e5e64cbe8f9c212beefb0a6717bb8d311e497f56b55fe95b8bab2db493f chromium.conf @@ -354,10 +353,9 @@ ef31809702ef020e02445ac36857c621cf852dea14c2fdf291ea0700b6fc6d94e3704726a051e95d 396be05301adad9f9c9bb7a807ecb206deef901e4420206f41f74a660a8c0f300a1f210b1d379bed5519cf68bff8ce7c1a9e155651c478e11469c3d253e12155 no-mallinfo.patch 3e424b9bf8e819e7759a76fe6f849f93e6b83de5c8b47cce21984611a69906a50cb4a498b0e69ef71d3f81f556914e6e5a6803ebfd81b42eb62177c654b10215 resolver.patch 84732900f50799ee8d4c9a572a8703c1cd67c6a3b8f8dcf97f308319dcef6ac3d41ea5ddfb2ef4d695bdebdae691e30d5631a8d04e59b931935ba188b0308a61 swiftshader.patch -7f9b816ff9088f84929dc9853ab8cf0c705ef95fedb9e9c3e85bc50c8befb76e39ecf5e754fa3fc8b34b42397875ec41c0729f880a642262b675ebf79901810a secure_getenv.patch -8b7e10bca16951fde06da4155d507f2c047e4720b63570af1bbf2d2fd8d02d1d088df2e747fd9700088e6cdf0b23fd84fa86af1c68606506611205f5fbb432ba llvm-remove-unsupported-compiler-warnings.patch -bd2e937016a2ec3ded9b87ea0bab4683658a7ccad1e445478c9f4343d4a766c6c3b1188337ff556cac7b5f75b640103feba587fc9dbe8d57a402c62ca4d48f84 upstream-dns_util-make-DohUpgradeEntry-non-const.patch -2ecd3b441ff71ed6373fcd0cef60c105f3b99a4057defb99f3e8bc2fe45ada349ffe6a51e306b5c5d8fdd55dfc570bb0c045024c09c0f4a3375f5a346ff11ac5 upstream-fix-shutdown-crash-in-ProfileManager.patch +c2c17e405863e07b312d7d37b3e8d02cdebd5decee11b0e6387256f6d90517e052fc82544513a771c59083c0d9aeefbac3ddd3ed09654e302bfdd126e2cc1cc8 chromium-system-harfbuzz.patch +6ca49766db7af5ff12a62f66e0ec873f8d7f8eb2d19a79df55d6688ce2f5a7dd3772305213485b48e579f19072df707e447f7cdfb39578b78a2f936fae6081bf create-extra-view-redefinition.patch +1b6150ab7844ae6b30faba89ae45c216e987c77588cbe2dd50b6de5381d9c0efe760c8375574f94b7ca5c17ebf13a91b627593045d3d7a8bf70c63a30ecbf3ee llvm-remove-unsupported-compiler-warnings.patch 50e2c78bc2e7f343ed97d348bbe34350439ede6a15bf8ea1017eb13c391d4718b00a51db9c2eb40d8398d9733bf1925db42011f3bcbdd7d83329b1c7d534032b chromium-use-alpine-target.patch 589a7acf149d44db081da2dd24a7769f2b9572a8cc64d2aad78577a64768d3b6fb2bfa02292b5260acd2c4a28c3ae9b82847ff901ce8a21baeca0b46dcda0ca9 media-base.patch 05c1af43038f76014f5f8b605085310414242f2bfad0e3258ddb29a08e7f4307de31b2d551b0a291986cc7d5a01cf3a003ac864216877195bb4310fd33193f0f musl-crashpad.patch diff --git a/community/chromium/chromium-system-harfbuzz.patch b/community/chromium/chromium-system-harfbuzz.patch new file mode 100644 index 0000000000..a2064cf75b --- /dev/null +++ b/community/chromium/chromium-system-harfbuzz.patch @@ -0,0 +1,19 @@ +diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc +index a218d63..6a5bdae 100644 +--- components/paint_preview/common/subset_font.cc ++++ components/paint_preview/common/subset_font.cc +@@ -10,11 +10,12 @@ + #include "base/bind.h" + #include "base/callback.h" + #include "base/macros.h" +-#include "third_party/harfbuzz-ng/src/src/hb-subset.h" +-#include "third_party/harfbuzz-ng/src/src/hb.h" + #include "third_party/skia/include/core/SkStream.h" + #include "third_party/skia/include/core/SkTypeface.h" + ++#include <hb-subset.h> ++#include <hb.h> ++ + namespace paint_preview { + + namespace { diff --git a/community/chromium/create-extra-view-redefinition.patch b/community/chromium/create-extra-view-redefinition.patch new file mode 100644 index 0000000000..d17a594164 --- /dev/null +++ b/community/chromium/create-extra-view-redefinition.patch @@ -0,0 +1,20 @@ +--- chrome/browser/ui/views/accessibility/invert_bubble_view.cc.orig 2019-12-11 10:41:00.069472967 -0500 ++++ chrome/browser/ui/views/accessibility/invert_bubble_view.cc 2019-12-11 10:41:48.254466283 -0500 +@@ -47,7 +47,7 @@ + // Tag value used to uniquely identify the "learn more" (?) button. + constexpr int kLearnMoreButton = 100; + +-std::unique_ptr<views::View> CreateExtraView(views::ButtonListener* listener) { ++std::unique_ptr<views::View> CreateExtraViewInternal(views::ButtonListener* listener) { + auto learn_more = views::CreateVectorImageButton(listener); + views::SetImageFromVectorIcon(learn_more.get(), + vector_icons::kHelpOutlineIcon); +@@ -95,7 +95,7 @@ + dark_theme_(nullptr) { + DialogDelegate::set_button_label(ui::DIALOG_BUTTON_OK, + l10n_util::GetStringUTF16(IDS_DONE)); +- DialogDelegate::SetExtraView(::CreateExtraView(this)); ++ DialogDelegate::SetExtraView(::CreateExtraViewInternal(this)); + set_margins(gfx::Insets()); + chrome::RecordDialogCreation(chrome::DialogIdentifier::INVERT); + } diff --git a/community/chromium/llvm-remove-unsupported-compiler-warnings.patch b/community/chromium/llvm-remove-unsupported-compiler-warnings.patch index 4de8aea9f5..df8aed86d9 100644 --- a/community/chromium/llvm-remove-unsupported-compiler-warnings.patch +++ b/community/chromium/llvm-remove-unsupported-compiler-warnings.patch @@ -1,13 +1,29 @@ ---- build/config/compiler/BUILD.gn 2019-10-24 11:01:40.459910040 -0400 -+++ build/config/compiler/BUILD.gn 2019-10-24 11:04:19.690063743 -0400 -@@ -1492,37 +1492,6 @@ - # Currently goma can not handle case sensitiveness for windows well. - cflags += [ "-Wno-nonportable-include-path" ] - } +Author: Olivier Tilloy <olivier.tilloy@canonical.com> +Description: Do not use warning flags that require a newer Clang + +Index: dev/build/config/compiler/BUILD.gn +=================================================================== +--- build/config/compiler/BUILD.gn ++++ build/config/compiler/BUILD.gn +@@ -693,14 +693,6 @@ config("compiler") { + ldflags += [ "-Wl,--no-rosegment" ] + } + +- # This flag enforces that member pointer base types are complete. It helps +- # prevent us from running into problems in the Microsoft C++ ABI (see +- # https://crbug.com/847724). +- if (is_clang && !is_nacl && target_os != "chromeos" && !use_xcode_clang && +- (is_win || use_custom_libcxx)) { +- cflags += [ "-fcomplete-member-pointers" ] +- } - -- if (current_toolchain == host_toolchain || !use_xcode_clang) { -- # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not -- # recognize. + # Pass the same C/C++ flags to the objective C/C++ compiler. + cflags_objc += cflags_c + cflags_objcc += cflags_cc +@@ -1501,28 +1493,6 @@ config("default_warnings") { + if (current_toolchain == host_toolchain || !use_xcode_clang) { + # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not + # recognize. - cflags += [ - # Ignore warnings about MSVC optimization pragmas. - # TODO(thakis): Only for no_chromium_code? http://crbug.com/912662 @@ -16,9 +32,6 @@ - # TODO(https://crbug.com/989932): Evaluate and possibly enable. - "-Wno-implicit-int-float-conversion", - -- # TODO(https://crbug.com/995200): Clean up and enable. -- "-Wno-xor-used-as-pow", -- - # TODO(https://crbug.com/999871): Decide if we want to clean up the - # codebase or just disable this. Doesn't seem super useful, but - # also fires in only 4 files. @@ -29,12 +42,10 @@ - - # TODO(https://crbug.com/999886): Clean up, enable. - "-Wno-final-dtor-non-final-class", +- +- # TODO(https://crbug.com/1002945): Evaluate and possibly enable. +- "-Wno-sizeof-array-div", - ] -- cflags_c += [ -- # TODO(https://crbug.com/995993): Clean up and enable. -- "-Wno-implicit-fallthrough", -- ] -- } - } - } - } + + cflags_c += [ + # TODO(https://crbug.com/995993): Clean up and enable. diff --git a/community/chromium/secure_getenv.patch b/community/chromium/secure_getenv.patch deleted file mode 100644 index 9ab048b626..0000000000 --- a/community/chromium/secure_getenv.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- ./third_party/angle/third_party/vulkan-loader/src/loader/loader.c.orig -+++ ./third_party/angle/third_party/vulkan-loader/src/loader/loader.c -@@ -35,6 +35,9 @@ - #include <stdbool.h> - #include <string.h> - #include <stddef.h> -+#if defined(HAVE_GETAUXVAL) -+#include <sys/auxv.h> -+#endif - - #if defined(__APPLE__) - #include <CoreFoundation/CoreFoundation.h> -@@ -256,6 +259,8 @@ - #elif defined(HAVE___SECURE_GETENV) - (void)inst; - return __secure_getenv(name); -+#elif defined(HAVE_GETAUXVAL) -+ return getauxval(AT_SECURE) ? NULL : getenv(name); - #else - #pragma message( \ - "Warning: Falling back to non-secure getenv for environmental lookups! Consider" \ ---- ./third_party/angle/third_party/vulkan-loader/BUILD.gn.orig -+++ ./third_party/angle/third_party/vulkan-loader/BUILD.gn -@@ -264,8 +264,7 @@ - cflags = [ "/wd4201" ] - } - if (is_linux) { -- # assume secure_getenv() is available -- defines += [ "HAVE_SECURE_GETENV" ] -+ defines += [ "HAVE_GETAUXVAL" ] - } - } - diff --git a/community/chromium/upstream-dns_util-make-DohUpgradeEntry-non-const.patch b/community/chromium/upstream-dns_util-make-DohUpgradeEntry-non-const.patch deleted file mode 100644 index 4fa4bedc1f..0000000000 --- a/community/chromium/upstream-dns_util-make-DohUpgradeEntry-non-const.patch +++ /dev/null @@ -1,86 +0,0 @@ -From f4c3c329588b78af63aad8b401da767242b86709 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> -Date: Mon, 16 Sep 2019 17:05:42 +0000 -Subject: [PATCH] dns_util: Make DohUpgradeEntry non-const when used with - std::vector<> - -This fixes the build with libstdc++ (with most other standard libraries -other than libc++, in fact) after commit f93a48e3 ("Allow upgrade to DoH -during automatic mode"): - -../../../../../../usr/bin/../lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/stl_vector.h:351:7: error: static_assert failed due to requirement 'is_same<typename remove_cv<const DohUpgradeEntry>::type, const DohUpgradeEntry>::value' "std::vector must have a non-const, non-volatile value_type" - static_assert(is_same<typename remove_cv<_Tp>::type, _Tp>::value, - ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -../../base/no_destructor.h:77:28: note: in instantiation of template class 'std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >' requested here - alignas(T) char storage_[sizeof(T)]; - ^ -../../net/dns/dns_util.cc:147:7: note: in instantiation of template class 'base::NoDestructor<std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> > >' requested here - upgradable_servers({ - ^ -../../net/dns/dns_util.cc:230:36: error: invalid range expression of type 'const std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >'; no viable 'begin' function available - for (const auto& upgrade_entry : upgradable_servers) { - ^ ~~~~~~~~~~~~~~~~~~ - -The C++ standard forbids containers of const elements. Callers of -GetDohUpgradeList() use it in a safe way anyway, and most of -DohUpgradeEntry's members are const. - -Bug: 957519 -Change-Id: I826a51823edb1184c0fae27105101e2894efe568 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1805636 -Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> -Commit-Queue: Eric Orth <ericorth@chromium.org> -Reviewed-by: Eric Orth <ericorth@chromium.org> -Cr-Commit-Position: refs/heads/master@{#696834} ---- - net/dns/dns_util.cc | 13 +++++-------- - 1 file changed, 5 insertions(+), 8 deletions(-) - -diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc -index d83ff7c150..14997c48b2 100644 ---- net/dns/dns_util.cc -+++ net/dns/dns_util.cc -@@ -139,11 +139,11 @@ struct DohUpgradeEntry { - const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config; - }; - --const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() { -+const std::vector<DohUpgradeEntry>& GetDohUpgradeList() { - // The provider names in these entries should be kept in sync with the - // DohProviderId histogram suffix list in - // tools/metrics/histograms/histograms.xml. -- static const base::NoDestructor<std::vector<const DohUpgradeEntry>> -+ static const base::NoDestructor<std::vector<DohUpgradeEntry>> - upgradable_servers({ - DohUpgradeEntry( - "CleanBrowsingAdult", -@@ -222,8 +222,7 @@ const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() { - std::vector<const DohUpgradeEntry*> GetDohUpgradeEntriesFromNameservers( - const std::vector<IPEndPoint>& dns_servers, - const std::vector<std::string>& excluded_providers) { -- const std::vector<const DohUpgradeEntry>& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); - std::vector<const DohUpgradeEntry*> entries; - - for (const auto& server : dns_servers) { -@@ -417,8 +416,7 @@ std::vector<DnsConfig::DnsOverHttpsServerConfig> - GetDohUpgradeServersFromDotHostname( - const std::string& dot_server, - const std::vector<std::string>& excluded_providers) { -- const std::vector<const DohUpgradeEntry>& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); - std::vector<DnsConfig::DnsOverHttpsServerConfig> doh_servers; - - if (dot_server.empty()) -@@ -451,8 +449,7 @@ GetDohUpgradeServersFromNameservers( - - std::string GetDohProviderIdForHistogramFromDohConfig( - const DnsConfig::DnsOverHttpsServerConfig& doh_server) { -- const std::vector<const DohUpgradeEntry>& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); - for (const auto& upgrade_entry : upgradable_servers) { - if (doh_server.server_template == - upgrade_entry.dns_over_https_config.server_template) { diff --git a/community/chromium/upstream-fix-shutdown-crash-in-ProfileManager.patch b/community/chromium/upstream-fix-shutdown-crash-in-ProfileManager.patch deleted file mode 100644 index 553ca34a7d..0000000000 --- a/community/chromium/upstream-fix-shutdown-crash-in-ProfileManager.patch +++ /dev/null @@ -1,45 +0,0 @@ -From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001 -From: Evan Stade <estade@chromium.org> -Date: Wed, 16 Oct 2019 16:01:32 +0000 -Subject: [PATCH] Fix shutdown crash in ProfileManager. - -OnProfileMarkedForPermanentDeletion should move from -ProfileManagerObserver to ProfileObserver, which would also -fix this bug. However, changing the order of members is the -quickest and most cherry-pick-able way to avoid the crash. - -Bug: 1005244 -Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518 -Auto-Submit: Evan Stade <estade@chromium.org> -Reviewed-by: David Roger <droger@chromium.org> -Commit-Queue: Evan Stade <estade@chromium.org> -Cr-Commit-Position: refs/heads/master@{#706467} ---- - chrome/browser/profiles/profile_manager.h | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h -index b60df76d59..7d02af7f8f 100644 ---- chrome/browser/profiles/profile_manager.h -+++ chrome/browser/profiles/profile_manager.h -@@ -410,6 +410,10 @@ class ProfileManager : public content::NotificationObserver, - const base::FilePath& profile_dir); - #endif // !defined(OS_ANDROID) - -+ // Destroy after |profile_info_cache_| since Profile destruction may trigger -+ // some observers to unregister themselves. -+ base::ObserverList<ProfileManagerObserver> observers_; -+ - // Object to cache various information about profiles. Contains information - // about every profile which has been created for this instance of Chrome, - // if it has not been explicitly deleted. It must be destroyed after -@@ -451,8 +455,6 @@ class ProfileManager : public content::NotificationObserver, - // Controls whether to initialize some services. Only disabled for testing. - bool do_final_services_init_ = true; - -- base::ObserverList<ProfileManagerObserver> observers_; -- - // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc - // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for - // consistency with surrounding code in the same file but that wasn't trivial |