Commit Graph

5924 Commits

Author SHA1 Message Date
Junyu Lai
91d89b4880 Merge "[FUI21] Move scrubSubscriberId to utils class" am: f6c7f61d27 am: f0b03b1763 am: 582c042052
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1565195

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If957a1c5017ab9600bbdece527543885a17ed2aa
2021-02-03 10:25:20 +00:00
Junyu Lai
f6c7f61d27 Merge "[FUI21] Move scrubSubscriberId to utils class" 2021-02-03 08:52:17 +00:00
Junyu Lai
ea7f3662da Merge "[FUI20] Expose UnderlyingNetworkInfo as system Api" am: 75b50a5c73 am: ce1b075b2b am: 93af32819c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1563496

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ia294d4ec349db10f5486b27f733d4f6d223079bf
2021-02-03 04:32:04 +00:00
Junyu Lai
75b50a5c73 Merge "[FUI20] Expose UnderlyingNetworkInfo as system Api" 2021-02-03 02:57:10 +00:00
Cody Kesting
898e9466ea Merge changes from topic "vcn-network-policy" am: e980914d42 am: 8804aed91c am: a06b6244e8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1555540

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iae9c814702f08d49ade0c47fbd5e903aa9887037
2021-02-02 22:41:02 +00:00
Cody Kesting
e980914d42 Merge changes from topic "vcn-network-policy"
* changes:
  Implement Network policy in VcnManagementService.
  Unit test UnderlyingNetworkTracker.
  Register NetworkCallbacks in UnderlyingNetworkTracker.
2021-02-02 20:33:50 +00:00
Treehugger Robot
34becf1760 Merge "Update frameworks to use unbundled version of BouncyCastle." am: 19547685bb am: 36adf13e62 am: c3c1cd54e4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1559779

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iaf00137fbdfc3dacd99537f9f4e2da0ffbc9a844
2021-02-02 15:59:03 +00:00
junyulai
c59f67a79c [FUI21] Move scrubSubscriberId to utils class
This patch also removes the functionality of returning
original subscriberId in eng build since it is not really useful.

Test: atest NetworkIdentityUtilsTest
Bug: 174123988
Change-Id: I721457e571aa9403a2200b3e4261b4895e4f7a3e
2021-02-02 23:45:54 +08:00
junyulai
755356f449 [FUI20] Expose UnderlyingNetworkInfo as system Api
Test: atest android.net.UnderlyingNetworkInfoTest
Bug: 174123988
Change-Id: Id602fbe744669f472d27fb466d00dcc601bd8f17
2021-02-02 23:12:10 +08:00
Treehugger Robot
19547685bb Merge "Update frameworks to use unbundled version of BouncyCastle." 2021-02-02 14:37:05 +00:00
Cody Kesting
a382c9ca0c Register NetworkCallbacks in UnderlyingNetworkTracker.
This CL updates UnderlyingNetworkTracker to register NetworkCallbacks.
UnderlyingNetworkTracker uses two types of NetworkCallbacks:
  - bringup requests
  - selection requests

Bringup requests ensure that VCN-managed Networks are not reaped.
Separate bringup requests are filed for wifi and cell Networks. One cell
request is filed for each subscription ID (subId) in the VCN's
subscription group.

Selection requests are used to allow ConnectivityService to perform
Network selection for the VCN's selected underlying Network (the Network
that VCN traffic will be routed through).

Bug: 177364490
Test: atest FrameworksVcnTests
Change-Id: Ic4dc13a3f7acf08589ddb25b343af2677cd7cf65
2021-02-01 14:46:57 -08:00
Lorenzo Colitti
f353805511 Merge "Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"" am: 5a700b2725 am: f681bee340 am: 7720b1f3d9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1564979

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Id8e99aeefffddf88240cf5f1d7117e022242708f
2021-02-01 17:12:33 +00:00
Lorenzo Colitti
5a700b2725 Merge "Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"" 2021-02-01 15:33:11 +00:00
Lorenzo Colitti
f82ebd7451 Merge changes Idcc9e32c,I58769bb7 am: d4caba4daf am: 2425886baa am: 4cb54827a0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1552503

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3d15c00910467d51531a25c025efb491b446b6a4
2021-02-01 12:41:24 +00:00
Remi NGUYEN VAN
09119c2ceb resolve merge conflicts of 546e2e895f to sc-dev
Bug: None, merge conflict
Change-Id: Id07440d6a55111a1a7ddbf3df306f4466073fd1d
2021-02-01 11:29:28 +00:00
Lorenzo Colitti
d4caba4daf Merge changes Idcc9e32c,I58769bb7
* changes:
  Remove getFilteredNetworkState and add @NonNull in NetworkState.
  Add test coverage for get*NetworkInfo on metered networks.
