Commit graph android_packages_modules_Co.../core/java
Message SHA1
Merge "Unhide LinkProperties, NetworkCapabilities, NetworkRequest APIs" am: 4d52ab7341
am: 7b341a8dba

Change-Id: Ic641472bab2e5aa7b443caaac13deae260c3902d

Paul Hu   authored and   android-build-merger   commited 2018-12-21 07:48:38 -08:00
83ce7ae831
Merge "Unhide LinkProperties, NetworkCapabilities, NetworkRequest APIs"
Paul Hu   authored and   Gerrit Code Review   commited 2018-12-21 15:21:03 +00:00
4d52ab7341
Merge "Deprecate NetworkInfo" am: 9f66465984
am: add792f1ae

Change-Id: Ia646a8754bcd5ef62573e3b1730df3987bf9fd15

Junyu Lai   authored and   android-build-merger   commited 2018-12-21 02:16:39 -08:00
1c0ed50d38
Merge "Deprecate NetworkInfo"
Junyu Lai   authored and   Gerrit Code Review   commited 2018-12-21 09:56:39 +00:00
9f66465984
Deprecate NetworkInfo
Currently NetworkInfo is used by Apps to get information of
network. However, to get such information, Apps need to poll
NetworkInfo frequently from ConnectivityService.

In order to increase the stability and reduce the maintain
effort, all functionalities provided by NetworkInfo are targeted
to be replaced or removed entirely.

Apps should use ConnectivityManager.NetworkCallback instead, to
get faster and more detailed updates from connectivity changes.

Or, apps could use getNetworkCapabilities or getLinkProperties
to get information synchronously, but should not mix the
callbacks and synchronous methods together.

Bug: 113629330
Test: atest FrameworksNetTests
Change-Id: Ie8faf620958c3fa0a4a2f233b35b825de0e99ffc

junyulai   commited 2018-12-20 16:36:10 +08:00
5c2f626d34
Merge "Fixed toString() printing error" am: c5b457ba48
am: 87384f2d62

Change-Id: Ia28e56d8a6b76247d552bcdbf43ef71ac80e313e

jiayanhong   authored and   android-build-merger   commited 2018-12-19 10:06:58 -08:00
7b90c9c11c
Merge "Fixed toString() printing error"
Treehugger Robot   authored and   Gerrit Code Review   commited 2018-12-19 17:39:58 +00:00
c5b457ba48
Merge "Add InetAddresses class to API" am: 08f2a98220
am: be38ccba74

Change-Id: I3e745599be0f81decfe416a71503dc784a895a48

Paul Duffin   authored and   android-build-merger   commited 2018-12-18 11:09:15 -08:00
6e48b5278d
Unhide LinkProperties, NetworkCapabilities, NetworkRequest APIs
These methods are marked to @UnsupportedAppUsage APIs since
Android Q. But some system apps still need them to set/get
necessary network or request information. Hence, make them to be
public or system APIs.

Bug: 120448492
Test: atest FrameworksNetTests
Change-Id: I95a44daef5615e290b40d0796ca183b88ad8a63f

paulhu   authored and   Paul Hu   commited 2018-12-18 08:39:49 +00:00
25037063e3
Add InetAddresses class to API
Adds methods needed by app developers to avoid them having to call
non-SDK APIs.

Test: tests added to cts
Bug: 78686891
Change-Id: Ic0eadfdab2b111d5ca4becb753f4fe3557806433

Paul Duffin   commited 2018-12-17 11:53:33 +00:00
9863a7ad63
Merge "[CM] Fix comments, add tests to TransportInfo API" am: 4060bc1480
am: be97184c39

Change-Id: I54556ea99992fbc0105bc2012c3d423e88c60764

Etan Cohen   authored and   android-build-merger   commited 2018-12-11 22:09:54 -08:00
e907da9b5a
[CM] Fix comments, add tests to TransportInfo API
Bug: 117605977
Test: atest NetworkCapabilitiesTest
Change-Id: I734ec56e44cd09d11ae81a856a53a26e1191b9a0

Etan Cohen   commited 2018-12-11 15:00:10 -08:00
55191eb12e
Merge "[CS] Add a generic transport-specific information API" am: 9d38e58d60
am: e95b6a7ebc

Change-Id: If70fb160c90afbfb646ca7474d06fe735031aed5

