Commit graph android_packages_modules_Co.../Tethering
Message SHA1
Merge "Replace HashSet with ArraySet in RaParams" into main
Yuyang Huang   authored and   Gerrit Code Review   commited 2024-01-20 19:06:38 +00:00
86b8bf03d2
Merge "Migrate Tethering#dump to use runWithScissorsForDump" into main
Junyu Lai   authored and   Gerrit Code Review   commited 2024-01-10 09:46:12 +00:00
7b4ebdf2ef
Migrate Tethering#dump to use runWithScissorsForDump
This change includes:
  1. Refactor the logic in Tethering#dump into utils class.
  2. Move the utils class to a common place which could be referenced
     from other sub-modules.
  3. Add @MonitorThreadLeak annotation to enforce
     there is no thread leak problem.

Test: atest FrameworksNetTests NetworkStaticLibTests
Test: atest ConnectivityCoverageTests:com.android.networkstack.tethering.TetheringTest#testDumpTetheringLog
Test: adb shell dumpsys tethering (with hardcoded exception)
Fix: 312669345

Change-Id: Ia6fdfeeec2110afa0ec9e056e9db3843748845c3

Junyu Lai   commited 2024-01-10 13:56:55 +08:00
2ff42d264b
Start Ethernet tethering test once before testing
The first tethering test case might have a tethering restart when
handling IP conflicts. Currently, we start a hotspot once before
tethering, but the test is still flaky in Cuttlefish because it
doesn't support hotspots. Instead, we'll start ethernet tethering.

Bug: 254183718
Test: atest CtsTetheringTest
Change-Id: I695d4e1b3f961893bc30b3144faf7ad7d2d70574

Mark   authored and   Mark Chien   commited 2023-12-27 08:57:57 +00:00
2d0652a465
Make isInterfaceForTetheringAvailable and enableEthernetTethering static
Bug: 254183718
Test: atest CtsTetheringTest
Change-Id: Ie8bf908fc926a0b8b58559c8827951cbeaedc2c6

Mark   authored and   Mark Chien   commited 2023-12-27 08:57:48 +00:00
28b3ea4e06
Merge "EthernetTetheringTest: make some global variables static" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-12-27 08:57:12 +00:00
60f800c2db
EthernetTetheringTest: make some global variables static
Before making enableEthernetTethering a static function, make its
dependency variable static.

Bug: 254183718
Test: atest CtsTetheringTest
Change-Id: Id3781d67b3abc69b146fa704d4795bcfb2431a2a

Mark   authored and   Mark Chien   commited 2023-12-27 03:50:32 +00:00
1e6e272014
implement Thread Border Router e2e integration test
This implements a basic border routing test case (ping) and demonstrates a
valid test environment for Thread Border Router test cases.

Later we can add more packet verifications and more test cases.

Bug: 295843010
Test: atest android.net.ThreadBorderRouterTest

Change-Id: Ifb9b6d45539143a227c2bc0ed69b5c3167ef9acd

Handa Wang   commited 2023-12-26 15:24:54 +08:00
806f5a1bec
Merge "List baseline_filename on modules that are implititly using it" into main
Cole Faust   authored and   Gerrit Code Review   commited 2023-12-21 21:33:01 +00:00
2e7920c075
List baseline_filename on modules that are implititly using it
lintable modules currently pick up files named "lint-baseline.xml" to use as the
lint baseline implicitly. This is confusing because you could end up using the
baseline files in more modules than intended. Lint also has a feature where it
requests you remove unnecessary findings from the baseline file, so something
could be necessary for one module, but unnecessary for another that accidentally
picked up the baseline.

We're removing the implicit detection of the baseline file, which requires
all modules using it to list the baseline file explicitly.

Bug: 272769514
Test: Presubmits
Change-Id: If873a4ea20d73bb6268d83589c4fb3ebe54af664

Cole Faust   commited 2023-12-20 11:57:07 -08:00
a52ecf0c5c
Merge changes I4888f8f2,Iba829ec0 into main
* changes:
  Revert "Refactor RouterAdvertisementDaemon with FdEventsReader"
  Revert "Refactor RouterAdvertisementDaemon to build new RA in HandlerThread"

Yuyang Huang   authored and   Gerrit Code Review   commited 2023-12-20 08:14:12 +00:00
71c24f190d
Revert "Refactor RouterAdvertisementDaemon with FdEventsReader"
This reverts commit bdcd7db9d8.

Reason for revert: Design changes, don't use extra Handler in RouterAdvertisementDaemon.

Change-Id: I4888f8f22aea2cadbb6064e63f872c605025930f

