Commit Graph

1615 Commits

Author SHA1 Message Date
Junyu Lai
d4ec0e4160 Merge "[VCN07] Bypass VCN for non-internet app accessible cellular services" am: ef906819f9 am: b25df9f6c7 am: d71c292044
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1597954

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iade334bfade0457afc6ab2806e481a5e0c85616c
2021-02-26 17:25:16 +00:00
James Mattis
140398ea37 Merge "Unit test automation for Multi-Default Tracking" am: 8b3ccda6bb am: 2660c17a1d am: b98cbf8c82
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1579207

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I1ddb565af1106f10186c83debd6d20be850d4198
2021-02-26 13:05:37 +00:00
Junyu Lai
ef906819f9 Merge "[VCN07] Bypass VCN for non-internet app accessible cellular services" 2021-02-25 10:16:03 +00:00
Sarah Chin
414f1fd265 Merge "APIs for 5G slicing" into sc-dev 2021-02-24 17:36:45 +00:00
James Mattis
6177885a1a Unit test automation for Multi-Default Tracking
Unit test automation validating how multiple default networks are
tracked within ConnectivityService when set by network preferences
used with setOemNetworkPreference() API functionality.

Bug: 178632672
Bug: 172347841
Bug: 170068946
Test: atest FrameworksNetTests
Change-Id: Iae1935944214efaa8a21636c55e6d8be816275f7
2021-02-23 19:03:34 -08:00
Chiachang Wang
5feeaa8673 Merge "Remove UidRange.createForUser() with userId integers" am: a611e12599 am: 06efdc49f3 am: d1e6da0852
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1596511

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I1a3c072f7b82e51b5fb71f8c591680cfc1d0041b
2021-02-24 02:14:37 +00:00
Lucas Lin
3a9e7f3713 Merge changes I852e3a53,I86755647,I0ed8b0c6 am: 0f35b07653 am: 9af180ede6 am: 58f8da548d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1553736

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I032e3d8f16b164f067dba02bde950b93f4e54b83
2021-02-23 22:56:46 +00:00
Paul Hu
01984b0c8d Merge "Stop using SysetmConfig#getSystemPermissions on PermissionMonitor" am: 3172402dff am: 29c0ce536f am: e137456173
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1545848

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7902f041b29dbf4cf2a05bf4885f0e4fa2af0528
2021-02-23 22:55:02 +00:00
Chiachang Wang
a611e12599 Merge "Remove UidRange.createForUser() with userId integers" 2021-02-23 07:17:07 +00:00
Sarah Chin
a5e4fc1359 APIs for 5G slicing
Create TrafficDescriptor class
Create new APN ENTERPRISE
Update setupDataCall and DataCallResponse to take TrafficDescriptor and
matchAllRuleAllowed
Move ApnTypes from Annotation to ApnSetting

Bug: 179312227
Test: atest FrameworksTelephonyTests
Change-Id: I7433976bfe25bcb2af85ffb9338959cbcc9f42f3
2021-02-22 21:58:07 -08:00
Chiachang Wang
c94d3238a3 Remove UidRange.createForUser() with userId integers
UidRange will be a part of connectivity mainline module.
Mainline modules should use strongly-typed UserHandle arguments.
The method also refer to the hidden UserHandle.PER_USER_RANGE
which is not available after UidRange is moved into module.
Thus, replace the usage and remove the createForUser method that
takes userId parameter.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: I3f33ea92c4a24342af9ec4b0367c50bb64ce6450
2021-02-22 18:51:14 +08:00
Lucas Lin
0f35b07653 Merge changes I852e3a53,I86755647,I0ed8b0c6
* changes:
  Remove unused INetworkManagementService from IpSecService
  Use NetdUtils instead of NetworkManagementService in Vpn
  Use NetdUtils instead of NetworkManagementService in IpSecService
