Sat, 03 Jan 2015 20:18:00 +0100
Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.
1 # package used only for valid overlaying and overrides
2 content good-package bar/
4 # UI Resource URIs (should not work)
5 content moz-protocol-ui-resource moz-protocol-ui-resource://foo/
6 locale moz-protocol-ui-resource en-us moz-protocol-ui-resource://foo/
7 skin moz-protocol-ui-resource skin1 moz-protocol-ui-resource://foo/
8 override chrome://good-package/content/override-moz-protocol-ui-resource.xul moz-protocol-ui-resource://foo/
9 resource moz-protocol-ui-resource moz-protocol-ui-resource://foo/
11 # Local file URIs (should not work)
12 content moz-protocol-local-file moz-protocol-local-file://foo/
13 locale moz-protocol-local-file en-us moz-protocol-local-file://foo/
14 skin moz-protocol-local-file skin1 moz-protocol-local-file://foo/
15 override chrome://good-package/content/override-moz-protocol-local-file.xul moz-protocol-local-file://foo/
16 resource moz-protocol-local-file moz-protocol-local-file://foo/
18 # Loadable by anyone URIs (should not work)
19 content moz-protocol-loadable-by-anyone moz-protocol-loadable-by-anyone://foo/
20 locale moz-protocol-loadable-by-anyone en-us moz-protocol-loadable-by-anyone://foo/
21 skin moz-protocol-loadable-by-anyone skin1 moz-protocol-loadable-by-anyone://foo/
22 override chrome://good-package/content/override-moz-protocol-loadable-by-anyone.xul moz-protocol-loadable-by-anyone://foo/
23 resource moz-protocol-loadable-by-anyone moz-protocol-loadable-by-anyone://foo/
25 # Working protocols should be after this point. Failing ones should be before.
27 # Local resource (should work)
28 content moz-protocol-local-resource moz-protocol-local-resource://foo/
29 locale moz-protocol-local-resource en-us moz-protocol-local-resource://foo/
30 skin moz-protocol-local-resource skin1 moz-protocol-local-resource://foo/
31 override chrome://good-package/content/override-moz-protocol-local-resource.xul moz-protocol-local-resource://foo/
32 resource moz-protocol-local-resource moz-protocol-local-resource://foo/