summaryrefslogtreecommitdiffstats
path: root/components
diff options
context:
space:
mode:
Diffstat (limited to 'components')
-rw-r--r--components/content_settings.gypi21
-rw-r--r--components/content_settings/DEPS5
-rw-r--r--components/content_settings/content/DEPS4
-rw-r--r--components/content_settings/content/common/BUILD.gn19
-rw-r--r--components/content_settings/content/common/DEPS3
-rw-r--r--components/content_settings/content/common/OWNERS14
-rw-r--r--components/content_settings/content/common/content_settings_message_generator.cc33
-rw-r--r--components/content_settings/content/common/content_settings_message_generator.h7
-rw-r--r--components/content_settings/content/common/content_settings_messages.h94
9 files changed, 200 insertions, 0 deletions
diff --git a/components/content_settings.gypi b/components/content_settings.gypi
index b0fca08..89f2b1a 100644
--- a/components/content_settings.gypi
+++ b/components/content_settings.gypi
@@ -102,5 +102,26 @@
'content_settings/core/test/content_settings_test_utils.h',
],
},
+ {
+ # GN version: //components/content_settings/content/common
+ 'target_name': 'content_settings_content_common',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'content_settings_core_common',
+ '../base/base.gyp:base',
+ '../content/content.gyp:content_common',
+ '../ipc/ipc.gyp:ipc',
+ '../url/url.gyp:url_lib',
+ ],
+ 'include_dirs': [
+ '..',
+ ],
+ 'sources': [
+ # Note: sources list duplicated in GN build.
+ 'content_settings/content/common/content_settings_message_generator.cc',
+ 'content_settings/content/common/content_settings_message_generator.h',
+ 'content_settings/content/common/content_settings_messages.h',
+ ],
+ },
],
}
diff --git a/components/content_settings/DEPS b/components/content_settings/DEPS
new file mode 100644
index 0000000..df72508
--- /dev/null
+++ b/components/content_settings/DEPS
@@ -0,0 +1,5 @@
+include_rules = [
+ # Content settings is a layered component; subdirectories must explicitly
+ # introduce the ability to use the content layer as appropriate.
+ "-components/content_settings/content",
+]
diff --git a/components/content_settings/content/DEPS b/components/content_settings/content/DEPS
new file mode 100644
index 0000000..09645ae
--- /dev/null
+++ b/components/content_settings/content/DEPS
@@ -0,0 +1,4 @@
+include_rules = [
+ "+components/content_settings/content/common",
+ "+ipc",
+]
diff --git a/components/content_settings/content/common/BUILD.gn b/components/content_settings/content/common/BUILD.gn
new file mode 100644
index 0000000..5da2f62
--- /dev/null
+++ b/components/content_settings/content/common/BUILD.gn
@@ -0,0 +1,19 @@
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+source_set("common") {
+ sources = [
+ "content_settings_message_generator.cc",
+ "content_settings_message_generator.h",
+ "content_settings_messages.h",
+ ]
+
+ deps = [
+ "//base",
+ "//components/content_settings/core/common",
+ "//content/public/common",
+ "//ipc",
+ "//url",
+ ]
+}
diff --git a/components/content_settings/content/common/DEPS b/components/content_settings/content/common/DEPS
new file mode 100644
index 0000000..d5923ee
--- /dev/null
+++ b/components/content_settings/content/common/DEPS
@@ -0,0 +1,3 @@
+include_rules = [
+ "+content/public/common",
+]
diff --git a/components/content_settings/content/common/OWNERS b/components/content_settings/content/common/OWNERS
new file mode 100644
index 0000000..98c0978
--- /dev/null
+++ b/components/content_settings/content/common/OWNERS
@@ -0,0 +1,14 @@
+# Changes to IPC messages require a security review to avoid introducing
+# new sandbox escapes.
+per-file *_messages*.h=set noparent
+per-file *_messages*.h=dcheng@chromium.org
+per-file *_messages*.h=inferno@chromium.org
+per-file *_messages*.h=jln@chromium.org
+per-file *_messages*.h=jorgelo@chromium.org
+per-file *_messages*.h=jschuh@chromium.org
+per-file *_messages*.h=kenrb@chromium.org
+per-file *_messages*.h=mkwst@chromium.org
+per-file *_messages*.h=nasko@chromium.org
+per-file *_messages*.h=palmer@chromium.org
+per-file *_messages*.h=tsepez@chromium.org
+per-file *_messages*.h=wfh@chromium.org
diff --git a/components/content_settings/content/common/content_settings_message_generator.cc b/components/content_settings/content/common/content_settings_message_generator.cc
new file mode 100644
index 0000000..7e00666
--- /dev/null
+++ b/components/content_settings/content/common/content_settings_message_generator.cc
@@ -0,0 +1,33 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Get basic type definitions.
+#define IPC_MESSAGE_IMPL
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+
+// Generate constructors.
+#include "ipc/struct_constructor_macros.h"
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+
+// Generate destructors.
+#include "ipc/struct_destructor_macros.h"
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+
+// Generate param traits write methods.
+#include "ipc/param_traits_write_macros.h"
+namespace IPC {
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+} // namespace IPC
+
+// Generate param traits read methods.
+#include "ipc/param_traits_read_macros.h"
+namespace IPC {
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+} // namespace IPC
+
+// Generate param traits log methods.
+#include "ipc/param_traits_log_macros.h"
+namespace IPC {
+#include "components/content_settings/content/common/content_settings_message_generator.h"
+} // namespace IPC
diff --git a/components/content_settings/content/common/content_settings_message_generator.h b/components/content_settings/content/common/content_settings_message_generator.h
new file mode 100644
index 0000000..322fbae
--- /dev/null
+++ b/components/content_settings/content/common/content_settings_message_generator.h
@@ -0,0 +1,7 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Multiply-included file, hence no include guard.
+
+#include "components/content_settings/content/common/content_settings_messages.h"
diff --git a/components/content_settings/content/common/content_settings_messages.h b/components/content_settings/content/common/content_settings_messages.h
new file mode 100644
index 0000000..82fee04
--- /dev/null
+++ b/components/content_settings/content/common/content_settings_messages.h
@@ -0,0 +1,94 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Multiply-included file, no traditional include guard.
+#include "base/strings/string16.h"
+#include "components/content_settings/core/common/content_settings_types.h"
+#include "content/public/common/common_param_traits.h"
+#include "content/public/common/common_param_traits_macros.h"
+#include "ipc/ipc_message_macros.h"
+#include "url/gurl.h"
+
+#define IPC_MESSAGE_START ContentSettingsMsgStart
+
+IPC_ENUM_TRAITS_MAX_VALUE(ContentSettingsType, CONTENT_SETTINGS_NUM_TYPES - 1)
+
+//-----------------------------------------------------------------------------
+// These are messages sent from the browser to the renderer process.
+
+// Sent in response to ViewHostMsg_DidBlockDisplayingInsecureContent.
+IPC_MESSAGE_ROUTED1(ChromeViewMsg_SetAllowDisplayingInsecureContent,
+ bool /* allowed */)
+
+// Sent in response to ViewHostMsg_DidBlockRunningInsecureContent.
+IPC_MESSAGE_ROUTED1(ChromeViewMsg_SetAllowRunningInsecureContent,
+ bool /* allowed */)
+
+IPC_MESSAGE_ROUTED0(ChromeViewMsg_ReloadFrame)
+
+// Tells the renderer whether or not a file system access has been allowed.
+IPC_MESSAGE_ROUTED2(ChromeViewMsg_RequestFileSystemAccessAsyncResponse,
+ int /* request_id */,
+ bool /* allowed */)
+
+// Tells the renderer that the NPAPI cannot be used. For example Ash on windows.
+IPC_MESSAGE_ROUTED0(ChromeViewMsg_NPAPINotSupported)
+
+// Tells the render frame to load all blocked plugins with the given identifier.
+IPC_MESSAGE_ROUTED1(ChromeViewMsg_LoadBlockedPlugins,
+ std::string /* identifier */)
+
+// JavaScript related messages -----------------------------------------------
+
+// Tells the frame it is displaying an interstitial page.
+IPC_MESSAGE_ROUTED0(ChromeViewMsg_SetAsInterstitial)
+
+//-----------------------------------------------------------------------------
+// These are messages sent from the renderer to the browser process.
+
+// Tells the browser that content in the current page was blocked due to the
+// user's content settings.
+IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_ContentBlocked,
+ ContentSettingsType /* type of blocked content */,
+ base::string16 /* details on blocked content */)
+
+// Sent by the renderer process to check whether access to web databases is
+// granted by content settings.
+IPC_SYNC_MESSAGE_CONTROL5_1(ChromeViewHostMsg_AllowDatabase,
+ int /* render_frame_id */,
+ GURL /* origin_url */,
+ GURL /* top origin url */,
+ base::string16 /* database name */,
+ base::string16 /* database display name */,
+ bool /* allowed */)
+
+// Sent by the renderer process to check whether access to DOM Storage is
+// granted by content settings.
+IPC_SYNC_MESSAGE_CONTROL4_1(ChromeViewHostMsg_AllowDOMStorage,
+ int /* render_frame_id */,
+ GURL /* origin_url */,
+ GURL /* top origin url */,
+ bool /* if true local storage, otherwise session */,
+ bool /* allowed */)
+
+// Sent by the renderer process to check whether access to FileSystem is
+// granted by content settings.
+IPC_MESSAGE_CONTROL4(ChromeViewHostMsg_RequestFileSystemAccessAsync,
+ int /* render_frame_id */,
+ int /* request_id */,
+ GURL /* origin_url */,
+ GURL /* top origin url */)
+
+// Sent by the renderer process to check whether access to Indexed DBis
+// granted by content settings.
+IPC_SYNC_MESSAGE_CONTROL4_1(ChromeViewHostMsg_AllowIndexedDB,
+ int /* render_frame_id */,
+ GURL /* origin_url */,
+ GURL /* top origin url */,
+ base::string16 /* database name */,
+ bool /* allowed */)
+
+// Sent when the renderer was prevented from displaying insecure content in
+// a secure page by a security policy. The page may appear incomplete.
+IPC_MESSAGE_ROUTED0(ChromeViewHostMsg_DidBlockDisplayingInsecureContent)