Backed out 4 changesets (bug 1770727) for causing mochitest failures in test_bug1180105/test_access_control. CLOSED TREE

Backed out changeset 6323b526b0ac (bug 1770727)
Backed out changeset fc7ea80aa2ff (bug 1770727)
Backed out changeset 2a358ba86652 (bug 1770727)
Backed out changeset 464d1af6523b (bug 1770727)
This commit is contained in:
Molnar Sandor 2022-05-24 17:24:40 +03:00
parent c0e20dd0b0
commit 05e3775a6c
55 changed files with 174 additions and 132 deletions

View file

@ -92,6 +92,23 @@ module.exports = {
browser: false,
},
},
{
files: "*.sjs",
rules: {
complexity: "warn",
"no-empty": "warn",
"no-shadow": "warn",
"no-redeclare": "warn",
"no-fallthrough": "warn",
"no-control-regex": "warn",
"no-throw-literal": "warn",
"no-useless-concat": "warn",
"consistent-return": "warn",
"mozilla/use-services": "warn",
"mozilla/use-includes-instead-of-indexOf": "warn",
"mozilla/no-compare-against-boolean-literals": "warn",
},
},
{
files: [
"*.html",

View file

@ -2,20 +2,19 @@ function handleRequest(request, response) {
var page =
"<!DOCTYPE html><html><body>bug 418354 and bug 1082837</body></html>";
let redirect;
if (request.queryString === "script") {
redirect =
var redirect =
"http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.js";
response.setHeader("Cache-Control", "no-cache", false);
} else if (request.queryString === "image_http") {
redirect = "http://example.com/tests/image/test/mochitest/blue.png";
var redirect = "http://example.com/tests/image/test/mochitest/blue.png";
response.setHeader("Cache-Control", "max-age=3600", false);
} else if (request.queryString === "image_redirect_http_sjs") {
redirect =
var redirect =
"http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs?image_redirect_https";
response.setHeader("Cache-Control", "max-age=3600", false);
} else if (request.queryString === "image_redirect_https") {
redirect = "https://example.com/tests/image/test/mochitest/blue.png";
var redirect = "https://example.com/tests/image/test/mochitest/blue.png";
response.setHeader("Cache-Control", "max-age=3600", false);
}

View file

@ -114,7 +114,9 @@ function parseXml(body) {
}
function getInputStream(path) {
let file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
let file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
for (let part of path.split("/")) {
file.append(part);
}

View file

@ -122,7 +122,9 @@ function getRequestBody(req) {
}
function getInputStream(path) {
let file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
let file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
for (let part of path.split("/")) {
file.append(part);
}

View file

@ -7,7 +7,6 @@ function handleRequest(request, response) {
response.setHeader("Cache-Control", "no-cache", false);
// Wait a bit.
var s = Date.now();
// eslint-disable-next-line no-empty
while (Date.now() - s < 1000) {}
response.write(`<!DOCTYPE HTML>

View file

@ -436,7 +436,6 @@ function buildLinkString(
return `<link ${relString} ${href} ${policy} ${asString} id="test_link" onload='${onChildComplete}' onerror='${onChildComplete}'>`;
}
// eslint-disable-next-line complexity
function handleRequest(request, response) {
var params = new URLSearchParams(request.queryString);
var action = params.get("ACTION");

View file

@ -6,7 +6,9 @@ function loadHTMLFromFile(path) {
// Load the HTML to return in the response from file.
// Since it's relative to the cwd of the test runner, we start there and
// append to get to the actual path of the file.
const testHTMLFile = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
const testHTMLFile = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
const testHTMLFileStream = Cc[
"@mozilla.org/network/file-input-stream;1"

View file

@ -8,7 +8,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}
@ -31,7 +31,9 @@ var types = {
function handleRequest(request, response) {
var resource = parseQuery(request, "");
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);

View file

@ -8,7 +8,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}

View file

@ -10,7 +10,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}
@ -22,7 +22,9 @@ function handleRequest(request, response) {
// Get the filename to send back.
var filename = parseQuery(request, "file");
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);
@ -43,8 +45,8 @@ function handleRequest(request, response) {
if (request.hasHeader("Range")) {
var range = request.getHeader("Range");
var parts = range.replace(/bytes=/, "").split("-");
partialstart = parts[0];
partialend = parts[1];
var partialstart = parts[0];
var partialend = parts[1];
if (!partialend.length) {
partialend = file.fileSize - 1;
}
@ -58,9 +60,9 @@ function handleRequest(request, response) {
bis.setInputStream(fis);
var sendContentType = parseQuery(request, "nomime");
if (!sendContentType) {
if (sendContentType == false) {
var contentType = parseQuery(request, "type");
if (!contentType) {
if (contentType == false) {
// This should not happen.
dump("No type specified without having 'nomime' in parameters.");
return;

View file

@ -27,7 +27,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") === 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key === "") {
if (p.indexOf("=") < 0 && key === "") {
return p;
}
}
@ -48,29 +48,25 @@ function handleRequest(request, response) {
range == "bytes=25514-32767") ||
(name == "dash-webm-video-428x240.webm" && range == "bytes=228-35852")
) {
throw new Error(
"Should not request " + name + " with byte-range " + range
);
throw "Should not request " + name + " with byte-range " + range;
} else {
var rangeSplit = range.split("=");
if (rangeSplit.length != 2) {
throw new Error(
"DASH-SJS: ERROR: invalid number of tokens (" +
rangeSplit.length +
") delimited by '=' in 'Range' header."
);
throw "DASH-SJS: ERROR: invalid number of tokens (" +
rangeSplit.length +
") delimited by '=' in 'Range' header.";
}
var offsets = rangeSplit[1].split("-");
if (offsets.length != 2) {
throw new Error(
"DASH-SJS: ERROR: invalid number of tokens (" +
offsets.length +
") delimited by '-' in 'Range' header."
);
throw "DASH-SJS: ERROR: invalid number of tokens (" +
offsets.length +
") delimited by '-' in 'Range' header.";
}
var startOffset = parseInt(offsets[0]);
var endOffset = parseInt(offsets[1]);
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);
@ -87,13 +83,11 @@ function handleRequest(request, response) {
fis.init(file, -1, -1, false);
// Exception: start offset should be within file bounds.
if (startOffset > file.fileSize) {
throw new Error(
"Starting offset [" +
startOffset +
"] is after end of file [" +
file.fileSize +
"]."
);
throw "Starting offset [" +
startOffset +
"] is after end of file [" +
file.fileSize +
"].";
}
// End offset may be too large in the MPD. Real world HTTP servers just
// return what data they can; do the same here - reduce the end offset.

View file

@ -8,7 +8,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}
@ -25,7 +25,9 @@ function handleRequest(request, response) {
var resource = getState(key) == "2" ? resource2 : resource1;
setState(key, "2");
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);

View file

@ -7,7 +7,6 @@ function parseQuery(query, key) {
return p.substring(key.length + 1);
}
}
return false;
}
// Return the first few bytes in a short byte range response. When Firefox
@ -20,7 +19,9 @@ function handleRequest(request, response) {
var redirected = parseQuery(query, "redirected") || false;
var useCors = parseQuery(query, "cors") || false;
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);

View file

@ -8,7 +8,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}

View file

@ -8,7 +8,7 @@ function parseQuery(request, key) {
if (p.indexOf(key + "=") == 0) {
return p.substring(key.length + 1);
}
if (!p.includes("=") && key == "") {
if (p.indexOf("=") < 0 && key == "") {
return p;
}
}
@ -24,7 +24,9 @@ function handleRequest(request, response) {
) {
var name = parseQuery(request, "name");
var type = parseQuery(request, "type");
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
Ci.nsIFileInputStream
);

View file

@ -7,7 +7,6 @@ const BinaryInputStream = CC(
const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
Services.prefs.setBoolPref("security.allow_eval_with_system_principal", true);
// eslint-disable-next-line complexity
function handleRequest(request, response) {
var query = {};
request.queryString.split("&").forEach(function(val) {

View file

@ -55,7 +55,7 @@ function handleRequest(request, response) {
}
// just in case error handling for unexpected queries
if (!expectedQueries.includes(queryString)) {
if (expectedQueries.indexOf(queryString) == -1) {
response.write("unexpected-response");
return;
}

View file

@ -54,7 +54,7 @@ function handleRequest(request, response) {
}
// just in case error handling for unexpected queries
if (!expectedQueries.includes(queryString)) {
if (expectedQueries.indexOf(queryString) == -1) {
response.write("unexpected-response");
return;
}

View file

@ -212,7 +212,7 @@ function handleRequest(request, response) {
response.setHeader("Content-Type", "text/html; charset=utf-8", false);
if (action === "resetState") {
let state = getSharedState(sharedKey);
var state = getSharedState(sharedKey);
state = {};
setSharedState(sharedKey, JSON.stringify(state));
response.write("");
@ -220,10 +220,10 @@ function handleRequest(request, response) {
}
if (action === "test") {
// ?action=test&policy=origin&name=name&content=content
let policy = params[1].split("=")[1];
let name = params[2].split("=")[1];
let content = params[3].split("=")[1];
let result = getSharedState(sharedKey);
var policy = params[1].split("=")[1];
var name = params[2].split("=")[1];
var content = params[3].split("=")[1];
var result = getSharedState(sharedKey);
if (result === "") {
result = {};
@ -268,9 +268,9 @@ function handleRequest(request, response) {
}
if (action === "generate-img-policy-test") {
// ?action=generate-img-policy-test&imgPolicy=b64-encoded-string&name=name&policy=b64-encoded-string
let imgPolicy = unescape(params[1].split("=")[1]);
let name = unescape(params[2].split("=")[1]);
let metaPolicy = "";
var imgPolicy = unescape(params[1].split("=")[1]);
var name = unescape(params[2].split("=")[1]);
var metaPolicy = "";
if (params[3]) {
metaPolicy = params[3].split("=")[1];
}
@ -280,34 +280,34 @@ function handleRequest(request, response) {
}
if (action === "generate-img-policy-test2") {
// ?action=generate-img-policy-test2&imgPolicy=b64-encoded-string&name=name
let imgPolicy = unescape(params[1].split("=")[1]);
let name = unescape(params[2].split("=")[1]);
var imgPolicy = unescape(params[1].split("=")[1]);
var name = unescape(params[2].split("=")[1]);
response.write(createTest2(imgPolicy, name));
return;
}
if (action === "generate-img-policy-test3") {
// ?action=generate-img-policy-test3&imgPolicy1=b64-encoded-string&imgPolicy2=b64-encoded-string&imgPolicy3=b64-encoded-string&name=name
let imgPolicy1 = unescape(params[1].split("=")[1]);
let imgPolicy2 = unescape(params[2].split("=")[1]);
let imgPolicy3 = unescape(params[3].split("=")[1]);
let name = unescape(params[4].split("=")[1]);
var imgPolicy1 = unescape(params[1].split("=")[1]);
var imgPolicy2 = unescape(params[2].split("=")[1]);
var imgPolicy3 = unescape(params[3].split("=")[1]);
var name = unescape(params[4].split("=")[1]);
response.write(createTest3(imgPolicy1, imgPolicy2, imgPolicy3, name));
return;
}
if (action === "generate-img-policy-test4") {
// ?action=generate-img-policy-test4&imgPolicy=b64-encoded-string&name=name
let policy = unescape(params[1].split("=")[1]);
let name = unescape(params[2].split("=")[1]);
var policy = unescape(params[1].split("=")[1]);
var name = unescape(params[2].split("=")[1]);
response.write(createTest4(policy, name));
return;
}
if (action === "generate-img-policy-test5") {
// ?action=generate-img-policy-test5&policy=b64-encoded-string&name=name
let policy = unescape(params[1].split("=")[1]);
let name = unescape(params[2].split("=")[1]);
var policy = unescape(params[1].split("=")[1]);
var name = unescape(params[2].split("=")[1]);
response.write(createTest5(policy, name));
return;
@ -315,9 +315,9 @@ function handleRequest(request, response) {
if (action === "generate-setAttribute-test1") {
// ?action=generate-setAttribute-test1&policy=b64-encoded-string&name=name
let imgPolicy = unescape(params[1].split("=")[1]);
let policy = unescape(params[2].split("=")[1]);
let name = unescape(params[3].split("=")[1]);
var imgPolicy = unescape(params[1].split("=")[1]);
var policy = unescape(params[2].split("=")[1]);
var name = unescape(params[3].split("=")[1]);
response.write(createSetAttributeTest1(policy, imgPolicy, name));
return;
@ -325,9 +325,9 @@ function handleRequest(request, response) {
if (action === "generate-setAttribute-test2") {
// ?action=generate-setAttribute-test2&policy=b64-encoded-string&name=name
let imgPolicy = unescape(params[1].split("=")[1]);
let policy = unescape(params[2].split("=")[1]);
let name = unescape(params[3].split("=")[1]);
var imgPolicy = unescape(params[1].split("=")[1]);
var policy = unescape(params[2].split("=")[1]);
var name = unescape(params[3].split("=")[1]);
response.write(createSetAttributeTest2(policy, imgPolicy, name));
return;

View file

@ -435,7 +435,7 @@ function buildLinkString(
return `<link ${relString} ${href} ${policy} ${asString} id="test_link" onload='${onChildComplete}' onerror='${onChildComplete}'>`;
}
// eslint-disable-next-line complexity
function handleRequest(request, response) {
var params = new URLSearchParams(request.queryString);
var action = params.get("ACTION");
@ -495,10 +495,10 @@ function handleRequest(request, response) {
}
if (action === "test") {
// ?action=test&policy=origin&name=name
let policy = params.get("policy");
let name = params.get("NAME");
let type = params.get("type");
let result = getSharedState(SHARED_KEY);
var policy = params.get("policy");
var name = params.get("NAME");
var type = params.get("type");
var result = getSharedState(SHARED_KEY);
result = result ? JSON.parse(result) : {};
@ -656,7 +656,7 @@ function handleRequest(request, response) {
return;
}
_getPage = createLinkPageUsingRefferer.bind(
var _getPage = createLinkPageUsingRefferer.bind(
null,
metaPolicy,
attributePolicy,

View file

@ -71,7 +71,6 @@ function handleRequest(request, response) {
response.setHeader("Access-Control-Allow-Methods", "POST, GET", false);
response.setHeader("Access-Control-Allow-Origin", originHeader, false);
response.setHeader("Access-Control-Allow-Credentials", "true", false);
// fallthrough
case "getLastBeacon":
var state = getOurState();
if (state === "unblocked") {

View file

@ -24,7 +24,7 @@ function handleRequest(request, response) {
var data = String.fromCharCode.apply(null, bytes);
response.setHeader("Result-Content-Length", "" + data.length);
if (data.includes("TEST_REDIRECT_STR")) {
if (data.indexOf("TEST_REDIRECT_STR") >= 0) {
var newURL = "http://" + data.split("&url=")[1];
response.setStatusLine(null, 307, "redirect");
response.setHeader("Location", newURL, false);

View file

@ -1,6 +1,6 @@
function handleRequest(request, response) {
response.setHeader("Content-Type", "text/javascript", false);
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
if (getState("loaded") == "loaded") {
response.write(
"ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();"

View file

@ -1,5 +1,5 @@
function handleRequest(request, response) {
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
response.setHeader("Content-Type", "text/javascript", false);
if (getState("loaded") == "loaded") {
response.write(

View file

@ -7,7 +7,9 @@ var timer = Cc["@mozilla.org/timer;1"];
var partTimer = timer.createInstance(Ci.nsITimer);
function getFileAsInputStream(aFilename) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -1,5 +1,7 @@
function handleRequest(request, response) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -28,7 +28,9 @@ var timer = Cc["@mozilla.org/timer;1"];
var partTimer = timer.createInstance(Ci.nsITimer);
function getFileAsInputStream(aFilename) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -6,7 +6,9 @@ var timer = Cc["@mozilla.org/timer;1"];
var partTimer = timer.createInstance(Ci.nsITimer);
function getFileAsInputStream(aFilename) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -8,7 +8,9 @@ var timer = Cc["@mozilla.org/timer;1"];
var partTimer = timer.createInstance(Ci.nsITimer);
function getFileAsInputStream(aFilename) {
var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile);
var file = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties)
.get("CurWorkD", Ci.nsIFile);
file.append("tests");
file.append("image");

View file

@ -2882,7 +2882,6 @@ ServerHandler.prototype = {
s.importFunction(atob, "atob");
s.importFunction(btoa, "btoa");
s.importFunction(ChromeUtils, "ChromeUtils");
s.importFunction(Services, "Services");
// Define a basic key-value state-preservation API across requests, with
// keys initially corresponding to the empty string.

View file

@ -1,6 +1,6 @@
function handleRequest(request, response) {
if (request.queryString == "throw") {
throw new Error("monkey wrench!");
throw "monkey wrench!";
}
response.setHeader("Content-Type", "text/plain", false);

View file

@ -5,7 +5,7 @@ function parseQueryString(str) {
for (var i = 0, sz = paramArray.length; i < sz; i++) {
var match = regex.exec(paramArray[i]);
if (!match) {
throw new Error("Bad parameter in queryString! '" + paramArray[i] + "'");
throw "Bad parameter in queryString! '" + paramArray[i] + "'";
}
params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
}

View file

@ -8,7 +8,6 @@ function handleRequest(request, response) {
qid = request.QueryInterface(Ci.nsIHttpRequest);
passed = qid === request;
} catch (e) {
// eslint-disable-next-line no-control-regex
exstr = ("" + e).split(/[\x09\x20-\x7f\x81-\xff]+/)[0];
response.setStatusLine(
request.httpVersion,
@ -27,7 +26,6 @@ function handleRequest(request, response) {
qid = response.QueryInterface(Ci.nsIHttpResponse);
passed = qid === response;
} catch (e) {
// eslint-disable-next-line no-control-regex
exstr = ("" + e).split(/[\x09\x20-\x7f\x81-\xff]+/)[0];
response.setStatusLine(
request.httpVersion,

View file

@ -5,7 +5,7 @@ function parseQueryString(str) {
for (var i = 0, sz = paramArray.length; i < sz; i++) {
var match = regex.exec(paramArray[i]);
if (!match) {
throw new Error("Bad parameter in queryString! '" + paramArray[i] + "'");
throw "Bad parameter in queryString! '" + paramArray[i] + "'";
}
params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
}

View file

@ -5,7 +5,7 @@ function parseQueryString(str) {
for (var i = 0, sz = paramArray.length; i < sz; i++) {
var match = regex.exec(paramArray[i]);
if (!match) {
throw new Error("Bad parameter in queryString! '" + paramArray[i] + "'");
throw "Bad parameter in queryString! '" + paramArray[i] + "'";
}
params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
}

View file

@ -128,9 +128,9 @@ function handleRequest(request, response) {
// Prepare content in two parts for responses.
var partialContent =
'<html><head></head><body><p id="firstResponse">First response</p>';
'<html><head></head><body><p id="firstResponse">' + "First response</p>";
var remainderContent =
'<p id="secondResponse">Second response</p></body></html>';
'<p id="secondResponse">Second response</p>' + "</body></html>";
var totalLength = partialContent.length + remainderContent.length;
DBG("totalLength: " + totalLength);

View file

@ -1,6 +1,6 @@
function handleRequest(request, response) {
response.setHeader("Content-Type", "text/javascript", false);
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
if (getState("loaded") == "loaded") {
response.write("ok(true, 'This script was supposed to get fetched.');");
} else {

View file

@ -1,6 +1,6 @@
function handleRequest(request, response) {
response.setHeader("Content-Type", "text/javascript", false);
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
if (getState("loaded") == "loaded") {
response.write(
"ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();"

View file

@ -1,6 +1,6 @@
function handleRequest(request, response) {
response.setHeader("Content-Type", "text/javascript", false);
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
if (getState("loaded") == "loaded") {
response.write(
"ok(false, 'This script was not supposed to get fetched.');"

View file

@ -24,11 +24,11 @@ function armTimer(response) {
function handleRequest(request, response) {
response.setHeader("Cache-Control", "no-cache", false);
response.setHeader("Content-Type", "text/javascript", false);
if (request.queryString.includes("first")) {
if (request.queryString.indexOf("first") != -1) {
response.write("// first\n");
response.processAsync();
armTimer(response);
} else if (request.queryString.includes("second")) {
} else if (request.queryString.indexOf("second") != -1) {
response.write("// second\n");
setState("docwritepreloadssecond", "second");
} else {

View file

@ -1,5 +1,5 @@
function handleRequest(request, response) {
if (request.queryString.includes("report")) {
if (request.queryString.indexOf("report") != -1) {
response.setHeader("Content-Type", "text/javascript", false);
if (getState("loaded") == "loaded") {
response.write(

View file

@ -2,7 +2,7 @@ var timer;
var callback;
function handleRequest(request, response) {
if (request.queryString.includes("trigger")) {
if (request.queryString.indexOf("trigger") != -1) {
setState("triggered", "triggered");
response.setHeader("Cache-Control", "no-cache", false);
response.setHeader("Content-Type", "text/javascript; charset=utf-8", false);

View file

@ -46,7 +46,7 @@ function handleRequest(req, resp) {
req
.getHeader("Cookie")
.split(";")
.includes("red")
.indexOf("red") >= 0
) {
resp.write(
'<html style="background: #f00;">' + setCookieScript + "</html>"
@ -60,7 +60,7 @@ function handleRequest(req, resp) {
req
.getHeader("Cookie")
.split(";")
.includes("green")
.indexOf("green") >= 0
) {
resp.write(
'<html style="background: #0f0;">' + setCookieScript + "</html>"

View file

@ -32,7 +32,7 @@ function handleRequest(request, response) {
setState(list, hashes);
let lists = getState("lists");
if (!lists.includes(list)) {
if (lists.indexOf(list) == -1) {
lists += list + "\n";
setState("lists", lists);
}
@ -41,18 +41,18 @@ function handleRequest(request, response) {
// gethash count return how many gethash request received.
// This is used by client to know if a gethash request is triggered by gecko
} else if ("gethashcount" == request.queryString) {
let counter = getState("counter");
var counter = getState("counter");
responseBody = counter == "" ? "0" : counter;
} else {
let body = new BinaryInputStream(request.bodyInputStream);
let avail;
let bytes = [];
var body = new BinaryInputStream(request.bodyInputStream);
var avail;
var bytes = [];
while ((avail = body.available()) > 0) {
Array.prototype.push.apply(bytes, body.readByteArray(avail));
}
let counter = getState("counter");
var counter = getState("counter");
counter = counter == "" ? "1" : (parseInt(counter) + 1).toString();
setState("counter", counter);
@ -79,7 +79,7 @@ function parseV2Request(bytes) {
for (var completion of completions) {
if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) {
ret += list + ":1:32\n";
ret += list + ":" + "1" + ":" + "32" + "\n";
ret += completion;
}
}

View file

@ -28,7 +28,7 @@ function handleRequest(request, response) {
setState(list, hashes);
let lists = getState("lists");
if (!lists.includes(list)) {
if (lists.indexOf(list) == -1) {
lists += list + "\n";
setState("lists", lists);
}
@ -37,18 +37,18 @@ function handleRequest(request, response) {
// gethash count return how many gethash request received.
// This is used by client to know if a gethash request is triggered by gecko
} else if ("gethashcount" == request.queryString) {
let counter = getState("counter");
var counter = getState("counter");
responseBody = counter == "" ? "0" : counter;
} else {
let body = new BinaryInputStream(request.bodyInputStream);
let avail;
let bytes = [];
var body = new BinaryInputStream(request.bodyInputStream);
var avail;
var bytes = [];
while ((avail = body.available()) > 0) {
Array.prototype.push.apply(bytes, body.readByteArray(avail));
}
let counter = getState("counter");
var counter = getState("counter");
counter = counter == "" ? "1" : (parseInt(counter) + 1).toString();
setState("counter", counter);
@ -75,7 +75,7 @@ function parseV2Request(bytes) {
for (var completion of completions) {
if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) {
ret += list + ":1:32\n";
ret += list + ":" + "1" + ":" + "32" + "\n";
ret += completion;
}
}

View file

@ -26,7 +26,7 @@ function handleRequest(request, response) {
setState(list, hashes);
let lists = getState("lists");
if (!lists.includes(list)) {
if (lists.indexOf(list) == -1) {
lists += list + "\n";
setState("lists", lists);
}

View file

@ -155,7 +155,10 @@ function handleRequest(request, response) {
if (formData && "upload_file_minidump" in formData) {
response.setHeader("Content-Type", "text/plain", false);
let uuid = Services.uuid.generateUUID().toString();
let uuidGenerator = Cc["@mozilla.org/uuid-generator;1"].getService(
Ci.nsIUUIDGenerator
);
let uuid = uuidGenerator.generateUUID().toString();
// ditch the {}, add bp- prefix
uuid = "bp-" + uuid.substring(1, uuid.length - 1);

View file

@ -21,7 +21,7 @@ function parseQueryString(aQueryString) {
for (var i = 0, sz = paramArray.length; i < sz; i++) {
var match = regex.exec(paramArray[i]);
if (!match) {
throw new Error("Bad parameter in queryString! '" + paramArray[i] + "'");
throw "Bad parameter in queryString! '" + paramArray[i] + "'";
}
params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
}

View file

@ -23,7 +23,6 @@ module.exports = {
getObjectState: false,
setObjectState: false,
registerPathHandler: false,
Services: false,
// importScripts is also available.
importScripts: false,
},