Commit Graph

886 Commits

Author SHA1 Message Date
Mark Chien
e2a905116c Merge "Allow tethering pick prefix from all of private address range" am: 8c9a2645d8 am: 4388f63021
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1436852

Change-Id: Ie44f3b2ebfa51d2c915bd794b6ea0fade0098ecf
2020-10-13 14:01:47 +00:00
Mark Chien
4388f63021 Merge "Allow tethering pick prefix from all of private address range" am: 8c9a2645d8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1436852

Change-Id: Ief2520cd30059542ae3786a36b92198af6739a2a
2020-10-13 13:42:20 +00:00
Mark Chien
8c9a2645d8 Merge "Allow tethering pick prefix from all of private address range" 2020-10-13 13:12:58 +00:00
markchien
d9acdccbd3 Allow tethering pick prefix from all of private address range
Currently tethering only pick prefix from 192.168.0.0/16. There is no
aviable tethering address if the upstream address is 192.168.x.y/16.
This change allow tethering to pick prefix from any private address
rnages. Now it still pick from 192.168.0.0/16 only to avoid behavior
change. Will have follow up commit to change the configuration.

Bug: 166057846
Bug: 170265597
Test: atest TetheringTests
      atest CtsTetheringTest

Change-Id: Ib6304eb8b4788e9196d0af48e72f00a6bda73a5f
2020-10-13 16:45:09 +08:00
Remi NGUYEN VAN
371642a328 Merge "Use IpUtils, NetworkStackConstants in DadProxyTest" am: 80794b2476 am: d7b3661334
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1440214

Change-Id: I2eb8131309f397a832b16002f7eff702e78dba80
2020-10-13 07:12:10 +00:00
Remi NGUYEN VAN
d7b3661334 Merge "Use IpUtils, NetworkStackConstants in DadProxyTest" am: 80794b2476
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1440214

Change-Id: I2e8d55b7984bccbd5959b7b00fa8c8b24acdb67c
2020-10-13 06:31:32 +00:00
Remi NGUYEN VAN
71b9e93a83 Use IpUtils, NetworkStackConstants in DadProxyTest
The test had TODOs to address to use IpUtils and NetworkStackConstants
classes once they were moved to frameworks/libs/net. This is now done,
so using the new classes.

Bug: 158042941
Test: atest TetheringPrivilegedTests
Change-Id: I536b4506dbc3b42547ba9cb4e7c3c7a3e9459dd1
2020-10-13 11:30:03 +09:00
Xin Li
51ca8f56c5 Merge ab/6749736 in stage.
Bug: 167233921
Merged-In: Iecef31f7bf10ad97b7e0075cf302ae94e248474a
Change-Id: I9e9c873bc2e05a0cfe3af0bf74725500f3f108db
2020-10-10 20:38:57 -07:00
Remi NGUYEN VAN
ff257a083e Merge "Move IpUtils to frameworks/libs/net" am: 4cb4ef8333 am: 9623f122df
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1440234

Change-Id: I03872655d1ef3a7bb436666196ed67bd61601f65
2020-10-09 00:52:31 +00:00
Remi NGUYEN VAN
4cb4ef8333 Merge "Move IpUtils to frameworks/libs/net" 2020-10-09 00:13:40 +00:00
Mark Chien
4b52fef91d Merge "Make the IP subnet persistent till reboot" am: f052e40f79 am: 18b5773041
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1432958

Change-Id: Ib0d9e5b21b88fd352b06b3064ef3c34de4c046ce
2020-10-07 10:18:00 +00:00
Mark Chien
f052e40f79 Merge "Make the IP subnet persistent till reboot" 2020-10-07 09:39:29 +00:00
markchien
a2ffad84c7 Make the IP subnet persistent till reboot
Make the IP subnet persistent if it do not conflict with upstream.
It allow client to reuse its IP that usually reduce DHCP procedure.

Bug: 168169687
Test: atest TetheringTests
Change-Id: Iddc5304730dce7b11c5d124b7eddce057d752bbd
2020-10-06 20:25:19 +08:00
Anton Hansson
441eb20b82 Merge "Explicitly reference framework-wifi app build rule" am: c29f606cc7 am: adedc24110
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1448635