Etan Cohen   authored and   android-build-merger   commited 2018-12-08 20:19:32 -08:00
b70ca9b938
[CS] Add a generic transport-specific information API
Add a generic transport-specific information container interface and
access methods. These can be used by a network factory to pass transport
(bearer)-specific network parameters to the app.

Bug: 117605977
Test: atest frameworks/base/tests/net/java/android/net (+new unit tests)
Change-Id: Ib7c83b677e1c02a2212265719813e648b0c9cc1b

Etan Cohen   commited 2018-12-07 17:37:48 +00:00
d397de2e39
Fixed toString() printing error
There maybe some copy paste error about mNetworkCapabilities
and mUnwantedNetworkCapabilities in NetworkCapability#toString()

Test: manual + CodeDEX scan
Change-Id: I9997163e8b557590c27d15f0b2184ce6e1a53647

jiayanhong   commited 2018-11-23 14:23:04 +08:00
1cfad48cb1
Merge "Move hidden APIs into system APIs" am: 01a8c6214e
am: eaea5d929e

Change-Id: Ibe6fa27d99791e57b1253a9dc990de0706b52fb6

Jack Yu   authored and   android-build-merger   commited 2018-11-20 19:04:24 -08:00
35ae67807e
Merge "Move hidden APIs into system APIs"
Jack Yu   authored and   Gerrit Code Review   commited 2018-11-21 02:40:30 +00:00
01a8c6214e
Merge "Add IPv6 link-local address generation from EUI-48" am: 5d8e697a85
am: 3ec717f4e7

Change-Id: I63de4fa185649d9389a771860c479899e90b37e4

Etan Cohen   authored and   android-build-merger   commited 2018-11-19 16:48:22 -08:00
71fc53a797
Move hidden APIs into system APIs
To allow vendor code to construct LinkAddress, which is
one of the parameter in the system API DataCallResponse.

Test: Build
Bug: 73659459
Merged-In: I3e203781d3a03285fa0e047cc8837ccb4a09016a
Change-Id: I3e203781d3a03285fa0e047cc8837ccb4a09016a

Jack Yu   commited 2018-11-19 14:40:13 -08:00
13fefdd2f9
Add IPv6 link-local address generation from EUI-48
Add a utility method to convert an EUI-48 to an IPv6 link-local
address based on RFC 4291 (EUI-64 generation) followed by RFC 4862.

Bug: 117605977
Test: atest MacAddressTest
Merged-In: I80b683e69da6beff3b37fc345fc15aa9610d09b7
Change-Id: I80b683e69da6beff3b37fc345fc15aa9610d09b7

Etan Cohen   commited 2018-11-16 21:50:24 -08:00
1b2d62a1bc
Merge "Refactor UidRange by using stable aidl structure" am: e966e640f6
am: be9bc6d666

Change-Id: I09ac7fc6525948b76114ef936dc1b3d2d1bae0fb

Luke Huang   authored and   android-build-merger   commited 2018-10-28 17:55:57 -07:00
0f950b1d68
Merge "To support skip464xlat per Network" am: 2d23f14c9e
am: e826aa52e4

Change-Id: I944738258051525b371bd17dd3ee7b411b82d12b

Chalard Jean   authored and   android-build-merger   commited 2018-10-24 17:19:51 -07:00
153c48b434
Merge "Move some members to the "Q blacklist"." am: 8d6a9818f0
am: 13c9e7e2f3

Change-Id: Ia2419cce28d26d9464da2a5172cb332b629e943e

Nathan Harold   authored and   android-build-merger   commited 2018-10-24 16:14:06 -07:00
ab447742ee
Refactor UidRange by using stable aidl structure
Use stable aidl generated structure instead of UidRange

Test: runtest frameworks-net passes
Test: manual testing of UidRange related function works
Change-Id: Iaf1c10777dc1e71df2be2a57533a10257b12626b

Luke Huang   commited 2018-10-24 19:45:09 +09:00
40f9fcef6f
Merge "To support skip464xlat per Network"
Chalard Jean   authored and   Gerrit Code Review   commited 2018-10-24 07:15:20 +00:00
2d23f14c9e
Move some members to the "Q blacklist".
Based on some analysis, these fields/methods are likely false positives.
Set maxTargetSdk=P so that any apps using them are required to migrate off
them in future. See the bug for more details.

