Commit Graph

93127 Commits

Author SHA1 Message Date
markchien
d42fca678e Replace TcpSocketInfo with similar structure
Replace TcpSocketInfo with TcpKeepalivePacketDataParcelable
because their structures are very similar.

bug: 128882321
Test: -build, flash, boot
      -FrameworksNetTests

Change-Id: Iafb4031a64ba4775a495c156e2c997d890c6b261
2019-03-20 22:29:48 +08:00
Lorenzo Colitti
74867d1661 Merge changes from topic "framework-no-networkstack-aidl"
* changes:
  Remove the framework dependency on netd_aidl_parcelables-java.
  Move TcpKeepalivePacketData out of the framework.
  Stop using netd parcelables in the framework.
2019-03-20 09:45:37 +00:00
Remi NGUYEN VAN
31e3f2e734 Merge "Add documentation for CaptivePortal APP_RETURN_*" 2019-03-20 05:40:41 +00:00
Remi NGUYEN VAN
cea27f4327 Merge "Add Parcelable implementation for ApfCapabilities" 2019-03-20 00:34:53 +00:00
Lorenzo Colitti
a3f811a547 Move TcpKeepalivePacketData out of the framework.
This class is not used in framework.jar, only in services.jar.
Move it out of the framework so framework.jar can stop depending
on the NetworkStack stable AIDL interfaces.

This should really under com.android.server as well, but that's
a cross-project change to be done in another CL.

Test: m
Bug: 128804404
Change-Id: Ib2805f7fcc516a5f6989c252365d1c95b8042703
Merged-In: Ib2805f7fcc516a5f6989c252365d1c95b8042703
2019-03-20 08:56:31 +09:00
Lorenzo Colitti
b90ad24f99 Stop using netd parcelables in the framework.
The only actual users of these classes are in services.jar, not
in frameworks.jar. The only reason the framework depends on them
is that the code that converts to and from stable parcelables is
currently in the framework. Move that code to services and cut
the dependency.

These classes aren't used in the networkstack app so they don't
need to be in shared. They also can't be in shared because the
classes are not in the SDK. So put the conversion functions
directly inside their only user (NetworkManagementService).

Also remove the jarjar rules that rename the classes for use by
the NetworkStack app.

This does not actually remove the dependency from the build file,
that will be done in a future CL.

Bug: 128804404
Test: builds, boots
Test: atest FrameworksNetTests android.net.cts.ConnectivityManagerTest HostsideVpnTests
Change-Id: I027d50ba56091f5558f45e6e08f32e5912b2a82a
Merged-In: I027d50ba56091f5558f45e6e08f32e5912b2a82a
2019-03-20 08:56:24 +09:00
Andreas Gampe
f039816600 Merge "Zygote: Load system server code early" 2019-03-19 21:37:38 +00:00
Treehugger Robot
62e041a6dd Merge "Add uid information in PackageListObserver" 2019-03-19 21:19:16 +00:00
Andreas Gampe
6b6f96de15 Zygote: Load system server code early
In an effort to allow loading integrity-checked artifacts from
the dalvik-cache, attempt to create and cache the system server's
classloader early, while still being in the system_server_startup
selinux domain.

The advantage of this approach is that allowances for loading
from the cache are restricted to startup.

Bug: 128688902
Test: m
Test: Device boots, picks up /system artifacts
Test: Device boots, picks up integrity-checked /data artifacts
Merged-In: If4a75fa106db09f1bd666d6d8df7ac3ac3e35a8c
Change-Id: If4a75fa106db09f1bd666d6d8df7ac3ac3e35a8c
2019-03-19 10:41:32 -07:00
Treehugger Robot
289759e0d2 Merge "Add unit tests related to data accounting for VPNs with one underlying network." 2019-03-19 16:18:28 +00:00
Treehugger Robot
856ef55672 Merge "Mark product apks as unbundled" 2019-03-19 14:02:59 +00:00
Xiao Ma
93bf5ef495 Merge "Move the IpMemoryStore to the network stack." 2019-03-19 13:21:12 +00:00
Remi NGUYEN VAN
e501d2ab23 Add documentation for CaptivePortal APP_RETURN_*
This fixes API review requests.

