summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h')
-rw-r--r--chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h b/chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h
index b8ed5e9c2f5..f16a86db80e 100644
--- a/chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h
+++ b/chromium/third_party/blink/renderer/platform/weborigin/scheme_registry.h
@@ -155,6 +155,25 @@ class PLATFORM_EXPORT SchemeRegistry {
static void RegisterURLSchemeAsAllowingWasmEvalCSP(const String& scheme);
static bool SchemeSupportsWasmEvalCSP(const String& scheme);
+ // Schemes that represent trusted browser UI.
+ // TODO(chromium:1197375) Reconsider usages of this category. Are there
+ // meaningful ways to define more abstract permissions or requirements that
+ // could be used instead?
+ static void RegisterURLSchemeAsWebUI(const String& scheme);
+ static void RemoveURLSchemeAsWebUI(const String& scheme);
+ static bool IsWebUIScheme(const String& scheme);
+
+ // Like the above, but without threading safety checks.
+ static void RegisterURLSchemeAsWebUIForTest(const String& scheme);
+ static void RemoveURLSchemeAsWebUIForTest(const String& scheme);
+
+ // Schemes which can use code caching but must check in the renderer whether
+ // the script content has changed rather than relying on a response time match
+ // from the network cache.
+ static void RegisterURLSchemeAsCodeCacheWithHashing(const String& scheme);
+ static void RemoveURLSchemeAsCodeCacheWithHashing(const String& scheme);
+ static bool SchemeSupportsCodeCacheWithHashing(const String& scheme);
+
private:
static const URLSchemesSet& LocalSchemes();
};