Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ungoogled-chromium for openSUSE:Factory checked in at 2023-05-27 20:37:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ungoogled-chromium (Old) and /work/SRC/openSUSE:Factory/.ungoogled-chromium.new.1533 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ungoogled-chromium" Sat May 27 20:37:52 2023 rev:2 rq:1089286 version:113.0.5672.126 Changes: -------- --- /work/SRC/openSUSE:Factory/ungoogled-chromium/ungoogled-chromium.changes 2023-05-21 19:09:23.722670422 +0200 +++ /work/SRC/openSUSE:Factory/.ungoogled-chromium.new.1533/ungoogled-chromium.changes 2023-05-27 20:38:37.399010354 +0200 @@ -1,0 +2,12 @@ +Sat May 20 06:07:43 UTC 2023 - MichaÅ Szczepaniak <m.szczepaniak....@gmail.com> + +- Chromium 113.0.5672.126 (boo#1211442): + * CVE-2023-2721: Use after free in Navigation + * CVE-2023-2722: Use after free in Autofill UI + * CVE-2023-2723: Use after free in DevTools + * CVE-2023-2724: Type Confusion in V8 + * CVE-2023-2725: Use after free in Guest View + * CVE-2023-2726: Inappropriate implementation in WebApp Installs + * Various fixes from internal audits, fuzzing and other initiatives + +------------------------------------------------------------------- Old: ---- chromium-113.0.5672.92.tar.xz ungoogled-chromium-113.0.5672.92-1.tar.gz New: ---- chromium-113.0.5672.126.tar.xz ungoogled-chromium-113.0.5672.126-1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ungoogled-chromium.spec ++++++ --- /var/tmp/diff_new_pack.DfPasn/_old 2023-05-27 20:38:48.803078496 +0200 +++ /var/tmp/diff_new_pack.DfPasn/_new 2023-05-27 20:38:48.807078520 +0200 @@ -79,7 +79,7 @@ %define ffmpeg_version 58 %endif Name: ungoogled-chromium -Version: 113.0.5672.92 +Version: 113.0.5672.126 Release: 0 Summary: Google's open source browser project License: BSD-3-Clause AND LGPL-2.1-or-later ++++++ chromium-113.0.5672.92.tar.xz -> chromium-113.0.5672.126.tar.xz ++++++ /work/SRC/openSUSE:Factory/ungoogled-chromium/chromium-113.0.5672.92.tar.xz /work/SRC/openSUSE:Factory/.ungoogled-chromium.new.1533/chromium-113.0.5672.126.tar.xz differ: char 15, line 1 ++++++ ungoogled-chromium-113.0.5672.92-1.tar.gz -> ungoogled-chromium-113.0.5672.126-1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/chromium_version.txt new/ungoogled-chromium-113.0.5672.126-1/chromium_version.txt --- old/ungoogled-chromium-113.0.5672.92-1/chromium_version.txt 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/chromium_version.txt 2023-05-19 16:31:43.000000000 +0200 @@ -1 +1 @@ -113.0.5672.92 +113.0.5672.126 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/docs/flags.md new/ungoogled-chromium-113.0.5672.126-1/docs/flags.md --- old/ungoogled-chromium-113.0.5672.92-1/docs/flags.md 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/docs/flags.md 2023-05-19 16:31:43.000000000 +0200 @@ -25,7 +25,6 @@ `--max-connections-per-host` | (from Bromite) Configure the maximum allowed connections per host. Valid values are `6` and `15` `--omnibox-autocomplete-filtering` | Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. Accepts `search`, `search-bookmarks`, `search-chrome`, and `search-bookmarks-chrome`. `--popups-to-tabs` | Makes popups open in new tabs. - `--referrer-directive` | Allows setting a custom directive for referrer headers. Accepts `nocrossorigin`, `minimal`, and `noreferrers`. The no cross-origin referrer option removes all cross-origin referrers, the minimal option removes all cross-origin referrers and strips same-origin referrers down to the origin, and the no referrers option removes all referrers. - ### Available only on desktop @@ -64,6 +63,9 @@ Feature | Description -- | -- + `MinimalReferrers` | Removes all cross-origin referrers and strips same-origin referrers down to the origin. Has lower precedence than `NoCrossOriginReferrers`. + `NoCrossOriginReferrers` | Removes all cross-origin referrers. Has lower precedence than `NoReferrers`. + `NoReferrers` | Removes all referrers. `SetIpv6ProbeFalse` | Forces the result of the browser's IPv6 probing (i.e. IPv6 connectivity test) to be unsuccessful. This causes IPv4 addresses to be prioritized over IPv6 addresses. Without this flag, the probing result is set to be successful, which causes IPv6 to be used over IPv4 when possible. - ### Available only on desktop diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch new/ungoogled-chromium-113.0.5672.126-1/patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch 2023-05-19 16:31:43.000000000 +0200 @@ -327,7 +327,7 @@ return !download_->IsSavePackageDownload() && --- a/chrome/browser/download/download_prefs.cc +++ b/chrome/browser/download/download_prefs.cc -@@ -268,14 +268,7 @@ DownloadPrefs::DownloadPrefs(Profile* pr +@@ -264,14 +264,7 @@ DownloadPrefs::DownloadPrefs(Profile* pr base::FilePath::StringType(1, base::FilePath::kExtensionSeparator) + extension); @@ -343,7 +343,7 @@ } } -@@ -460,10 +453,6 @@ bool DownloadPrefs::IsAutoOpenByPolicy(c +@@ -456,10 +449,6 @@ bool DownloadPrefs::IsAutoOpenByPolicy(c bool DownloadPrefs::EnableAutoOpenByUserBasedOnExtension( const base::FilePath& file_name) { base::FilePath::StringType extension = file_name.Extension(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/iridium-browser/prefs-always-prompt-for-download-directory-by-defaul.patch 2023-05-19 16:31:43.000000000 +0200 @@ -29,7 +29,7 @@ --- a/chrome/browser/download/download_prefs.cc +++ b/chrome/browser/download/download_prefs.cc -@@ -279,7 +279,7 @@ void DownloadPrefs::RegisterProfilePrefs +@@ -275,7 +275,7 @@ void DownloadPrefs::RegisterProfilePrefs user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( prefs::kPromptForDownload, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-disabling-link-drag.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-disabling-link-drag.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-disabling-link-drag.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-disabling-link-drag.patch 2023-05-19 16:31:43.000000000 +0200 @@ -1,6 +1,6 @@ --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -108,4 +108,8 @@ +@@ -104,4 +104,8 @@ "Hide SidePanel Button", "Hides the SidePanel Button. ungoogled-chromium flag.", kOsDesktop, SINGLE_VALUE_TYPE("hide-sidepanel-button")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-incognito-themes.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-incognito-themes.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-incognito-themes.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-incognito-themes.patch 2023-05-19 16:31:43.000000000 +0200 @@ -23,7 +23,7 @@ substitutions["backgroundPosition"] = GetNewTabBackgroundPositionCSS(tp); --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -120,4 +120,8 @@ +@@ -116,4 +116,8 @@ "Hide Fullscreen Exit UI", "Hides the \"X\" that appears when the mouse cursor is moved towards the top of the window in fullscreen mode. Additionally, this hides the \"Press F11 to exit full screen\" popup. ungoogled-chromium flag.", kOsDesktop, SINGLE_VALUE_TYPE("hide-fullscreen-exit-ui")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-referrer-header.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-referrer-header.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-for-referrer-header.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-for-referrer-header.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,66 +0,0 @@ ---- a/chrome/browser/ungoogled_flag_choices.h -+++ b/chrome/browser/ungoogled_flag_choices.h -@@ -79,4 +79,16 @@ const FeatureEntry::Choice kTabHoverCard - "tab-hover-cards", - "tooltip"}, - }; -+const FeatureEntry::Choice kReferrerDirective[] = { -+ {flags_ui::kGenericExperimentChoiceDefault, "", ""}, -+ {"No cross-origin referrer", -+ "referrer-directive", -+ "nocrossorigin"}, -+ {"Minimal referrer", -+ "referrer-directive", -+ "minimal"}, -+ {"No referrers", -+ "referrer-directive", -+ "noreferrers"}, -+}; - #endif // CHROME_BROWSER_UNGOOGLED_FLAG_CHOICES_H_ ---- a/chrome/browser/ungoogled_flag_entries.h -+++ b/chrome/browser/ungoogled_flag_entries.h -@@ -88,4 +88,8 @@ - "Hide tab close buttons", - "Hides the close buttons on tabs. ungoogled-chromium flag.", - kOsDesktop, SINGLE_VALUE_TYPE("hide-tab-close-buttons")}, -+ {"referrer-directive", -+ "Referrer directive", -+ "Allows setting a custom directive for referrer headers. The no cross-origin referrer option removes all cross-origin referrers, the minimal option removes all cross-origin referrers and strips same-origin referrers down to the origin, and the no referrers option removes all referrers. ungoogled-chromium flag.", -+ kOsAll, MULTI_VALUE_TYPE(kReferrerDirective)}, - #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ ---- a/content/browser/utility_process_host.cc -+++ b/content/browser/utility_process_host.cc -@@ -246,6 +246,7 @@ bool UtilityProcessHost::StartProcess() - - // Browser command-line switches to propagate to the utility process. - static const char* const kSwitchNames[] = { -+ "referrer-directive", - network::switches::kAdditionalTrustTokenKeyCommitments, - network::switches::kForceEffectiveConnectionType, - network::switches::kHostResolverRules, ---- a/services/network/network_service_network_delegate.cc -+++ b/services/network/network_service_network_delegate.cc -@@ -6,6 +6,7 @@ - - #include <string> - -+#include "base/command_line.h" - #include "base/debug/dump_without_crashing.h" - #include "base/functional/bind.h" - #include "base/ranges/algorithm.h" -@@ -65,6 +66,15 @@ void NetworkServiceNetworkDelegate::Mayb - return; - } - -+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("referrer-directive")) { -+ std::string option = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("referrer-directive"); -+ if (!url::IsSameOriginWith(effective_url, GURL(request->referrer())) || option == "noreferrers") -+ request->SetReferrer(std::string()); -+ if (option == "minimal") -+ request->SetReferrer(url::Origin::Create(GURL(request->referrer())).GetURL().spec()); -+ return; -+ } -+ - if (base::FeatureList::IsEnabled( - net::features::kCapReferrerToOriginOnCrossOrigin)) { - if (!url::IsSameOriginWith(effective_url, GURL(request->referrer()))) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-change-http-accept-header.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-change-http-accept-header.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-change-http-accept-header.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-change-http-accept-header.patch 2023-05-19 16:31:43.000000000 +0200 @@ -1,6 +1,6 @@ --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -96,4 +96,8 @@ +@@ -92,4 +92,8 @@ "Disable GREASE for TLS", "Turn off GREASE (Generate Random Extensions And Sustain Extensibility) for TLS connections. ungoogled-chromium flag.", kOsAll, SINGLE_VALUE_TYPE("disable-grease-tls")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-disable-sharing-hub.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-disable-sharing-hub.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-disable-sharing-hub.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-disable-sharing-hub.patch 2023-05-19 16:31:43.000000000 +0200 @@ -18,7 +18,7 @@ #else --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -100,4 +100,8 @@ +@@ -96,4 +96,8 @@ "Custom HTTP Accept Header", "Set a custom value for the Accept header which is sent by the browser with every HTTP request. (e.g. `text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8`). ungoogled-chromium flag.", kOsAll, ORIGIN_LIST_VALUE_TYPE("http-accept-header", "")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-disable-tls-grease.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-disable-tls-grease.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-disable-tls-grease.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-disable-tls-grease.patch 2023-05-19 16:31:43.000000000 +0200 @@ -1,9 +1,9 @@ --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -92,4 +92,8 @@ - "Referrer directive", - "Allows setting a custom directive for referrer headers. The no cross-origin referrer option removes all cross-origin referrers, the minimal option removes all cross-origin referrers and strips same-origin referrers down to the origin, and the no referrers option removes all referrers. ungoogled-chromium flag.", - kOsAll, MULTI_VALUE_TYPE(kReferrerDirective)}, +@@ -88,4 +88,8 @@ + "Hide tab close buttons", + "Hides the close buttons on tabs. ungoogled-chromium flag.", + kOsDesktop, SINGLE_VALUE_TYPE("hide-tab-close-buttons")}, + {"disable-grease-tls", + "Disable GREASE for TLS", + "Turn off GREASE (Generate Random Extensions And Sustain Extensibility) for TLS connections. ungoogled-chromium flag.", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch 2023-05-19 16:31:43.000000000 +0200 @@ -46,7 +46,7 @@ if (!HasAnyExtensions()) --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -112,4 +112,8 @@ +@@ -108,4 +108,8 @@ "Disable link drag", "Prevents dragging of links and selected text. ungoogled-chromium flag.", kOsDesktop, FEATURE_VALUE_TYPE(blink::features::kDisableLinkDrag)}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch 2023-05-19 16:31:43.000000000 +0200 @@ -26,7 +26,7 @@ return !chrome::IsRunningInAppMode(); --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -116,4 +116,8 @@ +@@ -112,4 +112,8 @@ "Hide Extensions Menu", "Hides the extensions container. This includes the puzzle piece icon as well as any pinned extensions. ungoogled-chromium flag.", kOsDesktop, SINGLE_VALUE_TYPE("hide-extensions-menu")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-side-panel-button.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-side-panel-button.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flag-to-hide-side-panel-button.patch 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flag-to-hide-side-panel-button.patch 2023-05-19 16:31:43.000000000 +0200 @@ -12,7 +12,7 @@ std::make_unique<SidePanelToolbarContainer>(browser_view_); --- a/chrome/browser/ungoogled_flag_entries.h +++ b/chrome/browser/ungoogled_flag_entries.h -@@ -104,4 +104,8 @@ +@@ -100,4 +100,8 @@ "Disable Sharing Hub", "Disables the sharing hub button. ungoogled-chromium flag.", kOsDesktop, SINGLE_VALUE_TYPE("disable-sharing-hub")}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flags-for-referrer-customization.patch new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flags-for-referrer-customization.patch --- old/ungoogled-chromium-113.0.5672.92-1/patches/extra/ungoogled-chromium/add-flags-for-referrer-customization.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/extra/ungoogled-chromium/add-flags-for-referrer-customization.patch 2023-05-19 16:31:43.000000000 +0200 @@ -0,0 +1,302 @@ +--- a/chrome/browser/ungoogled_flag_entries.h ++++ b/chrome/browser/ungoogled_flag_entries.h +@@ -120,4 +120,16 @@ + "Enable themes in Incognito mode", + "Allows themes to override Google's built-in Incognito theming. ungoogled-chromium flag.", + kOsDesktop, SINGLE_VALUE_TYPE("enable-incognito-themes")}, ++ {"remove-referrers", ++ "Remove Referrers", ++ "Removes all referrers. ungoogled-chromium flag.", ++ kOsAll, FEATURE_VALUE_TYPE(features::kNoReferrers)}, ++ {"remove-cross-origin-referrers", ++ "Remove Cross-Origin Referrers", ++ "Removes all cross-origin referrers. Has lower precedence than remove-referrers. ungoogled-chromium flag.", ++ kOsAll, FEATURE_VALUE_TYPE(features::kNoCrossOriginReferrers)}, ++ {"minimal-referrers", ++ "Minimal Referrers", ++ "Removes all cross-origin referrers and strips same-origin referrers down to the origin. Has lower precedence than remove-cross-origin-referrers. ungoogled-chromium flag.", ++ kOsAll, FEATURE_VALUE_TYPE(features::kMinimalReferrers)}, + #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ +--- a/chrome/common/BUILD.gn ++++ b/chrome/common/BUILD.gn +@@ -143,6 +143,8 @@ static_library("common_lib") { + "pref_names_util.cc", + "pref_names_util.h", + "ref_counted_util.h", ++ "referrer_sanitizer.cc", ++ "referrer_sanitizer.h", + "search/instant_mojom_traits.h", + "search/instant_types.cc", + "search/instant_types.h", +@@ -267,6 +269,7 @@ static_library("common_lib") { + "//components/no_state_prefetch/common:mojo_bindings", + "//components/page_load_metrics/common:common", + "//components/password_manager/content/common", ++ "//services/network/public/mojom", + ] + + if (enable_pdf) { +--- a/chrome/common/chrome_features.cc ++++ b/chrome/common/chrome_features.cc +@@ -842,6 +842,14 @@ BASE_FEATURE(kNewMacNotificationAPI, + // referrers instead of their ordinary behavior. + BASE_FEATURE(kNoReferrers, "NoReferrers", base::FEATURE_DISABLED_BY_DEFAULT); + ++BASE_FEATURE(kMinimalReferrers, ++ "MinimalReferrers", ++ base::FEATURE_DISABLED_BY_DEFAULT); ++ ++BASE_FEATURE(kNoCrossOriginReferrers, ++ "NoCrossOriginReferrers", ++ base::FEATURE_DISABLED_BY_DEFAULT); ++ + #if BUILDFLAG(IS_WIN) + // Changes behavior of requireInteraction for notifications. Instead of staying + // on-screen until dismissed, they are instead shown for a very long time. +--- a/chrome/common/chrome_features.h ++++ b/chrome/common/chrome_features.h +@@ -497,6 +497,10 @@ COMPONENT_EXPORT(CHROME_FEATURES) BASE_D + + COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kNoReferrers); + ++COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kMinimalReferrers); ++ ++COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kNoCrossOriginReferrers); ++ + #if BUILDFLAG(IS_WIN) + COMPONENT_EXPORT(CHROME_FEATURES) + BASE_DECLARE_FEATURE(kNotificationDurationLongForRequireInteraction); +--- /dev/null ++++ b/chrome/common/referrer_sanitizer.cc +@@ -0,0 +1,48 @@ ++// Copyright 2023 The ungoogled-chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++#include "referrer_sanitizer.h" ++#include "base/feature_list.h" ++#include "chrome/common/chrome_features.h" ++#include "url/origin.h" ++ ++namespace referrer_sanitizer { ++ ++static GURL sanitize_referrer_internal(const GURL& origin, ++ const GURL& destination) { ++ if ((base::FeatureList::IsEnabled(features::kNoCrossOriginReferrers) || ++ base::FeatureList::IsEnabled(features::kMinimalReferrers)) && ++ !url::IsSameOriginWith(origin, destination)) { ++ return GURL(); ++ } else if (base::FeatureList::IsEnabled(features::kMinimalReferrers)) { ++ return url::Origin::Create(origin).GetURL(); ++ } ++ return origin; ++} ++ ++std::pair<GURL, net::ReferrerPolicy> sanitize_referrer( ++ const GURL& origin, ++ const GURL& destination, ++ const net::ReferrerPolicy& referrer_policy, ++ bool enable_referrers) { ++ if (!enable_referrers) { ++ return {GURL(), net::ReferrerPolicy::NO_REFERRER}; ++ } ++ return {sanitize_referrer_internal(std::move(origin), std::move(destination)), ++ referrer_policy}; ++} ++ ++std::pair<GURL, network::mojom::ReferrerPolicy> sanitize_referrer( ++ const GURL& origin, ++ const GURL& destination, ++ const network::mojom::ReferrerPolicy& referrer_policy, ++ bool enable_referrers) { ++ if (!enable_referrers) { ++ return {GURL(), network::mojom::ReferrerPolicy::kNever}; ++ } ++ return {sanitize_referrer_internal(std::move(origin), std::move(destination)), ++ referrer_policy}; ++} ++ ++} // namespace referrer_sanitizer +--- /dev/null ++++ b/chrome/common/referrer_sanitizer.h +@@ -0,0 +1,30 @@ ++// Copyright 2023 The ungoogled-chromium Authors ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++#ifndef CHROME_COMMON_REFERRER_SANITIZER_H_ ++#define CHROME_COMMON_REFERRER_SANITIZER_H_ ++ ++#include <string> ++#include <utility> ++#include "net/url_request/referrer_policy.h" ++#include "services/network/public/mojom/referrer_policy.mojom-shared.h" ++#include "url/gurl.h" ++ ++namespace referrer_sanitizer { ++ ++std::pair<GURL, net::ReferrerPolicy> sanitize_referrer( ++ const GURL& origin, ++ const GURL& destination, ++ const net::ReferrerPolicy& referrer_policy, ++ bool enable_referrers); ++ ++std::pair<GURL, network::mojom::ReferrerPolicy> sanitize_referrer( ++ const GURL& origin, ++ const GURL& destination, ++ const network::mojom::ReferrerPolicy& referrer_policy, ++ bool enable_referrers); ++ ++} // namespace referrer_sanitizer ++ ++#endif // CHROME_COMMON_REFERRER_SANITIZER_H_ +--- a/content/browser/renderer_host/navigation_request.cc ++++ b/content/browser/renderer_host/navigation_request.cc +@@ -39,6 +39,7 @@ + #include "base/types/pass_key.h" + #include "build/build_config.h" + #include "build/chromeos_buildflags.h" ++#include "chrome/common/referrer_sanitizer.h" + #include "components/attribution_reporting/os_registration.h" + #include "components/attribution_reporting/os_support.mojom.h" + #include "content/browser/attribution_reporting/attribution_manager.h" +@@ -425,10 +426,10 @@ void AddAdditionalRequestHeaders( + net::HttpRequestHeaders::kUserAgent, + ComputeUserAgentValue(*headers, user_agent_override, browser_context)); + +- if (!render_prefs.enable_referrers) { +- *referrer = +- blink::mojom::Referrer(GURL(), network::mojom::ReferrerPolicy::kNever); +- } ++ auto sanitized_referrer = referrer_sanitizer::sanitize_referrer( ++ referrer->url, url, referrer->policy, render_prefs.enable_referrers); ++ *referrer = blink::mojom::Referrer(std::move(sanitized_referrer.first), ++ std::move(sanitized_referrer.second)); + + // Next, set the HTTP Origin if needed. + if (NeedsHTTPOrigin(headers, method)) { +--- a/content/renderer/render_frame_impl.cc ++++ b/content/renderer/render_frame_impl.cc +@@ -52,6 +52,7 @@ + #include "build/chromeos_buildflags.h" + #include "cc/base/switches.h" + #include "cc/trees/ukm_manager.h" ++#include "chrome/common/referrer_sanitizer.h" + #include "content/common/associated_interfaces.mojom.h" + #include "content/common/content_navigation_policy.h" + #include "content/common/content_switches_internal.h" +@@ -4249,10 +4250,13 @@ void RenderFrameImpl::WillSendRequestInt + + request.SetHasUserGesture(frame_->HasTransientUserActivation()); + +- if (!GetWebView()->GetRendererPreferences().enable_referrers) { +- request.SetReferrerString(WebString()); +- request.SetReferrerPolicy(network::mojom::ReferrerPolicy::kNever); +- } ++ auto sanitized_referrer = referrer_sanitizer::sanitize_referrer( ++ WebStringToGURL(request.ReferrerString()), ++ WebStringToGURL(request.Url().GetString()), request.GetReferrerPolicy(), ++ GetWebView()->GetRendererPreferences().enable_referrers); ++ request.SetReferrerString( ++ WebString::FromUTF8(sanitized_referrer.first.spec())); ++ request.SetReferrerPolicy(std::move(sanitized_referrer.second)); + } + + void RenderFrameImpl::DidLoadResourceFromMemoryCache( +--- a/services/network/network_service_network_delegate.cc ++++ b/services/network/network_service_network_delegate.cc +@@ -12,6 +12,7 @@ + #include "base/strings/utf_string_conversions.h" + #include "base/types/optional_util.h" + #include "build/build_config.h" ++#include "chrome/common/referrer_sanitizer.h" + #include "components/domain_reliability/monitor.h" + #include "net/base/features.h" + #include "net/base/isolation_info.h" +@@ -59,9 +60,14 @@ NetworkServiceNetworkDelegate::~NetworkS + void NetworkServiceNetworkDelegate::MaybeTruncateReferrer( + net::URLRequest* const request, + const GURL& effective_url) { +- if (!enable_referrers_) { +- request->SetReferrer(std::string()); +- request->set_referrer_policy(net::ReferrerPolicy::NO_REFERRER); ++ ++ auto sanitized_referrer = referrer_sanitizer::sanitize_referrer( ++ GURL(request->referrer()), effective_url, ++ request->referrer_policy(), enable_referrers_); ++ if (sanitized_referrer.first != effective_url.spec() || ++ sanitized_referrer.second != request->referrer_policy()) { ++ request->SetReferrer(sanitized_referrer.first.spec()); ++ request->set_referrer_policy(std::move(sanitized_referrer.second)); + return; + } + +--- a/third_party/blink/renderer/modules/service_worker/web_service_worker_fetch_context_impl.cc ++++ b/third_party/blink/renderer/modules/service_worker/web_service_worker_fetch_context_impl.cc +@@ -7,10 +7,12 @@ + #include "base/ranges/algorithm.h" + #include "base/synchronization/waitable_event.h" + #include "base/task/single_thread_task_runner.h" ++#include "chrome/common/referrer_sanitizer.h" + #include "mojo/public/cpp/bindings/pending_remote.h" + #include "services/network/public/cpp/wrapper_shared_url_loader_factory.h" + #include "third_party/blink/public/common/loader/loader_constants.h" + #include "third_party/blink/public/mojom/fetch/fetch_api_request.mojom-blink.h" ++#include "third_party/blink/public/platform/url_conversion.h" + #include "third_party/blink/public/platform/url_loader_throttle_provider.h" + #include "third_party/blink/public/platform/web_url_request_extra_data.h" + #include "third_party/blink/public/platform/websocket_handshake_throttle_provider.h" +@@ -168,10 +170,13 @@ void WebServiceWorkerFetchContextImpl::W + + request.SetURLRequestExtraData(std::move(url_request_extra_data)); + +- if (!renderer_preferences_.enable_referrers) { +- request.SetReferrerString(WebString()); +- request.SetReferrerPolicy(network::mojom::ReferrerPolicy::kNever); +- } ++ auto sanitized_referrer = referrer_sanitizer::sanitize_referrer( ++ WebStringToGURL(request.ReferrerString()), ++ WebStringToGURL(request.Url().GetString()), request.GetReferrerPolicy(), ++ renderer_preferences_.enable_referrers); ++ request.SetReferrerString( ++ WebString::FromUTF8(sanitized_referrer.first.spec())); ++ request.SetReferrerPolicy(std::move(sanitized_referrer.second)); + } + + mojom::ControllerServiceWorkerMode +--- a/third_party/blink/renderer/platform/loader/fetch/url_loader/dedicated_or_shared_worker_fetch_context_impl.cc ++++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/dedicated_or_shared_worker_fetch_context_impl.cc +@@ -12,6 +12,7 @@ + #include "base/task/sequenced_task_runner.h" + #include "base/task/single_thread_task_runner.h" + #include "base/task/thread_pool.h" ++#include "chrome/common/referrer_sanitizer.h" + #include "services/network/public/cpp/wrapper_shared_url_loader_factory.h" + #include "third_party/blink/public/common/features.h" + #include "third_party/blink/public/common/loader/loader_constants.h" +@@ -21,6 +22,7 @@ + #include "third_party/blink/public/platform/modules/service_worker/web_service_worker_provider_context.h" + #include "third_party/blink/public/platform/platform.h" + #include "third_party/blink/public/platform/resource_load_info_notifier_wrapper.h" ++#include "third_party/blink/public/platform/url_conversion.h" + #include "third_party/blink/public/platform/url_loader_throttle_provider.h" + #include "third_party/blink/public/platform/weak_wrapper_resource_load_info_notifier.h" + #include "third_party/blink/public/platform/web_code_cache_loader.h" +@@ -400,10 +402,13 @@ void DedicatedOrSharedWorkerFetchContext + if (g_rewrite_url) + request.SetUrl(g_rewrite_url(request.Url().GetString().Utf8(), false)); + +- if (!renderer_preferences_.enable_referrers) { +- request.SetReferrerString(WebString()); +- request.SetReferrerPolicy(network::mojom::ReferrerPolicy::kNever); +- } ++ auto sanitized_referrer = referrer_sanitizer::sanitize_referrer( ++ WebStringToGURL(request.ReferrerString()), ++ WebStringToGURL(request.Url().GetString()), request.GetReferrerPolicy(), ++ renderer_preferences_.enable_referrers); ++ request.SetReferrerString( ++ WebString::FromUTF8(sanitized_referrer.first.spec())); ++ request.SetReferrerPolicy(std::move(sanitized_referrer.second)); + } + + mojom::ControllerServiceWorkerMode diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/patches/series new/ungoogled-chromium-113.0.5672.126-1/patches/series --- old/ungoogled-chromium-113.0.5672.92-1/patches/series 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/patches/series 2023-05-19 16:31:43.000000000 +0200 @@ -90,7 +90,6 @@ extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch extra/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch extra/ungoogled-chromium/disable-remote-optimization-guide.patch -extra/ungoogled-chromium/add-flag-for-referrer-header.patch extra/ungoogled-chromium/add-flag-to-disable-tls-grease.patch extra/ungoogled-chromium/add-flag-to-change-http-accept-header.patch extra/ungoogled-chromium/add-flag-to-disable-sharing-hub.patch @@ -99,3 +98,4 @@ extra/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch extra/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch extra/ungoogled-chromium/add-flag-for-incognito-themes.patch +extra/ungoogled-chromium/add-flags-for-referrer-customization.patch diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ungoogled-chromium-113.0.5672.92-1/pruning.list new/ungoogled-chromium-113.0.5672.126-1/pruning.list --- old/ungoogled-chromium-113.0.5672.92-1/pruning.list 2023-05-09 02:16:04.000000000 +0200 +++ new/ungoogled-chromium-113.0.5672.126-1/pruning.list 2023-05-19 16:31:43.000000000 +0200 @@ -79,7 +79,7 @@ chrome/browser/resources/chromeos/accessibility/chromevox/earcons/wrap_edge.ogg chrome/browser/resources/chromeos/accessibility/select_to_speak/earcons/null_selection.ogg chrome/browser/resources/media/mei_preload/preloaded_data.pb -chrome/build/pgo_profiles/chrome-linux-5672-1682419203-4df9c2f8b97b0e23303fa2b15279906232abc306.profdata +chrome/build/pgo_profiles/chrome-linux-5672-1683023364-b47f9a07c616c94cac9f564aa6b00a8aaaec191a.profdata chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/Network Share Test.lnk chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/New folder - Shortcut.lnk chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/long_name.lnk