Commit Graph

2795 Commits

Author SHA1 Message Date
Chris Weir
f8f291cb7b Add support for tracking PANS data usage
Adds support for tracking oemManagedNetwork types (OEM_PAID and
OEM_PRIVATE).

Bug: 174485293
Test: atest NetworkTemplateTest NetworkStatsCollectionTest
NetworkStatsObserversTest NetworkStatsServiceTest NetworkIdentityTest
Test: verify that the bytes go up in PansTest app only when
`ping -I eth2 8.8.8.8` is run as root.

Change-Id: I78660a835f16265ba8e44bb84332c6633dd72b84
2021-02-17 20:32:53 -08:00
Remi NGUYEN VAN
037a730efd Split parcelable .aidl files to aidl-export
The one-line "parcelable X" files need to be imported by targets that do
not build against SDK (the SDK has prebuilt definitions), so prepare a
dedicated directory for them.
This avoids having users of the classes include the whole src/
directory, which could contain definitions for classes that are not part
of the public API, so should not be imported.

Also move back to frameworks/base/core some .aidl definitions that
were separated from their associated class.

Bug: 171540887
Test: m
Merged-In: I7432fe4c87cd3cab04dcb6185c9a4f3f84376549
Change-Id: I7432fe4c87cd3cab04dcb6185c9a4f3f84376549
2021-02-18 01:17:04 +00:00
Yan Yan
488687d11f Merge changes Ifc8ad902,I6d1b8d0e am: 8d659bb1ec
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1453730

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I12bd81925142b20a04448952de67cb72d77b4ccd
2021-02-12 21:41:59 +00:00
Yan Yan
441e35f612 [API] Expose IpSecTunnelInterface#setUnderlyingNetwork
This API is required to perform MOBIKE. This API allows an IPsec
peer to change the underlying network of its established IPsec
tunnel without re-establishing the tunnel.

Bug: 169855650
Test: atest IpSecManagerTunnelTest (new tests added)
Change-Id: Ifc8ad902cbfbe4ad07e715f2fef0faa1bf9d68f3
2021-02-10 14:52:18 -08:00
Yan Yan
a2f3b49f10 Update underlying network of IpSecTunnelInterface
Bug: 169855650
Test: atest IpSecManagerTunnelTest
Change-Id: I6d1b8d0e49f89c67ddc2caf4ba63fb0b1eb062c0
2021-02-10 14:51:43 -08:00
Junyu Lai
ecb34129dc Merge changes from topic "removeNI" am: 5e1ec81e2f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1536707

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ia7c6e3bf8f10b98fc2c4d83d41e65c64737753f0
2021-02-09 04:26:28 +00:00
Junyu Lai
5e1ec81e2f Merge changes from topic "removeNI"
* changes:
  [FUI07] Stop making NetworkState with NetworkInfo from external callers
  [FUI06] Stop using NetworkInfo in NetworkState from external callers
2021-02-09 03:37:59 +00:00
junyulai
64b1cfb7db [FUI06] Stop using NetworkInfo in NetworkState from external callers
This is achieved by:
  1. Use legacy network type inside NetworkState to replace the
     needs of referencing NetworkInfo.getType().
  2. Let getAllNetworkState only return networks with isConnected()
     equals true. This allows callers such as NPMS or NSS does not
     have to reference to NetworkInfo.isConnected().

Test: atest FrameworksNetTests NetworkPolicyManagerServiceTest
Bug: 174123988
Change-Id: I1c4eb08d18ca973eb8f41d06258872eabc0006b8
2021-02-08 21:40:49 +08:00
lucaslin
d66e608a5d Remove unused INetworkManagementService from IpSecService
IpSecService is no longer using any methods of
INetworkManagementService, so remove it from IpSecService
and related files.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: I852e3a534e0ffd26b4b22420754f3ec8a6f153ad
2021-02-08 08:05:00 +00:00
lucaslin
ff6fe7ba53 Use NetdUtils instead of NetworkManagementService in IpSecService
NetdUtils has the same method(e.g. setInterfaceUp) as
NetworkManagementService so using the one inside NetdUtils instead
and try to remove NetworkManagementService from IpSecService in
the following commit.

