Bug 1505172 - Remove references to devtools.debugger.forbid-certified-apps preference. r=jdescottes,jryans

MozReview-Commit-ID: JV8MXvIuXaa

Differential Revision: https://phabricator.services.mozilla.com/D11152

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Alexandre Poirot 2018-11-08 16:46:58 +00:00
Родитель 9345293ba7
Коммит 8e6a787c3d
7 изменённых файлов: 0 добавлений и 136 удалений

Просмотреть файл

@ -118,12 +118,6 @@
<!-- Runtime Details -->
<!ENTITY runtimedetails_title "Runtime Info">
<!ENTITY runtimedetails_adbIsRoot "ADB is root: ">
<!ENTITY runtimedetails_summonADBRoot "root device">
<!ENTITY runtimedetails_ADBRootWarning "(requires unlocked bootloader)">
<!ENTITY runtimedetails_unrestrictedPrivileges "Unrestricted DevTools privileges: ">
<!ENTITY runtimedetails_requestPrivileges "request higher privileges">
<!ENTITY runtimedetails_privilegesWarning "(Will reboot device. Requires root access.)">
<!-- Device Preferences and Settings -->
<!ENTITY device_typeboolean "Boolean">

Просмотреть файл

@ -3,24 +3,13 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
const {require} = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {});
const Services = require("Services");
const {AppManager} = require("devtools/client/webide/modules/app-manager");
const {Connection} = require("devtools/shared/client/connection-manager");
const {RuntimeTypes} = require("devtools/client/webide/modules/runtime-types");
const Strings = Services.strings.createBundle("chrome://devtools/locale/webide.properties");
const UNRESTRICTED_HELP_URL = "https://developer.mozilla.org/docs/Tools/WebIDE/Running_and_debugging_apps#Unrestricted_app_debugging_%28including_certified_apps_main_process_etc.%29";
window.addEventListener("load", function() {
document.querySelector("#close").onclick = CloseUI;
document.querySelector("#devtools-check button").onclick = EnableCertApps;
document.querySelector("#adb-check button").onclick = RootADB;
document.querySelector("#unrestricted-privileges").onclick = function() {
window.parent.UI.openInBrowser(UNRESTRICTED_HELP_URL);
};
AppManager.on("app-manager-update", OnAppManagerUpdate);
BuildUI();
CheckLockState();
}, {capture: true, once: true});
window.addEventListener("unload", function() {
@ -34,7 +23,6 @@ function CloseUI() {
function OnAppManagerUpdate(what) {
if (what == "connection" || what == "runtime-global-actors") {
BuildUI();
CheckLockState();
}
}
@ -67,79 +55,3 @@ function BuildUI() {
CloseUI();
}
}
function CheckLockState() {
const adbCheckResult = document.querySelector("#adb-check > .yesno");
const devtoolsCheckResult = document.querySelector("#devtools-check > .yesno");
const flipCertPerfButton = document.querySelector("#devtools-check button");
const flipCertPerfAction = document.querySelector("#devtools-check > .action");
const adbRootAction = document.querySelector("#adb-check > .action");
const sYes = Strings.GetStringFromName("runtimedetails_checkyes");
const sNo = Strings.GetStringFromName("runtimedetails_checkno");
const sNotUSB = Strings.GetStringFromName("runtimedetails_notUSBDevice");
flipCertPerfButton.setAttribute("disabled", "true");
flipCertPerfAction.setAttribute("hidden", "true");
adbRootAction.setAttribute("hidden", "true");
adbCheckResult.textContent = "";
devtoolsCheckResult.textContent = "";
if (AppManager.connection &&
AppManager.connection.status == Connection.Status.CONNECTED) {
// ADB check
if (AppManager.selectedRuntime.type === RuntimeTypes.USB) {
const device = AppManager.selectedRuntime.device;
if (device && device.summonRoot) {
device.isRoot().then(isRoot => {
if (isRoot) {
adbCheckResult.textContent = sYes;
flipCertPerfButton.removeAttribute("disabled");
} else {
adbCheckResult.textContent = sNo;
adbRootAction.removeAttribute("hidden");
}
}, console.error);
}
} else {
adbCheckResult.textContent = sNotUSB;
}
// forbid-certified-apps check
try {
const prefFront = AppManager.preferenceFront;
prefFront.getBoolPref("devtools.debugger.forbid-certified-apps").then(isForbidden => {
if (isForbidden) {
devtoolsCheckResult.textContent = sNo;
flipCertPerfAction.removeAttribute("hidden");
} else {
devtoolsCheckResult.textContent = sYes;
}
}, console.error);
} catch (e) {
// Exception. pref actor is only accessible if forbird-certified-apps is false
devtoolsCheckResult.textContent = sNo;
flipCertPerfAction.removeAttribute("hidden");
}
}
}
function EnableCertApps() {
const device = AppManager.selectedRuntime.device;
// TODO: Remove `network.disable.ipc.security` once bug 1125916 is fixed.
device.shell(
"stop b2g && " +
"cd /data/b2g/mozilla/*.default/ && " +
"echo 'user_pref(\"devtools.debugger.forbid-certified-apps\", false);' >> prefs.js && " +
"echo 'user_pref(\"dom.apps.developer_mode\", true);' >> prefs.js && " +
"echo 'user_pref(\"network.disable.ipc.security\", true);' >> prefs.js && " +
"echo 'user_pref(\"dom.webcomponents.shadowdom.enabled\", true);' >> prefs.js && " +
"start b2g"
);
}
function RootADB() {
const device = AppManager.selectedRuntime.device;
device.summonRoot().then(CheckLockState, console.error);
}

Просмотреть файл

@ -24,23 +24,6 @@
<h1>&runtimedetails_title;</h1>
<div id="devicePrivileges">
<p id="adb-check">
&runtimedetails_adbIsRoot;<span class="yesno"></span>
<div class="action">
<button>&runtimedetails_summonADBRoot;</button>
<em>&runtimedetails_ADBRootWarning;</em>
</div>
</p>
<p id="devtools-check">
<a id="unrestricted-privileges">&runtimedetails_unrestrictedPrivileges;</a><span class="yesno"></span>
<div class="action">
<button>&runtimedetails_requestPrivileges;</button>
<em>&runtimedetails_privilegesWarning;</em>
</div>
</p>
</div>
<table></table>
</body>
</html>

Просмотреть файл

@ -5,21 +5,3 @@
html, body {
background: white;
}
#devicePrivileges {
font-family: monospace;
padding-left: 6px;
}
#devtools-check > a {
color: #4C9ED9;
cursor: pointer;
}
.action {
display: inline;
}
.action[hidden] {
display: none;
}