2021-02-22 06:49:39 +00:00
Paul Hu
3172402dff Merge "Stop using SysetmConfig#getSystemPermissions on PermissionMonitor" 2021-02-22 05:22:37 +00:00
junyulai
71d157f0e2 [VCN07] Bypass VCN for non-internet app accessible cellular services
Deduce the NET_CAPABILITY_NOT_VCN_MANAGED capability from other
capabilities and user intention, which includes:
   1. For the requests that don't have anything besides
      VCN_SUPPORTED_CAPABILITIES, add the NOT_VCN_MANAGED to
      allow the callers automatically utilize VCN networks
      if available.
   2. For the requests that explicitly add or remove
      NOT_VCN_MANAGED,  do not alter them to allow user fire
      request that suits their need.

Test: atest NetworkRequestTest#testBypassingVcnForNonInternetRequest
Bug: 175662146
Change-Id: I2876264cee14b624c89ba3b380027a8b521ad8ea
  (cherry-picked from aosp/1549817)
2021-02-22 10:19:16 +08:00
James Mattis
da34538df1 Merge "Unit test automation for Multilayer Evaluation" am: ef921b95d7 am: f354f527ae am: c60471d42b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1579206

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ie7d3de8491541219c9ef1faa461c3160cc988e01
2021-02-20 23:14:57 +00:00
James Mattis
ef921b95d7 Merge "Unit test automation for Multilayer Evaluation" 2021-02-20 21:23:45 +00:00
Junyu Lai
cc1100e24e Merge "[FUI15] Remove networkId in NetworkState" am: c8ae3c432b am: 6d8a6d5f70 am: 5f3fa05704
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1542749

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I57c03c39a069e0ad9760ab5b411caf69a9fdcf45
2021-02-20 17:03:44 +00:00
Junyu Lai
c8ae3c432b Merge "[FUI15] Remove networkId in NetworkState" 2021-02-20 14:00:19 +00:00
paulhu
fb7877ead5 Stop using SysetmConfig#getSystemPermissions on PermissionMonitor
Repalace the API with SysetmConfigManager#getSystemPermissionUids
and update the design/test accordingly.

Bug: 177188455
Test: atest FrameworksNetTests
Test: atest FrameworksNetIntegrationTests
Test: atest CtsNetTestCases
Change-Id: I8b553b934252b93c60b815715680427a41620054
2021-02-20 16:20:19 +08:00
Chiachang Wang
10423d3de1 Merge changes I0a75c440,Ief9e8925,Ie03e8276,If0ac9a64,I716bd771 am: d55023c6e9 am: 634db1b9de am: 6468f11dcb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1573943

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I52c41154ae3364774e63376fbdd5a9f42727b65f
2021-02-20 05:04:03 +00:00
James Mattis
3470eba245 Merge "Unit tests for Multi-Default with Existing APIs" am: 090909cb3d am: 33451af2f2 am: 108bb667ce
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1579208

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibae6928e620a5029986b71b2cf13c3137d39be9d
2021-02-20 03:29:18 +00:00
Chiachang Wang
d55023c6e9 Merge changes I0a75c440,Ief9e8925,Ie03e8276,If0ac9a64,I716bd771
* changes:
  [IT06]Move INetworkActivityListener into connectivity module
  [IT05] Remove the unused network activity logic out from NMS
  [IT4.7] Add network activity info into dumpsys for debugging
  [IT4.6] Unbundle NMS out from ConnectivityManager
  [IT4.5] Update radio power from CS directly
2021-02-20 02:02:46 +00:00
James Mattis
84b4bb86d4 Unit test automation for Multilayer Evaluation
Unit test automation for multilayer network hierarchy evaluation
when using the setOemNetworkPreference() API ConnectivityService.

