Commit graph android_packages_modules_Co.../Tethering
Message SHA1
Merge "Get rid of any unnecessary reset calls" into main am: ce6f14073c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2865435

Change-Id: Ic0daf8a0603fb868e168c5be56c7c9723fabc77d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-12-08 08:13:43 +00:00
bd975a9efc
Get rid of any unnecessary reset calls
Calling resets at the beginning of setUp is unnecessary.

Bug: 315368147
Test: TH

Change-Id: I87030bc867d90752e745fd4a274581d1f3230f85

Mark Chien   commited 2023-12-08 06:34:09 +00:00
4d7b7ecd7e
Merge "Remove workaround to remove FlaggedAPI in ump" into main am: dc7a325a55
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2850388

Change-Id: Ib4d438acb108e751de7d29ca8372e0783a00796d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Motomu Utsumi   authored and   Automerger Merge Worker   commited 2023-12-06 02:15:03 +00:00
40187a830a
Merge "Remove workaround to remove FlaggedAPI in ump" into main
Motomu Utsumi   authored and   Gerrit Code Review   commited 2023-12-06 01:17:43 +00:00
dc7a325a55
Merge "Rename getXXX to makeXXX in TetheringDependencies" into main am: ef41398c1f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2843656

Change-Id: Ibe6e5afaf2eb7567d0d8a097e9725073cfedd00e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Treehugger Robot   authored and   Automerger Merge Worker   commited 2023-12-05 07:10:28 +00:00
711ce847c9
Merge "Rename getXXX to makeXXX in TetheringDependencies" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2023-12-05 06:42:25 +00:00
ef41398c1f
Merge "Random select started prefix range" into main am: 78c0d088d7
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2677979

Change-Id: I983196e37671bc42318509b0e086e2607c6e69f2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-12-05 06:04:22 +00:00
dc38f59118
Merge "Random select started prefix range" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-12-05 05:25:18 +00:00
78c0d088d7
Rename getXXX to makeXXX in TetheringDependencies
This fix the code review comment from aosp/2319853 that getXXX functions
should be renamed to makeXXX because it's actually creating the object.

Test: TH
Change-Id: Ife8e1cc3a90b835764a2dd9731388b05d8a5c964

Mark   authored and   Mark Chien   commited 2023-12-04 09:02:55 +00:00
b720d6d726
Remove workaround to remove FlaggedAPI in ump
Test: TH
Change-Id: Icd3c87a7da9b45e5341a1a2ead68f0a9809591bb

Motomu Utsumi   commited 2023-12-04 08:59:43 +00:00
88410c6fd6
Random select started prefix range
Currently, PrivateAddressCoordinator always selects the /24 prefix
from the 192.168.x.x/16 range first. If the upstream is also a /24
prefix in the 192.168.x.x/16 range, there's a 1/256 chance of a
conflict (192.168.0.x/24 ~ 192.168.255.x/24). Since 192.168.x.x/16
is a popular range for home and small business networks, we should
randomize the starting prefix range to reduce the chance of a
conflict. The /8, /12, and /16 range selection rates are 0.39%,
5.86%, and 93.7%, respectively (see the inline comments for how
the rates are calculated).

The chance of selecting a /24 prefix is:
- 10.0.0.0/8: 1/(256*256) * 93.7% = 0.001429%
- 172.16.0.0/12: 1/(16*256) * 5.86% = 0.00143%
- 192.168.0.0/16: 1/256 * 0.39% = 0.001523%

Note: This change is currently turned off by the
tether_force_random_prefix_base_selection flag. We'll run experiments
to make sure tethering stays reliable with this change enabled.

Bug: 312647670
Test: atest TetheringTests
Change-Id: Iea03fdcf0fccad95410e79ae87fcb046d75da457

Mark   commited 2023-11-28 06:56:06 +00:00
c0b0f616d0
Merge "Avoid random twice to generate an address" into main am: 692643601d
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2842800

