Commit Graph

3897 Commits

Author SHA1 Message Date
Treehugger Robot
021ea66aea Merge "Use SystemApi framework parcelables directly" 2019-03-27 02:55:15 +00:00
Remi NGUYEN VAN
266868246a Use SystemApi framework parcelables directly
Remove StaticIpConfigurationParcelable and ApfCapabilitiesParcelable and
use StaticIpConfiguration and ApfCapabilities directly.
These two classes are SystemApi and defined in framework.jar, so no
stability guarantee is needed: the parceled and unparceled class will
always be the framework.jar version.

Bug: 126477266
Fixes: 126477266
Test: atest FrameworksNetTests NetworkStackTests
Test: flashed, booted, WiFi and captive portal works.
Change-Id: Iaf80ae23e003752cc6d2300700021931923b6533
2019-03-26 12:05:27 +09:00
Treehugger Robot
a1ee1fc888 Merge "Add nullability annotations" 2019-03-25 13:19:19 +00:00
Junyu Lai
8324c3e7e5 Merge "Fix SocketKeepalive APIs which do not meet API review requirement" 2019-03-25 10:42:37 +00:00
junyulai
0c66697770 Fix SocketKeepalive APIs which do not meet API review requirement
Per API review, change the use of FileDescriptor to
ParcelFileDescriptor.
This change also fix nullability according to API review
feedbacks.

Fix: 126698610
Fix: 126699425
Fix: 126699232
Fix: 126700278

Test: 1. m -j
      2. atest FrameworksNetTests --generate-new-metrics 50
      3. m -j doc-comment-check-docs
Change-Id: I19476c50dd1ca290bf3f41973829da2bd229796a
2019-03-25 15:56:35 +08:00
Remi NGUYEN VAN
45ecef3b4c Add nullability annotations
Add nullability annotations on the following methods:
 - StaticIpConfiguration#getRoutes
 - ValidationProbeEvent#getProbeName

Test: m
Bug: 128935825
Change-Id: I1c17d200f3125e684c4e4d67b2f7f079eda310b6
2019-03-25 16:46:34 +09:00
Remi NGUYEN VAN
bcd3bed561 Merge "Separate NetworkMonitor/framework portal URL" 2019-03-25 02:50:37 +00:00
Treehugger Robot
3c959339ae Merge "Fix API in CaptivePortal and ConnectivityManager" 2019-03-25 02:37:28 +00:00
Remi NGUYEN VAN
e2365d6644 Fix API in CaptivePortal and ConnectivityManager
- Remove CaptivePortal constructor from SystemApi. This constructor was
   added in Q timeframe and ends up being unnecessary since
   CaptivePortal creation was refactored to ConnectivityService because
   of visibility issues on ICaptivePortal.
 - Rename getAvoidBadWifi to shouldAvoidBadWifi
 - Add permission annotation for shouldAvoidBadWifi

(already merged in internal as:
I09545c00af3519dbf141dd5951b28f49e37b3e80)

Test: flashed, WiFi and captive portal works
Bug: 128935314
Bug: 128935673
Merged-In: I09545c00af3519dbf141dd5951b28f49e37b3e80
Change-Id: I7395d4a4db6a64398a827692aee1956c011873e5
2019-03-25 01:43:48 +00:00
Remi NGUYEN VAN
ed2e54a521 Merge "Refactor DhcpErrorEvent error codes" 2019-03-25 01:33:59 +00:00
Andrei Onea
fbc8cfdc94 Add @UnsupportedAppUsage annotations
For packages:
  android.companion
  android.filterfw
  android.hardware.camera2.utils
  android.inputmethodservice
  android.net.nsd
  android.os
  android.preference
  android.security.keymaster
  android.service.dreams
  android.telecom
  android.telephony.ims.compat.feature
  android.telephony
  android.util
  android.view.accessibility
  android.media.effect

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: I9c2f8347952f3cc65759472b0e1a2717b285e44e
Change-Id: I14793863cf815fa3383fec6c6bf5a9365c2e17eb
2019-03-22 11:43:11 +00:00
Remi NGUYEN VAN
c32d602c9c Refactor DhcpErrorEvent error codes
Addresses review comments on aosp/930843. The new format is more
concise.

Resulting constant values are unchanged as demonstrated by the absence
of change in the API file.