Bug: 178632672
Bug: 176494815
Bug: 170068946
Test: atest FrameworksNetTests
Change-Id: Ia9b76f49a07eff6a3977faaa41fc67a10f307841
2021-02-19 17:41:01 -08:00
James Mattis
090909cb3d Merge "Unit tests for Multi-Default with Existing APIs" 2021-02-20 01:38:52 +00:00
Lorenzo Colitti
3d397dbd72 Merge changes I0e6df469,I3d46d5f7 am: 05baf850c4 am: 263ead791b am: 8f5de657a6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1591457

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I44e26cb8d6e8071c7467316bfb60047d1ea10a22
2021-02-19 09:40:14 +00:00
Lorenzo Colitti
6450ad656d Merge "Fix all Log.wtfs in FrameworksNetTests." am: 326cf02637 am: f8b5e2a497 am: fb0f6ac08b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1591458

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I715658a8f15dada6fd0f248d897d2bc294bacf1a
2021-02-19 09:39:11 +00:00
Lorenzo Colitti
05baf850c4 Merge changes I0e6df469,I3d46d5f7
* changes:
  Fix testMobileDataAlwaysOn flakiness
  Speed up NetworkFactory tests.
2021-02-19 08:13:38 +00:00
Lorenzo Colitti
cf4fb16228 Fix all Log.wtfs in FrameworksNetTests.
These cause the tests to crash on eng builds, so disrupt
development.

Test: atest FrameworksNetTests passes on eng build
Change-Id: Ifa5131fdb8f57af812cf688970be6588d2879c29
2021-02-18 21:13:04 +09:00
Chalard Jean
1cd19ed4cb Fix testMobileDataAlwaysOn flakiness
Test: atest --iterations 100 CST#testMobileDataAlwaysOn
Change-Id: I0e6df4694752dab7a5938e8f8bd88c7da7c3fcd5
2021-02-18 16:45:27 +09:00
Chalard Jean
3d8d563e24 Speed up NetworkFactory tests.
Somehow this big slowdown escaped review.

Test: ConnectivityServiceTest
Change-Id: I3d46d5f7a986b3586b7e6044eb10aba756bb6ceb
2021-02-18 16:45:26 +09:00
Lorenzo Colitti
8e97e8b968 Merge "Fix merge conflict." 2021-02-18 05:22:56 +00:00
lucaslin
a5e9bdbc3b [IT4.6] Unbundle NMS out from ConnectivityManager
ConnectivityService is no longer to update idle timer to NMS but
send to INetd directly after this change. Replace the API
implementation in ConnectivityManager to refer into
ConnectivityService instead of NetworkManagementService to remove
the dependency between CM and NMS for ConnectivityService mainline.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: If0ac9a6427dba5a732a15b5d7ca1351b71b07b7b
2021-02-18 11:48:06 +08:00
James Mattis
3af4b83480 Merge "Unit test automation for Per-App API functionality" am: eed1a0000b am: f0cfa51361 am: 0db660f54c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1562555

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I559adbea15bef817f5f258e38597d169307c6f65
2021-02-17 19:45:57 +00:00
Lorenzo Colitti
0d40ddb1ef Fix merge conflict.
ag/13210542 was submitted directly into internal and is causing
a merge conflict in NetworkNotificationManagerTest.

Fix the conflict by adding the unused imports.

Test: m
Bug: 175409684
Change-Id: I6eec459a5e5b9900ddeb9e17d90f07432eee1394
2021-02-17 20:22:35 +09:00
James Mattis
99e32edf89 Unit tests for Multi-Default with Existing APIs
Unit test automation validating existing APIs
ConnectivityService work as expected with multiple default networks.

Bug: 178632672
Bug: 178729499
Bug: 172347841
Bug: 170068946
Test: atest FrameworksNetTests
Change-Id: Id498cb7222ffddc565cbb93970e96479374153e4
2021-02-17 11:17:06 +00:00
James Mattis
5ee5d5d28a Unit test automation for Per-App API functionality
Unit test automation for setOemNetworkPreference() API functionality on
ConnectivityService.

Bug: 178632672
Bug: 176494815
Bug: 170068946
Test: atest FrameworksNetTests
Change-Id: Ib76917f0fa78b736207f82d99137a6cf49481b20
2021-02-17 08:55:20 +00:00
Lorenzo Colitti
5ffeed6200 Merge "Use UserHandles instead of userId integers." am: f2abf2692c am: 883841d201 am: 4ff8cf6391
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1589632

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I8b6bdedc099cb421b52dd35b4ccfdfaf0d9c9633
2021-02-17 02:53:29 +00:00
Lorenzo Colitti
0e9d2108b0 Use UserHandles instead of userId integers.
userId integers are not public API and code should use UserHandle
instead.

