summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--service/java/com/android/server/wifi/WifiInjector.java3
-rw-r--r--service/java/com/android/server/wifi/util/WifiPermissionsUtil.java8
-rw-r--r--service/java/com/android/server/wifi/util/WifiPermissionsWrapper.java13
-rw-r--r--tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java25
4 files changed, 21 insertions, 28 deletions
diff --git a/service/java/com/android/server/wifi/WifiInjector.java b/service/java/com/android/server/wifi/WifiInjector.java
index 63787dfb0..3d1356463 100644
--- a/service/java/com/android/server/wifi/WifiInjector.java
+++ b/service/java/com/android/server/wifi/WifiInjector.java
@@ -17,6 +17,7 @@
package com.android.server.wifi;
import android.content.Context;
+import android.net.NetworkScorerAppManager;
import android.net.wifi.IApInterface;
import android.net.wifi.IWifiScanner;
import android.net.wifi.IWificond;
@@ -167,7 +168,7 @@ public class WifiInjector {
BatteryStatsService.getService());
mWifiPermissionsWrapper = new WifiPermissionsWrapper(mContext);
mWifiPermissionsUtil = new WifiPermissionsUtil(mWifiPermissionsWrapper, mContext,
- mSettingsStore, UserManager.get(mContext));
+ mSettingsStore, UserManager.get(mContext), new NetworkScorerAppManager(mContext));
mSimAccessor = new SIMAccessor(mContext);
mPasspointManager = new PasspointManager(mContext, this, mSimAccessor);
}
diff --git a/service/java/com/android/server/wifi/util/WifiPermissionsUtil.java b/service/java/com/android/server/wifi/util/WifiPermissionsUtil.java
index 827afb42e..4bb828891 100644
--- a/service/java/com/android/server/wifi/util/WifiPermissionsUtil.java
+++ b/service/java/com/android/server/wifi/util/WifiPermissionsUtil.java
@@ -21,6 +21,7 @@ import android.app.AppOpsManager;
import android.content.Context;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
+import android.net.NetworkScorerAppManager;
import android.os.UserManager;
import android.provider.Settings;
@@ -41,16 +42,19 @@ public class WifiPermissionsUtil {
private final AppOpsManager mAppOps;
private final UserManager mUserManager;
private final WifiSettingsStore mSettingsStore;
+ private final NetworkScorerAppManager mNetworkScorerAppManager;
private WifiLog mLog;
public WifiPermissionsUtil(WifiPermissionsWrapper wifiPermissionsWrapper,
- Context context, WifiSettingsStore settingsStore, UserManager userManager) {
+ Context context, WifiSettingsStore settingsStore, UserManager userManager,
+ NetworkScorerAppManager networkScorerAppManager) {
mWifiPermissionsWrapper = wifiPermissionsWrapper;
mContext = context;
mUserManager = userManager;
mAppOps = (AppOpsManager) mContext.getSystemService(Context.APP_OPS_SERVICE);
mSettingsStore = settingsStore;
mLog = WifiInjector.getInstance().makeLog(TAG);
+ mNetworkScorerAppManager = networkScorerAppManager;
}
/**
@@ -108,7 +112,7 @@ public class WifiPermissionsUtil {
* Returns true if the caller is an Active Network Scorer.
*/
private boolean isCallerActiveNwScorer(int uid) {
- return mWifiPermissionsWrapper.isCallerActiveNwScorer(uid);
+ return mNetworkScorerAppManager.isCallerActiveScorer(uid);
}
/**
diff --git a/service/java/com/android/server/wifi/util/WifiPermissionsWrapper.java b/service/java/com/android/server/wifi/util/WifiPermissionsWrapper.java
index 20d201ccd..be10aefa4 100644
--- a/service/java/com/android/server/wifi/util/WifiPermissionsWrapper.java
+++ b/service/java/com/android/server/wifi/util/WifiPermissionsWrapper.java
@@ -18,7 +18,6 @@ package com.android.server.wifi.util;
import android.app.ActivityManager;
import android.content.Context;
-import android.net.NetworkScorerAppManager;
import android.os.UserHandle;
import java.util.List;
@@ -35,18 +34,6 @@ public class WifiPermissionsWrapper {
mContext = context;
}
- /**
- * Invokes the static API from NetworkScorer App
- * Manager to determine if the caller is an active
- * network scorer
- * @param uid of the caller
- * @return boolean indicating if the caller is an
- * active network scorer
- */
- public boolean isCallerActiveNwScorer(int uid) {
- return NetworkScorerAppManager.isCallerActiveScorer(mContext, uid);
- }
-
public int getCurrentUser() {
return ActivityManager.getCurrentUser();
}
diff --git a/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java b/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
index 61820d780..c0d3e2bf1 100644
--- a/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
@@ -28,6 +28,7 @@ import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
+import android.net.NetworkScorerAppManager;
import android.os.Build;
import android.os.UserHandle;
import android.os.UserManager;
@@ -66,6 +67,7 @@ public class WifiPermissionsUtilTest {
@Mock private UserManager mMockUserManager;
@Mock private WifiSettingsStore mMockWifiSettingsStore;
@Mock private ContentResolver mMockContentResolver;
+ @Mock private NetworkScorerAppManager mNetworkScorerAppManager;
private static final String TEST_PACKAGE_NAME = "com.google.somePackage";
private static final String INVALID_PACKAGE = "BAD_PACKAGE";
@@ -125,7 +127,7 @@ public class WifiPermissionsUtilTest {
mCurrentUser = UserHandle.USER_CURRENT_OR_SELF;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -152,7 +154,7 @@ public class WifiPermissionsUtilTest {
mMockUserInfo.id = mCallingUser;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -174,7 +176,7 @@ public class WifiPermissionsUtilTest {
mPermissionsList.put(mMacAddressPermission, mUid);
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -202,7 +204,7 @@ public class WifiPermissionsUtilTest {
mPermissionsList.put(mInteractAcrossUsersFullPermission, mUid);
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -228,7 +230,7 @@ public class WifiPermissionsUtilTest {
mWifiScanAllowApps = AppOpsManager.MODE_ALLOWED;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -253,7 +255,7 @@ public class WifiPermissionsUtilTest {
mCurrentUser = UserHandle.USER_CURRENT_OR_SELF;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -281,7 +283,7 @@ public class WifiPermissionsUtilTest {
mCurrentUser = UserHandle.USER_CURRENT_OR_SELF;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -312,7 +314,7 @@ public class WifiPermissionsUtilTest {
mMockUserInfo.id = mCallingUser;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -338,7 +340,7 @@ public class WifiPermissionsUtilTest {
mLocationModeSetting = Settings.Secure.LOCATION_MODE_HIGH_ACCURACY;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -356,7 +358,7 @@ public class WifiPermissionsUtilTest {
boolean output = false;
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
- mMockContext, mMockWifiSettingsStore, mMockUserManager);
+ mMockContext, mMockWifiSettingsStore, mMockUserManager, mNetworkScorerAppManager);
try {
output = codeUnderTest.canAccessScanResults(TEST_PACKAGE_NAME, mUid, mTargetVersion);
} catch (SecurityException e) {
@@ -429,8 +431,7 @@ public class WifiPermissionsUtilTest {
anyString(), anyInt());
when(mMockPermissionsWrapper.getCallingUserId(mUid)).thenReturn(mCallingUser);
when(mMockPermissionsWrapper.getCurrentUser()).thenReturn(mCurrentUser);
- when(mMockPermissionsWrapper.isCallerActiveNwScorer(mUid))
- .thenReturn(mActiveNwScorer);
+ when(mNetworkScorerAppManager.isCallerActiveScorer(mUid)).thenReturn(mActiveNwScorer);
when(mMockPermissionsWrapper.getUidPermission(mManifestStringCoarse, mUid))
.thenReturn(mCoarseLocationPermission);
when(mMockWifiSettingsStore.getLocationModeSetting(mMockContext))