Change-Id: Ida05247dfec1ebed49844b5ac1b25488b71ebe97
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-11-27 06:18:37 +00:00
f54f98ddfc
Avoid random twice to generate an address
The code currently calls RandomInt twice to generate an address.
For example, if you want to generate the address 192.168.A.B,
RandomInt will be called twice to generate the values for A and B.
To save resources, we can avoid calling RandomInt twice by reusing
the same random value with different masks for A and B.
Before:
  -  RandomInt() & 0xff00 -> A
  -  RandomInt() & 0x00ff -> B
After:
  -  RandomInt() & 0xffff -> A.B

Bug: 312647670
Test: atest TetheringTests
Change-Id: Iee49af3d82781309f78fe66ab07937b8137fa259

Mark   authored and   Mark Chien   commited 2023-11-24 03:10:11 +00:00
f25af65b28
Merge "Refactor RouterAdvertisementDaemon to build new RA in HandlerThread" into main am: 29f70feb01
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2490882

Change-Id: I2ea917338d84447ac71c0baf6ea88f6ee925eeba
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-23 06:46:39 +00:00
5a5ef8310b
Merge "Refactor RouterAdvertisementDaemon with FdEventsReader" into main am: 093433c8b8
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2493357

Change-Id: I84b6e9581e129af1d3b69241771dd5b2da982954
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-23 06:46:26 +00:00
0d13903ced
Refactor RouterAdvertisementDaemon to build new RA in HandlerThread
HandlerThread was introduced in aosp/2493357. This patch moves the
code originally located in buildNewRa() into the HandlerThread.

Bug: 246928127
Test: atest TetheringPrivilegedTests TetheringIntegrationTests \
      TetheringTests
Change-Id: I5f6df0a3a79d7f4a865cfec7f88bc28816b1db95

KH Shi   commited 2023-11-22 07:25:16 +00:00
23a2158c38
Refactor RouterAdvertisementDaemon with FdEventsReader
This patch changes the implementation of UnicastResponder in the
RouterAdvertisementDaemon with FdEventsReader. The change includes
replacing Thread with HandlerThread, create socket in non-blocking
mode (required by FdEventsReader) and use FdEventsReader to listen
to the solicited RS packets. Two commands (CMD_START & CMD_STOP)
were added to control the lifecycle of the FdEventsReader.

Bug: 246928127
Test: atest TetheringPrivilegedTests TetheringIntegrationTests \
      TetheringTests
Test: Enable WiFi hotspot and connected with another Pixel client:
      1. Tcpdump on the Pixel client, checking the RA packets
      2. Verify IPv6 addresses were configured
      3. ping6 2001:4860:4860::64
Change-Id: I6e89903df90864e3bb34d498e353d6f87193e9d6

KH Shi   commited 2023-11-22 06:37:17 +00:00
bdcd7db9d8
Merge "Clean up BpfCoordinatorTest" into main am: be2750fc3f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2836500

Change-Id: I27055fac2e685119818f2ff25cb8f7c273d109dd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-22 03:43:12 +00:00
3d80525541
Merge "Clean up BpfCoordinatorTest" into main
KH Shi   authored and   Gerrit Code Review   commited 2023-11-22 03:35:42 +00:00
be2750fc3f
Merge "SyncSM11.1 make some functions inline" into main am: f1c04ca91f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2752407

Change-Id: Idf198f69c9f4c2681624f0cc7ef669347d6b3106
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-11-22 03:29:58 +00:00
f23ac3a580
Merge "SyncSM11.1 make some functions inline" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-11-22 03:03:22 +00:00
f1c04ca91f
Merge "SyncSM09: Add Callback to UpstreamNetworkMonitor" into main am: 309365558c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2319853

Change-Id: Ice20c9ab2f8f6a7e4ae7af9a1666a9186d427f02
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-11-21 18:02:40 +00:00
2ecb140867
Merge "SyncSM09: Add Callback to UpstreamNetworkMonitor" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-11-21 17:29:10 +00:00
309365558c
SyncSM11.1 make some functions inline
This is no-op change.

Test: atest TetheringTests
Change-Id: Ia5c68c403bdaa981f35ecad8ffc3e034746dfdea

Mark   commited 2023-11-21 06:11:32 +00:00
2ca4b1d156
SyncSM09: Add Callback to UpstreamNetworkMonitor
Instead of passing state machine to UpstreamNetworkMonitor, wrapped it
by an interface would have two benefits:
1. Easier for testing.
2. Isolate state machine operation in callback.