Test: atest FrameworksNetTests NetworkStackTests
Bug: 126883311
Change-Id: I0632a98675e65c5e722e81a2c1e0cf1403b54395
2019-03-19 18:57:44 +09:00
Remi NGUYEN VAN
4a66729cfe Merge "Fix API for SocketUtils" 2019-03-19 08:08:50 +00:00
Luke Huang
2656b3d4cc Merge "Replace Handler with Executor for async DNS API" 2019-03-19 05:35:39 +00:00
Luke Huang
f1d0fd2642 Merge "Refactor answer callback for async DNS query JAVA API" 2019-03-19 05:35:18 +00:00
Mark Chien
36459170a7 Merge "Remove deprecated entitlement API" 2019-03-19 02:44:37 +00:00
Chenbo Feng
14981f31ed Add uid information in PackageListObserver
The uid information of a removed package cannot be retrieved by the
packageName anymore once it is removed. So it would be useful to provide
the uid of removed package in the onPackageAdded and onPackageRemoved
method of the PackageListObserver. This modification helps simplify the
design in PermissionMonitor.

Bug: 125396053
Test: dumpsys netd trafficcontroller

Exempt-From-Owner-Approval: Already merged in internal master
Merged-In: I2bd4bdf924687960a4fa3a47235bae68d885e445
Change-Id: I2bd4bdf924687960a4fa3a47235bae68d885e445
2019-03-18 19:32:29 -07:00
Lorenzo Colitti
bbfee2b427 Merge "Address API review comments for VPN changes." 2019-03-19 02:16:58 +00:00
Treehugger Robot
f6b3f6a8d8 Merge "Cleanup annontations for Hearing Aids Profile API" 2019-03-18 19:57:50 +00:00
Pavel Grafov
50d17cfa07 Address API review comments for VPN changes.
Whitelist is now a Set rather than a list + javadoc improvement.

Bug: 124882903
Bug: 125346147
Test: atest MixedDeviceOwnerTest#testAlwaysOnVpn
Test: atest MixedDeviceOwnerTest#testAlwaysOnVpnAcrossReboot
Change-Id: Ieecaad083f2ab55de33587e6ce767f5f961683c9
2019-03-18 17:05:55 +00:00
Andrei Onea
dcb67738f6 Add @UnsupportedAppUsage annotations
For packages:
  android.os

This is an automatically generated CL. See go/UnsupportedAppUsage
for more details.

Exempted-From-Owner-Approval: Mechanical changes to the codebase
which have been approved by Android API council and announced on
android-eng@

Bug: 110868826
Test: m
Merged-In: I4ece0a3f37f88fc2508cb965092aed7cabc61819
Change-Id: I0d942254f06c1a355fb906640e223ad34cced6ab
2019-03-18 12:04:18 +00:00
Remi NGUYEN VAN
5156902853 Fix API for SocketUtils
Addresses API review comments:
 - @NonNull on return values
 - short -> int for makePacketSocketAddress
 - Set class final while we're at it

Bug: 126700257
Test: m
Change-Id: I3b1775feee22b1e337b3e4e7a2ad16b28e305b67
2019-03-18 12:41:49 +09:00
Chalard Jean
952135122d Move the IpMemoryStore to the network stack.
Test: atest FrameworksNetTests
Change-Id: Ic5bd6ff54b09a6fa92b6863f240a5b053011acb6
2019-03-18 11:33:17 +09:00
Remi NGUYEN VAN
205886d28f Merge "Remove NetworkParcelable" 2019-03-18 01:30:25 +00:00
Remi NGUYEN VAN
1a1396070e Merge "Remove aidl wrappers for framework parcelables" 2019-03-18 01:30:01 +00:00
Luke Huang
e4c7913f62 Replace Handler with Executor for async DNS API
Bug: 124882626
Test: built, flashed, booted
      atest DnsResolverTest DnsPacketTest

