Merge "Change SharedConnectivityService's permission check to use checkCallingOrSelfPermission" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
68e79acf4a
@@ -130,10 +130,17 @@ public abstract class SharedConnectivityService extends Service {
|
||||
|
||||
@RequiresPermission(anyOf = {android.Manifest.permission.NETWORK_SETTINGS,
|
||||
android.Manifest.permission.NETWORK_SETUP_WIZARD})
|
||||
/**
|
||||
* checkPermissions is using checkCallingOrSelfPermission to support CTS testing of this
|
||||
* service. This does allow a process to bind to itself if it holds the proper
|
||||
* permission. We do not consider this to be an issue given that the process can already
|
||||
* access the service data since they are in the same process.
|
||||
*/
|
||||
private void checkPermissions() {
|
||||
if (checkCallingPermission(NETWORK_SETTINGS) != PackageManager.PERMISSION_GRANTED
|
||||
&& checkCallingPermission(NETWORK_SETUP_WIZARD)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
if (checkCallingOrSelfPermission(NETWORK_SETTINGS)
|
||||
!= PackageManager.PERMISSION_GRANTED
|
||||
&& checkCallingOrSelfPermission(NETWORK_SETUP_WIZARD)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
throw new SecurityException("Calling process must have NETWORK_SETTINGS or"
|
||||
+ " NETWORK_SETUP_WIZARD permission");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user