Commit Graph

28995 Commits

Author SHA1 Message Date
Yan Yan
b44d08eece Set up and tear down test network in TestNetworkRunnable am: 144ae3c76a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14988700

Change-Id: I57411f845503f0f7d1bdc2800d16208ba6b46f2e
2021-06-16 10:45:39 +00:00
Lorenzo Colitti
3288cb52bc Correctly get uids for per-app network preferences am: 659a0e145f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14986139

Change-Id: I713bcdc3d0008074f8603263e415097322b26f4c
2021-06-16 04:07:10 +00:00
Yan Yan
144ae3c76a Set up and tear down test network in TestNetworkRunnable
Allow test caller to construct a TestNetworkRunnable to run a
test with a test network.

This is a preparation for adding tests to verify kernel
implementation of IPsec algorithms.

Bug: 171083832
Test: atest Ikev2VpnTest
Original-Change: https://android-review.googlesource.com/1503692
Merged-In: I0e08a6ea299e6ad94d69806a2d76fa155653b62a
Change-Id: I0e08a6ea299e6ad94d69806a2d76fa155653b62a
2021-06-16 01:48:51 +00:00
Lorenzo Colitti
659a0e145f Correctly get uids for per-app network preferences
Per-app network functionality assumed all apps were installed for user 0
which is not always the case. This fix will address that by checking for
the existance of an app for all users and adding it to the per-app
network preference as was originally intended. Prior, no apps were
included if they were not installed for user 0 even if they were
available for another user such as user 10 in automotive.

Bug: 189838408
Test: atest FrameworksNetTests
atest FrameworksNetIntegrationTests
atest CtsNetTestCases

Original-Change: https://android-review.googlesource.com/1723617
Merged-In: I7d75cdb02041e7a202254be2eaeca6c2b02d7c29
Change-Id: I7d75cdb02041e7a202254be2eaeca6c2b02d7c29
2021-06-15 21:56:13 +00:00
Lorenzo Colitti
e5f9800e0b Don't run testGetAllNetworkStateSnapshots in instant app mode am: 1ee5ba31a6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14935371

Change-Id: I78224ae28eba3a4822d584c49d29085275f6cd77
2021-06-15 16:37:30 +00:00
Lorenzo Colitti
1ee5ba31a6 Don't run testGetAllNetworkStateSnapshots in instant app mode
Instant app mode doesn't have permission to request networks.
Thus, ignore the test in instant app mode.

Bug: 189724761
Test: CtsNetTestCases:ConnectivityManagerTest#testGetAllNetworkStateSnapshots \
      --instant
Original-Change: https://android-review.googlesource.com/1737396
Merged-In: I2897462f4ef6c019b80a3b5159b1c41f397af8de
Change-Id: I2897462f4ef6c019b80a3b5159b1c41f397af8de
2021-06-15 14:06:26 +00:00
Lorenzo Colitti
0bb712f93c Merge changes I3fffbf4a,If557b0a1 into sc-dev am: bba6383a73
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14963613

Change-Id: Iefc6f6ead2b61e2c36dea1c2a9077990b1d4980b
2021-06-15 11:28:07 +00:00
Treehugger Robot
b92c99534a Dump underlying BPF traffic stats as well as higher-level stats. am: 898d5adb31
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14963612

Change-Id: Idbc82073afde61e7f3706b7d975063a9fa1b25fd
2021-06-15 11:28:05 +00:00
Lorenzo Colitti
bba6383a73 Merge changes I3fffbf4a,If557b0a1 into sc-dev
* changes:
  Improve dumping IPv4 map entries.
  Dump underlying BPF traffic stats as well as higher-level stats.
2021-06-15 10:24:41 +00:00
TreeHugger Robot
8448b67a15 Merge "Add unit test when querying TYPE_WIFI + null/empty/non-null subscriberId" into sc-dev am: 97e90536a8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14963611

