diff options
| author | 2016-01-11 19:10:22 +0000 | |
|---|---|---|
| committer | 2016-01-11 19:10:22 +0000 | |
| commit | 502658dd9037be08b30ce45f4d201da02ba01d8a (patch) | |
| tree | 3eee23e9f0ad2b3314d82f10566019367fe17248 | |
| parent | 246c8e9c79bc41e8c6f22d5a9f70cec744b1fa8f (diff) | |
| parent | d42209db964de5597b0846cf8175cee6001ec8d7 (diff) | |
Merge "Add a TETHER_PRIVILEGED permission and use it where needed."
| -rw-r--r-- | api/system-current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/net/ConnectivityManager.java | 9 | ||||
| -rw-r--r-- | core/res/AndroidManifest.xml | 6 | ||||
| -rw-r--r-- | core/tests/ConnectivityManagerTest/AndroidManifest.xml | 1 | ||||
| -rw-r--r-- | packages/SystemUI/AndroidManifest.xml | 1 |
5 files changed, 13 insertions, 5 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index 3686633bacb2..a31927735610 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -214,6 +214,7 @@ package android { field public static final java.lang.String STATUS_BAR = "android.permission.STATUS_BAR"; field public static final java.lang.String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES"; field public static final java.lang.String SYSTEM_ALERT_WINDOW = "android.permission.SYSTEM_ALERT_WINDOW"; + field public static final java.lang.String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED"; field public static final java.lang.String TRANSMIT_IR = "android.permission.TRANSMIT_IR"; field public static final java.lang.String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE"; field public static final java.lang.String UNINSTALL_SHORTCUT = "com.android.launcher.permission.UNINSTALL_SHORTCUT"; diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java index 515e9a27eefc..cabc6fabc355 100644 --- a/core/java/android/net/ConnectivityManager.java +++ b/core/java/android/net/ConnectivityManager.java @@ -23,7 +23,6 @@ import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; -import android.net.NetworkUtils; import android.os.Binder; import android.os.Build.VERSION_CODES; import android.os.Handler; @@ -46,11 +45,11 @@ import com.android.internal.telephony.ITelephony; import com.android.internal.telephony.PhoneConstants; import com.android.internal.util.Protocol; +import libcore.net.event.NetworkEventDispatcher; + import java.net.InetAddress; -import java.util.concurrent.atomic.AtomicInteger; import java.util.HashMap; - -import libcore.net.event.NetworkEventDispatcher; +import java.util.concurrent.atomic.AtomicInteger; /** * Class that answers queries about the state of network connectivity. It also @@ -1611,7 +1610,7 @@ public class ConnectivityManager { // Have a provisioning app - must only let system apps (which check this app) // turn on tethering context.enforceCallingOrSelfPermission( - android.Manifest.permission.CONNECTIVITY_INTERNAL, "ConnectivityService"); + android.Manifest.permission.TETHER_PRIVILEGED, "ConnectivityService"); } else { int uid = Binder.getCallingUid(); Settings.checkAndNoteWriteSettingsOperation(context, uid, Settings diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 21ba793c2a92..75077df213b4 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -1070,6 +1070,12 @@ <permission android:name="android.permission.READ_WIFI_CREDENTIAL" android:protectionLevel="signature|privileged" /> + <!-- @SystemApi @hide Allows applications to change tether state and run + tether carrier provisioning. + <p>Not for use by third-party applications. --> + <permission android:name="android.permission.TETHER_PRIVILEGED" + android:protectionLevel="signature|privileged" /> + <!-- @SystemApi @hide Allow system apps to receive broadcast when a wifi network credential is changed. <p>Not for use by third-party applications. --> diff --git a/core/tests/ConnectivityManagerTest/AndroidManifest.xml b/core/tests/ConnectivityManagerTest/AndroidManifest.xml index 6bd8f6ebcfa2..a391e1feb28f 100644 --- a/core/tests/ConnectivityManagerTest/AndroidManifest.xml +++ b/core/tests/ConnectivityManagerTest/AndroidManifest.xml @@ -75,6 +75,7 @@ <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" /> <!-- This permission is added for API call setAirplaneMode() in ConnectivityManager --> <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" /> + <uses-permission android:name="android.permission.TETHER_PRIVILEGED" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DEVICE_POWER" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml index 9546c8dba734..66a333657074 100644 --- a/packages/SystemUI/AndroidManifest.xml +++ b/packages/SystemUI/AndroidManifest.xml @@ -58,6 +58,7 @@ <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" /> <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" /> <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" /> + <uses-permission android:name="android.permission.TETHER_PRIVILEGED" /> <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" /> <uses-permission android:name="android.permission.CONTROL_VPN" /> <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS"/> |