Index: extensions/common/manifest.h |
diff --git a/extensions/common/manifest.h b/extensions/common/manifest.h |
index c4ceb3870cc800c4c18c85b2c00af9c5cc9b265f..4bf92ec7018d88e377f0e7d63c56311e83119245 100644 |
--- a/extensions/common/manifest.h |
+++ b/extensions/common/manifest.h |
@@ -40,6 +40,9 @@ class Manifest { |
EXTERNAL_POLICY_DOWNLOAD, // A crx file from an external directory (via |
// admin policies), installed from an update URL. |
COMMAND_LINE, // --load-extension. |
+ EXTERNAL_POLICY, // A crx file from an external directory (via admin |
+ // policies), cached locally and installed from the |
+ // cache. |
NUM_LOCATIONS |
}; |
@@ -69,6 +72,7 @@ class Manifest { |
return location == EXTERNAL_PREF || |
location == EXTERNAL_REGISTRY || |
location == EXTERNAL_PREF_DOWNLOAD || |
+ location == EXTERNAL_POLICY || |
location == EXTERNAL_POLICY_DOWNLOAD; |
} |
@@ -84,6 +88,12 @@ class Manifest { |
IsExternalLocation(location); |
} |
+ // Whether the |location| is a source of extensions force-installed through |
+ // policy. |
+ static inline bool IsPolicyLocation(Location location) { |
+ return location == EXTERNAL_POLICY || location == EXTERNAL_POLICY_DOWNLOAD; |
+ } |
+ |
// Unpacked extensions start off with file access since they are a developer |
// feature. |
static inline bool ShouldAlwaysAllowFileAccess(Location location) { |