Change-Id: Ifc377c2b8ba57bc14cfb6eb98d599e2496ef62f9
2020-10-05 13:10:31 +00:00
Anton Hansson
b8a342e4bc Explicitly reference framework-wifi app build rule
This works around a build-system limitation where it does not know
which jars to feed r8 to resolve all classes during proguarding.

Bug: 160453030
Bug: 169931783
Test: build_mainline_modules.sh (with prebuilt sdk)
Change-Id: I3d9f2049cf898b5e551a5c5764df423abaa5e92d
Merged-In: I3d9f2049cf898b5e551a5c5764df423abaa5e92d
2020-10-05 11:43:39 +01:00
Remi NGUYEN VAN
2494a06bb3 Move IpUtils to frameworks/libs/net
The utility classes are useful for mainline modules and their tests, for
example IpClientIntegrationTest.

Bug: 168868607
Test: m && atest NetworkStaticLibTests
Change-Id: If2b1613aa18a7990391e2d31cc2951ca93f1cf3c
2020-10-05 14:38:19 +09:00
Treehugger Robot
a089de8bab Merge "Make PrivateAddressCoordinator ignore vpn network" am: 0b1e7d8956 am: 3f85eccfaa
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1413610

Change-Id: I70b49d0a10b80f378dcd2ba78b5bac848e40e5c9
2020-10-05 04:46:25 +00:00
Treehugger Robot
0b1e7d8956 Merge "Make PrivateAddressCoordinator ignore vpn network" 2020-10-05 04:10:48 +00:00
Lorenzo Colitti
e8bbfd667b Merge changes I53ca4b98,I1757fdeb am: 3a463815e2 am: f593d0eaa2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1440767

Change-Id: I59f834071b66d310652016a626b0f8a6bb471d03
2020-09-30 13:53:31 +00:00
Lorenzo Colitti
c99ef48090 Fix OffloadHardwareInterfaceTest.
r.android.com/1424920 changed the code but forgot to update the
unit test.

Also fix some lint errors.

Bug: 149109043
Test: atest TetheringTests TetheringPrivilegedTests
Change-Id: I53ca4b9877dcb4a759dee6ec63133653315d826f
2020-09-30 17:04:19 +09:00
Tyler Wear
7f70074abc tethering: offload: Netlink Req NfGen
Add the netfilter generic message header to
the netlink req. This is needed so the kernel
won't ignore the request for invalid params.

Bug: 149109043
Test: ConntrackSocketTest
Change-Id: I1757fdeb11a0cac5821021a22323cbd74fe22bdc
2020-09-30 15:07:47 +09:00
Treehugger Robot
0c9a370cfc Merge "Fix TetheredClient callback fail in InProcessTethering" am: 18ee591257 am: 9fe2d11c12
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1435273

Change-Id: I8faacd26cc6f3e940af3a0147b84b693cb93503c
2020-09-28 09:50:14 +00:00
markchien
1a2163b972 Make PrivateAddressCoordinator ignore vpn network
If vpn app make its netmask as 0, PrivateAddressCoordinator
would not able to find suitable address for tethering downstream.
Since tethering do not support vpn as upstream, just ignore vpn
in PrivateAddressCoordinator.

Bug: 166365863
Test: atest TetheringTests
      atest CtsTetheringTest
Change-Id: Iabe265467044fea9fa437674ca29ffc7bcdefe3b
2020-09-28 17:22:19 +08:00
Treehugger Robot
18ee591257 Merge "Fix TetheredClient callback fail in InProcessTethering" 2020-09-28 08:53:53 +00:00
Treehugger Robot
155e2a5212 Merge "Remove double check interface by NetworkInterface" am: f5096cc1e3 am: 2162a75d50
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1440032

Change-Id: Idf1d18261c954e22989774ae97a12261551b31f6
2020-09-28 05:35:36 +00:00
Treehugger Robot
f5096cc1e3 Merge "Remove double check interface by NetworkInterface" 2020-09-28 04:21:28 +00:00
markchien
f609923b4b Remove double check interface by NetworkInterface
NetworkInterface#getByName can not get the interface without IP addresses.
When setIncludeTestInterfaces(true) is called, the interface will be
placed in client mode, which will delete the link-local address. So calling
NetworkInterface#getByName to get test interface may not work before
switching to server mode.

