Commit Graph

404 Commits

Author SHA1 Message Date
Frank Li
231503a08c Merge "[DU01]Remove INetworkManagementService from NetworkStatsService" 2022-01-13 05:45:42 +00:00
Chiachang Wang
e52be3b59f Merge "Add excludeLocalRoutes in NativeNetworkConfig" 2022-01-13 00:57:49 +00:00
Chiachang Wang
bf6b879b55 Add excludeLocalRoutes in NativeNetworkConfig
Add extra field in NativeNetworkConfig to allow CS to notify
netd whether the local traffic should be excluded from the VPN
network.

Bug: 184750836
Test: atest FrameworksNetworkTests
Change-Id: If230fe7057722c80a09433673ac3cec857f7a7a5
2022-01-11 11:33:44 +08:00
lifr
214714285a [DU01]Remove INetworkManagementService from NetworkStatsService
NetworkStatsService is using INetworkManagementService APIs, which
cannot be accessed after moving into the mainline module. So, replace
and remove those hidden API usages.

Bug: 209738761
Test: atest NetworkStatsServiceTest
Change-Id: Ieda3c3382fa61411587c5b390bbecb2a2524844b
2022-01-08 01:33:36 +08:00
Junyu Lai
50a8f07132 [MS42.2] Adopt TelephonyDisplayInfo in unit test
Test: atest NetworkStatsSubscriptionsMonitorTest
Fix: 213021103

Change-Id: Ib6b472a095a6ae92a2574c1ea2d382e1c2699d57
2022-01-07 06:45:56 +00:00
Junyu Lai
0e9c51ca5c [MS39.2] Remove the looper from NetworkStatsSubscriptionMonitor
OnSubscriptionsChangedListenerHandler(Looper looper) is
hidden, there is no way to pass a looper to it in the test.
This change partially revert aosp/1340040 to fix hidden
API dependency. And will use a different approach to address
this problem in later stages.

Test: atest NetworkStatsSubscriptionMonitorTest
Bug: 204830222
Bug: 213280079
Change-Id: Ie17f04cd9f174f2895bde4607bbd7a9a92181a96
2022-01-07 06:45:56 +00:00
Junyu Lai
3cb8fe8c66 [MS17.3] Remove NetworkStatsManagerInternal dependency
Test: atest MultipathPolicyTrackerTest
Bug: 204830222

Change-Id: I219e963124b8fa0967ea08f2f047f7c654ab4a04
2022-01-07 06:45:56 +00:00
Junyu Lai
eaa58de991 [MS17.2] Fix remaining daily budget assertion
Currently, the test didn't mock data usage of the month.
Thus, when asserting remaining budget, the calculation
always assumes there is no used data, hence wrong budget
value is expected. See #getRemainingDailyBudget.

This change makes data usage of this month includes the
bytes used today. And adjust the policy limit accordingly.

Test: atest MultipathPolicyTrackerTest
Bug: 204830222
Change-Id: I3ca6505f8d502047485ba3676f16fbc474117cc1
2022-01-07 06:45:56 +00:00
Junyu Lai
a9b4fa7248 [MS32.2] Remove TetheringManager#ACTION_TETHER_STATE_CHANGED usage
Replace intent receiver with callback listener.

Test: atest com.android.server.net.NetworkStatsServiceTest
Bug: 204830222
Change-Id: I07ef87b08b5d177719a82f79a2866d72b003fb5a
2022-01-05 05:31:05 +00:00
Junyu Lai
851fb24667 [MS34.2] Replace TelephonyManager#getSubscriberId(subId) with public API
Test: atest com.android.server.net.NetworkStatsSubscriptionsMonitorTest
Bug: 204830222
Change-Id: I53cdf9a83a38ea6921bff02be48bc14a4012ba36
2022-01-05 05:31:05 +00:00
Junyu Lai
37880f857a [MS33.2] Remove NetdService dependency
This change pass INetd to NetworkStatsFactory to replace
NetdService#getNetdInstance.

Test: atest FrameworksNetTests
Bug: 204830222
Change-Id: I0756188adb394fa5343c8d2ae354567df63acf21
2022-01-05 05:30:39 +00:00
Les Lee
719ce67677 Merge "wifi data usage: replaced Wi-Fi SSID with a Wi-Fi network key" 2022-01-03 12:36:49 +00:00
Les Lee
c728c36ca7 wifi data usage: replaced Wi-Fi SSID with a Wi-Fi network key
1. Used SSID to be a wifi network identity can't separate wifi
data usage when there are two different network with same SSID.
Use a new usage key from in WifiInfo to replace wifi SSID to
solve this issue.

