summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authormnissler@chromium.org <mnissler@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-28 17:00:05 +0000
committermnissler@chromium.org <mnissler@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-28 17:00:05 +0000
commit96da69d1ae43ad3feff0ac96a280d3212467f9b5 (patch)
tree3c8b83290df5b91ff21136526d3af0c540edb40c /chrome
parentbdd7b6c7623a76cc51b131b1b43685c7752b5f1a (diff)
downloadchromium_src-96da69d1ae43ad3feff0ac96a280d3212467f9b5.zip
chromium_src-96da69d1ae43ad3feff0ac96a280d3212467f9b5.tar.gz
chromium_src-96da69d1ae43ad3feff0ac96a280d3212467f9b5.tar.bz2
Retire ClearSiteDataOnExit policy.
BUG=chromium:133291 TEST=Still compiles. Review URL: https://chromiumcodereview.appspot.com/15199006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202585 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/app/policy/policy_templates.json10
-rw-r--r--chrome/browser/policy/configuration_policy_handler.cc65
-rw-r--r--chrome/browser/policy/configuration_policy_handler.h25
-rw-r--r--chrome/browser/policy/configuration_policy_handler_list.cc1
-rw-r--r--chrome/browser/policy/configuration_policy_handler_unittest.cc53
-rw-r--r--chrome/browser/policy/policy_browsertest.cc10
-rw-r--r--chrome/test/data/policy/policy_test_cases.json14
7 files changed, 8 insertions, 170 deletions
diff --git a/chrome/app/policy/policy_templates.json b/chrome/app/policy/policy_templates.json
index cbf3dfb..e03c30a 100644
--- a/chrome/app/policy/policy_templates.json
+++ b/chrome/app/policy/policy_templates.json
@@ -995,7 +995,7 @@
'name': 'ClearSiteDataOnExit',
'type': 'main',
'schema': { 'type': 'boolean' },
- 'supported_on': ['chrome.*:11-', 'chrome_os:0.11-'],
+ 'supported_on': ['chrome.*:11-29', 'chrome_os:0.11-0.29'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
@@ -1005,13 +1005,7 @@
'example_value': True,
'id': 65,
'caption': '''Clear site data on browser shutdown (deprecated)''',
- 'desc': '''This policy is an override for the "Clear cookies and other site data when I close my browser" content settings option that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> supported prior to version 21.
-
- This policy exists only for backward-compatibility and will go away in the future. The recommended way to clear site data on exit on version 21 and later is to configure the DefaultCookiesSetting policy to session-only.
-
- If this policy is enabled it will be translated to the appropriate policy setting for the DefaultCookiesSetting policy, setting it to session-only if the DefaultCookiesSetting policy is not configured or set to Allow.
-
- If this policy is disabled or left unconfigured the policy for storing site data is determined by the DefaultCookiesSetting policy.''',
+ 'desc': '''This policy has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 29.''',
'label': '''Clear site data on browser shutdown (deprecated)''',
},
{
diff --git a/chrome/browser/policy/configuration_policy_handler.cc b/chrome/browser/policy/configuration_policy_handler.cc
index ebe09be..f9a3485 100644
--- a/chrome/browser/policy/configuration_policy_handler.cc
+++ b/chrome/browser/policy/configuration_policy_handler.cc
@@ -1392,71 +1392,6 @@ void JavascriptPolicyHandler::ApplyPolicySettings(const PolicyMap& policies,
}
}
-// ClearSiteDataOnExitPolicyHandler implementation -----------------------------
-
-ClearSiteDataOnExitPolicyHandler::ClearSiteDataOnExitPolicyHandler()
- : TypeCheckingPolicyHandler(key::kClearSiteDataOnExit,
- Value::TYPE_BOOLEAN) {
-}
-
-ClearSiteDataOnExitPolicyHandler::~ClearSiteDataOnExitPolicyHandler() {
-}
-
-bool ClearSiteDataOnExitPolicyHandler::CheckPolicySettings(
- const PolicyMap& policies,
- PolicyErrorMap* errors) {
- ContentSetting content_setting = CONTENT_SETTING_DEFAULT;
- if (ClearSiteDataEnabled(policies) &&
- GetContentSetting(policies, &content_setting) &&
- content_setting == CONTENT_SETTING_ALLOW) {
- errors->AddError(key::kDefaultCookiesSetting,
- IDS_POLICY_OVERRIDDEN,
- policy_name());
- }
-
- return TypeCheckingPolicyHandler::CheckPolicySettings(policies, errors);
-}
-
-void ClearSiteDataOnExitPolicyHandler::ApplyPolicySettings(
- const PolicyMap& policies,
- PrefValueMap* prefs) {
- if (ClearSiteDataEnabled(policies)) {
- ContentSetting content_setting = CONTENT_SETTING_DEFAULT;
- if (!GetContentSetting(policies, &content_setting) ||
- content_setting == CONTENT_SETTING_ALLOW) {
- prefs->SetValue(
- prefs::kManagedDefaultCookiesSetting,
- Value::CreateIntegerValue(CONTENT_SETTING_SESSION_ONLY));
- }
- }
-}
-
-bool ClearSiteDataOnExitPolicyHandler::ClearSiteDataEnabled(
- const PolicyMap& policies) {
- const base::Value* value = NULL;
- PolicyErrorMap errors;
- bool clear_site_data = false;
-
- return (CheckAndGetValue(policies, &errors, &value) &&
- value &&
- value->GetAsBoolean(&clear_site_data) &&
- clear_site_data);
-}
-
-// static
-bool ClearSiteDataOnExitPolicyHandler::GetContentSetting(
- const PolicyMap& policies,
- ContentSetting* content_setting) {
- const base::Value* value = policies.GetValue(key::kDefaultCookiesSetting);
- int setting = CONTENT_SETTING_DEFAULT;
- if (value && value->GetAsInteger(&setting)) {
- *content_setting = static_cast<ContentSetting>(setting);
- return true;
- }
-
- return false;
-}
-
// RestoreOnStartupPolicyHandler implementation --------------------------------
RestoreOnStartupPolicyHandler::RestoreOnStartupPolicyHandler()
diff --git a/chrome/browser/policy/configuration_policy_handler.h b/chrome/browser/policy/configuration_policy_handler.h
index 4715b04..5fce9ac 100644
--- a/chrome/browser/policy/configuration_policy_handler.h
+++ b/chrome/browser/policy/configuration_policy_handler.h
@@ -500,31 +500,6 @@ class JavascriptPolicyHandler : public ConfigurationPolicyHandler {
DISALLOW_COPY_AND_ASSIGN(JavascriptPolicyHandler);
};
-// Handles the (deprecated) ClearSiteDataOnExit policy.
-// TODO(mnissler): Remove the policy eventually (http://crbug.com/133291).
-class ClearSiteDataOnExitPolicyHandler : public TypeCheckingPolicyHandler {
- public:
- ClearSiteDataOnExitPolicyHandler();
- virtual ~ClearSiteDataOnExitPolicyHandler();
-
- // ConfigurationPolicyHandler methods:
- virtual bool CheckPolicySettings(const PolicyMap& policies,
- PolicyErrorMap* errors) OVERRIDE;
- virtual void ApplyPolicySettings(const PolicyMap& policies,
- PrefValueMap* prefs) OVERRIDE;
-
- private:
- // Checks whether the clear site data policy is enabled in |policies|.
- bool ClearSiteDataEnabled(const PolicyMap& policies);
-
- // Checks |policies| for the cookies setting and returns it in
- // |content_setting|. Returns true if the setting is found, false if not.
- static bool GetContentSetting(const PolicyMap& policies,
- ContentSetting* content_setting);
-
- DISALLOW_COPY_AND_ASSIGN(ClearSiteDataOnExitPolicyHandler);
-};
-
// Handles RestoreOnStartup policy.
class RestoreOnStartupPolicyHandler : public TypeCheckingPolicyHandler {
public:
diff --git a/chrome/browser/policy/configuration_policy_handler_list.cc b/chrome/browser/policy/configuration_policy_handler_list.cc
index 0a09e68..a6ae7f1 100644
--- a/chrome/browser/policy/configuration_policy_handler_list.cc
+++ b/chrome/browser/policy/configuration_policy_handler_list.cc
@@ -416,7 +416,6 @@ ConfigurationPolicyHandlerList::ConfigurationPolicyHandlerList() {
}
handlers_.push_back(new AutofillPolicyHandler());
- handlers_.push_back(new ClearSiteDataOnExitPolicyHandler());
handlers_.push_back(new DefaultSearchPolicyHandler());
handlers_.push_back(new DiskCacheDirPolicyHandler());
handlers_.push_back(new FileSelectionDialogsHandler());
diff --git a/chrome/browser/policy/configuration_policy_handler_unittest.cc b/chrome/browser/policy/configuration_policy_handler_unittest.cc
index 95e5256..a57f1fb 100644
--- a/chrome/browser/policy/configuration_policy_handler_unittest.cc
+++ b/chrome/browser/policy/configuration_policy_handler_unittest.cc
@@ -686,57 +686,4 @@ TEST(ExtensionURLPatternListPolicyHandlerTest, ApplyPolicySettings) {
EXPECT_TRUE(base::Value::Equals(&list, value));
}
-TEST(ClearSiteDataOnExitPolicyHandlerTest, CheckPolicySettings) {
- ClearSiteDataOnExitPolicyHandler handler;
- PolicyMap policy_map;
- PolicyErrorMap errors;
-
- EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
- EXPECT_TRUE(errors.empty());
-
- policy_map.Set(key::kClearSiteDataOnExit, POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_USER, base::Value::CreateBooleanValue(true));
- errors.Clear();
- EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
- EXPECT_TRUE(errors.empty());
-
- policy_map.Set(key::kDefaultCookiesSetting, POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_USER,
- base::Value::CreateIntegerValue(CONTENT_SETTING_ALLOW));
- errors.Clear();
- EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
- EXPECT_FALSE(errors.empty());
- EXPECT_FALSE(errors.GetErrors(key::kDefaultCookiesSetting).empty());
-}
-
-TEST(ClearSiteDataOnExitPolicyHandlerTest, ApplyPolicySettings) {
- ClearSiteDataOnExitPolicyHandler handler;
- PolicyMap policy_map;
- PrefValueMap prefs;
- const base::Value* val = NULL;
-
- handler.ApplyPolicySettings(policy_map, &prefs);
- EXPECT_FALSE(prefs.GetValue(prefs::kManagedDefaultCookiesSetting, &val));
-
- policy_map.Set(key::kClearSiteDataOnExit, POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_USER, base::Value::CreateBooleanValue(true));
- prefs.Clear();
- handler.ApplyPolicySettings(policy_map, &prefs);
- ASSERT_TRUE(prefs.GetValue(prefs::kManagedDefaultCookiesSetting, &val));
- EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_SESSION_ONLY).Equals(val));
-
- policy_map.Set(key::kDefaultCookiesSetting, POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_USER,
- base::Value::CreateIntegerValue(CONTENT_SETTING_ALLOW));
- prefs.Clear();
- handler.ApplyPolicySettings(policy_map, &prefs);
- ASSERT_TRUE(prefs.GetValue(prefs::kManagedDefaultCookiesSetting, &val));
- EXPECT_TRUE(base::FundamentalValue(CONTENT_SETTING_SESSION_ONLY).Equals(val));
-
- policy_map.Clear();
- prefs.Clear();
- handler.ApplyPolicySettings(policy_map, &prefs);
- EXPECT_FALSE(prefs.GetValue(prefs::kManagedDefaultCookiesSetting, &val));
-}
-
} // namespace policy
diff --git a/chrome/browser/policy/policy_browsertest.cc b/chrome/browser/policy/policy_browsertest.cc
index 4debe91..1f420d7 100644
--- a/chrome/browser/policy/policy_browsertest.cc
+++ b/chrome/browser/policy/policy_browsertest.cc
@@ -681,7 +681,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, BookmarkBarEnabled) {
EXPECT_EQ(BookmarkBar::DETACHED, browser()->bookmark_bar_state());
}
-IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_PRE_ClearSiteDataOnExit) {
+IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_PRE_DefaultCookiesSetting) {
// Verifies that cookies are deleted on shutdown. This test is split in 3
// parts because it spans 2 browser restarts.
@@ -696,17 +696,17 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_PRE_ClearSiteDataOnExit) {
EXPECT_EQ(kCookieValue, GetCookies(profile, url));
}
-IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_ClearSiteDataOnExit) {
+IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_DefaultCookiesSetting) {
// Verify that the cookie persists across restarts.
EXPECT_EQ(kCookieValue, GetCookies(browser()->profile(), GURL(kURL)));
// Now set the policy and the cookie should be gone after another restart.
PolicyMap policies;
- policies.Set(key::kClearSiteDataOnExit, POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_USER, base::Value::CreateBooleanValue(true));
+ policies.Set(key::kDefaultCookiesSetting, POLICY_LEVEL_MANDATORY,
+ POLICY_SCOPE_USER, base::Value::CreateIntegerValue(4));
UpdateProviderPolicy(policies);
}
-IN_PROC_BROWSER_TEST_F(PolicyTest, ClearSiteDataOnExit) {
+IN_PROC_BROWSER_TEST_F(PolicyTest, DefaultCookiesSetting) {
// Verify that the cookie is gone.
EXPECT_TRUE(GetCookies(browser()->profile(), GURL(kURL)).empty());
}
diff --git a/chrome/test/data/policy/policy_test_cases.json b/chrome/test/data/policy/policy_test_cases.json
index 9d8bb8e..acb4b5b 100644
--- a/chrome/test/data/policy/policy_test_cases.json
+++ b/chrome/test/data/policy/policy_test_cases.json
@@ -415,19 +415,7 @@
},
"ClearSiteDataOnExit": {
- "os": ["win", "linux", "mac", "chromeos"],
- "test_policy": { "ClearSiteDataOnExit": true },
- "pref_mappings": [
- { "pref": "profile.managed_default_content_settings.cookies",
- "indicator_selector": "[content-setting=cookies]",
- "indicator_tests": [
- { "policy": { "ClearSiteDataOnExit": true },
- "value": "session"}
- ]
- }
- ],
-
- "note": "TODO(bartfab): Flag this with can_be_recommended when http://crbug.com/106682 is fixed."
+ "note": "This policy is retired, see http://crbug.com/133291."
},
"ProxyMode": {