Bug: 170598012
Test: passes existing tests
Change-Id: Ic27b93ccfe6bbc97e7419293ce165fee6cd51e6d
2021-02-16 08:06:23 +00:00
Remi NGUYEN VAN
2766d615e6 Merge "Revert "[VCN07] Bypass VCN for non-internet app accessible cellu..."" am: 75049d8ec8 am: 0ee35089b7 am: 96f21fd65f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1585569

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I88648d8cab6081c178ecdd3b38935658a78b78dc
2021-02-16 02:23:51 +00:00
Lorenzo Colitti
9cdb79d634 Merge "BroadcastInterceptingContext: use passed-in broadcast Handler." am: b3ce8c39d8 am: 3d2c5d6774 am: 11eae148c4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1589251

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5d38e78800c9a524ae7ccf5d55ebae1a9f60922f
2021-02-15 12:08:03 +00:00
Remi NGUYEN VAN
75049d8ec8 Merge "Revert "[VCN07] Bypass VCN for non-internet app accessible cellu..."" 2021-02-15 11:39:25 +00:00
Lorenzo Colitti
37d17e60c3 BroadcastInterceptingContext: use passed-in broadcast Handler.
Currently, BroadcastInterceptingContext always runs broadcast
receivers on the thread that called sendBroadcast. This means:

1. Receivers might run on the wrong thread, making the test less
   realistic.
2. If any receiver checks what thread it's running on, then
   either the check needs to be modified or deleted, or the test
   must call sendBroadcast on the thread that the receiver
   expects to run on. The latter is impossible when there is more
   than one receiver that needs to run on more than one thread.

This CL adds a setUseRegisteredHandlers method that allows tests
to say that they want each receiver to run on the Handler
specified at registration time.

This CL also enables the new mode for ConnectivityServiceTest,
and resolves a TODO to re-enable a disabled thread check.

The new mode cannot be enabled by default because it would break
most of the tests.

All the below tests pass except for the car bluetooth test
testAutoConnectAdapterOff_returnsImmediately which was already failing.

Bug: 173331190
Test: atest CarInputServiceTest BluetoothProfileDeviceManagerTest
Test: atest NetworkPolicyManagerServiceTest
Test: atest ConnectivityServiceTest
Test: atest TetheringTest TetheringNotificationUpdaterTest
Test: atest VersionedBroadcastListenerTest EntitlementManagerTest
Test: atest TetheringConfigurationTest
Test: atest CachedDeviceStateServiceTest
Test: atest EmergencyAffordanceServiceTest
Change-Id: I3303bb14516f07a55d82a16b59c111ab3f8b0389
2021-02-15 10:40:32 +00:00
Lorenzo Colitti
f22aa33bc6 Merge changes Ia68f482a,I4911e214,Ied379654,I66d18512,Ie8e1bd63 am: 6e423b8024 am: f390bd61d7 am: 321e1c1f6a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1581293

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I698b6b082b121c004b2c8b05ef423da1bd8b871b
2021-02-15 01:32:50 +00:00
Lorenzo Colitti
6e423b8024 Merge changes Ia68f482a,I4911e214,Ied379654,I66d18512,Ie8e1bd63
* changes:
  Check registering system default callback needs NETWORK_SETTINGS.
  Move VPN code from ConnectivityService to VpnManagerService.
  Add a skeleton VpnManagerService, and start it on boot.
  Convert LockdownVpnTracker to NetworkCallbacks.
  Minor fixes to VpnTransportInfo.
2021-02-15 00:00:47 +00:00
Yan Yan
3d818137f3 Merge changes Ifc8ad902,I6d1b8d0e am: 87c6253518 am: 66b74e588b am: 913569d3e5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1453730

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6f3235dd38e4c4912f986cbb27867ff14fe38e81
2021-02-12 22:46:32 +00:00
Remi NGUYEN VAN
54bb81ba9a Revert "[VCN07] Bypass VCN for non-internet app accessible cellu..."
Revert submission 1579872-vcn07