2. To support to query wifi usage per configured Wifi network.
Adding matchWifiNetworkKeys in NetworkTemplate to support querying
multi networkKeys wifi data usage since each configured Wifi
network configuration might be used to connect different Wifi
network.

a. Replaced wording SSID with key of the wifi network
b. Add mock to handle get wifi network key from WifiInfo
c. Add null/empty set unit test to verify matchWifiNetworkKeys

Bug: 197520752
Bug: 126299427
Test: atest -c NetworkTemplateTest
Test: atest -c NetworkStatsServiceTest
Test: atest -c NetworkPolicyManagerServiceTest
Change-Id: Id7d66f6548dd1b4e657db8d7427213293618b406
2022-01-03 15:13:45 +08:00
Chiachang Wang
a7b3d00968 Merge "Allow VPN network agent to exclude local traffic" 2021-12-28 07:45:20 +00:00
Chiachang Wang
bb754d6cc5 Allow VPN network agent to exclude local traffic
Add API to allow network agent to set whether the local traffic
is excluded from the network. This commit is nonfunctional
currently but only storing the boolean inside the NAI.

Bug: 184750836
Test: atest FrameworksNetTests
Change-Id: I3799216ac8fdf22eb4bcabc6c6136d8edbf69360
2021-12-28 11:13:21 +08:00
Junyu Lai
78d36d7653 Merge "[MS15.2] Move SUBSCRIBER_ID_MATCH_RULE_* constants to static lib" 2021-12-23 01:35:00 +00:00
Junyu Lai
07c772cf49 [MS15.2] Move SUBSCRIBER_ID_MATCH_RULE_* constants to static lib
Subscriber Id Match Rules won't be exposed as system Api.
Any caller who references NetworkTemplate#SUBSCRIBER_ID_MATCH_RULE_*
should use the one in NetworkStatsUtils instead.
And remove the need of the constants as soon as possible.

Test: atest NetworkPolicyManagerServiceTest \
      FrameworksNetTests
Bug: 204830222
Change-Id: I363a4440f85f1ca818eaf1125e45b141dd6f0e55
2021-12-22 09:41:29 +00:00
Jack Yu
04bbc5b9b0 Added a new network capability MMTEL
Added NET_CAPABILITY_MMTEL to indicate a network
support MMTEL (Multimedia telephony). This is for
IMS service to request an IMS network that supports
voice or PS (VoPS for 4G, VoNR for 5G).

This was previously submitted as aosp/1927841, but
which got reverted due to breaking the mainline
build, which uses the pre-built module.

Bug: 210774375
Test: atest ConnectivityServiceTest
Change-Id: If8b691ff4999a4dbf54e7567d9ca74d743dc5ded
2021-12-21 16:31:30 +00:00
Martijn Coenen
6ebc8ba595 Revert "Added a new network capability MMTEL"
Revert "Added setup/tear down data support"

Revert "Added a new network capability MMTEL"

Revert submission 1927643-mmtel_capability

Reason for revert: b/211586152
Reverted Changes:
Ifea8b1e40:Added a new network capability MMTEL
I38655bef2:Added a new network capability MMTEL
I837606d9e:Added setup/tear down data support
I2c7b291fe:Added a new network capability MMTEL

Change-Id: Ie9b0b0d9017ef8aea7fbb56dda522e7c433144b9
2021-12-21 11:24:01 +00:00
Jack Yu
f322d4f5e0 Added a new network capability MMTEL
Added NET_CAPABILITY_MMTEL to indicate a network
support MMTEL (Multimedia telephony). This is for
IMS service to request an IMS network that supports
voice or PS (VoPS for 4G, VoNR for 5G).

Bug: 210774375
Test: atest ConnectivityServiceTest
Change-Id: Ifea8b1e40f65c610e925a27be873930fee2df693
2021-12-16 14:38:10 -08:00
Aaron Huang
3c1e7398a4 Merge "Add makeDependencies method in IpSecService related tests" 2021-12-16 12:32:41 +00:00
Aaron Huang
286c0e5336 Merge "Change to use Dependencies in IpSecService Tests" 2021-12-15 07:53:23 +00:00
Treehugger Robot
a9656625d2 Merge "[MS07.2] Move NetworkStatsCollection/IdentitySet into frameworks" am: 7577131341
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1895330

Change-Id: I3d84b1a82e07a9b4a56ddc88f3f81d875870517c
2021-12-10 18:57:07 +00:00
Aaron Huang
9792b5b5e6 Add makeDependencies method in IpSecService related tests
Bug: 204153604
Test: FrameworksNetTest
Change-Id: Iea5731273e4772966466088f11a4c6334fa19f5d
2021-12-10 12:11:20 +00:00
Junyu Lai
e9710f0918 [MS07.2] Move NetworkStatsCollection/IdentitySet into frameworks
These files are needed for the data migration util system Api
interfaces. Thus, they need to be moved into frameworks folder.

