Commit Graph

90874 Commits

Author SHA1 Message Date
Treehugger Robot
f411c02294 Merge changes I1731e65e,I2df84427 into main
* changes:
  Factorize CarrierPrivilegeAuthenticator constructors
  Change mCarrierServiceUid from int[] to SparseIntArray
2023-09-25 22:52:11 +00:00
Chalard Jean
90050b2528 Fix a socket leak
Test: manual :
      adb root
      adb shell lsof | grep system_ | grep IPv
      adb shell dumpsys connectivity --diag
      adb shell lsof | grep system_ | grep IPv
      Before the change : plenty of new open FDs
      After the change : no new FD
Bug: 297483305
Change-Id: I1c1fb8de44e50998e99af8b3aac3f77edce903e0
2023-09-25 20:37:03 +09:00
Chalard Jean
2186945466 Factorize CarrierPrivilegeAuthenticator constructors
Test: FrameworksNetTests
Change-Id: I1731e65ef09cb32b51ac9cc7884a9737c19ecce9
2023-09-25 19:05:05 +09:00
Chalard Jean
dfee6bec1a Change mCarrierServiceUid from int[] to SparseIntArray
Because followup changes will stop using synchronous getters
for getting the service package UIDs, it will be a lot more
convenient if this array is automatically sized.

Test: FrameworksNetTests
Bug: 236669534
Change-Id: I2df8442727b5f17bd2d4e55a8795dc9210beb74b
2023-09-25 19:05:05 +09:00
Chalard Jean
073606fc8d Add more necessary infra to CSTest
- Ability to mock enabled changes, which is necessary for
  requestNetwork
- Ability to disconnect an agent

Test: in aosp/2761506
Change-Id: If2701f1fff29453e74a4b388758c6ee3a16a5734
2023-09-25 14:56:09 +09:00
Ryan Zuklie
31f7fd8546 Merge changes Ic69fc75e,I6373d251 into main am: 8a88d85145
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2749654

Change-Id: I647baa696ac6e0f99aacb5de35148ad74f5a5498
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-22 20:50:11 +00:00
Ryan Zuklie
8a88d85145 Merge changes Ic69fc75e,I6373d251 into main
* changes:
  Add ICMP type/code and udplite/sctp in Nettrace.
  Make BundleKey a distinct struct from PacketTrace.
2023-09-22 19:38:59 +00:00
Treehugger Robot
a75b433c18 Merge "use different log.h header file" into main am: 1b0f6fe058
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2759769

Change-Id: I6782f2d5fea685c586c77f4717bc98383e074d1f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-22 04:35:12 +00:00
Treehugger Robot
1b0f6fe058 Merge "use different log.h header file" into main 2023-09-22 04:11:47 +00:00
Igor Zaslavsky
e336586353 Park RemoteAuth Manager and Service
Limit the amount of parked code built into Connectivity module

Test: built successfully.
Bug: 300522527
Change-Id: I87d7516011c469aa89fc7e67cf03c4ee8aa1bb9b
2023-09-22 04:09:02 +00:00
Jean Chalard
7b803e68c8 Merge changes I8843ce7c,I90566998 into main am: 487191dbe6
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2747260

Change-Id: Id79dec22a90513c68716de5cb6d0ec110a20dd00
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-22 02:51:11 +00:00
Jin Chen
3ec94c211e Merge "[remoteauth] Clean up unused deps" into main am: 10f59a248c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2757186

Change-Id: I92aabeedf970c655a2598ff4ded65e1b15dc3257
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-22 02:49:59 +00:00
Jean Chalard
487191dbe6 Merge changes I8843ce7c,I90566998 into main
* changes:
  Block the package updater while CTS are running
  Add a command to block networking for an app
2023-09-22 02:26:19 +00:00
Jin Chen
10f59a248c Merge "[remoteauth] Clean up unused deps" into main 2023-09-22 02:18:36 +00:00
Ryan Zuklie
e72b48416c Add ICMP type/code and udplite/sctp in Nettrace.
This adds support for additional protocols and also provides more clear
semantics of protocol specific fields, such as only including tcpFlags
when the protocol is IPPROTO_TCP.

Test: atest libnetworkstats_test & flash and trace
Change-Id: Ic69fc75e85ebf8734027c942a253af4972ad14d8
2023-09-21 15:14:07 -07:00
Ryan Zuklie
1733d3e6be Make BundleKey a distinct struct from PacketTrace.
This change refactors BundleKey to be a separate struct. This allows
us to do the conversion (e.g. of sport/dport, or icmp fields in the
future) in the constructor and change types (use optionals) where it
is convenient to simplify the code.

This change also fixes a bunch of desigated initializer order warnings
in the test (fields should be declared in same order as defined).

