From 9fec137c83b849a57c6a5a712303cfc6eb0bd5fe Mon Sep 17 00:00:00 2001 From: "chase@chromium.org" Date: Mon, 20 Dec 2010 21:54:58 +0000 Subject: Revert 69753 - Added group policy for disabling all client-side 3D APIs in Chromium (in particular, WebGL and Pepper 3D). This has been hooked up through a new command-line argument (--disable-3d-apis) orthogonal to the existing ones, so that further changes to those command line arguments will not accidentally regress the group policy support. Tested in the following ways: - Verified that --disable-3d-apis disables WebGL and Pepper 3D support on Mac OS X. - Verified that specifying the Disable3DAPIs policy via a JSON file disables WebGL on Linux. - Ran unit_tests and verified that there were no failures introduced. BUG=64806 TEST=ConfigurationPolicyPrefStoreBooleanTest Review URL: http://codereview.chromium.org/5991003 TBR=kbr@chromium.org Review URL: http://codereview.chromium.org/6027004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69759 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/common/chrome_switches.cc | 6 ------ chrome/common/chrome_switches.h | 1 - chrome/common/policy_constants.cc | 1 - chrome/common/policy_constants.h | 1 - chrome/common/pref_names.cc | 3 --- chrome/common/pref_names.h | 2 -- chrome/common/sandbox_init_wrapper_mac.cc | 3 +-- chrome/common/sandbox_policy.cc | 3 +-- 8 files changed, 2 insertions(+), 18 deletions(-) (limited to 'chrome/common') diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc index 7a64479..84236bb 100644 --- a/chrome/common/chrome_switches.cc +++ b/chrome/common/chrome_switches.cc @@ -139,12 +139,6 @@ const char kDeviceManagementUrl[] = "device-management-url"; // Triggers a pletora of diagnostic modes. const char kDiagnostics[] = "diagnostics"; -// Disables client-visible 3D APIs, in particular WebGL and Pepper 3D. -// This is controlled by policy and is kept separate from the other -// enable/disable switches to avoid accidentally regressing the policy -// support for controlling access to these APIs. -const char kDisable3DAPIs[] = "disable-3d-apis"; - // Disables accelerated compositing. const char kDisableAcceleratedCompositing[] = "disable-accelerated-compositing"; diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h index 1ddf692..2a3f11d35 100644 --- a/chrome/common/chrome_switches.h +++ b/chrome/common/chrome_switches.h @@ -52,7 +52,6 @@ extern const char kCountry[]; extern const char kDebugPrint[]; extern const char kDeviceManagementUrl[]; extern const char kDiagnostics[]; -extern const char kDisable3DAPIs[]; extern const char kDisableAcceleratedCompositing[]; extern const char kDisableAltWinstation[]; extern const char kDisableApplicationCache[]; diff --git a/chrome/common/policy_constants.cc b/chrome/common/policy_constants.cc index 300b450..8fcad63 100644 --- a/chrome/common/policy_constants.cc +++ b/chrome/common/policy_constants.cc @@ -71,7 +71,6 @@ const char kEnableAuthNegotiatePort[] = "EnableAuthNegotiatePort"; const char kAuthServerWhitelist[] = "AuthServerWhitelist"; const char kAuthNegotiateDelegateWhitelist[] = "AuthNegotiateDelegateWhitelist"; const char kGSSAPILibraryName[] = "GSSAPILibraryName"; -const char kDisable3DAPIs[] = "Disable3DAPIs"; // Chrome Frame specific policy constants const char kChromeFrameRendererSettings[] = "ChromeFrameRendererSettings"; diff --git a/chrome/common/policy_constants.h b/chrome/common/policy_constants.h index a1e2a83..318e27c 100644 --- a/chrome/common/policy_constants.h +++ b/chrome/common/policy_constants.h @@ -67,7 +67,6 @@ extern const char kEnableAuthNegotiatePort[]; extern const char kAuthServerWhitelist[]; extern const char kAuthNegotiateDelegateWhitelist[]; extern const char kGSSAPILibraryName[]; -extern const char kDisable3DAPIs[]; // Chrome Frame specific policy constants extern const char kChromeFrameRendererSettings[]; diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc index c4af1e1..11203d8 100644 --- a/chrome/common/pref_names.cc +++ b/chrome/common/pref_names.cc @@ -631,9 +631,6 @@ const char kGeolocationDefaultContentSetting[] = // Dictionary that maps [frame, toplevel] to their Geolocation content setting. const char kGeolocationContentSettings[] = "geolocation.content_settings"; -// Preference to disable 3D APIs (WebGL, Pepper 3D). -const char kDisable3DAPIs[] = "disable_3d_apis"; - // *************** LOCAL STATE *************** // These are attached to the machine/installation diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h index 6e4a47d..4dcaad5 100644 --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h @@ -438,8 +438,6 @@ extern const char kGSSAPILibraryName[]; extern const char kKnownBackgroundPages[]; -extern const char kDisable3DAPIs[]; - } // namespace prefs #endif // CHROME_COMMON_PREF_NAMES_H_ diff --git a/chrome/common/sandbox_init_wrapper_mac.cc b/chrome/common/sandbox_init_wrapper_mac.cc index b9cfa50..540b6da 100644 --- a/chrome/common/sandbox_init_wrapper_mac.cc +++ b/chrome/common/sandbox_init_wrapper_mac.cc @@ -24,8 +24,7 @@ bool SandboxInitWrapper::InitializeSandbox(const CommandLine& command_line, // Browser process isn't sandboxed. return true; } else if (process_type == switches::kRendererProcess) { - if (!command_line.HasSwitch(switches::kDisable3DAPIs) && - !command_line.HasSwitch(switches::kDisableExperimentalWebGL) && + if (!command_line.HasSwitch(switches::kDisableExperimentalWebGL) && command_line.HasSwitch(switches::kInProcessWebGL)) { // TODO(kbr): this check seems to be necessary only on this // platform because the sandbox is initialized later. Remove diff --git a/chrome/common/sandbox_policy.cc b/chrome/common/sandbox_policy.cc index 2667cf9..2b932d0 100644 --- a/chrome/common/sandbox_policy.cc +++ b/chrome/common/sandbox_policy.cc @@ -546,8 +546,7 @@ base::ProcessHandle StartProcessWithAccess(CommandLine* cmd_line, in_sandbox = false; } #endif - if (!browser_command_line.HasSwitch(switches::kDisable3DAPIs) && - !browser_command_line.HasSwitch(switches::kDisableExperimentalWebGL) && + if (!browser_command_line.HasSwitch(switches::kDisableExperimentalWebGL) && browser_command_line.HasSwitch(switches::kInProcessWebGL)) { // In process WebGL won't work if the sandbox is enabled. in_sandbox = false; -- cgit v1.1