Change-Id: Ie1dc27643d4767f2a8a39da755edf388a00962d5
2019-03-16 18:53:07 +08:00
Luke Huang
304491dba8 Refactor answer callback for async DNS query JAVA API
1. refactor AnswerCallback with a generic type
2. support onError in AnswerCallback
3. Fix minor problem reported from API Review

Bug: 124882626
Test: built, flashed, booted
      atest DnsResolverTest DnsPacketTest

Change-Id: I685c9989f8401acb63d2e83f552b2d5b20c41af0
2019-03-16 18:53:05 +08:00
Treehugger Robot
c4e2b24d87 Merge "ParcelFileDescriptor: improve javadoc." 2019-03-16 02:36:30 +00:00
Varun Anand
472b9262c1 Add unit tests related to data accounting for VPNs with one underlying
network.

This is to establish a baseline for the existing behavior, and to ensure
that following changes are not causing a regression in existing
behavior.

This CL is also adding missing cleanup for NetworkStatsCollectionTest
which was forcing all network types in NetworkTemplate that was causing
NetworkStatsService related tests to fail.

Bug: 113122541
Bug: 120145746
Test: atest FrameworksNetTests
Change-Id: I285f186cfb16bc9fa704c797996b1e4f8a73dee4
2019-03-15 17:23:28 -07:00
Stanley Tng
7f3b781bfa Cleanup annontations for Hearing Aids Profile API
Remove the @UnsupportedAppUsage and add the @IntDef for the Profile
Connection States in the Hearing Aids Profile API. Also, the parent
class BluetoothProfile has its Profile Connection States annontated.

Bug: 128523382
Test: Compile only
Change-Id: Ibd02516fa637ddb48d70a8dfacf607f047aec282
2019-03-16 00:22:34 +00:00
Fan Zhang
16eab7c16d Merge "Update feature flag mapping owners" 2019-03-15 19:12:37 +00:00
Remi NGUYEN VAN
904a38be5e Remove NetworkParcelable
With the @JavaOnlyStableParcelable annotation, Network can now be used
as-is as a framework parcelable.

Test: atest FrameworksNetTests NetworkStackTests
Bug: 126477266
Change-Id: I5d9695a31b3ac48d10edcf08ccd0c34375353b79
2019-03-16 03:51:09 +09:00
Remi NGUYEN VAN
e80be85790 Remove aidl wrappers for framework parcelables
The new @JavaOnlyStableParcelable annotation allows using the framework
parcelables directly, which removes a lot of boilerplate.

Includes new copy constructors for IpPrefix and LinkAddress so they can
be copied easily as-is into parcelables.

Test: atest FrameworksNetTests
Test: booted, WiFi works
Bug: 126477266

Change-Id: Icac8afe498d0b5ebf9a0d0b9eceb14d64a29b381
2019-03-16 03:50:58 +09:00
Benedict Wong
b86c3255fd Merge "Integrate testNetworkService and Manager with Connectivity stack" 2019-03-15 17:41:02 +00:00
Treehugger Robot
cae221acac Merge changes I39e84219,I8d0e12cb
* changes:
  Bugreporting API: Take ownership of fds.
  Don't manage dumpstate lifecycle from system server
2019-03-15 10:28:06 +00:00
markchien
846e49943d Remove deprecated entitlement API
The deprecated entitlement APIs[1] is introduced in the Q
development cycle. It should be replaced by new APIs[2][3].

[1] https://android-review.googlesource.com/c/platform/frameworks/base/+/874220
[2] https://android-review.googlesource.com/c/platform/frameworks/base/+/920354
[3] https://android-review.googlesource.com/c/platform/frameworks/base/+/927513