This change also set the @IgnoreUpTo annotation to S, since
these tests are testing purely platform code on S- devices which
is not really necessary for MTS. Also the tests are still covered
by the unit tests, since they are always verifying HEAD.

Test: TH
Bug: 197717846
Change-Id: I93c19b4860864c724be9f9f889ee2173f4605198
2021-12-09 08:43:16 +00:00
Paul Hu
b8c0a764bd Merge "Remove NsdSettings from test" am: 5c3c3af9b6
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1908687

Change-Id: Id2ff4ca8c54ea88966d78d4000384ea4aa780ad4
2021-12-07 06:01:16 +00:00
paulhu
850bd91c3a Remove NsdSettings from test
NsdSettings has been removed from NsdService, so the test needs
to update accordingly.

Bug: 206702844
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I23b6323b2d870746737370b9a3fc90e530e3d2ed
2021-12-03 22:26:39 +08:00
Paul Hu
b0a10cd127 Merge "Save uid netd network permissions" am: 6fafdc1548
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1773890

Change-Id: Ibff437f91017017cc6fcc7e456e621e2ad81995a
2021-11-29 03:45:46 +00:00
Aaron Huang
ced49fd763 Change to use Dependencies in IpSecService Tests
The interface IpSecServiceConfiguration is refactored to static
class Dependencies. Refine the tests to use Dependencies.

Bug: 204153604
Test: FrameworksNetTests
Change-Id: Ie2b79b1d948a19f64600ed9ea3b60b192dd92dfd
2021-11-27 00:27:33 +08:00
paulhu
b2d5b054d3 Save uid netd network permissions
PermissionMonitor only saves netd network permissions by appId.
Then apply same permision to uids which are same appId. But
UIDS_ALLOWED_ON_RESTRICTED_NETWORKS can allow single uid has
restricted network permission. Thus, save the netd network
permissions by uid that can apply different permission to each
uid.

Bug: 192431153
Test: atest FrameworksNetTests
Change-Id: I942cbe0fa30758a7497c47a1b684ed70c4e3b09e
2021-11-26 14:47:01 +08:00
Remi NGUYEN VAN
b7fd5bd3e1 Merge "Update NSD tests without AsyncChannel" am: 469d941752
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1823893

Change-Id: I897bdce6cdaf4ea390d8ce6be03b87bacd6da82e
2021-11-22 06:19:18 +00:00
Remi NGUYEN VAN
469d941752 Merge "Update NSD tests without AsyncChannel" 2021-11-22 05:58:15 +00:00
Aaron Huang
4fc403c3b0 Merge "Use real ProxyTracker in ConnectivityServiceTest" am: c7037475fa
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1885529

Change-Id: Id685a51b37d59a822aaa9307f9d4b55053211612
2021-11-22 05:41:34 +00:00
Remi NGUYEN VAN
cd4b4ee973 Update NSD tests without AsyncChannel
Update the tests to use the newer NsdManager based on Binder interfaces
instead of AsyncChannel.

Bug: 190249673
Test: atest NsdManagerTest NsdServiceTest
Change-Id: I0991b598331e335a0bc211f010da7f034fb2441b
2021-11-18 18:22:45 +09:00
Aaron Huang
e3879abb07 Use real ProxyTracker in ConnectivityServiceTest
Currently CS test uses a mock ProxyTracker object to verify that
the sendProxyBroadcast() is called. Also, if the network is a
default network then sendProxyBroadcast() will be indirectly
called in setDefaultProxy(). This only verifies that the method
is called but it doesn't verify that the broadcast is sent.

Instead of testing setDefaultProxy() is called, it is better to
verify that the broadcast is actually sent. Therefore, use a
real ProxyTracker in the test to verify the broadcast is sent.

Test: FrameworksNetTests:ConnectivityServiceTest
Change-Id: Id5c9e07e8326f24bd2665b4bb08f96d6d57d999c
2021-11-15 20:01:12 +08:00
Xin Li
e41bbea995 Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918
Bug: 205056467
Merged-In: I745ef4d42ecaf06bb81d9dbe0b7162267fea65a8
Change-Id: I7b2a1fc519124cfc10806dde5fd543504a51e072
2021-11-10 08:06:18 +00:00
Remi NGUYEN VAN
959d2cb6bd Don't rematch all requests when adding new ones
With the network selection rewrite in S, rematching a single request can
now easily be done; this can be used as an optimization in
handleRegisterNetworkRequests to avoid rematching all requests when
registering a new one.

