Commit Graph

2432 Commits

Author SHA1 Message Date
Chiachang Wang
1060f1cf15 Merge "Remove mobile provision design out from connectivity service" am: 243a8acbca am: 2b221892a1 am: 75fb6d4016
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1531804

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5984ea716e87cfb1c4ec79d5c7edbf994dd4911f
2021-01-07 08:19:22 +00:00
Chiachang Wang
243a8acbca Merge "Remove mobile provision design out from connectivity service" 2021-01-07 06:47:26 +00:00
Chiachang Wang
ce6dcc943e Remove mobile provision design out from connectivity service
In order to support ConnectivityService mainline, module should
not use hidden APIs. The logic to get mobile provision is moved
to telephony surface since it's only used by telephony.
Hence, remove the design out from Connectivity.

Bug: 175177794
Test: atest FrameworksNetTests
Change-Id: Ic3082fc1c4d7ac998f4e4cff1351e6829d500924
2021-01-07 06:46:40 +00:00
Lucas Lin
516b3a7ccb Merge "Replace withCleanCallingIdentity with [clear|restore]CallingIdentity" am: 7a8259c987 am: 5069a406b0 am: 4b89bc0052
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1537266

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I52549a279f89639ac0132cd1bd1d2a830966eeac
2021-01-07 05:42:02 +00:00
Lucas Lin
7a8259c987 Merge "Replace withCleanCallingIdentity with [clear|restore]CallingIdentity" 2021-01-07 04:32:54 +00:00
Lorenzo Colitti
abf3317103 Merge "Migrate away from AsyncChannel in NetworkAgent" 2021-01-06 14:10:21 +00:00
lucaslin
ad369e30b7 Replace withCleanCallingIdentity with [clear|restore]CallingIdentity
To prevent using @hide method - withCleanCallingIdentity() from
mainline module, use clearCallingIdentity() &
restoreCallingIdentity() instead.

Bug: 172183305
Test: FrameworksNetTests, CtsNetTestCasesLatestSdk
Change-Id: Iccd492741a0a5b1c2531fc5fc1378933b65ae038
2020-12-30 11:54:55 +08:00
Remi NGUYEN VAN
96be83bccb Migrate away from AsyncChannel in NetworkAgent
Use two oneway binder interfaces instead.
The interfaces post messages to handlers as was implemented before, but
provide a more strictly defined interface, with less hops between
NetworkAgent, AsyncChannel, and ConnectivityService.

The actual public interface is the NetworkAgent @SystemApi: the binder
interface is an internal implementation detail.

Test: atest FrameworksNetTests CtsNetTestCasesLatestSdk
Bug: 173574274
Merged-In: Ie364ab50f416e7821e70f4539a881eea828e1256

Change-Id: Ie364ab50f416e7821e70f4539a881eea828e1256
2020-12-25 03:54:19 +00:00
Remi NGUYEN VAN
37ebfa827a Migrate away from AsyncChannel in NetworkAgent
Use two oneway binder interfaces instead.
The interfaces post messages to handlers as was implemented before, but
provide a more strictly defined interface, with less hops between
NetworkAgent, AsyncChannel, and ConnectivityService.

The actual public interface is the NetworkAgent @SystemApi: the binder
interface is an internal implementation detail.

Test: atest FrameworksNetTests CtsNetTestCasesLatestSdk
Change-Id: Ie364ab50f416e7821e70f4539a881eea828e1256
2020-12-23 17:30:54 +09:00
Remi NGUYEN VAN
852709e1cd Merge "Split NetworkUtils and NetworkUtilsInternal" am: caa437cae0 am: 15befc3d9e am: a0ac08e394
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513140

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ief9d6a1fae360dbe1c43d5d6bac4dad5850c004b
2020-12-23 02:22:35 +00:00
Remi NGUYEN VAN
caa437cae0 Merge "Split NetworkUtils and NetworkUtilsInternal" 2020-12-23 01:19:27 +00:00
Chiachang Wang
ebd47651f1 Merge "[IT03] Add replacement methods for network activity" am: 5cb10d24d0 am: 59dd3432f7 am: 4c7befb656
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1523338

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0da6d452e989f7a89e33230cabfdc89c1a49ce6d
2020-12-22 06:58:05 +00:00
Chalard Jean
e294449129 Merge "Move module utils to the module package." 2020-12-21 05:35:09 +00:00
Chiachang Wang
b4bba7179b [IT03] Add replacement methods for network activity
Reference for NMS in ConnectivityManager should be removed for
incoming CS mainline. The API for listening network activity
should not go into NMS. As an alternative, the registry requests
should be sent to CS and handled by CS. Add necessary alternative
in IConnectivityManger first. The detail implementation will be
added in the follow up commits.

