File: iframe-top-navigation-upgrade-meta.sub.html

package info (click to toggle)
thunderbird 1%3A140.3.1esr-1
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 4,608,628 kB
  • sloc: cpp: 7,671,698; javascript: 5,901,131; ansic: 3,898,955; python: 1,413,270; xml: 653,997; asm: 462,284; java: 180,948; sh: 113,489; makefile: 20,460; perl: 14,288; objc: 13,059; yacc: 4,583; pascal: 3,352; lex: 1,720; ruby: 1,222; exp: 762; sql: 715; awk: 580; php: 436; lisp: 430; sed: 70; csh: 10
file content (31 lines) | stat: -rw-r--r-- 1,356 bytes parent folder | download | duplicates (28)
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
<html>
  <head>
    <title>Upgrade Insecure Requests: top-frame navigation inside iframe (upgrade expected)</title>
    <script>
      function iframe_onload() {
        var iframe = document.getElementsByTagName("iframe")[0];
        iframe.onload = null;

        // Enable upgrade-insecure-requests dynamically.
        var meta = document.createElement('meta');
        meta.httpEquiv = "Content-Security-Policy";
        meta.content = "upgrade-insecure-requests";
        document.getElementsByTagName('head')[0].appendChild(meta);

        // This is a bit of a hack. UPGRADE doesn't upgrade the port number,
        // so we specify this non-existent URL ('http' over port https port). If
        // UPGRADE doesn't work, it won't load. The expected behavior is that
        // the url is upgraded and the page loads.
        iframe.src =
          "https://{{domains[www]}}:{{ports[https][0]}}/upgrade-insecure-requests/link-upgrade/resources/navigate-top-frame.sub.html?url=http://{{host}}:{{ports[https][0]}}/upgrade-insecure-requests/link-upgrade/resources/post-message-to-opener.sub.html%3Fmessage=iframe-top-navigation-upgrade-meta"
      }
    </script>
  </head>
  <body>
    <iframe
      sandbox = "allow-scripts allow-top-navigation"
      src = "./resources/dummy.html"
      onload = "iframe_onload()"
    ></iframe>
  </body>
</html>