Bug: 170598012
Test: atest FrameworksNetTests
Change-Id: I0ed8b0c678b067a655b51b938b6b40eadd985321
2021-02-08 16:01:56 +08:00
Treehugger Robot
e20d178f56 Merge "Add @Nullable to Object#equals()" am: 577fd4a912
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1574815

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I523eb00d30bfedeb6e7533a94868016171846a59
2021-02-05 10:01:23 +00:00
Roman Kalukiewicz
61a6c947ff Add @Nullable to Object#equals()
This is a partial cherry-pick of change:
I5eedb571c9d78862115dfdc5dae1cf2a35343580

for connectivity classes.

Bug: 170883422
Test: m
Merged-In: I5eedb571c9d78862115dfdc5dae1cf2a35343580
Change-Id: I7dc661863b73f4198ddb4f3a1566583d0f07db3c
2021-02-05 07:28:44 +00:00
Junyu Lai
21f732e67c Merge "[FUI21] Move scrubSubscriberId to utils class" am: f6c7f61d27
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1565195

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7afe5684997a5c47bcee269d2310fc61715ec13a
2021-02-03 09:36:38 +00:00
Junyu Lai
3a36e9affb Merge "[FUI20] Expose UnderlyingNetworkInfo as system Api" am: 75b50a5c73
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1563496

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Icbc3c9f8e1ac8064e2e006587b4d4870d74cee2d
2021-02-03 03:03:01 +00:00
junyulai
b17ea56d30 [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
005f79c2d7 [FUI20] Expose UnderlyingNetworkInfo as system Api
Test: atest android.net.UnderlyingNetworkInfoTest
Bug: 174123988
Change-Id: Id602fbe744669f472d27fb466d00dcc601bd8f17
2021-02-02 23:12:10 +08:00
Lorenzo Colitti
99c7e943ca Merge "Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"" am: 32141be3dd
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1564979

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I147a86d5252f29a88d3a0fdb5c27d4c101791e7c
2021-02-01 16:04:06 +00:00
Lorenzo Colitti
32141be3dd Merge "Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"" 2021-02-01 15:33:11 +00:00
Lorenzo Colitti
388f41621f Revert "Expose IPsec tunnel APIs from @SystemApi to public APIs"
This reverts commit 160aac3fa0.

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
Remi NGUYEN VAN
811b4c6ffc Merge "Move module sources to packages/Connectivity" am: 3d70ab73eb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1552656

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I42989abf6e81a4c0e7bed6b0890a1ee4f2c30191
2021-02-01 06:09:33 +00:00
Remi NGUYEN VAN
b71fc45e17 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
Junyu Lai
a109d80a47 Merge "[FUI04] Refactor VpnInfo" am: 561626b20d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1537211

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I59054bfe1761e28cdfb8e8e6d67e4aabda399adc
2021-01-29 22:55:54 +00:00
junyulai
0592b920cb [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
Treehugger Robot
9a9c17579a Merge "[FUI03] No-op refactoring of VpnInfo" am: f9dbe61693
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1547637

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iae15ffcf1fbf31ab004a36eb662f39e4439146d0
2021-01-27 13:11:28 +00:00
junyulai
67c69ad73f [FUI03] No-op refactoring of VpnInfo
As a preparation of exposing system API. This patch does some
harmless refactoring, which includes:
  1. Move VpnInfo to android.net
  2. Add nullability annotations
  3. Make members final

Bug: 174123988
Test: TH
Change-Id: I1530bb45d0e84c28c6deac33596bc686058afc0d
2021-01-27 15:03:06 +08:00
Chiachang Wang
569e241d5c Merge "Expose UdpEncapsulationSocket.getResourceId()" am: 8dc248c84a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1547642

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iabe3fe4ab7fcad9e8c3f7ad89a49d3d5b1a874ce
2021-01-27 05:22:15 +00:00
Chiachang Wang
a034331a56 Expose UdpEncapsulationSocket.getResourceId()
ConnectivityManager.createSocketKeepalive() will need to get
the socket resource ID as a parameter for creating a new
NattSocketKeepalive. ConnectivityManager is a part of incoming
ConnectivityService mainline, so expose getResourceId() as an
API since the hidden APIs are not accessible for a mainline
module. This API should not be exposed to apps, so make it a
MODULE_LIBRARIES system API.

Bug: 172183305
Test: make update-api
Change-Id: Ic0722352ea186fcb18a2d91cc3969f771fde9e86
2021-01-27 09:27:26 +08:00
Treehugger Robot
db887739f9 Merge changes I713bc2ec,Ib9ab07c9 am: 6fe4b878e5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1537264

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I27116d11a4a61c2ca76f687d8d47a4a973ae1e77
2021-01-26 13:49:20 +00:00
Treehugger Robot
6fe4b878e5 Merge changes I713bc2ec,Ib9ab07c9
* changes:
  [FUI05] Remove wimax data usage unit test
  [FUI14] Get SSID from NetworkCapabilities
2021-01-26 13:13:24 +00:00
Yan Yan
a1c981966e Merge "Expose IPsec tunnel APIs from @SystemApi to public APIs" am: 5b8a0c8d89
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1517517

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I274765b51f942562dbe5683c9339866a0f55d13f
2021-01-26 03:51:17 +00:00
junyulai
c44d11ccec [FUI14] Get SSID from NetworkCapabilities
This allows subsequent patches to remove the need of exposing
SSID in NetworkState.

Test: atest NetworkStatsServiceTest
Bug: 174123988
Change-Id: Ib9ab07c9610954c9a5de035a3aefbf6d0bb0b53b
2021-01-22 23:58:14 +08:00
Yan Yan
160aac3fa0 Expose IPsec tunnel APIs from @SystemApi to public APIs
Since IKE APIs to negotiate IPsec tunnel migration (MOBIKE) are
public, all IPsec tunnel APIs should also be public so that public
callers are able to create, manage and migrate IPsec tunnels

Bug: 174606949
Test: atest IpSecManagerTunnelTest
Change-Id: I86aec334cfc937953f9c2b411cc55862032aae4d
2021-01-21 10:45:24 -08:00
Treehugger Robot
84dee682ac Merge "Pivot network statistics to use DataInput/Output." am: 5b322f10be
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1540224

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I86021070223e8825ba19bd84946ef89b56dc3f35
2021-01-08 10:56:59 +00:00
Jeff Sharkey
1f69d15939 Pivot network statistics to use DataInput/Output.
Using these generalized interfaces is more flexible, since it enables
us to pivot the implementation being used internally.  In particular,
an upcoming CL will pivot them to use a more efficient alternative.

This is a no-op refactoring.

Bug: 176777285
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: Ibd4717174cf1f136e9d5d80172ecb6e493265306
2021-01-06 18:48:12 -07:00
Remi NGUYEN VAN
cf254d6cb3 Merge "Register ethernet listeners on specific Executors" am: be4248226c am: 9dd482d23b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513665

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3ca03d00b6ef646d055b49de4f0a3e5cf6cb992c
2020-12-28 08:21:06 +00:00
Remi NGUYEN VAN
9dd482d23b Merge "Register ethernet listeners on specific Executors" am: be4248226c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513665

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I2018d05f48c7977638808960e1d84fe57ee434a4
2020-12-28 07:41:53 +00:00
Remi NGUYEN VAN
be4248226c Merge "Register ethernet listeners on specific Executors" 2020-12-28 07:12:45 +00:00
Serik Beketayev
51c010aacd Merge "[Mainline] Migrate ProxyInfo" am: 3c3711dffd am: 9b3f669024
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1506616

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ica0e0965296e3bf843fa73fc6d687da6a9ae721d
2020-12-25 09:45:54 +00:00
Serik Beketayev
9b3f669024 Merge "[Mainline] Migrate ProxyInfo" am: 3c3711dffd
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1506616

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic839f183b48279532dcfb484818457a5372087b2
2020-12-25 09:21:03 +00:00
Baligh Uddin
feaf7a261e Merge "Migrate frameworks/base/wifi & frameworks/base/packages/OsuLogin" am: e41cd2917a am: 95d6ec4a52
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1533852

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ie2588d9be48b50d41aaf5a5440268bb377081242
2020-12-24 06:50:43 +00:00
Baligh Uddin
95d6ec4a52 Merge "Migrate frameworks/base/wifi & frameworks/base/packages/OsuLogin" am: e41cd2917a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1533852

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ief078339fcd28ea8899eceec6ec611429c30a2ae
2020-12-24 06:26:58 +00:00
Serik Beketayev
c809f6176b [Mainline] Migrate ProxyInfo
Bug: 173455434
Test: atest FrameworksNetTests
Change-Id: I924aed710b62a0c91b888a9e04ac2c90cdfd88d0
2020-12-23 22:15:51 -08:00
Baligh Uddin
67ba9e1d66 Migrate frameworks/base/wifi & frameworks/base/packages/OsuLogin
Migrate to packages/modules/Wifi.  This CL will be presubmit tested
once migration is complete.  This CL drops the code from
frameworks/base/wifi and migrated to packages/modules/Wifi.
Also adjusts visibility rules in frameworks/base/Android.bp
Bug: 137323948
Test: TH
Merged-In: I9031a37c84e17c2cf5c0552d1b33e8fd59216b92

Change-Id: I4ad80b1584f9f80dffed7786739b80f3aaf88cdc
2020-12-23 23:47:49 +00:00
Remi NGUYEN VAN
9c2a2705c7 Merge "Split NetworkUtils and NetworkUtilsInternal" am: 7adf0e84b8 am: d095d82c85
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513140

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7b2eae7f9988ae8fa8c858709cafc17c1420f4b7
2020-12-23 02:07:05 +00:00
Remi NGUYEN VAN
d095d82c85 Merge "Split NetworkUtils and NetworkUtilsInternal" am: 7adf0e84b8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513140

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iaa5503f829077f70803e2e865f58c6e4691d1a73
2020-12-23 01:37:12 +00:00
Remi NGUYEN VAN
7adf0e84b8 Merge "Split NetworkUtils and NetworkUtilsInternal" 2020-12-23 01:19:27 +00:00
Chalard Jean
cd5d9bd29e Merge "Move module utils to the module package." am: eeb7c450aa am: 07d2787724
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1406808

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Idb3306b246eb9cbe55352587dfd437e42b326b1f
2020-12-21 06:33:29 +00:00
Chalard Jean
07d2787724 Merge "Move module utils to the module package." am: eeb7c450aa
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1406808

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9c42945df36d94e4abdf073fac17141f3b23d034
2020-12-21 06:11:51 +00:00
Chalard Jean
1c1883133b Move module utils to the module package.
Test: FrameworksWifiTest FrameworksNetTest
Change-Id: If5d1e4a58fb2d6d9544e6d01995dabe445cf1f25
Merged-In: I067eeecd458c34b7f2fbfa439072682661ac750c
2020-12-16 11:44:22 +09:00
Remi NGUYEN VAN
55838a8292 Register ethernet listeners on specific Executors
Have users of EthernetManager#addListener specify an Executor instead of
running callbacks on ConnectivityThread.
For existing clients, run callbacks on the common BackgroundThread.

This change in behavior is fine because addListener is not an API, the
threading model in Q was to run callbacks on the looper of the thread
that first created EthernetManager (so there is already no guarantee on
which thread is used), and the only users are in Settings.

ConnectivityThread is moving to a connectivity-specific JAR, so it
should not be used by external classes.

Bug: 174436414
Test: Ethernet client / tethering working
      atest TetheringIntegrationTests
Change-Id: Ic9a959f89915329f79eeeaa0a210ad50811d1291
2020-12-15 17:57:32 +09:00