diff options
author | jstritar@chromium.org <jstritar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-09 00:07:38 +0000 |
---|---|---|
committer | jstritar@chromium.org <jstritar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-09 00:07:38 +0000 |
commit | a446534de1a24cbfe8858a9958dd22383f1b49d1 (patch) | |
tree | 7fd6623fdf1d7a14f88289330f29eabac67f8ca2 /chrome/browser/chrome_content_browser_client.cc | |
parent | 2d03c44237c6802ab1695ccb697300542de714ca (diff) | |
download | chromium_src-a446534de1a24cbfe8858a9958dd22383f1b49d1.zip chromium_src-a446534de1a24cbfe8858a9958dd22383f1b49d1.tar.gz chromium_src-a446534de1a24cbfe8858a9958dd22383f1b49d1.tar.bz2 |
Add a centralized mechanism for whitelisting access to extension permissions.
This also updates the following permissions to use the whitelist:
- terminalPrivate
- webSocketProxyPrivate
- chromePrivate
- inputMethodPrivate
- chromeAuthPrivate
- webstorePrivate
Includes more tests to verify that Extension loading fails for different permission parameters:
- by extension type
- component only flag
- whitelists
BUG=84211, 111314
TEST=extension unit and browser tests
Review URL: http://codereview.chromium.org/9317013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121111 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chrome_content_browser_client.cc')
-rw-r--r-- | chrome/browser/chrome_content_browser_client.cc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc index c7c1f6c..2c4ce12 100644 --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc @@ -658,15 +658,19 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( switches::kProfilingFile, switches::kProfilingFlush, switches::kSilentDumpOnDCHECK, + switches::kWhitelistedExtensionID, }; command_line->CopySwitchesFrom(browser_command_line, kSwitchNames, arraysize(kSwitchNames)); } else if (process_type == switches::kUtilityProcess) { - if (browser_command_line.HasSwitch( - switches::kEnableExperimentalExtensionApis)) { - command_line->AppendSwitch(switches::kEnableExperimentalExtensionApis); - } + static const char* const kSwitchNames[] = { + switches::kEnableExperimentalExtensionApis, + switches::kWhitelistedExtensionID, + }; + + command_line->CopySwitchesFrom(browser_command_line, kSwitchNames, + arraysize(kSwitchNames)); } else if (process_type == switches::kPluginProcess) { static const char* const kSwitchNames[] = { #if defined(OS_CHROMEOS) |