Change-Id: I1e444f94cff2cb0ce4041224a70b00997e24cdd4
2021-06-15 09:33:18 +00:00
TreeHugger Robot
97e90536a8 Merge "Add unit test when querying TYPE_WIFI + null/empty/non-null subscriberId" into sc-dev 2021-06-15 09:16:57 +00:00
Nucca Chen
4425a6147c Improve dumping IPv4 map entries.
1. Dump both upstream and downstream rules.
2. Also dump rule last used time.

Test: manual
Bug: 190783768
Original-Change: https://android-review.googlesource.com/1737394
Merged-In: I3fffbf4a5dea68e61349de8b41bea49b8a319f86
Change-Id: I3fffbf4a5dea68e61349de8b41bea49b8a319f86
2021-06-15 08:20:31 +00:00
Treehugger Robot
898d5adb31 Dump underlying BPF traffic stats as well as higher-level stats.
This provides a better way to tell whether traffic is flowing.

Test: manual
Bug: 190783768
Original-Change: https://android-review.googlesource.com/1737393
Merged-In: If557b0a18fc0aea1bf6a65d91547fc1930098ed0
Change-Id: If557b0a18fc0aea1bf6a65d91547fc1930098ed0
2021-06-15 08:19:51 +00:00
Les Lee
caa6f1793d Add unit test when querying TYPE_WIFI + null/empty/non-null subscriberId
Starting with API level 31, the subscriberId is applicable
for the wifi network. Considering applications may use
null or an empty string as subscriberId (for instance, cts),
frameworks create MATCH_WIFI_WILDCARD NetworkTemplate when querying
wifi network with null or an empty string which is the behavior before
API level 31.

Bug: 188915450
Test: atest -c NetworkStatsManagerTest
Merged-In: Id4ae06840e1749997e970b8f1ec391060967bd47
Change-Id: Id4ae06840e1749997e970b8f1ec391060967bd47
2021-06-15 14:53:25 +08:00
Luke Huang
7e773cd7b7 Merge "Modify NsdServiceTest to conform to its new mechanism" into sc-dev am: fcc69726ed
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14963260

Change-Id: I93de1a01024f6bddcb8575c1b9038d901acfe3c7
2021-06-15 04:59:00 +00:00
Luke Huang
fcc69726ed Merge "Modify NsdServiceTest to conform to its new mechanism" into sc-dev 2021-06-15 04:52:43 +00:00
Cody Kesting
7ca2e36684 Keep subIds for Test NetworkCapabilities. am: f5a4fb124b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14969444

Change-Id: I8d36d0bf7cbf229710d1c5d69e54b737f3919ec0
2021-06-15 04:50:07 +00:00
Treehugger Robot
ac39fac427 Fully setup test TUN iface on create. am: 5cbd7b38ca
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14969443

Change-Id: I6937e841f5213cc6a5705853a44ca7e519158d44
2021-06-15 04:50:05 +00:00
Cody Kesting
f5a4fb124b Keep subIds for Test NetworkCapabilities.
This CL updates NetworkCapabilities to retain configured subscription
IDs for Test NetworkCapabilities. Previously, they were cleared in
restrictCapabilitiesForTestNetwork().

Bug: 182291467
Bug: 189125789
Test: atest Ikev2VpnTest IpSecManagerTunnelTest
Test: atest CtsVcnTestCases
Change-Id: I0e1bc617910c9e8ac7b431572f276b1611acc1cb
Merged-In: I0e1bc617910c9e8ac7b431572f276b1611acc1cb
(cherry picked from commit a262a9d3d5)
2021-06-14 20:51:28 +00:00
Treehugger Robot
5cbd7b38ca Fully setup test TUN iface on create.
This CL updates TestNetworkService to fully setup test TUN
interfaces when created. Previously, the interface was only
created in netd when the Test Network was created.

Bug: 182291467
Bug: 189125789
Test: atest Ikev2VpnTest IpSecManagerTunnelTest
Change-Id: I4c1262e566517bbb03dd610f595e4d18bc4e7735
Merged-In: I4c1262e566517bbb03dd610f595e4d18bc4e7735
(cherry picked from commit 615237a818)
2021-06-14 20:46:52 +00:00
Paul Hu
98ab75c109 Merge "Add DEFAULT_NETWORK_PRIORITY constants" into sc-dev am: dcba997adf
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731886