Bug: 170598012
Test: m
Change-Id: If4d24b937feb88a61f22073af2f671cf20298364
2020-12-21 03:48:54 +00:00
Chalard Jean
fa159c1755 Move module utils to the module package.
Test: FrameworksWifiTest FrameworksNetTest
Change-Id: If5d1e4a58fb2d6d9544e6d01995dabe445cf1f25
Merged-In: I067eeecd458c34b7f2fbfa439072682661ac750c
2020-12-16 11:44:22 +09:00
Sarah Chin
cf44f2fe10 Move phone ID to extra for action provision
Previously, the phone ID was appended to the broadcast in DCT and sent
to ConnectivityManager. Instead of sending both as an action, send the
phone ID as an extra instead to make the action a protected broadcast.

Test: manually verify a SecurityException when action provision is sent
Test: atest DcTrackerTest
Bug: 172459128
Change-Id: Ic4129def86949d7191d15056852718dadbd72fba
Merged-In: Ic4129def86949d7191d15056852718dadbd72fba
2020-12-15 10:55:22 -08:00
Remi NGUYEN VAN
6ebd98efc1 Add TcpKeepalivePacketData to SystemApi am: 11511b31f6 am: 349ba03274 am: 7240fd9ea1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1494038

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I1aa9deefefcaf75959463e8a8a87bfeefb98f0ee
2020-12-15 11:42:19 +00:00
Sarah Chin
1be00b7b29 Merge "Move phone ID to extra for action provision" 2020-12-15 11:07:25 +00:00
Remi NGUYEN VAN
349ba03274 Add TcpKeepalivePacketData to SystemApi am: 11511b31f6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1494038

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibe3df65b4e12ecda5d95737f3b1ea18dabc2461d
2020-12-15 09:38:38 +00:00
Remi NGUYEN VAN
3a86e4690e Merge changes from topic "tcp_keepalive_fix"
* changes:
  Use API TcpKeepalivePacketData in ClientModeImpl
  Add TcpKeepalivePacketData to SystemApi
2020-12-15 09:02:55 +00:00
Chiachang Wang
9f994053b3 Merge "Remove hidden deprecated getActiveNetworkQuotaInfo" am: 6443bf4c41 am: 8413fe564e am: 53ffa8edac
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1527738

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3f3b1e288635d84e93115fddbbafb5321f55646e
2020-12-15 08:55:43 +00:00
Sarah Chin
cab74db6c0 Move phone ID to extra for action provision
Previously, the phone ID was appended to the broadcast in DCT and sent
to ConnectivityManager. Instead of sending both as an action, send the
phone ID as an extra instead to make the action a protected broadcast.

Test: manually verify a SecurityException when action provision is sent
Test: atest DcTrackerTest
Bug: 172459128
Change-Id: Ic4129def86949d7191d15056852718dadbd72fba
2020-12-15 00:25:01 -08:00
Chiachang Wang
6443bf4c41 Merge "Remove hidden deprecated getActiveNetworkQuotaInfo" 2020-12-15 07:02:54 +00:00
Chiachang Wang
7fe67c1961 Remove hidden deprecated getActiveNetworkQuotaInfo
getActiveNetworkQuotaInfo has never been in API surface since it
was introduced. It became essentially functionless since android O,
so there should be no usage dependency upon the hidden method,
In order to support ConnectivityService mainline, remove the
useless function to prevent necessary dependency.

Bug: 172183305
Test: atest FrameworksNetTests
Change-Id: Ia685b3260256d465ef614b2f577d13344074c787
2020-12-15 06:45:50 +00:00
Remi NGUYEN VAN
11511b31f6 Add TcpKeepalivePacketData to SystemApi
This is consistent with NattKeepalivePacketData, which is also a
subclass of KeepalivePacketData.

TcpKeepalivePacketData is already used by the wifi module, but
statically linked.