2021-02-01 10:56:19 +00:00
Lorenzo Colitti
0053756e78 Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"
This reverts commit c92a798ee8.

Reason for revert: not necessary, since VCN already has access to system APIs

Bug: 174606949
Test: revert with no conflicts
Change-Id: Ife2d0fc08c540265d52cdf930d0b6df005990ac8
2021-02-01 08:13:32 +00:00
Lorenzo Colitti
d8cc12a87b Remove getFilteredNetworkState and add @NonNull in NetworkState.
getFilteredNetworkState is only used in two places, both of which
use only small parts of the NetworkState that is returned to
them. Remove the method and replace it with inline code in the
two callers. NetworkState is a fairly expensive object, and this
removes the need to perform lots of defensive copies of data that
the caller does not need.

Also remove the only call to the NetworkState constructor in
ConnectivityService. That leaves only one caller to the
NetworkState constructor, the one in NetworkAgentInfo. This
constructor is called with defensive copies of NetworkInfo,
LinkProperties, and NetworkCapabilities, so mark these three
parameters as @NonNull. It's also called with a non-null
Network, because NetworkAgentInfo is only constructed with
non-null Networks, so mark the network parameter @NonNull as
well.

In order to make the arguments in the NetworkState constructor
@NonNull, introduce a new constructor that sets everything to
null and make NetworkState.EMPTY call it.

Test: atest FrameworksNetTests
Change-Id: Idcc9e32c53533b0cf61494517e62d4c184fa7610
2021-02-01 16:12:04 +09:00
Remi NGUYEN VAN
a31d729863 Move module sources to packages/Connectivity
Files that are planned to be part of the connectivity module are grouped
in packages/Connectivity, so they can be built separately and moved in
one operation with their history into packages/modules/Connectivity.

This places the files in the existing framework-connectivity-sources
filegroup instead of the current framework-core-sources filegroup. Both
are used the same way in framework-non-updatable-sources.

Bug: 171540887
Test: m
Change-Id: I62d9d91574ace6f5c4624035d190260c3126b91e
2021-02-01 11:52:14 +09:00
Cody Kesting
6f8a8f06c4 Merge "Allow system components to request underlying network policies." am: ba04ef8481 am: 89a75849c2 am: 46309401db
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1533097

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I8ff2d79f5d35888cd4bae6742eb40035603c5eeb
2021-01-29 23:39:23 +00:00
Junyu Lai
9da313fbb4 Merge "[FUI16] Expose setSubscriberId in NetworkAgentConfig as system API" am: 6194d765d2 am: 1800e22426 am: 22745a5c44
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1556552

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If6e5747ccc97972a4c21058c600e72c5a3f3b61e
2021-01-29 23:38:56 +00:00
Junyu Lai
96ed3f6925 Merge "[FUI04] Refactor VpnInfo" am: 561626b20d am: 0824b59f74 am: 9e10a5a1ef
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1537211

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Icfa9918e41fc3f952a23956108df4db449741364
2021-01-29 23:38:06 +00:00
Junyu Lai
df209349c4 Merge "[VCN06] Support request background network" am: 7e0d8315d1 am: 5fa77ae82c am: 5ad75875bf
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1553866

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I50867bc7cb21eb134f20af9ef55c44c2bd8962e9
2021-01-29 23:36:41 +00:00
Lucas Lin
8600707574 Merge "Remove unused method from MatchAllNetworkSpecifier" am: 6a5d57c2ee am: 2de61be98e am: ef5f51a45b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1560475

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic11ea6619c7feebc8b7a52c253e6b13ab5981dd8
2021-01-29 23:36:02 +00:00
Cody Kesting
ba04ef8481 Merge "Allow system components to request underlying network policies." 2021-01-29 18:58:00 +00:00
Junyu Lai
6194d765d2 Merge "[FUI16] Expose setSubscriberId in NetworkAgentConfig as system API" 2021-01-29 17:15:28 +00:00
junyulai
0ee85f3bf8 [FUI16] Expose setSubscriberId in NetworkAgentConfig as system API
The wifi (mainline module) need to set the subscriberId for specific
wifi network.