Change-Id: I1226c1d512e252ebbbde56e1d144e0072e941e43
2021-06-14 15:36:35 +00:00
Paul Hu
dcba997adf Merge "Add DEFAULT_NETWORK_PRIORITY constants" into sc-dev 2021-06-14 15:17:23 +00:00
Paul Hu
fccce46a7c Merge "Add more unit tests for mobile data preferred uids feature" into sc-dev am: 7d5fa3da7d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731884

Change-Id: I89634550c0e426be5419ffcc2ff066225446aa5a
2021-06-14 14:48:29 +00:00
Paul Hu
7d5fa3da7d Merge "Add more unit tests for mobile data preferred uids feature" into sc-dev 2021-06-14 14:29:29 +00:00
Luke Huang
a46c4d2726 Modify NsdServiceTest to conform to its new mechanism
Adapt NsdServiceTest to its new mechanism for starting/stopping daemons.
Also, add a new test for the new self-cleanup mechanism.

Bug: 181810560
Test: atest NsdServiceTest
Original-Change: https://android-review.googlesource.com/1719018
Merged-In: I4c485a5d8fb4d6f52d82633a579bce4feb5c6375
Change-Id: I4c485a5d8fb4d6f52d82633a579bce4feb5c6375
2021-06-14 06:53:51 +00:00
Lorenzo Colitti
e85cf9b23d Merge changes I944f4c6a,I69cf58bc into sc-dev am: cd60e94a2c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14935383

Change-Id: I580752faf2023115140dfecd1b6de09392203a4d
2021-06-14 06:05:00 +00:00
Lorenzo Colitti
8c0aaba806 Improve test coverage for disconnecting networks with clat. am: cfa262d8b8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14935382

Change-Id: I081e690c3d3afd1bd0e73d2869172d229863baef
2021-06-14 06:04:58 +00:00
Lorenzo Colitti
cd60e94a2c Merge changes I944f4c6a,I69cf58bc into sc-dev
* changes:
  Don't send onLinkPropertiesChanged after onLost for 464xlat.
  Improve test coverage for disconnecting networks with clat.
2021-06-14 05:51:54 +00:00
TreeHugger Robot
d033292467 [automerger skipped] Merge "Import translations. DO NOT MERGE ANYWHERE" into sc-dev am: 0ced5b5e8b -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14945623

Change-Id: I312ea41fb1556dcfc23d1ce2ec2e214022a90f79
2021-06-11 17:35:44 +00:00
TreeHugger Robot
0ced5b5e8b Merge "Import translations. DO NOT MERGE ANYWHERE" into sc-dev 2021-06-11 17:21:37 +00:00
TreeHugger Robot
f259e4fa82 Merge "Import translations. DO NOT MERGE ANYWHERE" into sc-v2-dev 2021-06-11 17:00:32 +00:00
Lorenzo Colitti
beb7d92cbc Don't send onLinkPropertiesChanged after onLost for 464xlat.
Currently, when a network that uses 464xlat is torn down,
NetworkCallbacks will receive onLinkPropertiesChanged after
onLost. This is confusing and incorrect.

The incorrect callback is sent because handleLinkProperties
checks that the netId of the agent still exists, not that the
NetworkAgent is still registered. This is normally correct,
because the NetworkAgent is removed from mNetworkAgentInfos and
the netId are removed from mNetworkForNetId by the same method,
disconnectAndDestroyNetwork.

In this specific case it's not correct, because the call to
handleUpdateLinkProperties is from disconnectAndDestroyNetwork
itself via nai.clatd.update and calls Nat464Xlat#stop.

No other callers of handleUpdateLinkProperties are affected
because:

- EVENT_NETWORK_PROPERTIES_CHANGED is called only by
  maybeHandleNetworkAgentMessage, which first checks that the
  NetworkAgent is registered.
