CP ag/9571636 from master to qt-qpr1-dev
Bug: 143299398

--------------------------------------------------------------
Enforce READ_DEVICE_CONFIG in DeviceConfig.getProperties path.

Test: atest CtsDeviceConfigTestCases
      atest FrameworksCoreTests:DeviceConfigTest
      atest FrameworksCoreTests:SettingsProviderTest
      atest SettingsProviderTest:DeviceConfigServiceTest
Bug: 142891501

Change-Id: Ic01632514862b640d9e3b280b1ac15b1391c3c17
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index fbfbe7f..210aff7 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -1136,6 +1136,9 @@
             Slog.v(LOG_TAG, "getAllConfigFlags() for " + prefix);
         }
 
+        DeviceConfig.enforceReadPermission(getContext(),
+                prefix != null ? prefix.split("/")[0] : null);
+
         synchronized (mLock) {
             // Get the settings.
             SettingsState settingsState = mSettingsRegistry.getSettingsLocked(