Wed, 31 Dec 2014 13:27:57 +0100
Ignore runtime configuration files generated during quality assurance.
1 /* check resource: protocol for traversal problems */
3 const specs = [
4 "resource:///chrome/../plugins",
5 "resource:///chrome%2f../plugins",
6 "resource:///chrome/..%2fplugins",
7 "resource:///chrome%2f%2e%2e%2fplugins",
8 "resource:///../../../..",
9 "resource:///..%2f..%2f..%2f..",
10 "resource:///%2e%2e"
11 ];
13 function run_test() {
14 var ios = Cc["@mozilla.org/network/io-service;1"].
15 getService(Ci.nsIIOService);
17 for each (spec in specs) {
18 var uri = ios.newURI(spec, null, null);
19 if (uri.spec.indexOf("..") != -1)
20 do_throw("resource: traversal remains: '"+spec+"' ==> '"+uri.spec+"'");
21 }
22 }