forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make TrustTokenPersister origins type-safe
At a fundamental level, TrustTokenPersister requires that all of its url::Origin arguments have meaningful serializations, in order to key persistent state by their serializations. It currently enforces this by requiring that all of its operations' origin parameters be non-opaque and either HTTP or HTTPS. SuitableTrustTokenOrigin is a url::Origin wrapper encoding closely related preconditions (IsPotentiallyTrustworthy and HTTP or HTTPS) under which an origin is suitable for use in a Trust Tokens operation. This change modifies TrustTokenPersister's interface to take SuitableTrustTokenOrigins rather than url::Origins. SuitableTrustTokenOrigin's properties are somewhat stricter than what TrustTokenPersister needs to require in order to satisfy its contract (put in state keyed to an origin, get out state corresponding to the same origin), but all use to of the persister is expected to be of origins that satisfy SuitableTrustTokenOrigin's requirements in any case, so the difference between the preconditions it enforces and TrustTokenPersister's current interface is mostly academic. This change makes the interface much simpler (not to mention safer) as preconditions can now be enforced implicitly rather than through method comments and DCHECKs. R=csharrison Bug: 1042962 Change-Id: I5b8db80546b8b2a276d0bebd88d24e18e42581ab Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2134600 Commit-Queue: David Van Cleve <davidvc@chromium.org> Reviewed-by: Charlie Harrison <csharrison@chromium.org> Auto-Submit: David Van Cleve <davidvc@chromium.org> Cr-Commit-Position: refs/heads/master@{#757683}
- Loading branch information
David Van Cleve
authored and
Commit Bot
committed
Apr 9, 2020
1 parent
d0b13ee
commit 24e27a4
Showing
7 changed files
with
60 additions
and
75 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters