summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/renderer/chrome_content_renderer_client.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
index 4b35e07..1dbe88d 100644
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -579,6 +579,19 @@ GURL ChromeContentRendererClient::GetNaClContentHandlerURL(
return GURL();
}
+// TODO(dschuff): remove this when ARM ABI is stable
+#if defined(__arm__) && defined(OS_CHROMEOS)
+static bool IsWhiteListedARM(const GURL& url) {
+ return
+ // QuickOffice
+ url.host() == "gbkeegbaiigmenfmjfclcdgdpimamgkj" ||
+ // ssh dev
+ url.host() == "okddffdblfhhnmhodogpojmfkjmhinfp" ||
+ // ssh stable
+ url.host() == "pnhechapfaindjhompbnflcldabbghjo";
+}
+#endif
+
// static
bool ChromeContentRendererClient::IsNaClAllowed(
const GURL& manifest_url,
@@ -599,15 +612,15 @@ bool ChromeContentRendererClient::IsNaClAllowed(
// under development, invocations from whitelisted URLs, and all invocations
// if --enable-nacl is set.
bool is_nacl_allowed =
-#if defined(__arm__)
+#if defined(__arm__) && defined(OS_CHROMEOS)
// The ARM ABI is not quite stable, so only allow NaCl for
// unrestricted extensions (i.e. built-in and under development),
- // and for the QuickOffice webstore app.
+ // and for certain whitelisted webstore apps.
// See http://crbug.com/145694
// TODO(dschuff): remove this when the ABI is stable
(is_extension_from_webstore &&
manifest_url.SchemeIs("chrome-extension") &&
- manifest_url.host() == "gbkeegbaiigmenfmjfclcdgdpimamgkj") ||
+ IsWhiteListedARM(manifest_url) ||
#else
is_extension_from_webstore ||
is_whitelisted_url ||