Test: atest libnetworkstats_test
Change-Id: I6373d2512280e93c54395fde38dcff43705b449e
2023-09-21 15:14:07 -07:00
Maciej Żenczykowski
601d9f8b65 use different log.h header file
Test: TreeHugger
Bug: 299653233
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I1e5c7bfc86d2ad61c0bad3b5ef2add94b4ce1481
2023-09-21 22:11:43 +00:00
Maciej Żenczykowski
d2229688a9 Merge "[Refactor] Make uid owner match comparison logic into a function" into main am: 3897aaf7e9
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2754265

Change-Id: I75a3080ca4a815deb4d38a35c4ce5c1d2d22ca18
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-21 11:29:12 +00:00
Maciej Żenczykowski
3897aaf7e9 Merge "[Refactor] Make uid owner match comparison logic into a function" into main 2023-09-21 10:21:52 +00:00
Chalard Jean
3a6544fb1f Block the package updater while CTS are running
Test: manual
Bug: 284534251
Change-Id: I8843ce7c9e14cfe3f6f3439405d519587f2656ef
2023-09-21 12:57:10 +09:00
Chalard Jean
c8fefb36d8 Add a command to block networking for an app
Test: Manual
Bug: 284534251
Change-Id: I90566998501c215de350965e3bffcd852d487bfe
2023-09-21 12:57:08 +09:00
Jin Chen
5be6652302 Merge "[remoteauth] Implement UwbRangingSession" into main am: 462572b24b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2726504

Change-Id: Icb66b94c50190ce89c09072bed3fc958ef9aacb6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-21 02:33:48 +00:00
Jin Chen
462572b24b Merge "[remoteauth] Implement UwbRangingSession" into main 2023-09-21 01:18:17 +00:00
Jin Chen
c54521ba85 [remoteauth] Implement UwbRangingSession
Test: atest RemoteAuthUnitTests
Bug: 290675814
Change-Id: I9a38298092607fe87bc7a8b157ff9d44d84fa55a
2023-09-20 15:33:48 -07:00
Maciej Żenczykowski
997ff58786 Merge "bump min_sdk_version from 29 (Q) to 30 (R)" into main am: a828357fe1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2755673

Change-Id: Iad32c375b9a29ce14726d9d52ea06f1c200e6c3f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-20 17:37:18 +00:00
Maciej Żenczykowski
a828357fe1 Merge "bump min_sdk_version from 29 (Q) to 30 (R)" into main 2023-09-20 17:01:40 +00:00
Treehugger Robot
4741c6eba8 Merge "Add test for partial responses" into main am: d292cff70e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2437173

Change-Id: I5f68885adf0083c3cea1de67fd5ce95749246915
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-20 09:36:54 +00:00
Treehugger Robot
d292cff70e Merge "Add test for partial responses" into main 2023-09-20 09:07:15 +00:00
Mark Chien
6ab29917b4 Merge "SyncSM04: implement processMessage function" into main am: 35f19e74a9
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2301482

Change-Id: Ib8468e83da956ee4a6c191baad8be13db51813b9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-20 03:23:52 +00:00
Mark Chien
35f19e74a9 Merge "SyncSM04: implement processMessage function" into main 2023-09-20 02:36:05 +00:00
Jin Chen
f86048224e [remoteauth] Clean up unused deps
Fix: 301051105
Test: build
Change-Id: I23dfab79503db2fe34ffd06bf48d54961c0bc424
2023-09-19 18:04:24 -07:00
Maciej Żenczykowski
127a1441c3 bump min_sdk_version from 29 (Q) to 30 (R)
Mainline no longer supports Q.
These files were recently moved into p/m/C as part of a refactor.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I0f06ace921db6c79d63c0048bdb73d167ff606cf
2023-09-19 23:22:58 +00:00
Kangping Dong
e5f1122ec9 Merge "[Thread] initial Thread network service" into main am: 01e6dadd1f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2721333

Change-Id: I5b1dad9c40dcade78c352265164da0992a3fcb0d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 11:29:17 +00:00
Treehugger Robot
65b43d4e34 Merge "SyncSM03: implement state transition logic" into main am: 6551cc5620
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2325064

Change-Id: I7b39cdf76b3faafa8001562122d90fa2ab5f2714
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 11:29:01 +00:00
Kangping Dong
01e6dadd1f Merge "[Thread] initial Thread network service" into main 2023-09-19 11:25:37 +00:00
Treehugger Robot
6551cc5620 Merge "SyncSM03: implement state transition logic" into main 2023-09-19 10:54:24 +00:00
Treehugger Robot
1ec550b7a3 Merge "Check that wifi, cell validates before tests" into main am: 1bc9f5c66d
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2756047

Change-Id: I3009e6a1de603203d457646381094f1abcc51ad0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 10:37:38 +00:00
Treehugger Robot
638397b1ee Merge "Add back partial connectivity test to presubmit" into main am: bc884540b3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2739413