Bug: 168215721
Test: atest CtsTethering
Change-Id: Ice8adcce1c4b2c86bd219c701b2afa9ba2339f24
2020-09-27 17:11:20 +08:00
Remi NGUYEN VAN
a3de2aa6d3 Merge "Remove unused testutils lib from tethering tests" am: a8e68bb723 am: d8c1f0dc19
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1433924

Change-Id: I7229dab0c6246f9fbb6724456d9ada6064d3f31a
2020-09-24 08:52:46 +00:00
Remi NGUYEN VAN
a8e68bb723 Merge "Remove unused testutils lib from tethering tests" 2020-09-24 08:16:21 +00:00
markchien
84ec4a397a Fix TetheredClient callback fail in InProcessTethering
TetheredClient callback would additional check whether caller has
NETWORK_SETTINGS or {MAINLINE_}NETWORK_STACK permission, but it do not
grant for self accessing. InProcessTethering run in system server, so
the services in system server would fail to call TetheredClient callback.
Grant permission for self process.

Bug: 169231588
Test: atest CtsTetheringTest
Change-Id: Ic04e44aef4df772c718ff25ed331bf02f5940c1d
2020-09-24 10:11:51 +08:00
Remi NGUYEN VAN
8f59ec090d Remove unused testutils lib from tethering tests
frameworks-base-testutils is unused in tethering integration tests, so
the dependency can be removed.
That test library also contains test classes, so removing the dependency
allows tethering tests to stop running the associated tests.

Also add jarjar rules to the unit tests to zap (remove) the test classes
from the output APK. Ideally the unit tests should stop depending on
that library too (TestableLooper can be used instead of TestLooper), or
the frameworks-base-testutils library should stop including test
classes.

Bug: 167968946
Test: m CtsTetheringTest TetheringTests
Change-Id: Ie950ce5b6181e388a7f71da430fd2dd8ada32e49
2020-09-23 17:10:42 +09:00
Remi NGUYEN VAN
fa3997133c Merge "tethering: DAD Proxy Daemon" am: 72e81859f8 am: 4508ee1e28
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1258645

Change-Id: I25eb7ff486716156a11cfd4b1f15e789ce154a7c
2020-09-23 05:48:57 +00:00
Remi NGUYEN VAN
72e81859f8 Merge "tethering: DAD Proxy Daemon" 2020-09-23 04:57:42 +00:00
Tyler Wear
90e4063fd2 tethering: DAD Proxy Daemon
DAD proxy daemon responsible for forwarding NS/NA between
tethered iface and upstream iface.

Change-Id: I2e58e10e7fa7dba6a6f63ad03b000549f3afc37e
2020-09-22 11:58:49 -07:00
Bill Yi
725af62a59 Merge mainline-release 6664920 to master - DO NOT MERGE
Merged-In: Id04ea331831e8b26ba99478848392b40a92548d5
Change-Id: I888da0c9475f2d00602d917d2f58169f8d7c93a4
2020-09-17 21:56:59 -07:00
Nucca Chen
b463014633 Merge "Move BPF offload program from netd to mainline" am: c26848e7bd am: a0d6f9712b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1424189

Change-Id: Ic90ce1bc5a5abd1eb515e5392b2980cdd001dc9f
2020-09-18 04:56:57 +00:00
Nucca Chen
a0d6f9712b Merge "Move BPF offload program from netd to mainline" am: c26848e7bd
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1424189

Change-Id: Ia0b8a185f44dac7db365fcb9fc865a82bd552d62
2020-09-18 04:27:28 +00:00
Hungming Chen
56c632caed Move BPF offload program from netd to mainline
Test: as the follows.
$ adb shell ls sys/fs/bpf | grep offload
map_offload_tether_ingress_map
map_offload_tether_limit_map
map_offload_tether_stats_map
prog_offload_schedcls_ingress_tether_ether
prog_offload_schedcls_ingress_tether_rawip