Exempted-From-Owner-Approval: Automatic changes to the codebase
affecting only @UnsupportedAppUsage annotations, themselves added
without requiring owners approval earlier.

Bug: 115609023
Test: m
Merged-In: I719b5c94e5b1f4fa562dd5d655953422958ad37e
Change-Id: I719b5c94e5b1f4fa562dd5d655953422958ad37e
(cherry picked from commit 15cfeb58a4)

Mathew Inwood   authored and   Nathan Harold   commited 2018-10-22 17:28:24 -07:00
df1c689315
Merge "Add new callback to inform blocking of network on specific uid." am: c7a2d957b0
am: d896c9a4e5

Change-Id: I24b45f860992626968a6adfb0ff6b6389c85cf45

Junyu Lai   authored and   android-build-merger   commited 2018-10-19 09:26:39 -07:00
8a53397b4c
Merge "Add new callback to inform blocking of network on specific uid."
Junyu Lai   authored and   Gerrit Code Review   commited 2018-10-19 15:20:48 +00:00
c7a2d957b0
Merge "Change permissions checks for setAirplaneMode." am: 7b81c459ce
am: 001a9fdc97

Change-Id: Ibe5bbd51adae83e1bfb5a4ab43d29eb2ccd02a8b

Lorenzo Colitti   authored and   android-build-merger   commited 2018-10-15 08:29:00 -07:00
141332c0a9
Merge "Change permissions checks for setAirplaneMode."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2018-10-15 13:36:45 +00:00
7b81c459ce
Change permissions checks for setAirplaneMode.
Require NETWORK_SETTINGS (or NETWORK_SETUP_WIZARD) instead of the
legacy CONNECTIVITY_INTERNAL permission. The users are as follows:

- The system callers (Phone, Settings, SystemUI, VrSettings) all
  have NETWORK_SETTINGS.
- SetupWizard has NETWORK_SETUP_WIZARD
- sl4a has NETWORK_STACK

Bug: 115302596
Test: builds, boots, airplane mode via SystemUI works
Change-Id: I8ca40182bd8b5e3fd9a82296c0cc28de30ed4baf

Lorenzo Colitti   commited 2018-10-12 16:35:46 +09:00
c4d0186b30
To support skip464xlat per Network
To add skip464exlat in NetworkMisc.
NetworkAgent can skip to start 464xlat if need.
(e.g. IMS PDN for Cellular can be disabled)

Device will treat the network as IPv6-only if it is set

Bug: 69949375
Test: Nat464XlatTest, ConnectivityServiceTest

Change-Id: I676a02cb92530d64f29f34e89482a934f3ec4553

Yuuki Habu   commited 2018-10-12 14:35:30 +09:00
f7b0625dd7
Merge "Add log for debugging ConnectivityManager" am: d3a9f1081a
am: de3f1c804e

Change-Id: I2d8604c172b26e474050afd45fba74dc6c2c18bc

Chalard Jean   authored and   android-build-merger   commited 2018-10-11 21:21:45 -07:00
2a1eb22753
Merge "Add log for debugging ConnectivityManager"
Chalard Jean   authored and   Gerrit Code Review   commited 2018-10-12 03:14:48 +00:00
d3a9f1081a
Add new callback to inform blocking of network on specific uid.
Currently, apps rely on querying NetworkInfo object to know
whether their network is blocked or not. There is no proactive
way to tell app when it is being blocked/unblocked. The only
event that app would receive is SocketException with
ECONNABORTED when their ongoing socket connection has been
blocked, which is not an elegant way to notify app.

Thus, this commit is trying to address this problem. Therefore,
with the uses of other callbacks, the need of
getState/getDetailedState in NetworkInfo could be completely
eliminated.

Test: runtest frameworks-net
      runtest -x NetworkPolicyManagerServiceTest.java
      cts-tradefed run cts -m CtsHostsideNetworkTests
      cts-tradefed run cts -m CtsNetTestCases -t \
              android.net.cts.ConnectivityManagerTest
Bug: 74575553

Change-Id: Iec96a3103d0aa9a505020eb89d69b89c0b694486

junyulai   commited 2018-10-11 16:31:10 +08:00
5ab727b349
Merge "Make setAirplaneMode @SystemApi for SetupWizard." am: 772b75c26d
am: 27d5da4b3c