- handlePrivateDnsSettingsChanged only looks at registered
  NetworkAgents (it loops over mNetworkAgentInfos).
- handlePrivateDnsValidationUpdate, handleNat64PrefixEvent and
  handleCapportApiDataUpdate call getNetworkAgentInfoForNetId,
  which will correctly determine that the agent is no longer
  registered, since they run on the handler thread and thus
  cannot run at the same time as disconnectAndDestroyNetwork.

The existing code contains a check for the netId being current.
This is intended to ensure that an update from a NetworkAgent
cannot affect another agent with the same Network. This extra
check is not necessary, because code running on the handler
thread can never observe a NetworkAgent in mNetworkAgentInfos
unless mNetworkForNetId maps that NetworkAgent's Network to that
NetworkAgent. This is because mNetworkForNetId is updated by the
same methods as mNetworkAgentInfos, and those updates occur on
the handler thread. So all code on the handler thread will see
those two as consistent.

Bug: 176496580
Test: atest FrameworksNetTests CtsNetTestCases HostsideVpnTests
Original-Change: https://android-review.googlesource.com/1727829
Merged-In: I944f4c6ad36206bdccd85a6ea7ef71324a29c685
Change-Id: I944f4c6ad36206bdccd85a6ea7ef71324a29c685
2021-06-11 13:46:33 +00:00
Lorenzo Colitti
cfa262d8b8 Improve test coverage for disconnecting networks with clat.
Ensure that NetworkCallbacks and netd operations are accounted
for. Also add a test for the spurious onLinkPropertiesChanged
callback that is currently send out after onLost.

Bug: 176496580
Test: atest ConnectivityServiceTest
Original-Change: https://android-review.googlesource.com/1729093
Merged-In: I69cf58bc87dfe55ea359a2cd76167d03fe2c953d
Change-Id: I69cf58bc87dfe55ea359a2cd76167d03fe2c953d
2021-06-11 13:44:46 +00:00
Bill Yi
e421b1eaad Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Ie74e329e714a4399f121546b858154098e8c60c0
2021-06-11 10:00:29 +00:00
Bill Yi
d7ec12e91d Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Ice6b9421c94bb6253595e955e9585eab2115ff61
2021-06-11 09:59:22 +00:00
paulhu
c2198778ab Add DEFAULT_NETWORK_PRIORITY constants
- Add default network priority to NetworkRequestInfo.
- The default network priority value is used when issue uid
  ranges rules to netd. Netd will use the priority value and uid
  ranges to generate corresponding ip rules specific to the given
  network preference.

Bug: 171872461
Test: atest FrameworksNetTests
Ignore-AOSP-First: Needs cherry-picks
Change-Id: I0ea71b348492aeb4784d487bed4cfd5d387426ba
2021-06-11 14:22:33 +08:00
Treehugger Robot
5bfdca6367 import copy of bpf_net_helpers.h from system/netd/bpf_progs am: 348d144786
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14937139

Change-Id: I4b34a9e6879db1d38f44d06f89a809802bf32aa1
2021-06-11 03:57:42 +00:00
paulhu
7ed70a944c Add more unit tests for mobile data preferred uids feature
- Add more tests for mobile data preferred uids.
- Also address leftover comments on implementation commit.

Bug: 171872461
Test: atest FrameworksNetTests
Ignore-AOSP-First: Needs cherry-picks
Change-Id: I63f65bffc1b8883ddfd774222e26e629d7ea1f94
2021-06-11 00:09:45 +08:00
Treehugger Robot
348d144786 import copy of bpf_net_helpers.h from system/netd/bpf_progs
after this:
  diff system/netd/bpf_progs/bpf_net_helpers.h packages/modules/Connectivity/Tethering/bpf_progs/bpf_net_helpers.h
shows no diff, besides a switch to '#pragma once'
as the include guard.

