Skip to content

Commit

Permalink
Remove most service manifest remnants from Content
Browse files Browse the repository at this point in the history
Service manifests are not particularly useful in production anymore.

Content uses a subset of the manifests (and their overlays) to filter
interface requests coming from renderers. This filtering is redundant
given the completion of BrowserInterfaceBroker migration and the fact
that *_receiver_bindings.cc files have SECURITY_OWNERS coverage too.
Hence the redundant filtering is removed here.

Minimal infrastructure supporting manifests is left in place for now, as
cast_shell still internally depends on the Service Manager and manifest
overlays.

Bug: 977637
Change-Id: I360aadeecaeed859996b3671ed6646babd831a87
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2296482
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Ken Rockot <rockot@google.com>
Cr-Commit-Position: refs/heads/master@{#789188}
  • Loading branch information
krockot authored and Commit Bot committed Jul 16, 2020
1 parent 9563bdb commit 2a39758
Show file tree
Hide file tree
Showing 41 changed files with 19 additions and 922 deletions.
2 changes: 0 additions & 2 deletions android_webview/browser/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@ source_set("browser") {
"aw_content_browser_client.cc",
"aw_content_browser_client.h",
"aw_content_browser_client_receiver_bindings.cc",
"aw_content_browser_overlay_manifest.cc",
"aw_content_browser_overlay_manifest.h",
"aw_contents.cc",
"aw_contents.h",
"aw_contents_client_bridge.cc",
Expand Down
4 changes: 0 additions & 4 deletions android_webview/browser/OWNERS
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
per-file aw_content_browser_overlay_manifest.h=set noparent
per-file aw_content_browser_overlay_manifest.h=file://ipc/SECURITY_OWNERS
per-file aw_content_browser_overlay_manifest.cc=set noparent
per-file aw_content_browser_overlay_manifest.cc=file://ipc/SECURITY_OWNERS
per-file aw_content_browser_receiver_bindings.cc=set noparent
per-file aw_content_browser_receiver_bindings.cc=file://ipc/SECURITY_OWNERS

Expand Down
8 changes: 0 additions & 8 deletions android_webview/browser/aw_content_browser_client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

#include "android_webview/browser/aw_browser_context.h"
#include "android_webview/browser/aw_browser_main_parts.h"
#include "android_webview/browser/aw_content_browser_overlay_manifest.h"
#include "android_webview/browser/aw_contents.h"
#include "android_webview/browser/aw_contents_client_bridge.h"
#include "android_webview/browser/aw_contents_io_thread_client.h"
Expand Down Expand Up @@ -643,13 +642,6 @@ AwContentBrowserClient::GetDevToolsManagerDelegate() {
return new AwDevToolsManagerDelegate();
}

base::Optional<service_manager::Manifest>
AwContentBrowserClient::GetServiceManifestOverlay(base::StringPiece name) {
if (name == content::mojom::kBrowserServiceName)
return GetAWContentBrowserOverlayManifest();
return base::nullopt;
}

bool AwContentBrowserClient::BindAssociatedReceiverFromFrame(
content::RenderFrameHost* render_frame_host,
const std::string& interface_name,
Expand Down
2 changes: 0 additions & 2 deletions android_webview/browser/aw_content_browser_client.h
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,6 @@ class AwContentBrowserClient : public content::ContentBrowserClient {
CreateThrottlesForNavigation(
content::NavigationHandle* navigation_handle) override;
content::DevToolsManagerDelegate* GetDevToolsManagerDelegate() override;
base::Optional<service_manager::Manifest> GetServiceManifestOverlay(
base::StringPiece name) override;
bool BindAssociatedReceiverFromFrame(
content::RenderFrameHost* render_frame_host,
const std::string& interface_name,
Expand Down
26 changes: 0 additions & 26 deletions android_webview/browser/aw_content_browser_overlay_manifest.cc

This file was deleted.

20 changes: 0 additions & 20 deletions android_webview/browser/aw_content_browser_overlay_manifest.h

This file was deleted.

83 changes: 0 additions & 83 deletions chrome/app/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -181,86 +181,3 @@ static_library("test_support") {
deps += [ "//components/gwp_asan/client" ]
}
}

source_set("chrome_content_browser_overlay_manifest") {
sources = [
"chrome_content_browser_overlay_manifest.cc",
"chrome_content_browser_overlay_manifest.h",
]

deps = [
"//base",
"//chrome/browser/engagement:mojo_bindings",
"//chrome/browser/media:mojo_bindings",
"//chrome/browser/ui/webui/bluetooth_internals:mojo_bindings",
"//chrome/browser/ui/webui/downloads:mojo_bindings",
"//chrome/browser/ui/webui/feed_internals:mojo_bindings",
"//chrome/browser/ui/webui/interventions_internals:mojo_bindings",
"//chrome/browser/ui/webui/new_tab_page:mojo_bindings",
"//chrome/browser/ui/webui/omnibox:mojo_bindings",
"//chrome/browser/ui/webui/reset_password:mojo_bindings",
"//chrome/browser/ui/webui/snippets_internals:mojo_bindings",
"//chrome/browser/ui/webui/usb_internals:mojo_bindings",
"//chrome/common:available_offline_content_mojom",
"//chrome/common:mojo_bindings",
"//chrome/common:offline_page_auto_fetcher_mojom",
"//chrome/common/media_router/mojom:media_router",
"//chrome/test/data:web_ui_test_bindings",
"//components/autofill/content/common/mojom",
"//components/contextual_search/content/common/mojom",
"//components/metrics/public/mojom:call_stack_mojo_bindings",
"//components/page_load_metrics/common:page_load_metrics_mojom",
"//components/safe_browsing/content/common:interfaces",
"//components/services/heap_profiling/public/mojom",
"//components/translate/content/common",
"//extensions/buildflags",
"//services/service_manager/public/cpp",
"//third_party/blink/public/common",
]

if (enable_extensions) {
deps += [
"//extensions/common:mojom",
"//extensions/common/api:mojom",
]
}

if (is_chromeos) {
deps += [
"//chrome/browser/ui/webui/chromeos/add_supervision:mojo_bindings",
"//chrome/browser/ui/webui/chromeos/crostini_installer:mojo_bindings",
"//chrome/browser/ui/webui/chromeos/crostini_upgrader:mojo_bindings",
"//chrome/browser/ui/webui/chromeos/machine_learning:mojo_bindings",
"//chrome/browser/ui/webui/settings/chromeos/search:mojo_bindings",
"//chromeos/services/cellular_setup/public/mojom",
"//chromeos/services/ime/public/mojom",
"//chromeos/services/media_perception/public/mojom",
"//chromeos/services/multidevice_setup/public/mojom",
"//chromeos/services/network_config/public/mojom",
"//chromeos/services/network_health/public/mojom",
"//media/capture/video/chromeos/mojom:cros_camera",
]
}

if (is_android) {
deps +=
[ "//chrome/browser/ui/webui/explore_sites_internals:mojo_bindings" ]
} else {
deps += [ "//chrome/browser/ui/webui/app_management:mojo_bindings" ]
}

if (is_win || is_mac || is_desktop_linux || is_chromeos) {
deps += [
"//chrome/browser/ui/webui/discards:mojo_bindings",
"//services/resource_coordinator/public/mojom",
]
}

if (is_android && notouch_build) {
configs += [ "//chrome/browser:notouch_config" ]
}
}

source_set("chrome_service_manifests") {
public_deps = [ ":chrome_content_browser_overlay_manifest" ]
}
25 changes: 0 additions & 25 deletions chrome/app/DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -42,28 +42,3 @@ include_rules = [
"+third_party/crashpad/crashpad",
]

specific_include_rules = {
"chrome_content_browser_overlay_manifest\.cc": [
"+chromeos/services/cellular_setup",
"+chromeos/services/device_sync",
"+chromeos/services/ime/public",
"+chromeos/services/media_perception/public",
"+chromeos/services/multidevice_setup",
"+chromeos/services/network_config",
"+components/autofill/content/common",
"+components/chromeos_camera/common",
"+components/contextual_search/content/common",
"+components/data_reduction_proxy/core/common",
"+components/metrics/public",
"+components/rappor/public",
"+components/services/app_service",
"+components/translate/content/common",
"+extensions/buildflags",
"+extensions/common",
"+media/capture/video/chromeos/mojom",
"+services/image_annotation/public",
"+services/resource_coordinator/public",
"+third_party/blink/public/mojom",
],
}

9 changes: 0 additions & 9 deletions chrome/app/OWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,3 @@ per-file chrome_exe_main_mac.cc=mark@chromium.org

per-file main_dll_loader_win.cc=brucedawson@chromium.org
per-file main_dll_loader_win.cc=wfh@chromium.org

per-file builtin_service_manifests.cc=set noparent
per-file builtin_service_manifests.cc=file://ipc/SECURITY_OWNERS
per-file builtin_service_manifests.h=set noparent
per-file builtin_service_manifests.h=file://ipc/SECURITY_OWNERS
per-file chrome_content_browser_overlay_manifest.cc=set noparent
per-file chrome_content_browser_overlay_manifest.cc=file://ipc/SECURITY_OWNERS
per-file chrome_content_browser_overlay_manifest.h=set noparent
per-file chrome_content_browser_overlay_manifest.h=file://ipc/SECURITY_OWNERS
77 changes: 0 additions & 77 deletions chrome/app/chrome_content_browser_overlay_manifest.cc

This file was deleted.

16 changes: 0 additions & 16 deletions chrome/app/chrome_content_browser_overlay_manifest.h

This file was deleted.

1 change: 0 additions & 1 deletion chrome/browser/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -1828,7 +1828,6 @@ static_library("browser") {
"//chrome:extra_resources",
"//chrome:resources",
"//chrome:strings",
"//chrome/app:chrome_service_manifests",
"//chrome/app/resources:platform_locale_settings",
"//chrome/app/theme:theme_resources",
"//chrome/browser/devtools",
Expand Down
8 changes: 0 additions & 8 deletions chrome/browser/chrome_content_browser_client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
#include "base/threading/thread_task_runner_handle.h"
#include "build/build_config.h"
#include "build/lacros_buildflags.h"
#include "chrome/app/chrome_content_browser_overlay_manifest.h"
#include "chrome/browser/accessibility/accessibility_labels_service.h"
#include "chrome/browser/accessibility/accessibility_labels_service_factory.h"
#include "chrome/browser/accessibility/caption_util.h"
Expand Down Expand Up @@ -3845,13 +3844,6 @@ void ChromeContentBrowserClient::WillStartServiceManager() {
#endif
}

base::Optional<service_manager::Manifest>
ChromeContentBrowserClient::GetServiceManifestOverlay(base::StringPiece name) {
if (name == content::mojom::kBrowserServiceName)
return GetChromeContentBrowserOverlayManifest();
return base::nullopt;
}

void ChromeContentBrowserClient::OpenURL(
content::SiteInstance* site_instance,
const content::OpenURLParams& params,
Expand Down
2 changes: 0 additions & 2 deletions chrome/browser/chrome_content_browser_client.h
Original file line number Diff line number Diff line change
Expand Up @@ -417,8 +417,6 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
content::RenderProcessHost* render_process_host,
mojo::GenericPendingReceiver receiver) override;
void WillStartServiceManager() override;
base::Optional<service_manager::Manifest> GetServiceManifestOverlay(
base::StringPiece name) override;
void OpenURL(
content::SiteInstance* site_instance,
const content::OpenURLParams& params,
Expand Down
1 change: 0 additions & 1 deletion chrome/service/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ static_library("service") {
"//components/cloud_devices/common",
"//components/network_session_configurator/browser",
"//components/printing/common",
"//content/public/app:service_manifests",
"//google_apis",
"//jingle:notifier",
"//mojo/public/cpp/platform",
Expand Down
5 changes: 0 additions & 5 deletions content/browser/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,6 @@ jumbo_source_set("browser") {
"//content/common",
"//content/common:buildflags",
"//content/common:mojo_bindings",
"//content/public/app:service_manifests",
"//content/public/browser:proto",
"//content/public/common:common_sources",
"//content/public/common:content_descriptor_keys",
Expand Down Expand Up @@ -606,8 +605,6 @@ jumbo_source_set("browser") {
"browsing_data/storage_partition_code_cache_data_remover.h",
"browsing_instance.cc",
"browsing_instance.h",
"builtin_service_manifests.cc",
"builtin_service_manifests.h",
"byte_stream.cc",
"byte_stream.h",
"cache_storage/cache_storage.cc",
Expand Down Expand Up @@ -1096,8 +1093,6 @@ jumbo_source_set("browser") {
"initiator_csp_context.h",
"installedapp/installed_app_provider_impl.cc",
"installedapp/installed_app_provider_impl.h",
"interface_provider_filtering.cc",
"interface_provider_filtering.h",
"isolated_origin_util.cc",
"isolated_origin_util.h",
"isolation_context.cc",
Expand Down
Loading

0 comments on commit 2a39758

Please sign in to comment.