This can be disabled by a flag that is unset by default,
REMATCH_ALL_REQUESTS_ON_REGISTER.

Test: atest ConnectivityServiceTest
Change-Id: If76f79b41ac88863974f7025624667134bea2570
2021-11-08 19:17:57 +09:00
Treehugger Robot
a200fe8c1c Merge "Shorten a timeout" 2021-11-01 12:19:28 +00:00
Chalard Jean
31ac212428 Merge "Replace mDeps with a custom object" 2021-11-01 10:31:53 +00:00
Chalard Jean
f63e4597a3 Shorten a timeout
This timeout is not very useful but will be incurred every
time

Test: ConnectivityServiceTest
Change-Id: Ia7c76c7c7a148f14844d098be267e16c215776f5
2021-11-01 19:30:10 +09:00
Lucas Lin
5bf4cd9a73 Merge "Add tests for testing if [start|finish]Op is called or not" 2021-11-01 08:33:36 +00:00
Chalard Jean
21f4f70d46 Replace mDeps with a custom object
Mockito's mocks are not thread-safe. The dependencies object
is used both on the test thread (to set it up) and in the CS
handler thread. This can't work with a mock.

Bug: 195626111
Test: ConnectivityServiceTest
Change-Id: Ia989dd71c3133513a90bc1d1957419fb1b74c300
2021-11-01 16:30:56 +09:00
Aaron Huang
2685c929f4 Add a test for metered/non-metered mobile network
NetworkTemplate.buildTemplateMobileWithRatType() supports
to build a template with metered filter, so a mobile network
is metered or non-metered should be tested.

This commit also rename buildMobile3gState to buildMobileState
because originally this method uses NetworkInfo to simulate the
network type. The NetworkInfo related codes were removed.
Currently, setMobileRatTypeAndWaitForIdle is used to simulate
the network type in test.

Ignore-AOSP-First: The parent of this change contains a CL will
conflict with internal tree so ignore AOSP first.
Bug: 183776809
Test: this
Change-Id: I8e54e2acb06db81fb0eaf330c4fd7cb391b01ff3
2021-10-26 12:16:18 +00:00
lucaslin
d4e7b00b2b Add tests for testing if [start|finish]Op is called or not
Add a test for testing if [start|finish]Op will be called when
[start|stop]VpnProfile is called.
Also add a test to ensure that the startOp will not be called
again when seamless handover is happened.

Bug: 197135981
Test: atest FrameworksNetTests:VpnTest
Change-Id: I778ea4edf7c4a2d20b3b8e1877e7942feac5372a
2021-10-26 03:46:46 +08:00
Aaron Huang
6359ebd099 Update callers to use buildTemplateMobileWithRatType with metered
The method buildTemplateMobileWithRatType is updated to take
metered as a parameter so the callers should be updated to
the new version.

Bug: 183776809
Test: atest FrameworksNetTest
Change-Id: I859514b93705f9ee4f9ae4b0bcddcb61005a78ff
Merged-In: I859514b93705f9ee4f9ae4b0bcddcb61005a78ff
2021-10-25 15:22:59 +00:00
Lucas Lin
9c9850b944 Merge "Add underlying networks into NetworkAgentInfo if any" 2021-10-21 08:33:29 +00:00
Chalard Jean
4b918ab1a4 Crash bad callers earlier
Instead of crashing when parceling the NetworkInfo object,
crash at the time the bad call is made.

Bug: 145972387
Test: FrameworksNetTests
Change-Id: If8b5fd3d7b800c97211bcd16c9a8c5812708d4ab
2021-10-19 16:43:50 +08:00
lucaslin
6adf5ac19b Add underlying networks into NetworkAgentInfo if any
Now, VPN will set underlying networks into NetworkCapabilities
directly. So the declaredUnderlyingNetworks can also be set
directly when creating a NetworkAgentInfo.

Bug: 191918368
Test: atest FrameworksNetTests:ConnectivityServiceTest
Change-Id: I507072d00ae1eb0c391e5261ab93e359b9c4cb5c
2021-10-19 15:04:56 +08:00
Treehugger Robot
b4218b8d31 Merge "Remove "when" usage in ConnectivityServiceTest" am: f697c61406 am: 7366c89d64 am: da756e286b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844176

Change-Id: I2fe9c251e694fa8493df2287d6c95125f401c17f
2021-10-04 10:22:58 +00:00
Treehugger Robot
7366c89d64 Merge "Remove "when" usage in ConnectivityServiceTest" am: f697c61406
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844176

Change-Id: I9197503f4f19748824ab3cc1efc8d540779399ec
2021-10-04 10:00:40 +00:00