Test: builds, atest, TreeHugger
Bug: 177884581
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Original-Change: https://android-review.googlesource.com/1733033
Merged-In: Ib943321d46254ba64ce206fb9e3b3414d15e4d45
Change-Id: Ib943321d46254ba64ce206fb9e3b3414d15e4d45
2021-06-10 15:24:19 +00:00
TreeHugger Robot
532c1a2b5e Merge changes Ib8fe719f,Ia8c05780 into sc-dev am: 3ea9a136fa
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14779544

Change-Id: I11b73ce42cae4df5314ad58e0a92b4cb834b8ff1
2021-06-10 14:54:34 +00:00
markchien
dc664bd9e9 Remove *Locked wording am: 8409a1c297
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14673213

Change-Id: I54fea6433eeffd506378cb5246a0ab42fe4de680
2021-06-10 14:54:32 +00:00
TreeHugger Robot
3ea9a136fa Merge changes Ib8fe719f,Ia8c05780 into sc-dev
* changes:
  Suppress IpServer message logs
  Remove *Locked wording
2021-06-10 14:34:08 +00:00
Remi NGUYEN VAN
a6255e6589 Merge "Update TetheringTests for new connectivity shims" into sc-dev am: b81724602f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14928587

Change-Id: I0da9c2e6717256ea88176c836ea5b6ac67919a0a
2021-06-10 14:05:20 +00:00
Remi NGUYEN VAN
b81724602f Merge "Update TetheringTests for new connectivity shims" into sc-dev 2021-06-10 13:45:12 +00:00
Remi NGUYEN VAN
c94a1ffd55 Update TetheringTests for new connectivity shims
The stable connectivity shims are updated to now contain S API, so
tethering tests that assumed that compatibility R behavior was used need
to be updated.

To avoid such failures Tethering tests should have a test target using
updated shims (TetheringNextTests), but this was not done in S
timeframe.

Ignore-AOSP-First: topic needs differences in AOSP
Bug: 189581241
Test: atest TetheringTests
Change-Id: Ibc04e64a1e9d82b67aff10d1a6d77f9e6b1bbdfb
2021-06-10 13:44:00 +00:00
TreeHugger Robot
6f249d2582 Merge changes I00d1aa47,Icffbe67f into sc-dev am: c056232f0e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14911203

Change-Id: I60f42848b46edcef0d29fa355c663ab08a586c4b
2021-06-10 13:30:55 +00:00
Yan Yan
9e754b2514 Add tests for new IPsec algorithms in IpSecManagerTest am: 9447bbf6c6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14911202

Change-Id: I9e54e3021f0d938dfb07658e3677c62e3448bf66
2021-06-10 13:30:51 +00:00
markchien
3b3d92ced0 Suppress IpServer message logs
To avoid log flooding, suppress CMD_IPV6_TETHER_UPDATE and
CMD_NEIGHBOR_EVENT message log because they appear frequentlg and
don't have any content which means they are ueseless for debugging.
Also remove logMessage from BaseServingState to fix duplicated
message because all the message already log in TetheredState
and LocalHotspotState which inherit BaseServingState.

Bug: 162920185
Bug: 185649441
Test: atest TetheringCoverageTests
      atest MtsTetheringTestLatestSdk
      atest CtsTetheringTest
Change-Id: Ib8fe719f3c1c4a65e6b5152df5e5adf33aba2079
Merged-In: Ib8fe719f3c1c4a65e6b5152df5e5adf33aba2079
2021-06-10 21:13:44 +08:00
markchien
8409a1c297 Remove *Locked wording
Since tethering run in single thread without any synchronized lock,
remove "Locked" wording from the methods which the use lock before.

Bug: 162920185
Test: atest TetheringCoverageTest
Change-Id: Ia8c057800cab30cdcbacae4db2d706b6427e9861
Merged-In: Ia8c057800cab30cdcbacae4db2d706b6427e9861
2021-06-10 21:13:07 +08:00
TreeHugger Robot
c056232f0e Merge changes I00d1aa47,Icffbe67f into sc-dev
* changes:
  Add CTS for AES-CMAC
  Add tests for new IPsec algorithms in IpSecManagerTest
2021-06-10 13:11:03 +00:00