Commit Graph

645 Commits

Author SHA1 Message Date
James Mattis
4b44c9f94d Replacing IIpClient with Manager in ethNetFactory am: cfa7a08bcf am: 7d4d068293
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1935877

Change-Id: I0025ce5333ef9ed56fc4a58d560c80493ab99786
2022-01-06 04:49:54 +00:00
James Mattis
a22d2112ca Code cleanup on EthernetNetworkFactoryTest am: 18ed8f6680 am: 99fea53b7c
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1935577

Change-Id: I99f7c299054e596ad18b6340890ab45b8d952859
2022-01-06 04:49:52 +00:00
James Mattis
b6d353bb9c Using PermissionUtils for common net permissions am: 54e3aebb95 am: 1f749592d8
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934761

Change-Id: Ic494f9796634f857962c85139383d99046c97f65
2022-01-06 04:49:50 +00:00
James Mattis
bf585dba90 Changes to make eth service methods more testable am: a5f724dfdd am: 4f22cf4a85
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934759

Change-Id: I747b401718c4860f6f38d925cf6b050fb7957470
2022-01-06 04:49:49 +00:00
James Mattis
f0f434a890 Eth Service updates to validate net mgmt calls am: cc1dac61b3 am: 24e202722d
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934297

Change-Id: Ic887b3229960bee4516066d8199a8a03d714f9d6
2022-01-06 04:49:48 +00:00
James Mattis
7d4d068293 Replacing IIpClient with Manager in ethNetFactory am: cfa7a08bcf
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1935877

Change-Id: Ib9b36fef3188f25f29bf52b120326292a3e1c07e
2022-01-06 04:32:55 +00:00
James Mattis
99fea53b7c Code cleanup on EthernetNetworkFactoryTest am: 18ed8f6680
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1935577

Change-Id: I6592cad26ae748787a60d236f75310a3fcf9ae7b
2022-01-06 04:32:54 +00:00
James Mattis
1f749592d8 Using PermissionUtils for common net permissions am: 54e3aebb95
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934761

Change-Id: I1f33cca26fa723b22c49d8d4a62e1c609151e0eb
2022-01-06 04:32:52 +00:00
James Mattis
4f22cf4a85 Changes to make eth service methods more testable am: a5f724dfdd
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934759

Change-Id: If22c4b83c6165f960fca2b0774060ebb8fecd3bb
2022-01-06 04:32:49 +00:00
James Mattis
24e202722d Eth Service updates to validate net mgmt calls am: cc1dac61b3
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934297

Change-Id: Ia147ffef45b2d9d5fd33e0001057cba0b9a8e695
2022-01-06 04:32:48 +00:00
James Mattis
cfa7a08bcf Replacing IIpClient with Manager in ethNetFactory
Replacing IIpClient with IpClientManager to reduce code duplication,
increase readability and maintainability as well as making
EthernetNetworkFactory easier to unit test.

Bug: 210485380
Test: atest EthernetServiceTests
Change-Id: I283653171c0cc47ad94a67d6dbd65b924cdf1ada
2022-01-05 16:12:16 -08:00
James Mattis
18ed8f6680 Code cleanup on EthernetNetworkFactoryTest
Code cleanup on EthernetNetworkFactoryTest.

Bug: 210485380
Test: atest EthernetServiceTests:
com.android.server.ethernet.EthernetNetworkFactoryTest

Change-Id: I38c568d0760e4273f1ca8540bac268f07876b67f
2022-01-05 15:49:33 -08:00
James Mattis
54e3aebb95 Using PermissionUtils for common net permissions
Code clean-up to use PermissionUtils for common networking
permissions. Should be a no-op.

Bug: 210485380
Test: make, flash and boot
Change-Id: I4be08243156e9d04f4b3b44ab7328d0f6f7fdda1
2022-01-05 15:00:03 -08:00
James Mattis
a5f724dfdd Changes to make eth service methods more testable
Updates to make methods in EthernetServiceImpl that rely on
EthernetTracker unit testable. This CL also includes added tests for
such methods in EthernetServiceImplTest.