Bug: 172789687
Test: m
Change-Id: I6aee1ae205987521bea4a3838bbece279ffa0e37
2020-12-14 18:43:44 +09:00
Paul Hu
19606c6e32 Merge "Expose TcpRepairWindow as module-lib API" am: ec942a8e70 am: 3988f15290 am: 3bee0fbcc8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519961

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iae69946c88267eca4c350d902df0af50fca9de5b
2020-12-11 11:04:22 +00:00
Chalard Jean
d2c548d880 Merge changes from topic "remove_legacy_NA" am: 71ab824707 am: a698a47ada am: 7ba18da6b6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1456097

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If9cd6ce929a7103d2d6b7195a71ee64ea0a4ee0a
2020-12-11 11:03:36 +00:00
Paul Hu
ec942a8e70 Merge "Expose TcpRepairWindow as module-lib API" 2020-12-11 05:37:10 +00:00
Chalard Jean
71ab824707 Merge changes from topic "remove_legacy_NA"
* changes:
  Remove support for legacy network agents
  Remove deprecated constructors for NetworkAgent
  Migrate NetworkAgentWrapper to the new NA API
  Cleanup TestNetworkService
2020-12-11 02:32:57 +00:00
Lorenzo Colitti
358aeea9d3 Merge changes I6eb6d92b,I638e29fd,I2348b7a3 am: 0da448710c am: 3ff54c739f am: 5bbcd79710
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1521657

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I430d7069e1dfbe89780cb459fff9e1eb63daa349
2020-12-10 09:18:35 +00:00
Lorenzo Colitti
0da448710c Merge changes I6eb6d92b,I638e29fd,I2348b7a3
* changes:
  Add a convenience method to update a network's capabilities.
  Disallow NetworkAgents from changing the owner UID.
  Observe mOwnerUID in NetworkCapabilities#equals.
2020-12-10 08:11:52 +00:00
Serik Beketayev
8a826845a3 Merge "[Mainline Migration] Migrate NetworkUtils" am: 8339b3ded3 am: 59f81edbdb am: 402f439ac1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1498168

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Id0749108e03d88af0b8c50a36f1a4ca28b9a40ce
2020-12-10 01:05:32 +00:00
Lorenzo Colitti
cb9bbf2c80 Observe mOwnerUID in NetworkCapabilities#equals.
Currently, NetworkCapabilities's equals and hashCode methods
ignore mOwnerUID. This is confusing because it is inconsistent
with pretty much every other member of this class.

Bug: 175188445
Test: atest CtsNetTestCases:NetworkAgentTest \
            CtsNetTestCases:Ikev2VpnTest \
	    CtsNetTestCases:VpnServiceTest HostsideVpnTests \
	    CtsNetTestCases:android.net.cts.ConnectivityDiagnosticsManagerTest \
	    ConnectivityServiceTest com.android.server.connectivity.VpnTest
Change-Id: I2348b7a35f32a931687f2d3c2fa57620a12fe06f
2020-12-09 19:33:32 +09:00
paulhu
e4a2c6ad2e Expose TcpRepairWindow as module-lib API
Connectivity service is going to become a mainline module which
will not be able to access hidden APIs. TcpKeepaliveController
is a part of CS mainline module, it uses TcpRepairWindow to
store tcp repair window info. Thus, expose TcpRepairWindow as
module-lib API to support the usage.

Bug: 172183305
Test: atest FrameworksNetTests
Change-Id: I1b6f5ae698f4b6e030a0f776aeafc774fa9f1437
2020-12-09 08:25:13 +00:00
Chalard Jean
74c32e10ab Remove support for legacy network agents
Test: FrameworksNetTests NetworkStackTests
Bug: 167544279
Change-Id: Ia950e16d991cd08d4b609d71aad61a4a4f7fda39
2020-12-08 19:43:11 +09:00
Chalard Jean
855c9c8f88 Remove deprecated constructors for NetworkAgent
Finally.

Now that mLegacy is always false, removing the support
for legacy agents, a follow-up change will remove
the member and all the associated code.

Test: FrameworksNetTests NetworkStackTests
Bug: 167544279
Change-Id: I6e2c27facdd3ecc232a0aa32bf57c33cb06f118e
2020-12-08 19:43:11 +09:00
Remi NGUYEN VAN
689c673aab Split NetworkUtils and NetworkUtilsInternal
NetworkUtils is planned to move to a dedicated JAR for connectivity
classes, while NetworkUtilsInternal would stay in the
frameworks-minus-apex JAR, in the com.android.internal.net package.

Bug: 171540887
Test: m, boots, wifi working
      atest FrameworksNetTests