Reason for revert: Possible culprit for b/179768816, broken ConnectivityControllerTest
Reverted Changes:
Id09b19c13:Address comments on aosp/1550755
I245bd69e0:[VCN07.1] Add test for bypassing VCN for non-inter...
I9936894b9:[VCN07] Bypass VCN for non-internet app accessible...

Change-Id: Ie5f8c3051fed40623e5d4705ac2243ef51a898bd
2021-02-12 04:09:15 +00:00
Lorenzo Colitti
d5e9f98e28 Check registering system default callback needs NETWORK_SETTINGS.
Also address a code review comment.

Bug: 173331190
Test: test-only change
Change-Id: Ia68f482af6d10af203bdbd4e14a12ae0b12bb6b5
2021-02-12 01:12:48 +09:00
Lorenzo Colitti
0dd4b6f512 Move VPN code from ConnectivityService to VpnManagerService.
ConnectivityService itself does not depend on mVpns or the Vpn
class any more. Most of this CL is simply moving code from one
class to another:

- Move the AIDL calls from IConnectivityManager to IVpnManager.
- Move the implementation from ConnectivityService to
  the new VpnManagerService.
- Move the APIs from ConnectivityManager to VpnManager, but
  temporarily maintain some shims in ConnectivityManager for the
  moved calls so that existing callers do not have to be modified
  in this CL.
- Update VpnService to call IVpnManager instead of
  IConnectivityManager.
- Move the code that registers the VpnManager service from
  ConnectivityFrameworkInitializer to SystemServiceRegistry.

Bug: 173331190
Test: atest HostsideVpnTests FrameworksNetTests CtsNetTestCases
Change-Id: I4911e2144df721a94fa00da9edf0dc372a7091c2
2021-02-12 01:12:24 +09:00
Lorenzo Colitti
549e9acd92 Convert LockdownVpnTracker to NetworkCallbacks.
This will allow moving LockdownVpnTracker from the connectivity
to the VPN code. This requires moderate refactoring since it's
pretty tightly coupled to both.

In this CL:

1. Add an @hide API to tell ConnectivityService that legacy
   lockdown VPN is enabled. I chose not to use the existing
   setVpnRequiredForUids API because that method has specific
   semantics and because it will be required long term since
   it's used by non-legacy VPN types.

2. Instead of updating LockdownVpnTracker inline from the
   ConnectivityService handler thread, have it listen to
   NetworkCallbacks. This introduces an extra thread hop, but
   most of the interactions between the lockdown VPN and CS were
   via NetworkAgent, which is asynchronous anyway.

3. Add code to LegacyTypeTracker to send the extra
   CONNECTIVITY_ACTION broadcast for the underlying network type
   that is sent after the VPN connects. In order to do this, make
   Make LockdownVpnTracker specify its underlying network
   (via setUnderlyingNetworks) when it connects.

4. Reimplement LockdownVpnTracker#augmentNetworkInfo based on
   information that is available in ConnectivityService.

5. Remove the code in LockdownVpnTracker that counted errors.
   I think this code has not worked since lollipop, because
   ConnectivityService never sees NetworkInfo objects in state
   FAILED. This is because ConnectivityService only hears about
   NetworkInfo objects via NetworkAgents, and LegacyVpnRunner
   only registers its NetworkAgent when the connection succeeds.

Bug: 173331190
Test: passes existing tests in ConnectivityServiceTest
Change-Id: I66d18512882efd468ee0ecec61f28786a195b357
2021-02-12 01:07:29 +09:00
Lorenzo Colitti
720f3cc167 Minor fixes to VpnTransportInfo.
This CL addesses comments on aosp/1570921.

Bug: 173331190
Test: new test coverage
Change-Id: Ie8e1bd63bb818a03f4b17402e1b365577ca034a2
2021-02-11 23:28:00 +09:00