Bug: 210485380
Test: atest EthernetServiceTests
Change-Id: I63969b60cc4cf9d391e2cd21d02e1bdc8988aba8
2022-01-05 14:59:56 -08:00
James Mattis
cc1dac61b3 Eth Service updates to validate net mgmt calls
Updates to ethernet service code to validate calls to ethernet network
management APIs.

Bug: 210485380
Test: atest EthernetServiceTests
Change-Id: I66b91c6d12e6859de33760ab21bb00f1477720e8
2022-01-05 13:50:42 -08:00
Xiao Ma
b65876c7a5 Remove INetworkManagementService usage from EthernetTracker. am: 39e7a77991 am: 020d4fa16a am: d21f8fa352
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925902

Change-Id: I7ea3bb0e97d271a0f6100ae3e602dc6dae522e3d
2021-12-27 02:49:11 +00:00
Xiao Ma
d21f8fa352 Remove INetworkManagementService usage from EthernetTracker. am: 39e7a77991 am: 020d4fa16a
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925902

Change-Id: If78e913181109c34b0504df0e76b6ea302ddab55
2021-12-27 02:38:53 +00:00
Xiao Ma
020d4fa16a Remove INetworkManagementService usage from EthernetTracker. am: 39e7a77991
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925902

Change-Id: I9b20d45aa24fd0a70086463f3a77941cfac0bedc
2021-12-27 02:21:16 +00:00
Xiao Ma
39e7a77991 Remove INetworkManagementService usage from EthernetTracker.
Ethernet service related files are going to be moved into Connectivity
module. INetworkManagementService won't be visible to EthernetTracker
since it's a hidden class. Alternatively, use INetd APIs to replace
INetworkManagementService usages, including below API changes:

- mNMService.listInterfaces -> mNetd.interfaceGetList

- mNMService.getInterfaceConfig -> NetdUtils.getInterfaceConfigParcel
  - remove InterfaceConfiguration usage, use NetdUtils APIs instead.

- mNMService.registerObserver -> mNetd.registerUnsolicitedEventListener
  - for this API change, also replace the parameter BaseNetworkObserver
    class with BaseNetdUnsolicitedEventListener class.

Bug: 210586283
Test: atest FrameworksNetTests
Test: atest EthernetServiceTests
Change-Id: Ic14c55a6a36b774006931a6fbcbfdec0c51a16e9
2021-12-24 08:58:47 +00:00
James Mattis
58acb47fc5 Stubbed net mgmt API methods in eth service am: 5fac76d3a2 am: 2de4dbd725 am: 35b2ad1543
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1923597

Change-Id: I8edb3b9b90f7dc16d033303e19b74f7639548dc6
2021-12-23 01:54:13 +00:00
James Mattis
35b2ad1543 Stubbed net mgmt API methods in eth service am: 5fac76d3a2 am: 2de4dbd725
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1923597

Change-Id: I01368bdf75bbaaba34d724d6ad9a5b4544d6b757
2021-12-23 01:41:40 +00:00
James Mattis
2de4dbd725 Stubbed net mgmt API methods in eth service am: 5fac76d3a2
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1923597

Change-Id: Ia2afe86afbd3d23a833b806ead133ffb6c631a28
2021-12-23 01:24:25 +00:00
James Mattis
5fac76d3a2 Stubbed net mgmt API methods in eth service
Stubbed API methods in EthernetServiceImpl to be used for network
management.

Bug: 210487086
Bug: 210485380
Test: make, flash and boot and atest EthernetServiceTests
Change-Id: I8bd5a6eca07d00e0f155b71e2960371989a13013
2021-12-22 09:57:44 -08:00
Xiao Ma
eeb52978f9 Merge "Replace Preconditions.checkNotNull with Objects.requireNonNull." am: 7ab9fb8f1a am: 9316b296b4 am: 2f5bb0a276
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927229

Change-Id: I0e58504c81a72a60525192156d0609ea1b770001
2021-12-22 02:35:33 +00:00
Xiao Ma
305bf7523d Import InterfaceParams class from f/libs/net/common. am: 3a26d1b8ed am: 9a57980ff7 am: 7b84ce8042
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927228

Change-Id: I4af6af5772cd97b9497cb8e01930ce8268fb54f8
2021-12-22 02:35:25 +00:00
Xiao Ma
2f5bb0a276 Merge "Replace Preconditions.checkNotNull with Objects.requireNonNull." am: 7ab9fb8f1a am: 9316b296b4
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927229

