am 57a99202: am d247d8b4: am 135e2ce5: am 53c75014: Merge "Add OrSelf to privileged permission check." into mnc-dev
* commit '57a992021b2279f34265eb403816417a1ce682f2': Add OrSelf to privileged permission check.
This commit is contained in:
@@ -362,10 +362,10 @@ class TelephonyRegistry extends ITelephonyRegistry.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mContext.enforceCallingPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE,
|
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE,
|
||||||
"addOnSubscriptionsChangedListener");
|
"addOnSubscriptionsChangedListener");
|
||||||
// SKIP checking for run-time permission since obtained PRIVILEGED
|
// SKIP checking for run-time permission since caller or self has PRIVILEGED permission
|
||||||
} catch (SecurityException e) {
|
} catch (SecurityException e) {
|
||||||
mContext.enforceCallingOrSelfPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PHONE_STATE,
|
android.Manifest.permission.READ_PHONE_STATE,
|
||||||
@@ -481,9 +481,10 @@ class TelephonyRegistry extends ITelephonyRegistry.Stub {
|
|||||||
|
|
||||||
if ((events & ENFORCE_PHONE_STATE_PERMISSION_MASK) != 0) {
|
if ((events & ENFORCE_PHONE_STATE_PERMISSION_MASK) != 0) {
|
||||||
try {
|
try {
|
||||||
mContext.enforceCallingPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, null);
|
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, null);
|
||||||
// SKIP checking for run-time permission since obtained PRIVILEGED
|
// SKIP checking for run-time permission since caller or self has PRIVILEGED
|
||||||
|
// permission
|
||||||
} catch (SecurityException e) {
|
} catch (SecurityException e) {
|
||||||
if (mAppOps.noteOp(AppOpsManager.OP_READ_PHONE_STATE, Binder.getCallingUid(),
|
if (mAppOps.noteOp(AppOpsManager.OP_READ_PHONE_STATE, Binder.getCallingUid(),
|
||||||
callingPackage) != AppOpsManager.MODE_ALLOWED) {
|
callingPackage) != AppOpsManager.MODE_ALLOWED) {
|
||||||
@@ -661,10 +662,10 @@ class TelephonyRegistry extends ITelephonyRegistry.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private boolean canReadPhoneState(String callingPackage) {
|
private boolean canReadPhoneState(String callingPackage) {
|
||||||
if (mContext.checkCallingPermission(
|
if (mContext.checkCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) ==
|
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) ==
|
||||||
PackageManager.PERMISSION_GRANTED) {
|
PackageManager.PERMISSION_GRANTED) {
|
||||||
// SKIP checking for run-time permission since obtained PRIVILEGED
|
// SKIP checking for run-time permission since caller or self has PRIVILEGED permission
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
boolean canReadPhoneState = mContext.checkCallingOrSelfPermission(
|
boolean canReadPhoneState = mContext.checkCallingOrSelfPermission(
|
||||||
@@ -1589,9 +1590,10 @@ class TelephonyRegistry extends ITelephonyRegistry.Stub {
|
|||||||
|
|
||||||
if ((events & ENFORCE_PHONE_STATE_PERMISSION_MASK) != 0) {
|
if ((events & ENFORCE_PHONE_STATE_PERMISSION_MASK) != 0) {
|
||||||
try {
|
try {
|
||||||
mContext.enforceCallingPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, null);
|
android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, null);
|
||||||
// SKIP checking for run-time permission since obtained PRIVILEGED
|
// SKIP checking for run-time permission since caller or self has PRIVILEGED
|
||||||
|
// permission
|
||||||
} catch (SecurityException e) {
|
} catch (SecurityException e) {
|
||||||
mContext.enforceCallingOrSelfPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
android.Manifest.permission.READ_PHONE_STATE, null);
|
android.Manifest.permission.READ_PHONE_STATE, null);
|
||||||
|
|||||||
@@ -1668,8 +1668,9 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
|
|||||||
public NetworkPolicy[] getNetworkPolicies(String callingPackage) {
|
public NetworkPolicy[] getNetworkPolicies(String callingPackage) {
|
||||||
mContext.enforceCallingOrSelfPermission(MANAGE_NETWORK_POLICY, TAG);
|
mContext.enforceCallingOrSelfPermission(MANAGE_NETWORK_POLICY, TAG);
|
||||||
try {
|
try {
|
||||||
mContext.enforceCallingPermission(READ_PRIVILEGED_PHONE_STATE, TAG);
|
mContext.enforceCallingOrSelfPermission(READ_PRIVILEGED_PHONE_STATE, TAG);
|
||||||
// SKIP checking run-time OP_READ_PHONE_STATE since using PRIVILEGED
|
// SKIP checking run-time OP_READ_PHONE_STATE since caller or self has PRIVILEGED
|
||||||
|
// permission
|
||||||
} catch (SecurityException e) {
|
} catch (SecurityException e) {
|
||||||
mContext.enforceCallingOrSelfPermission(READ_PHONE_STATE, TAG);
|
mContext.enforceCallingOrSelfPermission(READ_PHONE_STATE, TAG);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user