Backed out 2 changesets (bug 1943998) for causing wd failures @ phases.py CLOSED...
[gecko.git] / ipc / glue / PBackgroundSharedTypes.ipdlh
blob036311433aab7c8e3009e343fd0d648c5ee28a09
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this
3  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 include "mozilla/dom/DomSecurityIPCUtils.h";
7 using mozilla::OriginAttributes from "mozilla/ipc/BackgroundUtils.h";
8 using struct mozilla::void_t from "mozilla/ipc/IPCCore.h";
9 using nsIContentSecurityPolicy::RequireTrustedTypesForDirectiveState from "nsIContentSecurityPolicy.h";
11 namespace mozilla {
12 namespace ipc {
14 [Comparable] struct ContentSecurityPolicy
16   nsString policy;
17   bool reportOnlyFlag;
18   bool deliveredViaMetaTagFlag;
19   bool hasRequireTrustedTypesForDirective;
22 [Comparable] struct ContentPrincipalInfo
24   OriginAttributes attrs;
26   // Origin is not simply a part of the spec. Based on the scheme of the URI
27   // spec, we generate different kind of origins: for instance any file: URL
28   // shares the same origin, about: URLs have the full spec as origin and so
29   // on.
30   // Another important reason why we have this attribute is that
31   // ContentPrincipalInfo is used out of the main-thread. Having this value
32   // here allows us to retrive the origin without creating a full nsIPrincipal.
33   nsCString originNoSuffix;
35   nsCString spec;
37   nsCString? domain;
39   // Like originNoSuffix, baseDomain is used out of the main-thread.
40   nsCString baseDomain;
43 [Comparable] struct SystemPrincipalInfo
44 { };
46 [Comparable] struct NullPrincipalInfo
48   OriginAttributes attrs;
49   nsCString spec;
52 [Comparable] struct ExpandedPrincipalInfo
54   OriginAttributes attrs;
55   PrincipalInfo[] allowlist;
58 [Comparable] union PrincipalInfo
60   ContentPrincipalInfo;
61   SystemPrincipalInfo;
62   NullPrincipalInfo;
63   ExpandedPrincipalInfo;
66 [Comparable] struct CSPInfo
68   ContentSecurityPolicy[] policyInfos;
69   PrincipalInfo requestPrincipalInfo;
70   nsCString selfURISpec;
71   nsCString referrer;
72   uint64_t innerWindowID;
73   RequireTrustedTypesForDirectiveState requireTrustedTypesForDirectiveState;
74   bool skipAllowInlineStyleCheck;
77 [Comparable] struct WebTransportHash {
78   nsCString algorithm;
79   uint8_t[] value;
82 } // namespace ipc
83 } // namespace mozilla