$ adb shell dumpsys netd --short
  TetherController
    BPF ingress map: iif(iface) v6addr -> oif(iface) srcmac ..
      13(rmnet_data3) 2401:e180:8842:6e3:bc6a:2e45:c30:f418 -> ..
    BPF stats (downlink): iif(iface) -> packets bytes errors
      13(rmnet_data3) -> 7 488 0
    BPF limit: iif(iface) -> bytes
      13(rmnet_data3) -> 9223372036854775807

Log:
bpfloader: Loaded object: /apex/com.android.tethering/etc/bpf/offload.o

Change-Id: I71b7efb1f4bd6eb1cd469a0e1e4a56342dc6e579
2020-09-16 20:38:14 +08:00
Bill Yi
8780ad918d Merge mainline-release 6664920 to stage-aosp-master - DO NOT MERGE
Merged-In: I8f9b41ca6388fdeeda287e7919ef05e56f9da1a6
Change-Id: If78e130888b8d4653ef128d747e18cc46844d732
2020-09-13 07:58:42 -07:00
Anton Hansson
6ab81ec60a Merge "Simplify module visibility post build refactor" into stage-aosp-master am: f94c8eb54f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12513172

Change-Id: Iff37388324c3fb1e838c3c7ffc803b96d6e61197
2020-09-07 08:22:05 +00:00
Anton Hansson
9aed13818c Simplify module visibility post build refactor
//visibility:override is no longer needed for impl_library_visibility
to override visibility.

Removing this allows the defaults module to specify better defaults.

- Stub libraries are made publicly visible, via `visibility`
- Impl libraries are private by default, but visibility is extended
  by the modules

Bug: 165017290
Test: m
Exempt-From-Owner-Approval: build refactor
Change-Id: Ibf35bfac5c99a21125f89ba10945f3364217b90f
2020-09-07 07:54:50 +00:00
Bill Yi
6c701f5341 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Ibfe7031a80e38ed3fe776e195514e6c7cad418ab
2020-09-05 01:14:22 +00:00
Bill Yi
ac8f65a544 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I946ba0e5ca40f934bdc7588eb244969103813c4c
2020-09-03 08:32:04 +00:00
Xin Li
82a71b8f72 Merge Android R (rvc-dev-plus-aosp-without-vendor@6692709)
Bug: 166295507
Merged-In: I3d92a6de21a938f6b352ec26dc23420c0fe02b27
Change-Id: Ifdb80563ef042738778ebb8a7581a97c4e3d96e2
2020-08-31 21:21:38 -07:00
Mark Chien
36fd800cb1 Merge "Add usesCleartextTraffic to Tethering" am: 3aee2ac91a am: 1ed9e74716
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1402629

Change-Id: If1ea472e2b7e715ab97851394dc8980ad269b7a1
2020-08-18 09:28:57 +00:00
Mark Chien
3aee2ac91a Merge "Add usesCleartextTraffic to Tethering" 2020-08-18 09:04:59 +00:00
markchien
c12b03a935 Add usesCleartextTraffic to Tethering
usesCleartextTraffic needs to be true for the networkstack process so
that the NetworkStack module can use no-encrypted probes to detect
captive portals.

When loaded in the networkstack process, all packages in process must
set usesCleartextTraffic=true, otherwise there may be races causing
the flag not to be set for the process.

Bug: 161860610
Test: CtsTetheringTest, TetheringTests
Change-Id: Ife03ee0c7096ea242eb701b297a69b471e15b436
2020-08-18 09:00:58 +00:00
Chalard Jean
09fdd9236d Merge "Rename Kotlin util files to not include the Kt suffix" am: b1a3247ab4 am: c5d748e694
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1350084

Change-Id: I6362695120ea8669e1da84bb686e886b85efd6a3
2020-08-13 04:26:11 +00:00
Chalard Jean
96924bf201 Rename Kotlin util files to not include the Kt suffix
Callers don't care what language the utilities are written in

Test: builds
Change-Id: Ie212144f36c50db223c05f3fcb6bad745842cb5e
2020-08-12 10:02:50 +09:00
Paul Hu
0ee374a02c Merge "Verify pending intent flags" am: 346a361e93 am: 9caa751767
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1325696

Change-Id: Id37713388c0c2245e708ca1ca81e78d288168dfd
2020-08-10 02:04:40 +00:00