Test: -build, flash, boot
bug: 126701557
bug: 126392011
Change-Id: I96487e9038c07363680a76db840994719d7ff768
2019-03-15 09:03:50 +00:00
Junyu Lai
f9ae70a41c Merge "[KA02.5] Use binder thread and executor to invoke callback" 2019-03-15 07:35:27 +00:00
Remi NGUYEN VAN
3ac239292c Add Parcelable implementation for ApfCapabilities
This is necessary to allow usage of ApfCapabilities as-is in AIDL,
instead of relying on ApfCapabilitiesParcelable, assuming that stable
AIDL starts allowing usage of @SystemApi classes. The Parcelable
implementation would be convenient for clients in any case.

Bug: 126477266
Test: atest FrameworksNetTests
Change-Id: Id2ef3cad261832a2918ccb6bb6bc154d99d75746
2019-03-15 13:41:59 +09:00
Fan Zhang
bfa1f876e8 Update feature flag mapping owners
Test: rebuild

Change-Id: I288e039ffaf88ce271ba17bcc26f0e038314b354
2019-03-14 16:26:05 -07:00
Deqiang Chen
2a1bdd2429 Merge "Avoid IllegalArgumentException when bluetooth is disabled" 2019-03-14 22:23:18 +00:00
Nandana Dutt
9d6ff2968e Bugreporting API: Take ownership of fds.
BUG: 126434607
FIXES: 127649051
Test: manual
Change-Id: I39e8421925c53061b6bc2954dffe3bccb7b3314d
2019-03-14 16:16:33 +00:00
junyulai
7c469179ce [KA02.5] Use binder thread and executor to invoke callback
Currently, client side of keepalive event handling rely on a
newly created thread, looper, messenger and handler per object.

However, by creating oneway AIDL interface with the executor,
the callbacks can be invoked on the binder thread with user
specified context, which not only greatly simplify the design
but also reduce the cost of current thread modeling.

Bug: 114151147
Bug: 123969871
Test: 1. atest FrameworksNetTests --generate-new-metric 10
      2. atest-deflake.sh

Change-Id: I27504074cd28d5b5eb94a7ec0e97ebaaaaa1ae3d
2019-03-14 19:24:12 +08:00
Treehugger Robot
17492d0691 Merge "Add a whitelist to control packages that can use Bugreporting API" 2019-03-14 10:13:32 +00:00
Kiyoung Kim
dd6861e6ff Mark product apks as unbundled
Similar to Vendor apks, we need to mark product apks as unbundled if it
does not have /product/lib in default search paths. This will enable
native loader's logic to add (/system)/product/lib in search path for
product apk.

Bug: 124705551
Test: m -j & Tested from crosshatch
Change-Id: Ib0ac4bbc1c60ca75288cac81f6b93bb8b36521ef
2019-03-14 11:17:56 +09:00
Nikita Ioffe
ee4d7be219 Add a whitelist to control packages that can use Bugreporting API
Test: checked SecurityException is thrown for my custom app
Test: whiltelisted my custom app, checked no SecurityException is thrown
Bug: 126541701
Change-Id: Id0b61ccc1adf40bcb455d3b59b640f4b160bdd84
Merged-In: Id0b61ccc1adf40bcb455d3b59b640f4b160bdd84
(cherry picked from commit 07964b49ac)
2019-03-13 17:01:56 +00:00
Steven Moreland
5a490d4bb7 Merge changes from topic "hidl-updater-system"
* changes:
  pm: AndroidHidlUpdater: system only
  pm: PackageBackwardCompatibility -> applyPolicy
2019-03-13 16:51:30 +00:00
Treehugger Robot
a018254b45 Merge "Add Nullable annotation to getDecorView" 2019-03-13 16:09:00 +00:00
Nandana Dutt
be80e309ea Don't manage dumpstate lifecycle from system server
Dumpstate now exits correctly when it's finished. So we don't have to
manage its lifecycle from system server.

BUG: 123571915
Test: manually verified dumpstate service dies
Change-Id: I8d0e12cb607cda74b5cc36e26306ea106da67ba3
2019-03-13 15:19:55 +00:00
Treehugger Robot
2e44838064 Merge "Clean up bugreport API." 2019-03-13 14:07:43 +00:00