Test: m
Change-Id: I2e086c0411bce1d5b528de50b59dcf51e390681f
2019-03-22 15:45:04 +09:00
Remi NGUYEN VAN
0bd294cd55 Separate NetworkMonitor/framework portal URL
The framework cannot return URLs used by the updatable NetworkStack,
which may use configurable URLs, changing URLs, or mechanisms not
involving URLs to detect captive portals. NetworkMonitor has already
been using random fallback URLs for a while that do not match the value
returned by ConnectivityManager#getCaptivePortalServerUrl.

With this change, the default value returned by the framework is
configured in framework resources as
config_networkDefaultCaptivePortalServerUrl. NetworkMonitor behavior may
change as it is an updatable component, but the current URL is
configured in NetworkMonitor resources as
config_captive_portal_http_url.

Test: flashed, booted, WiFi and captive portal working
Test: ConnectivityManager#getCaptivePortalServerUrl returns correct
      value.
Bug: 127908503
Change-Id: I371dedc5b22efa909d7fd58e1ebe9b8aaced9780
2019-03-22 15:11:14 +09:00
Luke Huang
aed6ea52de Merge "Support query cancellation for async DNS API" 2019-03-22 03:26:21 +00:00
Lorenzo Colitti
0c089bcc82 Merge changes I2e8c2ad9,Ic4f4c7d2
* changes:
  Move the networkstack AIDL interfaces to services/net.
  Remove the framework dependency on networkstack-aidl-framework.
2019-03-22 00:23:22 +00:00
Paul Hu
43c1ade661 Merge "Fix Automated API Review issues." 2019-03-21 17:19:26 +00:00
Lorenzo Colitti
306e8cd9e7 Move the networkstack AIDL interfaces to services/net.
Nothing in the framework uses these, so there is no point in
having the build be in frameworks/base/Android.bp.

Fix: 128804404
Test: builds, boots
Test: atest FrameworksNetTests
Change-Id: I2e8c2ad9ea8bfcd3668a83e4c044de10389a8a22
2019-03-21 23:23:57 +09:00
Paul Hu
814bb8f627 Merge "Fix Automated API Review issues." 2019-03-21 14:11:36 +00:00
Remi NGUYEN VAN
5803191975 Merge "Define DhcpErrorEvent constants at compile time" 2019-03-21 13:57:18 +00:00
Mark Chien
a34aa2acab Merge "Replace TcpSocketInfo with similar structure" 2019-03-21 12:02:54 +00:00
paulhu
79b380cfe7 Fix Automated API Review issues.
These API's argument/return value must be marked either @NonNull
or @Nullable.

Bug: 126701148
Bug: 126699090
Bug: 126701058
Bug: 126700772
Bug: 126699941
Bug: 126701299
Bug: 126700007
Bug: 126700900
Test: atest FrameworksNetTests
Change-Id: Id030a9f1116178b96aa3d4614b10969a537b2fc4
2019-03-21 15:16:58 +08:00
paulhu
d9736de38b Fix Automated API Review issues.
1. Some API's argument/return value must be marked either
@NonNull or @Nullable.
2. Change some system APIs to public APIs.
3. Modify the method name

Bug: 126700123
Bug: 126702339
Bug: 126699682
Bug: 118296575
Bug: 126699216
Bug: 126699675
Bug: 126699429
Bug: 126699193
Bug: 123586045
Test: atest FrameworksNetTests
Change-Id: Iaa2832cdcf83758ed0fec81b954a0c63bc5a7bf6
2019-03-21 13:55:37 +08:00
Lucas Lin
f6cbc2d533 Merge "Improve partial connectivity" 2019-03-21 03:34:30 +00:00
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
lucaslin
4333899a41 Improve partial connectivity
Improve the design and fix some nits.

Bug: 113450764
Test: 1. Build pass
      2. atest FrameworksNetTests
      3. atest NetworkStackTests
      4. Change captive_portal_https_url to https://invalid.com
      to simulate partial connectivity.
Change-Id: Ia56645841d00d2ed8406cfeacb86a4a27fd58650
2019-03-20 18:21:59 +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
542c622baf Define DhcpErrorEvent constants at compile time
Addresses API review comments.

Bug: 126700007
Test: m
Change-Id: I8c32a0e8bcf2d63eaf33c9ac884afd4fdbe0fdd3
2019-03-20 16:35:05 +09: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
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
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
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
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
c09f2d69a1 Support query cancellation for async DNS API
Bug: 124882626
Test: built, flashed, booted
      atest DnsResolverTest DnsPacketTest

Change-Id: Iaa72f5c17f58cf0a58663b892bb18cfdf23cd545
2019-03-16 18:53:09 +08: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
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
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