File: img-src-wildcard-allowed.html

package info (click to toggle)
firefox 143.0.3-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,617,328 kB
  • sloc: cpp: 7,478,492; javascript: 6,417,157; ansic: 3,720,058; python: 1,396,372; xml: 627,523; asm: 438,677; java: 186,156; sh: 63,477; makefile: 19,171; objc: 13,059; perl: 12,983; yacc: 4,583; cs: 3,846; pascal: 3,405; lex: 1,720; ruby: 1,003; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 53; csh: 10
file content (40 lines) | stat: -rw-r--r-- 1,494 bytes parent folder | download | duplicates (14)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<meta http-equiv="Content-Security-Policy" content="img-src *;">
<html>
<head>
    <title>img element src attribute must match src list.</title>
    <script src='/resources/testharness.js'></script>
    <script src='/resources/testharnessreport.js'></script>
</head>
<body>
    <div id='log'></div>

    <script>
      var t1 = async_test("img-src with wildcard should match all");
    </script>
    <img src='/content-security-policy/support/pass.png'
         onload='t1.done();'
         onerror='t1.step(function() { assert_unreached("Image should have loaded"); t1.done(); });'>

    <script>
      async_test(function(t) {

        var pngBase64 = "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAnklEQVR42u3QMQEAAAgDoGlyo1vBzwciUJlw1ApkyZIlS5YsBbJkyZIlS5YCWbJkyZIlS4EsWbJkyZKlQJYsWbJkyVIgS5YsWbJkKZAlS5YsWbIUyJIlS5YsWQpkyZIlS5YsBbJkyZIlS5YCWbJkyZIlS4EsWbJkyZKlQJYsWbJkyVIgS5YsWbJkKZAlS5YsWbIUyJIlS5YsWQpkyfq2MosBSIeKONMAAAAASUVORK5CYII=";

        blobContents = [atob(pngBase64)];
        blob = new Blob(blobContents, {type: "image/png"});
        img = document.createElement("img");
        img.onerror = function (e) {
          t.done();
        };
        img.onload = function () {
          assert_unreached("Should not load blob img");
          t.done();
        };
        blobURL = window.URL.createObjectURL(blob);
        img.src = blobURL;

      },"img-src with wildcard should not match blob");
    </script>
</body>
</html>