Change-Id: I8049e2484526104eba7fad92d2819eb94319fa84

Lorenzo Colitti   authored and   android-build-merger   commited 2018-10-10 20:26:35 -07:00
6bc642d6d7
Make setAirplaneMode @SystemApi for SetupWizard.
Expose ConnectivityManager#setAirplaneMode and the
NETWORK_SETUP_WIZARD permission so that SetupWizard can call
setAirplaneMode.

Delete setAirplaneMode from the greylist because the permissions
checks on it, since at least 2013, have been for a privileged
permission (CONNECTIVITY_INTERNAL) that normal apps don't have.

Test: m
Bug: 115302596
Change-Id: I28f24d32c4b4b386407e9e0e3514ea9f8854f4a8

Lorenzo Colitti   commited 2018-10-10 17:50:05 +09:00
272a77dd9a
Add log for debugging ConnectivityManager
Add log to ConnectivityManager for better investigations of issue.
This patch adds StackTrace to the following APIs.

reportInetCondition()
reportBadNetwork()
reportNetworkConnectivity()
sendRequestForNetwork()
requestNetwork()
releaseNetworkRequest()
registerNetworkCallback()
unregisterNetworkCallback()

Bug: 116751720
Change-Id: I992292cd9d6f3d69c91ddbde5577591f9ec0f39b

Soi, Yoshinari   authored and   Fen Wang   commited 2018-10-10 11:56:04 +09:00
99efcbd08b
resolve merge conflicts of a3e34fe9fe4e2a8d0932e574721e5a8b94396c5e to pi-dev-plus-aosp
Bug: None
Test: Eyeballed (comment-only change).
Change-Id: Ia644cde66376b2bddeb27bb2a147b3266037aa2c
Exempt-From-Owner-Approval: Docs-only change
Merged-In: Ia06e1fffd814671289a1caebd5962aedc18a28d7