Test: atest TetheringTests
Change-Id: I2a97fd5cbc8c49df8c3c98428c6570916ab31ea5

Mark   commited 2023-11-21 05:53:29 +00:00
4465e4e2bd
Clean up BpfCoordinatorTest
1. assertEquals syntax is (expected, actual) and not the other way
   around
2. use assertArrayEquals to compare arrays

Test: atest TetheringTests
Bug: 312072637
Change-Id: I5eb0c270323253f648d3a8fd488506b9ad1ca6a1

KH Shi   commited 2023-11-20 13:39:12 +00:00
035bed35bb
Merge "Fix endian error when pass upstream prefixes to bpf" into main am: 7e3344889e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2834371

Change-Id: I1455d288bc5015fff8f7b01b39e5a29b4b683a96
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-20 12:54:11 +00:00
e635719a00
Fix endian error when pass upstream prefixes to bpf
TetherUpstream6Key#src64 should be stored in network order. Use
a big-endian ByteBuffer to retrieve a value stored in network order
is actually converts it into native order, which is little-endian in
Android.

In this CL, we changed it to use byte[] instead of long to store the
top 64-bits of the source prefix.

Test: atest TetheringTests
      manual test with IPv6-only tethering upstream, check BPF stats.
Bug: 312072637
Change-Id: I79f9282d5eda28328aa6a764ea92b086d6285133

KH Shi   commited 2023-11-20 08:10:53 +00:00
84e3fb3afd
Merge "Make NewApi to error in Tethering" into main am: ed702abbd6
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2830051

Change-Id: Ia2a300fd3ca786b92ab3ffe34ea8b2ea3a5a4048
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Motomu Utsumi   authored and   Automerger Merge Worker   commited 2023-11-15 14:32:52 +00:00
2bb91abdce
Merge "Avoid using FileDescriptor#getInt$() on R" into main am: 3171a0bb8e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2831530

Change-Id: I9de959d3df9022102d49a6002c4c6488277941e1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-15 09:22:02 +00:00
a666e71514
Make NewApi to error in Tethering
Bug: 293971841
Test: TH
Change-Id: Iae92b171abe8a4620325bd7ce0f7f76912d6d1d8

Motomu Utsumi   commited 2023-11-15 08:57:30 +00:00
ac7c5723c3
Avoid using FileDescriptor#getInt$() on R
FileDescriptor#getInt$() is a hidden API with the unsupportedApiUsage
annotation on R. Accessing it will cause a NewApi linter check error.
It should be removed from OffloadHalHidlImpl as it is only used for
log messages.

Bug: b/205762647
Test: m
Change-Id: Ie41d12988aee65a066dfb1529e828f4523cc0907

KH Shi   commited 2023-11-15 07:15:09 +00:00
92b990b85f
Merge "Baseline issues that were previously suppressed" into main am: 879946d1c9
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2818860

Change-Id: Ib7407a4368acaa2906b101225c64cb70cd87bd06
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Anton Hansson   authored and   Automerger Merge Worker   commited 2023-11-09 10:26:52 +00:00
93ea8465b5
Merge "Baseline issues that were previously suppressed" into main
Anton Hansson   authored and   Gerrit Code Review   commited 2023-11-09 10:03:23 +00:00
879946d1c9
Merge "Avoid autoboxing overhead in hash calculation" into main am: d6909dbec2
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2822350

Change-Id: Ib5c81db72212b762f9765b14e893f6d5e6369a7c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-09 05:52:20 +00:00
45eabbddb0
Merge "Avoid autoboxing overhead in hash calculation" into main
KH Shi   authored and   Gerrit Code Review   commited 2023-11-09 05:18:52 +00:00
d6909dbec2
Merge "[Thread] add ThreadNetworkController APIs" into main am: 0d600f2244
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2737373

Change-Id: Ibd63441bc351120ba5b4784eee836784a9448a7b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Kangping Dong   authored and   Automerger Merge Worker   commited 2023-11-08 16:21:21 +00:00
0e3e04a15b
Avoid autoboxing overhead in hash calculation
Avoid passing primitive data types into Objects.hash() which will
convert them to their corresponding object wrapper types
automatically.

