Adding permission for OEM managed preferences
Adding CONTROL_OEM_PAID_NETWORK_PREFERENCE as a signature level permission to allow an application to control OEM managed network preferences. Bug: 176496438 Bug: 176494815 Test: atest FrameworksNetTests atest NetworkStackTests atest FrameworksNetIntegrationTests atest NetworkStackIntegrationTests atest CtsNetTestCasesLatestSdk Change-Id: Iee13e89f3931c7079c2d88cb57b249b1b1cf93ad Change-Id: Id29cafe1eaf5dff8a0605cb2579204d9c77b7e70
This commit is contained in:
@@ -5116,6 +5116,7 @@ public class ConnectivityManager {
|
||||
* @throws SecurityException if missing the appropriate permissions.
|
||||
* @throws UnsupportedOperationException if called on a non-automotive device.
|
||||
*/
|
||||
@RequiresPermission(android.Manifest.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE)
|
||||
private void setOemNetworkPreference(@NonNull final OemNetworkPreferences preference,
|
||||
@Nullable @CallbackExecutor final Executor executor,
|
||||
@Nullable final OnSetOemNetworkPreferenceListener listener) {
|
||||
|
||||
@@ -2312,6 +2312,12 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
|
||||
}
|
||||
|
||||
private void enforceOemNetworkPreferencesPermission() {
|
||||
mContext.enforceCallingOrSelfPermission(
|
||||
android.Manifest.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE,
|
||||
"ConnectivityService");
|
||||
}
|
||||
|
||||
private boolean checkNetworkStackPermission() {
|
||||
return checkAnyPermissionOf(
|
||||
android.Manifest.permission.NETWORK_STACK,
|
||||
@@ -9334,8 +9340,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
public void setOemNetworkPreference(
|
||||
@NonNull final OemNetworkPreferences preference,
|
||||
@Nullable final IOnSetOemNetworkPreferenceListener listener) {
|
||||
|
||||
enforceOemNetworkPreferencesPermission();
|
||||
enforceAutomotiveDevice();
|
||||
// TODO http://b/176496438 add permission check once permissions are added.
|
||||
|
||||
Objects.requireNonNull(preference, "OemNetworkPreferences must be non-null");
|
||||
validateOemNetworkPreferences(preference);
|
||||
|
||||
Reference in New Issue
Block a user