KH Shi   commited 2023-12-20 06:46:42 +00:00
ec801b887f
Revert "Refactor RouterAdvertisementDaemon to build new RA in HandlerThread"
This reverts commit 23a2158c38.

Reason for revert: Design changes, don't use extra Handler in RouterAdvertisementDaemon.

Change-Id: Iba829ec028e887b6625f4f972e936ca5757a7614

KH Shi   authored and   Gerrit Code Review   commited 2023-12-20 06:25:54 +00:00
f8ab26379e
Merge "Add experiment flag for tethering refactor" into main am: dbae5744a1 am: fbb4e37478
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2858906

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

Mark Chien   authored and   Automerger Merge Worker   commited 2023-12-12 06:15:32 +00:00
b46a20bab7
Merge "Add experiment flag for tethering refactor" into main am: dbae5744a1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2858906

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

Mark Chien   authored and   Automerger Merge Worker   commited 2023-12-12 05:43:10 +00:00
fbb4e37478
Merge "Add experiment flag for tethering refactor" into main
Mark Chien   authored and   Gerrit Code Review   commited 2023-12-12 05:14:51 +00:00
dbae5744a1
Add experiment flag for tethering refactor
The logic is currently disabled by default, adding a flag so
that we can compare result with A/B rollout.

Test: atest TetheringTests
Change-Id: If640b9a172b97aa67c49b2976cdef118218f1e0f

Mark   commited 2023-12-12 02:31:54 +00:00
cf11be9eb2
Merge Android 14 QPR1 am: 373b03fbf3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2865658

Merged-In: I08c79f7266116cfe8d6b0ed42a6f026547660cbc
Merged-In: Id924654831ef1b5024d4329477d497783165426b
Change-Id: Iaab89fe854482698387c5e39b175f3b9969ae019

Xin Li   commited 2023-12-08 17:52:54 -08:00
89a2b2f991
Merge "Get rid of any unnecessary reset calls" into main am: ce6f14073c am: bd975a9efc
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2865435

Change-Id: I3e96d5bc0266e716ee618098f76e9bd03d9c49ca
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:48:16 +00:00
1950807e92
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: Ib49434f5b3d0a47ac29a33fdf09150d912815018
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:15:44 +00:00
453d24ba82
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: I58bfcaa376439ed2cf515c82dbcf2839269c4711
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:58:29 +00:00
3ba75acdec
Merge "Remove workaround to remove FlaggedAPI in ump" into main am: dc7a325a55 am: 40187a830a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2850388

Change-Id: Ib1c295021ed32ffba9e31f50a074fe04b387f5a0
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:52:58 +00:00
e3920bb580
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: Ic841cbfb307329e13e4ffab21ccaf9ba0372f0b0
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:53:20 +00:00
164c0f7d26
Merge "Rename getXXX to makeXXX in TetheringDependencies" into main am: ef41398c1f am: 711ce847c9
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2843656

Change-Id: I8b910cdec8d27d38a781e2ad0d8533271fd88029
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:44:29 +00:00
686108195b
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 "Random select started prefix range" into main am: 78c0d088d7 am: dc38f59118
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2677979

Change-Id: I8dca8227d086378601ffae9074ec7feade23c621
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:55:10 +00:00
3b5296ab64
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: I6d3a6e7ab580e603c8d7f05a3d7ce9bded03f148
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:19:30 +00:00
461f078e46
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 am: f54f98ddfc
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2842800

Change-Id: I92be9f287dbdd04ff42106b055f136357dc65763
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:43:15 +00:00
9429b0b684
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: Ic36549009b5559dbc5b6228e711ef3498e4323d6
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:31:53 +00:00
cd9fca8ca6
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 am: 5a5ef8310b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2490882

Change-Id: If00d0973f546afa57e2b837c82b33ea481bfb707
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 07:22:17 +00:00
5a22d3904a
Merge "Refactor RouterAdvertisementDaemon with FdEventsReader" into main am: 093433c8b8 am: 0d13903ced
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2493357

Change-Id: If1acd84fe03fa77e5a0f2f9cf8550f344cbd4ff8
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 07:22:04 +00:00
98a22e6230
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: I666a332404217ce525c6a050317df57f28a59cce
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 07:01:28 +00:00
a324462bfe
Merge "Refactor RouterAdvertisementDaemon with FdEventsReader" into main am: 093433c8b8
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2493357

Change-Id: Ib03b62441e0b16a09cc1d62f1eacfc10318437dd
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 07:00:58 +00:00
de5fc10148
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: Idfdf98c9220949a1ae3fe285d016b00d29636821
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:48:31 +00:00
621f9c78ab