Andrew Solovay   commited 2018-10-04 22:50:39 +00:00
78ca1bea52
docs: Replacing {#link with {@link
Several java files had the typo {#link (for cross-references to other
Javadocs) instead of the proper {@link format. This was confusing the
new doc publish tool (Mivi) since that's the format used for {# Django
comments #}.

Fixed a couple of links that had other errors (which prevented building
once the {# -> {@ was done) and other typos.

Replaced throughout the frameworks/base project; I'll need a separate CL
for the AndroidX fixes.

Staged to:

go/dac-stage/reference/android/app/Instrumentation.html
go/dac-stage/reference/android/bluetooth/BluetoothAdapter.html
go/dac-stage/reference/android/bluetooth/BluetoothDevice.html
go/dac-stage/reference/android/bluetooth/BluetoothServerSocket.html
go/dac-stage/reference/android/inputmethodservice/InputMethodService.html
go/dac-stage/reference/android/view/KeyCharacterMap.html
go/dac-stage/reference/android/view/KeyEvent.html
go/dac-stage/reference/android/media/AudioManager.html
go/dac-stage/reference/android/net/wifi/WifiConfiguration.html

(Other files were not in the public Javadocs.)

Bug: 111925950
Test: make ds-docs
Exempt-From-Owner-Approval: Docs-only change
Change-Id: Ia06e1fffd814671289a1caebd5962aedc18a28d7
Merged-In: Ia06e1fffd814671289a1caebd5962aedc18a28d7

Andrew Solovay   commited 2018-10-04 18:20:51 +00:00
398c81ec8c
Make requestRouteToHost a no-op for system callers.
Everything in the system should now be using proper multinetwork
APIs instead of this insecure and error-prone API.

Make this method do nothing when called by the system. For now,
keep the code around for backwards compatibility for apps
targeting Android releases before M.

Bug: 25824776
Bug: 25876485
Test: FrameworksNetTests pass
Test: CtsNetTestCasesLegacyApi22 pass
Test: CtsNetTestCasesLegacyPermission22 pass
Test: android.net.cts.ConnectivityManagerTest passes
Change-Id: I9b3557faccccc95c7b954db6a13b853b4c7edea0

Lorenzo Colitti   commited 2018-10-01 12:05:42 +09:00
62f752c2ce
Add ConnectivityManager.getConnectionOwnerUid()
Allow VPN apps to lookup the UID owner of a network connection.

Requires specifying the:
 - IP address and port for both the source and destination of a TCP
   connection.
 - IP address and port for either source and destination or just
   source for a UDP connection.
Only TCP and UDP protocols are supported. Only connections for UIDs
that apply to the calling VPN app will be resolved. This is intended
to replace direct app access to /proc/net/{tcp,tcp6,udp,udp6}.

The implementation uses netlink inet_diag sockets[1] to perform
the lookup on TCP sockets as well as UDP sockets when supported
(kernel has CONFIG_INET_UDP_DIAG=y).

[1] http://man7.org/linux/man-pages/man7/sock_diag.7.html

Bug: 9496886
Bug: 109758967
Test: atest HostsideVpnTests
Test: atest InetDiagSocketTest on Taimen with CONFIG_INET_UDP_DIAG
    and on Sailfish without CONFIG_INET_UDP_DIAG.
Change-Id: I2bbc7072dd091e2e653dadf6dc05024c04180f34

Jeff Vander Stoep   authored and   Jeffrey Vander Stoep   commited 2018-09-21 06:16:09 +00:00
e7205d6853
Remove ResolveUtil from frameworks/base callers
Use the Private DNS bypass logic that was moved into Network.

Once all callers of ResolvUtil are updated to use this interface
ResolvUtil can be deleted.

Test: as follows
    - built, flashed, booted
    - runtest frameworks-net passes
    - connection to captive portal network detects portal correctly
      and the login activity functions as expected

Bug: 64133961
Bug: 72345192
Bug: 73872000
Bug: 78548486

Change-Id: If11ef2b5ffdc729f8449cf18dccd5f1eccbc51e6

Erik Kline   commited 2018-08-28 12:59:21 +09:00
f2420790ac
Merge "Fix typo in IpConfiguration comment"
Treehugger Robot   authored and   Gerrit Code Review   commited 2018-08-24 03:43:38 +00:00
502e5b1aa2
Fix typo in IpConfiguration comment
Bug: NONE
Test: NONE
Change-Id: Ib2ce166532292266da17ec85c16e400afe4f9111

Blake Lawson   commited 2018-08-23 08:43:07 -07:00
f134e62f73
Add DhcpServingParams
Those parameters will be used to start DhcpServer or update its
configuration.

Test: runtest DhcpServingParamsTest.java
Bug: b/109584964
Change-Id: Id8d3dcf62d66dcb02accffa8d8500e30f07af452

Remi NGUYEN VAN   commited 2018-08-23 17:29:48 +09:00
041ac7ed06
Add util to add an ARP table entry
This is to be used by the new DhcpServer to add ARP entries with new
addresses before sending unicast responses.

Test: manual: cat /proc/net/arp with implementation based on this
Bug: b/109584964
Change-Id: I3559893583aa3c49b188ad689a41ee2f3e9d9bf3

Remi NGUYEN VAN   commited 2018-08-23 16:01:44 +09:00
eb03f35534
Add @UnsupportedAppUsage annotations
For packages:
  android.net.wimax
  android.net.wifi.p2p.nsd
  android.net.wifi.p2p
  android.net.wifi.hotspot2.pps
  android.net.wifi.hotspot2.omadm
  android.net.wifi.hotspot2
  android.net.wifi.aware
  android.net.wifi
  android.net.util
  android.net.sip
  android.net.rtp
  android.net.nsd
  android.net.metrics
  android.net.lowpan
  android.net.http
  android.net.captiveportal
  android.net

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
Change-Id: Ie25423113ee1a8071cd5039382c00de6ce0af7fd
Merged-In: I520be7a4c79e68310c12e4f55bf66acaa94145a1

Mathew Inwood   commited 2018-08-14 14:44:29 +01:00
0b8f861d07
Merge "NetworkAgent: Send primitive integer in explicitlySelected"
Treehugger Robot   authored and   Gerrit Code Review   commited 2018-08-13 17:09:51 +00:00
e6d745c6f8
NetworkAgent: Send primitive integer in explicitlySelected
|Boolean| object is not parcelable and hences crashes when the binder call
crosses a process boundary. Using a primitive integer instead to
represent the boolean value.

Bug: 112358948
Test: Device boots up and able to make wifi connection.
Change-Id: Iac69fd302e1f1338ed0da1446105ffc5855451cc

Roshan Pius   commited 2018-08-10 07:44:33 -07:00
94f41e9c99