Bug: 176396812
Test: TreeHugger
Change-Id: Ib568ce0c2d1b629e1c20e7ac8d8b78579cf4825c
2021-01-29 22:09:10 +08:00
Junyu Lai
561626b20d Merge "[FUI04] Refactor VpnInfo" 2021-01-29 13:54:53 +00:00
Junyu Lai
7e0d8315d1 Merge "[VCN06] Support request background network" 2021-01-29 11:02:02 +00:00
junyulai
d242947ae2 [FUI04] Refactor VpnInfo
As a preparation of exposing system API. This patch does some
harmless refactoring, which includes:
  1. Change raw arrays into lists according to API guidelines.
  2. Write test.
  3. Rename class to UnderlyingNetworkInfo.
  4. Rename vpnIface to iface.
  5. Make underlyingIfaces @NonNull in order to adapt new
     unparceling code.
  6. implement equals and hashCode for testing.

Test: atest android.net.UnderlyingNetworkInfoTest
Bug: 174123988

Change-Id: I405c21e57c4af8a12a9dd0a1749b9e6690f87045
2021-01-29 17:44:32 +08:00
Junyu Lai
15f4a9cd7c [VCN06] Support request background network
This will be mainly used by VCN management service which will
need to hold the networks but preserve the backgrounded-ness
of the networks.

Test: android.net.ConnectivityManagerTest#testRequestType
Test: android.net.cts.ConnectivityManagerTest#testRequestBackgroundNetwork /
      --rerun-until-failure 100
Test: ConnectivityServiceTest#testBackgroundNetworks
Test: m -j doc-comment-check-docs
Bug: 175662146

Change-Id: I463c7a3139a286e50ea71e674060975ce228caa9
2021-01-29 14:42:32 +08:00
Cody Kesting
7de2e8443c Allow system components to request underlying network policies.
This CL updates VcnManager to allow system components with permission
NETWORK_FACTORY to request the current VcnUnderlingNetworkPolicy for a
specific Network's NetworkCapabilities and LinkProperties.