Test: atest TetheringTests
Bug: 261923493
Change-Id: I2efe7f3e50923ad2e33cfd58ae7e1e1cf7fd34bd

KH Shi   commited 2023-11-08 12:44:42 +00:00
99b7e62b3c
[Thread] add ThreadNetworkController APIs
The ThreadNetworkController class provides APIs for managing the Thread
network, for example, attach to a specific network, form a network with
given dataset or update/migrate an existing network.

Bug: 262683651
Test: atest CtsThreadNetworkTestCases
Change-Id: Ib3c267d2c81a8c3c7772ed3c9cd2092487cc941a

Kangping Dong   commited 2023-11-08 17:56:16 +08:00
b1c75dbe8c
Merge "remove dead register_com_android_networkstack_tethering_BpfUtils" into main am: 9ff799122f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2820231

Change-Id: Ic889392ea59a5e66dd75bc4839f3be747c031bb2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Maciej Żenczykowski   authored and   Automerger Merge Worker   commited 2023-11-08 08:57:58 +00:00
251ad3af67
Merge "remove dead register_com_android_networkstack_tethering_BpfUtils" into main
Maciej Żenczykowski   authored and   Gerrit Code Review   commited 2023-11-08 08:19:07 +00:00
9ff799122f
Merge "Remove unnecessary dropShellPermissionIdentity" into main am: 24eab1c274
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2818562

Change-Id: I5cb3cf0b21d8410b46e030de4dc5753f9f773481
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Mark Chien   authored and   Automerger Merge Worker   commited 2023-11-08 02:20:09 +00:00
ca7d3d04d7
Merge "[Refactor] move BPF tests to BpfCoordinatorTest" into main am: f9e70f9bf3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2784087

Change-Id: I5b7aa8a8feec081ee3614028077511084b4430ff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

KH Shi   authored and   Automerger Merge Worker   commited 2023-11-08 02:19:46 +00:00
6401d497d6
Merge "Remove unnecessary dropShellPermissionIdentity" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-11-08 02:18:53 +00:00
24eab1c274
Merge "[Refactor] move BPF tests to BpfCoordinatorTest" into main
KH Shi   authored and   Gerrit Code Review   commited 2023-11-08 01:30:12 +00:00
f9e70f9bf3
remove dead register_com_android_networkstack_tethering_BpfUtils
Test: builds
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I369812e2f4ac7928a5754d747b4d3f8c0ca537a4

Maciej Żenczykowski   commited 2023-11-07 17:23:11 -08:00
0ba1d1cd0c
Merge changes I301bf032,I8caca97b into main am: e28740f79b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2801573

Change-Id: I5e87f8eac13af3e213ccfbeae9c89fd93e80f92d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>

Jean Chalard   authored and   Automerger Merge Worker   commited 2023-11-07 14:01:09 +00:00
04523693b2
Baseline issues that were previously suppressed
java_sdk_library has previously internally disabled a few legitimate
issues. As this is being un-done for modules, add baselines for the
pre-existing issues.

Bug: 306806877
Test: m checkapi
Merged-In: Ie764d33196675e1482f30ecfd3d6d22b7fa25c27
Change-Id: Ie764d33196675e1482f30ecfd3d6d22b7fa25c27

Anton Hansson   commited 2023-11-07 08:40:36 +00:00
d8e40b3204
Rename TiramisuConnectivityInternalApiUtil
This can be used from S. There is no point in having a
release name in the name of this class.

Test: builds
Change-Id: I301bf032f856dd4c30554e06013f31ee57208c4e

Chalard Jean   commited 2023-11-07 17:29:39 +09:00
674f34702c
Remove unnecessary dropShellPermissionIdentity
The test doesn't explicitly call adoptShellPermissionIdentity anymore. Instead it use runAsShell everywhere. Remove the dead code.

Bug: 254183718
Change-Id: Ia949e0e315a3b3ae915752e95ef9fe896fdc0f5b
Test: TH

Mark Chien   commited 2023-11-07 08:25:53 +00:00
f05b4475cd