Change-Id: I1ac05f9af8a3f07bcf0c66dfa66ec2dafcc8f74b
2021-12-22 02:24:39 +00:00
Xiao Ma
7b84ce8042 Import InterfaceParams class from f/libs/net/common. am: 3a26d1b8ed am: 9a57980ff7
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927228

Change-Id: I79abe5f1029527f78ad0e2d13039ac34dbe5d9dd
2021-12-22 02:24:32 +00:00
Xiao Ma
9316b296b4 Merge "Replace Preconditions.checkNotNull with Objects.requireNonNull." am: 7ab9fb8f1a
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927229

Change-Id: I163b3fd41f4aa01d60cf74ec159806d9c6c12a15
2021-12-22 02:00:04 +00:00
Xiao Ma
9a57980ff7 Import InterfaceParams class from f/libs/net/common. am: 3a26d1b8ed
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1927228

Change-Id: I0ed2839bccbffd608deeeea8c64d1aa9555a5ef7
2021-12-22 01:59:54 +00:00
Xiao Ma
7ab9fb8f1a Merge "Replace Preconditions.checkNotNull with Objects.requireNonNull." 2021-12-22 01:42:21 +00:00
Xiao Ma
3a26d1b8ed Import InterfaceParams class from f/libs/net/common.
Ethernet service related files are going to be moved into Connectivity
mainline module. Import InterfaceParams class in EthernetNetworkFactory
from f/libs/net/common, which is visible to Connectivity module.

Bug: 210586283
Test: atest EthernetServiceTests
Change-Id: I98ebb04cc3c2b685464e7f2689424794957088b3
2021-12-21 08:06:07 +00:00
Xiao Ma
31ce0a1dc7 Replace Preconditions.checkNotNull with Objects.requireNonNull.
Ethernet service related files are going to be moved into Connectivity
mainline module. Replace the Preconditions.checkNotNull usage in
EthernetNetworkFactory with Objects.requireNonNull.

Bug: 210586283
Test: atest EthernetServiceTests
Change-Id: Ibeaf687f706e8400f825cb2ca97bb1341774a97d
2021-12-21 08:01:04 +00:00
Xiao Ma
ed0a25dcfb Merge "Remove NetdService usage from EthernetTracker." am: 479ee83516 am: 3b57155044 am: 675fac20cc
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925901

Change-Id: I00004d23237ab826b2f976dbc34f01732bca7bc2
2021-12-16 09:17:43 +00:00
Xiao Ma
675fac20cc Merge "Remove NetdService usage from EthernetTracker." am: 479ee83516 am: 3b57155044
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925901

Change-Id: Ia9005b0425fe66b88eda1a81579984e522394666
2021-12-16 09:02:01 +00:00
Xiao Ma
3b57155044 Merge "Remove NetdService usage from EthernetTracker." am: 479ee83516
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1925901

Change-Id: I831bec7800020c589b7651cc77c9c6f0e48734c0
2021-12-16 08:40:19 +00:00
Xiao Ma
479ee83516 Merge "Remove NetdService usage from EthernetTracker." 2021-12-16 08:22:01 +00:00
Xiao Ma
300abdb2a8 Remove NetdService usage from EthernetTracker.
Ethernet service related files are going to be moved into Connectivity
module. So, NetdService won't be visible to EthernetTracker since it's
a hidden class. Alternatively, get the INetd instance from system
service instead.

Bug: 210586283
Test: atest FrameworksNetTests
Test: atest EthernetServiceTests
Change-Id: Iea021ac25cbe4b8836fdab2cd6b4bd3ead5bf725
2021-12-16 04:31:27 +00:00
Pavan Kumar M
39710ea588 Handle neighbor lost event am: e600bef8f9 am: dab9bb4938 am: a108e9b47d
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1586426

Change-Id: Ic5a7f0485035462b017adf15c4ae1c5c1b5baa82
2021-12-16 02:24:00 +00:00
Pavan Kumar M
a108e9b47d Handle neighbor lost event am: e600bef8f9 am: dab9bb4938
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1586426