Bug: 175900686
Test: atest FrameworksVcnTests
Change-Id: I16416e619bdb03630582f5660260b0090730e9eb
2021-01-28 19:38:06 -08:00
Lucas Lin
6a5d57c2ee Merge "Remove unused method from MatchAllNetworkSpecifier" 2021-01-29 02:47:00 +00:00
Junyu Lai
26c41600a4 Merge "[VCN01] Add NOT_VCN_MANAGED capability" am: ce07556044 am: 6373b3b084 am: 8062b53a7c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1549897

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ide501fcf659637c0ec175d3f6f5926c2482734e0
2021-01-28 14:58:38 +00:00
Junyu Lai
ce07556044 Merge "[VCN01] Add NOT_VCN_MANAGED capability" 2021-01-28 13:04:59 +00:00
Chiachang Wang
9fe5db2fd8 Merge "Replace hidden getFileDescriptor$()" am: 842319b819 am: 4b2d4e4e3b am: 9bb7ef7bd2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1553966

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iebc2b32fa7ed14b5326ec7649831fbc8e08b1e9d
2021-01-28 08:06:05 +00:00
Daulet Zhanguzin
59444d5be7 Update frameworks to use unbundled version of BouncyCastle.
Previously BouncyCastle methods were exposed as libcore APIs (@CorePlatformApi), which no longer possible when ART is updatable module (and can't guarantee BouncyCastle API stability)

Bug: 154796679
Test: Treehugger

Change-Id: I908681841a6766de88761767c77c4e2d4b5f56d5
2021-01-28 07:51:22 +00:00
Chiachang Wang
842319b819 Merge "Replace hidden getFileDescriptor$()" 2021-01-28 06:36:11 +00:00
Lucas Lin
09454b278b Merge "Use createStringArray instead of readStringArray" am: 66cd788d4e am: 9a1b958e67 am: d19a5eace9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1559093

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I743f07815b4d2d112d0f8bbeb9d313f6f3d3a8e0
2021-01-28 05:33:07 +00:00
Lucas Lin
65fd64d494 Merge "Check if NetworkSpecifier is an instance of MatchAllNetworkSpecifier" am: ec3f650de7 am: b82753716e am: dbc70f90c7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1556546

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I1f7bafc63926c7c68c7c3cdd13069234487888fa
2021-01-28 05:32:36 +00:00
lucaslin
31d270a4d7 Use createStringArray instead of readStringArray
To prevent ProxyInfo calling hidden API, use public one -
Parcel#createStringArray() instead.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: I1a5376872d743e1863982bb95d579aeba7159d33
2021-01-28 04:03:59 +00:00
Lucas Lin
ec3f650de7 Merge "Check if NetworkSpecifier is an instance of MatchAllNetworkSpecifier" 2021-01-28 04:01:49 +00:00
Chiachang Wang
b219ee2cde Replace hidden getFileDescriptor$()
It's the preparation for the incoming ConnectivityService
mainline. The mainline modules can not access hidden APIs.
Thus, the hidden APIs usage should be removed.

The getFileDescriptor$() in Socket or DatagramSocket is
hidden for internal usage. It should be used in a module and
not prefer to expose as an API. Thus, replace it with
ParcelFileDescriptor APIs to get the fd via
ParcelFileDescriptor.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: I05b31a48315e7e6d95e22123103e544a7136a449
2021-01-28 11:33:13 +08:00
Treehugger Robot
f5c35bcfa7 Merge "[FUI03] No-op refactoring of VpnInfo" am: f9dbe61693 am: b0989fd2d2 am: 046ebf41b7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1547637

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I05e6b14fca44919610317831c147413b0a431224
2021-01-27 14:16:00 +00:00
lucaslin
63ff5c3b51 Remove unused method from MatchAllNetworkSpecifier
checkNotMatchAllNetworkSpecifier is a hidden method inside
MatchAllNetworkSpecifier, and the callers have implemented
the logic by themselves to prevent calling hidden method.
Remove it because there is no one using it.

Bug: 172183305
Test: atest FrameworksNetTests
Change-Id: I22a3a99f2b4ec6f4b57ef8867b72d48db2f0c1f6
2021-01-27 17:17:36 +08:00
Junyu Lai
a125e1a6cc [VCN01] Add NOT_VCN_MANAGED capability
Add new capability to indicate whether a network is
managed by Virtual Carrier Network (VCN). This is needed
to identify networks between VCN managed network and
others. And this capability will be:
  1. mutable
  2. requestable
  3. set by default for network agents and requests
  4. allowed for test networks

Note that this commit is identical to aosp/1529959 except the
capability remains hidden to address the javadoc problem first.
And this CL also needs to be bound with the counter part change
to prevent build breakage.

Test: 1. atest FrameworksNetTests CtsNetTestCases
      2. adb shell dumpsys connectivity
      3. atest ConnectivityServiceTest#testLoseMutableAndRequestableCaps
Bug: 175662146

Change-Id: I37a6f492c2aba72836e36851b50b67398f8bdd36
2021-01-27 16:13:01 +08:00
Chiachang Wang
686fa2e950 Merge "Expose UdpEncapsulationSocket.getResourceId()" am: 8dc248c84a am: 18896c83ed am: 14dfb0cfe7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1547642

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I67420def56b12c3008daaa001b8f09680439d940
2021-01-27 08:05:05 +00:00
Chiachang Wang
0df3d8876c Merge "Update jni to get int descriptor in native layer" am: 1bd8cd59a5 am: e1874186ba am: 54e430d69a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1553967

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibc0ac9def6a0a05658235b61f36ef8829906c341
2021-01-27 08:04:37 +00:00
Benedict Wong
b8a7476bb7 Merge "Prep VCN files for exposing APIs" am: f0aa57318d am: 278b748966 am: 78e931383c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1554718

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7f018bfe94e7e020bcf262dae70687ded56d222e
2021-01-27 08:04:08 +00:00
Treehugger Robot
3827e8c95e Merge changes I713bc2ec,Ib9ab07c9 am: 3795a7d1d2 am: d8b7ab2076 am: 2d6430198c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1537264

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I4b291a4e82b89d3808e9bcd980d5b2aa4d2b1b71
2021-01-27 07:53:30 +00:00