Просмотреть файл

@ -102,7 +102,6 @@ function runTests() {
window.onload = function() {
SpecialPowers.pushPrefEnv({
"set": [
["devtools.debugger.forbid-certified-apps", false],
["test.all.bool", true],
["test.all.int", 0x4321],
["test.all.string", "allizom"],

Просмотреть файл

@ -10,11 +10,8 @@
var gClient;
var gRegistryFront;
var gActorFront;
var gOldPref;
function run_test() {
gOldPref = Services.prefs.getBoolPref("devtools.debugger.forbid-certified-apps");
Services.prefs.setBoolPref("devtools.debugger.forbid-certified-apps", false);
initTestDebuggerServer();
DebuggerServer.registerAllActors();
gClient = new DebuggerClient(DebuggerServer.connectPipe());
@ -71,7 +68,6 @@ function testActorIsUnregistered() {
gClient.listTabs().then(({ helloActor }) => {
Assert.ok(!helloActor);
Services.prefs.setBoolPref("devtools.debugger.forbid-certified-apps", gOldPref);
finishClient(gClient);
});
}

Просмотреть файл

@ -37,8 +37,6 @@ pref("devtools.debugger.remote-port", 6000);
pref("devtools.debugger.remote-websocket", false);
// Force debugger server binding on the loopback interface
pref("devtools.debugger.force-local", true);
// Block tools from seeing / interacting with certified apps
pref("devtools.debugger.forbid-certified-apps", true);
// Limit for intercepted response bodies (1 MB)
// Possible values: