[FeaturePolicy] Initial implementation of Feature Policy
This CL adds to each frame (local or remote) a FeaturePolicy object, which can be used to control the exposure and behaviour of web platform features. A frame's policy is computed from the policy declared in the "Feature-Policy" HTTP header, it's parent frame's policy, and the default policy for each feature.
See https://wicg.github.io/feature-policy/ for the specification in development.
Three features from the specification are implemented with this CL: cookie, domain, and docwrite.
(This behaviour is all conditional on the runtime flag for Feature Policy)
Future CLs are going to implement:
- <iframe> attribute support
- Layout tests
- Parser fuzzing
- Control over additional features
BUG=623682
Review-Url: https://codereview.chromium.org/2254533002
Cr-Commit-Position: refs/heads/master@{#429623}
14 files changed