summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPeter Qiu <zqiu@google.com>2017-04-03 17:08:33 +0000
committerPeter Qiu <zqiu@google.com>2017-04-03 13:10:29 -0700
commit07816a4745b8030911869ceb58fa735e47834fe4 (patch)
tree0108a7e11280d8f8ef014c461acae2e5211d5483 /tests
parent31eb1e8997a0ee98df33f6d8b3b907e0fcb070ed (diff)
[Reland] hotspot2: track creator UID for installed providers
This is purely for debugging purpose. It is not used for restricting apps that can update/remove configs. Since for Passpoint configuration, the app that's responsible for adding a config might not be the app that's responsible for removing that config. Bug: 36566563 Test: frameworks/opt/net/wifi/tests/wifitests/runtests.sh Test: verify Creator UID in the output of "adb shell dumpsys" and the config store file Change-Id: I5c651fb204b6e07c2b1d6324350d63d25a38c894
Diffstat (limited to 'tests')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java10
-rw-r--r--tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointConfigStoreDataTest.java6
-rw-r--r--tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java41
-rw-r--r--tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointProviderTest.java3
4 files changed, 33 insertions, 27 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java b/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
index 80e29c6b1..4772d4c61 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiStateMachineTest.java
@@ -1171,15 +1171,17 @@ public class WifiStateMachineTest {
homeSp.setFqdn("test.com");
config.setHomeSp(homeSp);
- when(mPasspointManager.addOrUpdateProvider(config)).thenReturn(true);
+ when(mPasspointManager.addOrUpdateProvider(config, MANAGED_PROFILE_UID)).thenReturn(true);
mLooper.startAutoDispatch();
- assertTrue(mWsm.syncAddOrUpdatePasspointConfig(mWsmAsyncChannel, config));
+ assertTrue(mWsm.syncAddOrUpdatePasspointConfig(
+ mWsmAsyncChannel, config, MANAGED_PROFILE_UID));
mLooper.stopAutoDispatch();
reset(mPasspointManager);
- when(mPasspointManager.addOrUpdateProvider(config)).thenReturn(false);
+ when(mPasspointManager.addOrUpdateProvider(config, MANAGED_PROFILE_UID)).thenReturn(false);
mLooper.startAutoDispatch();
- assertFalse(mWsm.syncAddOrUpdatePasspointConfig(mWsmAsyncChannel, config));
+ assertFalse(mWsm.syncAddOrUpdatePasspointConfig(
+ mWsmAsyncChannel, config, MANAGED_PROFILE_UID));
mLooper.stopAutoDispatch();
}
diff --git a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointConfigStoreDataTest.java b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointConfigStoreDataTest.java
index 5b2eabfd3..cd3120f9e 100644
--- a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointConfigStoreDataTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointConfigStoreDataTest.java
@@ -59,6 +59,7 @@ public class PasspointConfigStoreDataTest {
private static final String TEST_CLIENT_CERTIFICATE_ALIAS = "ClientCert";
private static final String TEST_CLIENT_PRIVATE_KEY_ALIAS = "ClientPrivateKey";
private static final long TEST_PROVIDER_ID = 1;
+ private static final int TEST_CREATOR_UID = 1234;
@Mock WifiKeyStore mKeyStore;
@Mock SIMAccessor mSimAccessor;
@@ -234,8 +235,9 @@ public class PasspointConfigStoreDataTest {
// Setup expected data.
List<PasspointProvider> providerList = new ArrayList<>();
providerList.add(new PasspointProvider(createFullPasspointConfiguration(),
- mKeyStore, mSimAccessor, TEST_PROVIDER_ID, TEST_CA_CERTIFICATE_ALIAS,
- TEST_CLIENT_CERTIFICATE_ALIAS, TEST_CLIENT_PRIVATE_KEY_ALIAS));
+ mKeyStore, mSimAccessor, TEST_PROVIDER_ID, TEST_CREATOR_UID,
+ TEST_CA_CERTIFICATE_ALIAS, TEST_CLIENT_CERTIFICATE_ALIAS,
+ TEST_CLIENT_PRIVATE_KEY_ALIAS));
// Serialize data for user store.
when(mDataSource.getProviders()).thenReturn(providerList);
diff --git a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
index cea1c172d..70ae354b9 100644
--- a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
@@ -109,6 +109,7 @@ public class PasspointManagerTest {
private static final int TEST_ANQP_DOMAIN_ID = 0;
private static final ANQPNetworkKey TEST_ANQP_KEY = ANQPNetworkKey.buildKey(
TEST_SSID, TEST_BSSID, TEST_HESSID, TEST_ANQP_DOMAIN_ID);
+ private static final int TEST_CREATOR_UID = 1234;
@Mock Context mContext;
@Mock WifiNative mWifiNative;
@@ -251,8 +252,8 @@ public class PasspointManagerTest {
PasspointConfiguration config = createTestConfigWithUserCredential();
PasspointProvider provider = createMockProvider(config);
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(provider);
- assertTrue(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertTrue(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
return provider;
}
@@ -434,7 +435,7 @@ public class PasspointManagerTest {
*/
@Test
public void addProviderWithNullConfig() throws Exception {
- assertFalse(mManager.addOrUpdateProvider(null));
+ assertFalse(mManager.addOrUpdateProvider(null, TEST_CREATOR_UID));
}
/**
@@ -444,7 +445,7 @@ public class PasspointManagerTest {
*/
@Test
public void addProviderWithEmptyConfig() throws Exception {
- assertFalse(mManager.addOrUpdateProvider(new PasspointConfiguration()));
+ assertFalse(mManager.addOrUpdateProvider(new PasspointConfiguration(), TEST_CREATOR_UID));
}
/**
@@ -458,7 +459,7 @@ public class PasspointManagerTest {
PasspointConfiguration config = createTestConfigWithUserCredential();
// EAP-TLS not allowed for user credential.
config.getCredential().getUserCredential().setEapType(EAPConstants.EAP_TLS);
- assertFalse(mManager.addOrUpdateProvider(config));
+ assertFalse(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
}
/**
@@ -471,8 +472,8 @@ public class PasspointManagerTest {
PasspointConfiguration config = createTestConfigWithUserCredential();
PasspointProvider provider = createMockProvider(config);
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(provider);
- assertTrue(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertTrue(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
verifyInstalledConfig(config);
verify(mWifiConfigManager).saveToStore(true);
reset(mWifiConfigManager);
@@ -506,8 +507,8 @@ public class PasspointManagerTest {
PasspointConfiguration config = createTestConfigWithSimCredential();
PasspointProvider provider = createMockProvider(config);
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(provider);
- assertTrue(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertTrue(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
verifyInstalledConfig(config);
verify(mWifiConfigManager).saveToStore(true);
reset(mWifiConfigManager);
@@ -544,8 +545,8 @@ public class PasspointManagerTest {
PasspointConfiguration origConfig = createTestConfigWithSimCredential();
PasspointProvider origProvider = createMockProvider(origConfig);
when(mObjectFactory.makePasspointProvider(eq(origConfig), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(origProvider);
- assertTrue(mManager.addOrUpdateProvider(origConfig));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(origProvider);
+ assertTrue(mManager.addOrUpdateProvider(origConfig, TEST_CREATOR_UID));
verifyInstalledConfig(origConfig);
verify(mWifiConfigManager).saveToStore(true);
reset(mWifiConfigManager);
@@ -561,8 +562,8 @@ public class PasspointManagerTest {
PasspointConfiguration newConfig = createTestConfigWithUserCredential();
PasspointProvider newProvider = createMockProvider(newConfig);
when(mObjectFactory.makePasspointProvider(eq(newConfig), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(newProvider);
- assertTrue(mManager.addOrUpdateProvider(newConfig));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(newProvider);
+ assertTrue(mManager.addOrUpdateProvider(newConfig, TEST_CREATOR_UID));
verifyInstalledConfig(newConfig);
verify(mWifiConfigManager).saveToStore(true);
@@ -585,8 +586,8 @@ public class PasspointManagerTest {
PasspointProvider provider = mock(PasspointProvider.class);
when(provider.installCertsAndKeys()).thenReturn(false);
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(provider);
- assertFalse(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertFalse(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
}
/**
@@ -599,7 +600,7 @@ public class PasspointManagerTest {
PasspointConfiguration config = createTestConfigWithUserCredential();
doThrow(new GeneralSecurityException())
.when(mCertVerifier).verifyCaCert(any(X509Certificate.class));
- assertFalse(mManager.addOrUpdateProvider(config));
+ assertFalse(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
}
/**
@@ -614,8 +615,8 @@ public class PasspointManagerTest {
config.setUpdateIdentifier(1);
PasspointProvider provider = createMockProvider(config);
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), anyLong())).thenReturn(provider);
- assertTrue(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), anyLong(), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertTrue(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
verify(mCertVerifier, never()).verifyCaCert(any(X509Certificate.class));
verifyInstalledConfig(config);
}
@@ -849,8 +850,8 @@ public class PasspointManagerTest {
PasspointProvider provider = createMockProvider(config);
// Verify the provider ID used to create the new provider.
when(mObjectFactory.makePasspointProvider(eq(config), eq(mWifiKeyStore),
- eq(mSimAccessor), eq(providerIndex))).thenReturn(provider);
- assertTrue(mManager.addOrUpdateProvider(config));
+ eq(mSimAccessor), eq(providerIndex), eq(TEST_CREATOR_UID))).thenReturn(provider);
+ assertTrue(mManager.addOrUpdateProvider(config, TEST_CREATOR_UID));
verifyInstalledConfig(config);
verify(mWifiConfigManager).saveToStore(true);
reset(mWifiConfigManager);
diff --git a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointProviderTest.java b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointProviderTest.java
index afa04b549..c416a961a 100644
--- a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointProviderTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointProviderTest.java
@@ -67,6 +67,7 @@ import java.util.Set;
@SmallTest
public class PasspointProviderTest {
private static final long PROVIDER_ID = 12L;
+ private static final int CREATOR_UID = 1234;
private static final String CA_CERTIFICATE_NAME = "CACERT_HS2_12";
private static final String CLIENT_CERTIFICATE_NAME = "USRCERT_HS2_12";
private static final String CLIENT_PRIVATE_KEY_NAME = "USRPKEY_HS2_12";
@@ -91,7 +92,7 @@ public class PasspointProviderTest {
* @return {@link com.android.server.wifi.hotspot2.PasspointProvider}
*/
private PasspointProvider createProvider(PasspointConfiguration config) {
- return new PasspointProvider(config, mKeyStore, mSimAccessor, PROVIDER_ID);
+ return new PasspointProvider(config, mKeyStore, mSimAccessor, PROVIDER_ID, CREATOR_UID);
}
/**