Change-Id: I5c756835916a21838b83923c9406ea01758f6500
2021-12-16 02:09:47 +00:00
Pavan Kumar M
dab9bb4938 Handle neighbor lost event am: e600bef8f9
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1586426

Change-Id: Ic66ac799dfd9287dcd7d5ca6912f6b4a6e07ecad
2021-12-16 01:55:37 +00:00
Pavan Kumar M
e600bef8f9 Handle neighbor lost event
Neighbor lost event is received when gateway is not reachable.
Ethernet Factory currently doesn't handle the neighbor lost event and
network will not be brought down. This results in loss of
connectivity even if there are other networks like WiFi.

Restart NetworkInterfaceState when neighbor lost event is
received. If there is a better network like WiFi, it will become
default and apps will be able to use internet. If ethernet gets
connected again, and has backhaul connectivity, it will become
default.

Bug: 180077540
Tests: Builds, Boots, EthernetServiceTests
Change-Id: I26d720994ecb35f6529358a53e115091e7817c2f
2021-12-15 22:56:06 +05:30
James Mattis
d02532154d Adding test coverage for eth transport overrides am: 2fc1c08cb5 am: ed18ef9f85 am: b6b21a356c
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1913619

Change-Id: Ib543594ebc0f62e210548da69bf9a2e28b92684b
2021-12-10 19:33:56 +00:00
James Mattis
b6b21a356c Adding test coverage for eth transport overrides am: 2fc1c08cb5 am: ed18ef9f85
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1913619

Change-Id: I2a56ae1d075ed4169610eca0eeb5a7c4329e228d
2021-12-10 19:12:06 +00:00
James Mattis
ed18ef9f85 Adding test coverage for eth transport overrides am: 2fc1c08cb5
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1913619

Change-Id: Ic922281e080e56fe3fcd635709bd2adfc6e625c8
2021-12-10 18:48:47 +00:00
James Mattis
60bbce6f3d Removing unused int network score from eth factory am: 68c4a5108b am: 21bbe6f4a5 am: 1c138c9d16
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1891859

Change-Id: I680749fcb1d7d5673806321cf8587461c8fe0a18
2021-12-08 18:10:56 +00:00
James Mattis
1c138c9d16 Removing unused int network score from eth factory am: 68c4a5108b am: 21bbe6f4a5
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1891859

Change-Id: I1934112b51a2c4002fbd2c29a31562f2c1ae3a3f
2021-12-08 17:49:24 +00:00
James Mattis
21bbe6f4a5 Removing unused int network score from eth factory am: 68c4a5108b
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1891859

Change-Id: Ia38e4bb42fb73830e6c235bec3d42aad8546a689
2021-12-08 17:27:44 +00:00
James Mattis
2fc1c08cb5 Adding test coverage for eth transport overrides
Added test coverage regarding how EthernetTracker consumes the xml
config as set in config_ethernet_interfaces. Additionally, adding
test coverage for transport override functionality in
EthernetNetworkFactory.

Bug: 206170402
Test: atest com.android.server.ethernet.EthernetTrackerTest
&& atest com.android.server.ethernet.EthernetNetworkFactoryTest

Change-Id: I3d55a230d3f28154ed6fdac6d63ed57bf589d3bd
2021-12-07 16:43:33 -08:00
James Mattis
68c4a5108b Removing unused int network score from eth factory
Hard coded network scores are no longer used however they still exist
in EthernetNetworkFactory. This change removes this unused code in
favor of the NetworkScore object.

Bug: 209679953
Test: m && atest com.android.server.ethernet.EthernetNetworkFactoryTest

Change-Id: Ic9035964fc0e0bdf1dbd1ee845ba3293c753dd8d
2021-12-07 16:38:05 -08:00
Xin Li
af7ac6d8bd [automerger skipped] Merge Android 12 am: 7278efa321 -s ours am: 7aae12e960 -s ours am: 0b42dfc1cb -s ours am: ea24c36c91 -s ours
am skip reason: Merged-In I304701a1ad5be47bec534d679eca259b06cb084d with SHA-1 1932a7e7ec is already in history

Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1847600

Change-Id: I63dd1670fa4ea8358f6ebcc643d4df99e0d1cef6
2021-10-08 08:29:38 +00:00