Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(224)

Unified Diff: chrome_frame/chrome_frame_npapi.cc

Issue 6756044: Remove extension automation support that was used only by CEEE. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to lkgr. Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome_frame/chrome_frame_npapi.cc
diff --git a/chrome_frame/chrome_frame_npapi.cc b/chrome_frame/chrome_frame_npapi.cc
index b503e35c659335ede54091113f686ca0bb5c657b..1dff49b16fbf109564a7c00c03ab1f2e19e50517 100644
--- a/chrome_frame/chrome_frame_npapi.cc
+++ b/chrome_frame/chrome_frame_npapi.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 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.
@@ -55,25 +55,16 @@ const NPUTF8* ChromeFrameNPAPI::plugin_property_identifier_names_[] = {
"onprivatemessage",
"usechromenetwork",
"onclose",
- "sessionid",
};
const NPUTF8* ChromeFrameNPAPI::plugin_method_identifier_names_[] = {
"postMessage",
"postPrivateMessage",
- "installExtension",
- "loadExtension",
- "enableExtensionAutomation",
- "getEnabledExtensions"
};
ChromeFrameNPAPI::PluginMethod ChromeFrameNPAPI::plugin_methods_[] = {
&ChromeFrameNPAPI::postMessage,
&ChromeFrameNPAPI::postPrivateMessage,
- &ChromeFrameNPAPI::installExtension,
- &ChromeFrameNPAPI::loadExtension,
- &ChromeFrameNPAPI::enableExtensionAutomation,
- &ChromeFrameNPAPI::getEnabledExtensions,
};
NPIdentifier
@@ -112,10 +103,6 @@ static const char kPluginChromeExtraArguments[] = "chrome_extra_arguments";
// If privileged mode is enabled, the string value of this argument will
// be used as the profile name for our chrome.exe instance.
static const char kPluginChromeProfileName[] = "chrome_profile_name";
-// If privileged mode is enabled, this argument will be taken as a
-// comma-separated list of API function calls to automate.
-static const char kPluginChromeFunctionsAutomatedAttribute[] =
- "chrome_functions_automated";
// If chrome network stack is to be used
static const char kPluginUseChromeNetwork[] = "usechromenetwork";
@@ -215,13 +202,6 @@ bool ChromeFrameNPAPI::Initialize(NPMIMEType mime_type, NPP instance,
chrome_extra_arguments_arg = argv[i];
} else if (LowerCaseEqualsASCII(argn[i], kPluginChromeProfileName)) {
chrome_profile_name_arg = argv[i];
- } else if (LowerCaseEqualsASCII(argn[i],
- kPluginChromeFunctionsAutomatedAttribute)) {
- functions_enabled_.clear();
- // base::SplitString writes one empty entry for blank strings, so we need
- // this to allow specifying zero automation of API functions.
- if (argv[i][0] != '\0')
- base::SplitString(argv[i], ',', &functions_enabled_);
} else if (LowerCaseEqualsASCII(argn[i], kPluginUseChromeNetwork)) {
chrome_network_arg_set = true;
chrome_network_arg = atoi(argv[i]) ? true : false;
@@ -666,14 +646,6 @@ bool ChromeFrameNPAPI::GetProperty(NPIdentifier name,
plugin_property_identifiers_[PLUGIN_PROPERTY_USECHROMENETWORK]) {
BOOLEAN_TO_NPVARIANT(automation_client_->use_chrome_network(), *variant);
return true;
- } else if (name == plugin_property_identifiers_[PLUGIN_PROPERTY_SESSIONID]) {
- if (!is_privileged()) {
- DLOG(WARNING) << "Attempt to read sessionid property while not "
- "privileged";
- } else {
- INT32_TO_NPVARIANT(automation_client_->GetSessionId(), *variant);
- return true;
- }
}
return false;
@@ -1238,184 +1210,6 @@ bool ChromeFrameNPAPI::postPrivateMessage(NPObject* npobject,
return true;
}
-bool ChromeFrameNPAPI::installExtension(NPObject* npobject,
- const NPVariant* args,
- uint32_t arg_count,
- NPVariant* result) {
- if (arg_count > 2 || !NPVARIANT_IS_STRING(args[0]) ||
- (arg_count == 2 && !NPVARIANT_IS_OBJECT(args[1]))) {
- NOTREACHED();
- return false;
- }
-
- if (!is_privileged()) {
- DLOG(WARNING) << "installExtension invoked in non-privileged mode";
- return false;
- }
-
- if (!automation_client_.get()) {
- DLOG(WARNING) << "installExtension invoked with no automaton client";
- NOTREACHED();
- return false;
- }
-
- const NPString& crx_path_str = args[0].value.stringValue;
- std::string crx_path_a(crx_path_str.UTF8Characters, crx_path_str.UTF8Length);
- FilePath::StringType crx_path_u(UTF8ToWide(crx_path_a));
- FilePath crx_path(crx_path_u);
- NPObject* retained_function = npapi::RetainObject(args[1].value.objectValue);
-
- automation_client_->InstallExtension(crx_path, retained_function);
- // The response to this command will be returned in the OnExtensionInstalled
- // delegate callback function.
-
- return true;
-}
-
-void ChromeFrameNPAPI::OnExtensionInstalled(
- const FilePath& path,
- void* user_data,
- AutomationMsg_ExtensionResponseValues res) {
- ScopedNpVariant result;
- NPVariant param;
- INT32_TO_NPVARIANT(res, param);
- NPObject* func = reinterpret_cast<NPObject*>(user_data);
-
- InvokeDefault(func, param, &result);
- npapi::ReleaseObject(func);
-}
-
-bool ChromeFrameNPAPI::loadExtension(NPObject* npobject,
- const NPVariant* args,
- uint32_t arg_count,
- NPVariant* result) {
- if (arg_count > 2 || !NPVARIANT_IS_STRING(args[0]) ||
- (arg_count == 2 && !NPVARIANT_IS_OBJECT(args[1]))) {
- NOTREACHED();
- return false;
- }
-
- if (!is_privileged()) {
- DLOG(WARNING) << "loadExtension invoked in non-privileged mode";
- return false;
- }
-
- if (!automation_client_.get()) {
- DLOG(WARNING) << "loadExtension invoked with no automaton client";
- NOTREACHED();
- return false;
- }
-
- const NPString& path_str = args[0].value.stringValue;
- std::string path_a(path_str.UTF8Characters, path_str.UTF8Length);
- FilePath::StringType path_u(UTF8ToWide(path_a));
- FilePath path(path_u);
- NPObject* retained_function = npapi::RetainObject(args[1].value.objectValue);
-
- automation_client_->LoadExpandedExtension(path, retained_function);
- // The response to this command will be returned in the OnExtensionInstalled
- // delegate callback function.
-
- return true;
-}
-
-bool ChromeFrameNPAPI::enableExtensionAutomation(NPObject* npobject,
- const NPVariant* args,
- uint32_t arg_count,
- NPVariant* result) {
- if (arg_count > 1 || (arg_count == 1 && !NPVARIANT_IS_STRING(args[0]))) {
- NOTREACHED();
- return false;
- }
-
- if (!is_privileged()) {
- DLOG(WARNING) <<
- "enableExtensionAutomation invoked in non-privileged mode";
- return false;
- }
-
- if (!automation_client_.get()) {
- DLOG(WARNING) <<
- "enableExtensionAutomation invoked with no automaton client";
- NOTREACHED();
- return false;
- }
-
- if (!automation_client_->tab()) {
- DLOG(WARNING) << "enableExtensionAutomation invoked with no hosted tab";
- NOTREACHED();
- return false;
- }
-
- // Empty by default e.g. if no arguments passed.
- std::vector<std::string> functions;
-
- if (arg_count == 1) {
- const NPString& functions_str = args[0].value.stringValue;
- std::string functions_a(functions_str.UTF8Characters,
- functions_str.UTF8Length);
-
- // base::SplitString writes one empty entry for blank strings, so we need
- // this to allow specifying zero automation of API functions.
- if (functions_a[0] != '\0')
- base::SplitString(functions_a, ',', &functions);
- }
-
- automation_client_->tab()->SetEnableExtensionAutomation(functions);
- // This function returns no result.
-
- return true;
-}
-
-bool ChromeFrameNPAPI::getEnabledExtensions(NPObject* npobject,
- const NPVariant* args,
- uint32_t arg_count,
- NPVariant* result) {
- if (arg_count > 1 || !NPVARIANT_IS_OBJECT(args[0])) {
- NOTREACHED();
- return false;
- }
-
- if (!is_privileged()) {
- DLOG(WARNING) << "getEnabledExtensions invoked in non-privileged mode";
- return false;
- }
-
- if (!automation_client_.get()) {
- DLOG(WARNING) << "getEnabledExtensions invoked with no automaton client";
- NOTREACHED();
- return false;
- }
-
- NPObject* retained_function = npapi::RetainObject(args[0].value.objectValue);
-
- automation_client_->GetEnabledExtensions(retained_function);
- // The response to this command will be returned in the
- // OnGetEnabledExtensionsCompleted delegate callback function.
-
- return true;
-}
-
-void ChromeFrameNPAPI::OnGetEnabledExtensionsComplete(
- void* user_data,
- const std::vector<FilePath>& extension_directories) {
- std::vector<std::wstring> extension_paths;
- for (size_t i = 0; i < extension_directories.size(); ++i) {
- extension_paths.push_back(extension_directories[i].value());
- }
- std::wstring tab_delimited = JoinString(extension_paths, L'\t');
-
- std::string res = WideToUTF8(tab_delimited);
-
- ScopedNpVariant result;
- NPVariant param;
- STRINGN_TO_NPVARIANT(res.c_str(), res.length(), param);
-
- NPObject* func = reinterpret_cast<NPObject*>(user_data);
- InvokeDefault(func, param, &result);
- npapi::ReleaseObject(func);
-}
-
void ChromeFrameNPAPI::FireEvent(const std::string& event_type,
const std::string& data) {
NPVariant arg;
@@ -1520,4 +1314,3 @@ void ChromeFrameNPAPI::URLRedirectNotify(const char* url, int status,
url_fetcher_.UrlRedirectNotify(url, status, notify_data);
npapi::URLRedirectResponse(instance_, notify_data, false);
}
-

Powered by Google App Engine
This is Rietveld 408576698