Change-Id: I3d38d72ad23a4bf84af823c7baeb6fed25c0665f
2020-12-07 19:41:49 +09:00
Serik Beketayev
88bf984e07 [Mainline Migration] Migrate NetworkUtils
Migrating makeStrings(), numericToInetAddress() APIs

Bug: 173089079
Test: atest FrameworksNetTests
Change-Id: Ie914fd41bc3ce16d07f5d2768b89ce805b9245a9
2020-12-06 22:33:04 -08:00
Remi NGUYEN VAN
1ce3ea3908 Merge "Use IPV6_MIN_MTU from NetworkConstants in Ikev2Vpn" am: ab2944488f am: 1ebf8bfe18 am: 0249d5b5fa
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1512879

Change-Id: Id415ecdbf1509b9c2e1b3e50bb716e7368f83dfc
2020-12-04 05:14:21 +00:00
Remi NGUYEN VAN
ab2944488f Merge "Use IPV6_MIN_MTU from NetworkConstants in Ikev2Vpn" 2020-12-04 02:05:01 +00:00
Remi NGUYEN VAN
f6271f533e Merge "Do not query CS in NetworkProvider constructor" am: 6a6e5f8479 am: 0d1b3960e8 am: bcd4d930bc
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1512873

Change-Id: I194f6fed28011702dd86676e5aa422129a903d9c
2020-12-03 03:47:02 +00:00
Remi NGUYEN VAN
6a6e5f8479 Merge "Do not query CS in NetworkProvider constructor" 2020-12-03 01:48:01 +00:00
Remi NGUYEN VAN
dffda33f86 Merge "Remove CaptivePortal deps on @hide MetricEvents" am: 465f25799c am: abbaff2736 am: 51dd9068c1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513141

Change-Id: Ic0f0be93d4610f47c80efb90fdd68858d70d0be8
2020-12-02 12:43:12 +00:00
Remi NGUYEN VAN
465f25799c Merge "Remove CaptivePortal deps on @hide MetricEvents" 2020-12-02 11:12:56 +00:00
Remi NGUYEN VAN
336220dce3 Merge "Add ConnectivityManager.TYPE_PROXY to SystemApi" am: 5dccc26e60 am: d38176e41a am: f073553dcf
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1512885

Change-Id: Ib51a3218d736ab905379f20fbb059bb97b2297ef
2020-12-02 10:55:57 +00:00
Remi NGUYEN VAN
5dccc26e60 Merge "Add ConnectivityManager.TYPE_PROXY to SystemApi" 2020-12-02 09:23:27 +00:00
Remi NGUYEN VAN
5f6285c9c7 Remove CaptivePortal deps on @hide MetricEvents
The legacy metrics are deprecated, and CaptivePortal is planned to move
to a connectivity-specific jar which cannot reference MetricsEvents.

Bug: 171540887
Test: m
Change-Id: I409375de3844a7fedef707cf9e19a106d82a8e3a
2020-12-02 13:17:09 +09:00
Lorenzo Colitti
c8f90ba551 Merge changes I982543cd,I41c3bf6c,Id3e5f6e1 am: 4fe79a3ff9 am: db7c229729 am: d5450e378b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1511316

Change-Id: I91ccdc9a5f4426d9c1623b869c0411b9af203c36
2020-11-30 15:05:48 +00:00
Remi NGUYEN VAN
daeafeef37 Add ConnectivityManager.TYPE_PROXY to SystemApi
This follows other TYPE_* constants like TYPE_WIFI_P2P that are
@SystemApi or public.
TYPE_PROXY has a use-case for the system to set network policies based
on proxy network templates. Although network types are deprecated, that
use-case needs to be supported and significant amounts of network
management would need to be rewritten to stop using network types.

The constant needs to be API as ConnectivityManager is planned to move
out of framework.jar, so only its formal API will be available to the
system server.

Bug: 174436414
Test: m
Change-Id: I266ed6bc59f5eb72302afe14472c93933733c8f8
2020-11-30 19:23:45 +09:00
Remi NGUYEN VAN
0b3d600ff6 Use IPV6_MIN_MTU from NetworkConstants in Ikev2Vpn
Instead of sharing the constant from LinkProperties, use the already
defined constant in the NetworkConstants class.

This allows Ikev2VpnProfile to allow depending on non-public
LinkProperties APIs, as LinkProperties is planned to move to
framework-connectivity.

Bug: 174436414
Test: m
Change-Id: I594bb7e81bc7681799c16eff621a5ffd1b29624c
2020-11-30 17:18:51 +09:00