Merge "Fix a bug where adding a user doesn't update network allow lists"
This commit is contained in:
commit
55d65ad71b
2 changed files with 34 additions and 3 deletions
|
|
@ -6245,9 +6245,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
if (mOemNetworkPreferences.getNetworkPreferences().size() > 0) {
|
||||
handleSetOemNetworkPreference(mOemNetworkPreferences, null);
|
||||
}
|
||||
if (!mProfileNetworkPreferences.isEmpty()) {
|
||||
updateProfileAllowedNetworks();
|
||||
}
|
||||
updateProfileAllowedNetworks();
|
||||
}
|
||||
|
||||
private void onUserRemoved(@NonNull final UserHandle user) {
|
||||
|
|
|
|||
|
|
@ -15759,6 +15759,39 @@ public class ConnectivityServiceTest {
|
|||
PREFERENCE_ORDER_PROFILE));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProfileNetworkPreferenceBlocking_addUser() throws Exception {
|
||||
final InOrder inOrder = inOrder(mMockNetd);
|
||||
doReturn(asList(PRIMARY_USER_HANDLE)).when(mUserManager).getUserHandles(anyBoolean());
|
||||
|
||||
// Only one network
|
||||
mCellAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR);
|
||||
mCellAgent.connect(true);
|
||||
|
||||
// Verify uid ranges 0~99999 are allowed
|
||||
final ArraySet<UidRange> allowedRanges = new ArraySet<>();
|
||||
allowedRanges.add(PRIMARY_UIDRANGE);
|
||||
final NativeUidRangeConfig config1User = new NativeUidRangeConfig(
|
||||
mCellAgent.getNetwork().netId,
|
||||
toUidRangeStableParcels(allowedRanges),
|
||||
0 /* subPriority */);
|
||||
inOrder.verify(mMockNetd).setNetworkAllowlist(new NativeUidRangeConfig[] { config1User });
|
||||
|
||||
doReturn(asList(PRIMARY_USER_HANDLE, SECONDARY_USER_HANDLE))
|
||||
.when(mUserManager).getUserHandles(anyBoolean());
|
||||
final Intent addedIntent = new Intent(ACTION_USER_ADDED);
|
||||
addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(SECONDARY_USER));
|
||||
processBroadcast(addedIntent);
|
||||
|
||||
// Make sure the allow list has been updated.
|
||||
allowedRanges.add(UidRange.createForUser(SECONDARY_USER_HANDLE));
|
||||
final NativeUidRangeConfig config2Users = new NativeUidRangeConfig(
|
||||
mCellAgent.getNetwork().netId,
|
||||
toUidRangeStableParcels(allowedRanges),
|
||||
0 /* subPriority */);
|
||||
inOrder.verify(mMockNetd).setNetworkAllowlist(new NativeUidRangeConfig[] { config2Users });
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProfileNetworkPreferenceBlocking_changePreference() throws Exception {
|
||||
final InOrder inOrder = inOrder(mMockNetd);
|
||||
|
|
|
|||
Loading…
Reference in a new issue