Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

setup(_ => {
const meta = document.createElement("meta");
meta.httpEquiv = "content-security-policy";
document.head.appendChild(meta);
});
async_test((t) => {
const img = document.createElement("img");
img.onload = t.step_func_done();
img.onerror = t.unreached_func("Image from default host should have loaded.");
}, "Host wildcard allows arbitrary hosts (default host).");
async_test((t) => {
const img = document.createElement("img");
img.onload = t.step_func_done();
img.onerror = t.unreached_func("Image from www2 host should have loaded.");
}, "Host wildcard allows arbitrary hosts (www1).");
async_test((t) => {
const img = document.createElement("img");
img.onload = t.step_func_done();
img.onerror = t.unreached_func("Image from www2 host should have loaded.");
}, "Host wildcard allows arbitrary hosts (www2).");
async_test((t) => {
const img = document.createElement("img");
img.onerror = t.step_func_done();
img.onload = t.unreached_func("image from {{domains[]}}:{{ports[http][1]}} should have been blocked.");
}, "Host wildcard doesn't affect port matching (port {{ports[http][1]}}).");
async_test((t) => {
const img = document.createElement("img");
img.onerror = t.step_func_done();
img.onload = t.unreached_func("image fail.png should have been blocked.");
}, "Host wildcard doesn't affect path matching.");