Change-Id: I790521debb64ce88c1f232b42028ab87735390f3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 10:37:29 +00:00
Treehugger Robot
1bc9f5c66d Merge "Check that wifi, cell validates before tests" into main 2023-09-19 10:20:38 +00:00
Treehugger Robot
bc884540b3 Merge "Add back partial connectivity test to presubmit" into main 2023-09-19 09:51:17 +00:00
Remi NGUYEN VAN
f1846ac13b Check that wifi, cell validates before tests
Tests are sometimes run on hardware devices with wrongly configured wifi
or cell data. Ensure that this is reported as an infra error, and not a
test error, so the root cause is easier to identify.

Bug: 264170054
Test: atest
Change-Id: I4f964fbd4ee497e8ac92f7729375b75b6c4594a3
2023-09-19 17:26:20 +09:00
Mark
21cdb40e59 SyncSM04: implement processMessage function
After this change, all synchronous state machine functions are
implemented.
There are some intentional limiations:
1. Allow setup states before machine thread started or inside machine
   thread but states can only be setup once before calling #start.
2. The behavior of transitionTo is defined so that the destination
   state can never change during state transitions. Once a destination
   has been specified, it cannot be changed until the previous state
   transition is complete. In other words, SyncStateMachine does not
   support calling transitionTo in State enter or exit.
3. Support sendSelfMessage in State#processMessage(), #enter() and
   #exit(). This allow automaton to decide the follow up action by
   itself. For example: if something wrong happens during state
   transition, the implementation can enqueue an error message then
   process the error message after finishing the current state
   transition.

Test: atest SynStateMachineTest
Change-Id: I0790df4eeab2dccdb9f407d9131a62c3c12d123b
2023-09-19 08:20:56 +00:00
KH Shi
701c3ca2f5 Decouple Ipv6UpstreamRule with Ipv6DownstreamRule
Currently, Ipv6UpstreamRule is added follows the adding of
Ipv6DownstreamRule when it is the first rule from a downstream
interface to the upstream interface.

This CL changed it to:
1. Upstream interface change updates both IPv6 upstream and downstream
   forwarding rules.
2. Neighbor events updates only IPv6 downstream forwarding rules.

Data limit setting on the upstream interface is now depend on the
upstream rules instead of the downstream rules. This CL also updates
corresponding test cases in IpServerTest and BpfCoordinatorTest.

Test: atest TetheringTests
Bug: 261923493
Change-Id: I5b4df64a3d276afb7a24bbef3a0432f53377e8b2
2023-09-19 08:02:24 +00:00
Remi NGUYEN VAN
a52bd9f46d Add QUERY_ALL_PACKAGES to FrameworksNetTestsLib
Although the launcher should be visible due to the <queries> declaration
in the manifest, there are sometimes flakes indicating that the access
to the package was blocked due to visibility rules.

Try adding QUERY_ALL_PACKAGES to see whether it resolves the flakes.

Bug: 286550950
Test: atest
Change-Id: I24dcf19c040b63fea55f82db412ffcd40670e6fc
2023-09-19 15:32:21 +09:00
Treehugger Robot
bf562951db Merge "SyncSM02: implement addState function" into main am: c5ebf2a7e6
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2325063

Change-Id: I8e0920f123afe43b2a0e8174afa654ef9afb76e8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 05:20:33 +00:00
Treehugger Robot
c5ebf2a7e6 Merge "SyncSM02: implement addState function" into main 2023-09-19 04:46:22 +00:00
Treehugger Robot
60b5e666a8 Merge "SyncSM01: define SyncStateMachine user interface" into main am: 85c1247b3c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2325062

Change-Id: Ia7202e652e36829882b58e1f6fc4a6f65c53c1c8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 04:28:20 +00:00
Treehugger Robot
85c1247b3c Merge "SyncSM01: define SyncStateMachine user interface" into main 2023-09-19 03:44:58 +00:00
Ken Chen
f7d23e1a60 [Refactor] Make uid owner match comparison logic into a function
As an inline function, the logic can be reused by others.

Bug: Bug: 288340533
Test: build; presubmit
Change-Id: I8e57829e304e829eed72cc165b051cd22088260d
2023-09-17 00:11:48 +08:00
Mark
9e572d10f3 SyncSM03: implement state transition logic
Implement performTransitions which does state transitions.
1. Determine the common ancestor state of current/destination states
2. Invoke state exit list from current state to common ancestor state.
3. Invoke state enter list from common ancestor state to destState by
going through mEnterStateStack.

The state transition is always defined so that the target can never be
changed mid-way of a state transition. In other words, calling
transitionTo in State enter and exit is not allowed.

Test: atest SyncStateMachineTest
Change-Id: I51e8c5440a8b9ac25715c3d030717421f68c15b3
2023-09-15 14:38:12 +00:00