content/base/test/file_mixed_content_frameNavigation_innermost.html

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 <!DOCTYPE HTML>
michael@0 2 <html>
michael@0 3 <body>
michael@0 4 <div id="content"></div>
michael@0 5 <script>
michael@0 6 // get the case from the query string
michael@0 7 var type = location.search.substring(1);
michael@0 8
michael@0 9 switch (type) {
michael@0 10 case "insecurePage_navigate_child":
michael@0 11 document.getElementById("content").innerHTML =
michael@0 12 '<a href="http://example.com/tests/content/base/test/file_mixed_content_frameNavigation_innermost.html?insecurePage_navigate_child_response" id="link">Testing\<\/a>';
michael@0 13 document.getElementById("link").click();
michael@0 14 break;
michael@0 15
michael@0 16 case "insecurePage_navigate_child_response":
michael@0 17 parent.parent.postMessage({"test": "insecurePage_navigate_child", "msg": "navigated to insecure iframe on insecure page"}, "http://mochi.test:8888");
michael@0 18 document.getElementById("content").innerHTML = "Navigated from secure to insecure frame on an insecure page";
michael@0 19 break;
michael@0 20
michael@0 21 case "insecurePage_navigate_grandchild":
michael@0 22 document.getElementById("content").innerHTML =
michael@0 23 '<a href="http://example.com/tests/content/base/test/file_mixed_content_frameNavigation_innermost.html?insecurePage_navigate_grandchild_response" id="link">Testing\<\/a>';
michael@0 24 document.getElementById("link").click();
michael@0 25 break;
michael@0 26
michael@0 27 case "insecurePage_navigate_grandchild_response":
michael@0 28 parent.parent.parent.postMessage({"test": "insecurePage_navigate_grandchild", "msg": "navigated to insecure grandchild iframe on insecure page"}, "http://mochi.test:8888");
michael@0 29 document.getElementById("content").innerHTML = "Navigated from secure to insecure grandchild frame on an insecure page";
michael@0 30 break;
michael@0 31
michael@0 32 case "securePage_navigate_child":
michael@0 33 document.getElementById("content").innerHTML =
michael@0 34 '<a href="http://example.com/tests/content/base/test/file_mixed_content_frameNavigation_innermost.html?securePage_navigate_child_response" id="link">Testing\<\/a>';
michael@0 35 document.getElementById("link").click();
michael@0 36 break;
michael@0 37
michael@0 38 case "securePage_navigate_child_response":
michael@0 39 document.getElementById("content").innerHTML = "<p>Navigated from secure to insecure frame on a secure page</p>";
michael@0 40 parent.parent.postMessage({"test": "securePage_navigate_child", "msg": "navigated to insecure iframe on secure page"}, "http://mochi.test:8888");
michael@0 41 break;
michael@0 42
michael@0 43 case "securePage_navigate_grandchild":
michael@0 44 document.getElementById("content").innerHTML=
michael@0 45 '<a href="http://example.com/tests/content/base/test/file_mixed_content_frameNavigation_innermost.html?securePage_navigate_grandchild_response" id="link">Testing\<\/a>';
michael@0 46 document.getElementById("link").click();
michael@0 47 break;
michael@0 48
michael@0 49 case "securePage_navigate_grandchild_response":
michael@0 50 dump("\nNavigated to grandchild iframe from secure location to insecure location. About to post message to the top page.\n");
michael@0 51 parent.parent.parent.postMessage({"test": "securePage_navigate_grandchild", "msg": "navigated to insecure grandchild iframe on secure page"}, "http://mochi.test:8888");
michael@0 52 dump("\npostMessage to parent attempted.\n");
michael@0 53 document.getElementById("content").innerHTML = "<p>Navigated from secure to insecure grandchild frame on a secure page</p>";
michael@0 54 break;
michael@0 55
michael@0 56 case "blankTarget":
michael@0 57 window.close();
michael@0 58 break;
michael@0 59
michael@0 60 default:
michael@0 61 document.getElementById("content").innerHTML = "Hello";
michael@0 62 break;
michael@0 63 }
michael@0 64
michael@0 65 </script>
michael@0 66 </body>
michael@0 67 </html>

mercurial