Commit Graph

5535 Commits

Author SHA1 Message Date
Chalard Jean
10a24f1d46 Merge "Deprecate getActiveLinkProperties."
am: 39d46d221b

Change-Id: I745db0698d3fe76779e83c98aff9464a2b1b0709
2019-02-06 00:45:03 -08:00
Treehugger Robot
39d46d221b Merge "Deprecate getActiveLinkProperties." 2019-02-06 08:32:10 +00:00
Chalard Jean
97021a1eeb Deprecate getActiveLinkProperties.
There are other, more idiomatic ways to do this. Deprecating this
with usage limited to P will curb usage and reduce the maintenance
load.
This also deprecates the extra EXTRA_NETWORK_TYPE, which has
survived from an old world but has only been used in deprecated
broadcasts for some time.

Bug: 109783091
Test: eyeball current.txt
Change-Id: I87b74833bb4ec362ee3fd07511a66d318c29067d
2019-02-06 15:44:44 +09:00
Chalard Jean
0b93464e32 Merge "[KA03] Support tcp keepalive offload"
am: 5f8ddc2eb1

Change-Id: I7715266c2c24d3f5dd65cd0e375d99b16be6aea6
2019-02-05 22:19:41 -08:00
markchien
e5591ce2fa [KA03] Support tcp keepalive offload
When offload is starting, socket will be switched to repair
mode. Read and write on the socket will not be allowed until
repair mode is turned off. If remote packet arrives, repair
mode will be turned off automatically and a callback will
be raised to indicate that socket is ready to read from.

Bug: 114151147
Test: -atest FrameworksNetTests
      -manual

Change-Id: I0c335865912e183e7ad32a8ea12188f02ccde5fd
2019-02-06 12:22:22 +09:00
Chalard Jean
839c99be82 Merge "[KA02] internal cleanup and refactor for SocketKeepalive"
am: 292da961e6

Change-Id: I211be98b0d3f5e1c7068a241cbd7e913ae72c461
2019-02-05 10:25:01 -08:00
junyulai
011b1f15c2 [KA02] internal cleanup and refactor for SocketKeepalive
In previous change, the new SocketKeepalive API was exported.
But internally, old PacketKeepalive names and structures are
still used.

This change rename them properly for code consistency and also
refactor KeepalivePacketData to support different types of
KeepalivePacketData.

Bug: 114151147
Test: 1. atest FrameworksNetTests
      2. atest FrameworksWifiTests
      3. atest FrameworksTelephonyTests

Change-Id: Ia9917d12987e91e87e34ffb3f126e7bc7c9c187e
Merged-In: Ia9917d12987e91e87e34ffb3f126e7bc7c9c187e
2019-02-05 20:13:47 +09:00
Remi NGUYEN VAN
4b8dee1177 Merge changes from topic "bindprocess-resolv"
am: af8e41c434

Change-Id: I3aacc6c2ae5242e28eec6e9e8e2a9a4b3e4f715d
2019-01-31 00:11:25 -08:00
Remi NGUYEN VAN
af8e41c434 Merge changes from topic "bindprocess-resolv"
* changes:
  Allow use of bindProcessToNetwork only to change private DNS bypass.
  Allow bypassing private DNS via bindProcessToNetwork.
2019-01-31 07:52:04 +00:00
Mark Chien
ffe3d99f91 Merge "Add get last entitlement value callback API"
am: 029be80b79

Change-Id: I1961297c3fa31f5575ae3a11a3fc90d695cb7de5
2019-01-30 23:35:15 -08:00
Mark Chien
029be80b79 Merge "Add get last entitlement value callback API" 2019-01-31 07:23:31 +00:00
markchien
0f45bb9d3d Add get last entitlement value callback API
The callback would be used to notify entitlement value. If the
cache value indicates entitlement succeeded, it just fire
callback with cache value instead of run entitlement check.

Bug: 120887283
Test: atest FrameworksNetTests
Change-Id: I8afe928423bd75c54c61533a50a5c0814922ceb1
2019-01-31 12:31:55 +08:00
Lorenzo Colitti
3c766ebc4d Allow use of bindProcessToNetwork only to change private DNS bypass.
Currently it is not possible to change private DNS bypass by
doing:

  setProcessDefaultNetwork(network.getPrivateDnsBypassingCopy());
  setProcessDefaultNetwork(network);

because the code will ignore the change. Fix this by ensuring
that we always call bindProcessToNetwork (which does not have
side effects) and then only performing the expensive operations
(flushing DNS cache, upating socket pools) if the netId changed.

Bug: 112869080
Test: None
Change-Id: I5e8999cb11d8b8c1e9eb583fa8b3932f212accff
2019-01-31 13:08:24 +09:00
Varun Anand
d4bdf28a26 Merge "Add an API that allows VPNs to declare themselves as metered."
am: 35200a3b8a

Change-Id: Iadf012754e2e39f4b99efc97d5666dd0bc1ff2d6
2019-01-30 19:09:30 -08:00
Varun Anand
35200a3b8a Merge "Add an API that allows VPNs to declare themselves as metered." 2019-01-31 02:43:25 +00:00
Remi NGUYEN VAN
3efa288531 Merge "Add SystemApi for captive portal metrics"
am: b591097458

Change-Id: I1d1406a10c33034cf379ea7735cb106d3c536c8e
2019-01-30 14:35:30 -08:00
Pavel Grafov
bd757b5a3d Merge "Nuke old setAlwaysOnVpnPackageForUser method."
am: 35a8f1a38a

Change-Id: If3cb37b8fa19dd49b8595622b293886653d7a319
2019-01-30 14:27:01 -08:00
Remi NGUYEN VAN
b591097458 Merge "Add SystemApi for captive portal metrics" 2019-01-30 22:24:12 +00:00
Varun Anand
83759ee94b Add an API that allows VPNs to declare themselves as metered.
For VPN apps targeting Q and above, they will by default be treated as
metered unless they override this setting before establishing VPN.

Bug: 120145746
Test: atest FrameworksNetTests
Test: On device tests verifying meteredness setup correctly for apps
targeting Q and apps targeting P.
Change-Id: Ia6d1f7ef244bc04ae2e28faa59625302b5994875
2019-01-30 14:09:03 -08:00
Pavel Grafov
4ed5cbd750 Nuke old setAlwaysOnVpnPackageForUser method.
All callers have migrated to 4-argument one.

Test: builds
Bug: 77468593
Change-Id: I253515f6b0100b675505646339e5b82d373c9429
2019-01-30 19:56:36 +00:00
Lorenzo Colitti
3a1cb9d615 Allow bypassing private DNS via bindProcessToNetwork.
Currently, bypassing private DNS requires calling the deprecated
setProcessDefaultNetworkForHostResolution. Allow apps to do this
via the non-deprecated binProcessForNetwork as well.

This has fewer backwards compatibility concerns than the
alternative approach of having setProcessDefaultNetwork call
setProcessDefaultNetworkForHostResolution. That approach would
have been problematic, for example, if an app did:

  cm.bindProcessToNetwork(network);
  ...
  cm.bindProcessToNetwork(null);

In this case, it would be difficult to know whether to clear the
resolver mapping as well: what if an app had also called
setProcessDefaultNetworkForHostResolution?

Similarly, it would be difficult to know what to do if an app did:

  cm.setProcessDefaultNetworkForHostResolution(network);
  cm.bindProcessToNetwork(null);

This approach does not have these concerns, and has no effect
on apps that don't call Network.getPrivateDnsBypassingCopy, which
regular apps don't have permission to use. It also provides a
path to deprecate setProcessDefaultNetworkForHostResolution.

Bug: 112869080
Test: atest android.net.cts.ConnectivityManagerTest android.net.cts.MultinetworkApiTest
Change-Id: I4158a37b6ed87a9a9b2677c526dcfee8af48e483
2019-01-31 00:55:47 +09:00
Remi NGUYEN VAN
fb43a914d3 Add SystemApi for captive portal metrics
The metrics go through NetworkMonitor in the NetworkStack so that they
can be upgraded to new metrics in the future.

Test: flashed, captive portal login works, metrics shown in events log
Bug: 112869080
Merged-In: I4bccfbd87bae5b2d65e45c7a5918aa45ab5d76e8
Change-Id: Ib5e2126788f8d56a00a56d7efcd33c5f9a37a6de
2019-01-30 22:54:27 +09:00
Remi NGUYEN VAN
19542eea9e Merge "Remove last NetworkStack usage of hidden APIs"
am: 16ec5d038c

Change-Id: I27c78d09938f672a4428a17436d5ed0541170d0d
2019-01-29 21:13:46 -08:00
Remi NGUYEN VAN
6e82be4e4a Remove last NetworkStack usage of hidden APIs
Includes various small changes to stop using hidden APIs

Test: make NetworkStack
Test: flashed, booted, WiFi and tethering working
Bug: 112869080
Change-Id: Id2830795a444f484b377ed6437435a1cd833697a
2019-01-30 10:23:24 +09:00
Remi NGUYEN VAN
5896eb1b1a Merge "Add NetworkUtils utilities to SystemApi"
am: 9cc31061fe

Change-Id: I82f20718d86b08cd0916ee33300ca0ee734305a6
2019-01-29 03:17:41 -08:00
Remi NGUYEN VAN
c7fe99fdbe Add NetworkUtils utilities to SystemApi
attach*Filter and addArpEntry are necessary for the NetworkStack but are
only usable for apps that have system permissions.
Also includes system API for IpPrefix, LinkAddress, LinkProperties,
Network, and static modifier in ApfCapabilities that were missed in
previous CLs.

Test: Builds, flashed, WiFi works
Bug: 112869080
Change-Id: If141ae6a2f9145f5af64ba002ca44938f39b90a9
2019-01-29 17:30:26 +09:00
Remi NGUYEN VAN
e90dc24b2c Merge "Add SocketUtils for NetworkStack"
am: 37053eb78e

Change-Id: I0db40afbf2de55d77d9d5493e556f499d2383f59
2019-01-28 21:19:36 -08:00
Pavel Grafov
f6c5ef95d1 Merge "Whitelist packages from VPN lockdown."
am: 76e3e0052c

Change-Id: I3332e495ba0c903dff3dbb9c53c5c4784ea519f4
2019-01-28 20:18:23 -08:00
Remi NGUYEN VAN
37053eb78e Merge "Add SocketUtils for NetworkStack" 2019-01-28 23:14:08 +00:00
Pavel Grafov
76e3e0052c Merge "Whitelist packages from VPN lockdown." 2019-01-28 20:15:49 +00:00
Remi NGUYEN VAN
a628730d0a Add SocketUtils for NetworkStack
These utilities can only be used for privileged apps. The underlying
implementation cannot be @SystemApi.

Test: m
Bug: 112869080
Change-Id: Idfa90561102e5b03ab2b79486d3ad46457128bf8
2019-01-28 20:11:27 +09:00
Remi NGUYEN VAN
249646cc60 Merge "Move NetworkUtils used by NetworkStack"
am: 8f8deae60f

Change-Id: Ib83c3cb8ced0d226bd57375cd4600665d72fd962
2019-01-28 01:21:01 -08:00
Remi NGUYEN VAN
8f8deae60f Merge "Move NetworkUtils used by NetworkStack" 2019-01-28 09:06:20 +00:00
Remi NGUYEN VAN
5fb799d7ee Merge "Add NetworkStack networking deps to SystemApi"
am: 9188b49259

Change-Id: Id8b31f100ab07ca9a38f4cff26c719dd9d74bc54
2019-01-28 00:26:39 -08:00
Remi NGUYEN VAN
e167e117c1 Move NetworkUtils used by NetworkStack
Depending on usage move into NetworkStackUtils or shared
Inet4AddressUtils.

Test: atest FrameworksNetTests NetworkStackTests
Bug: 112869080
Merged-In: Ie20dcee375b377236004a7689890729493aca857
Change-Id: Ib8d000529872796022706a35050fdc2c7141f2ab
2019-01-28 13:45:17 +09:00
Remi NGUYEN VAN
8bd18cff9a Add NetworkStack networking deps to SystemApi
Cherry-pick with conflicts fixed in CaptivePortalLoginActivity imports.
Test: atest FrameworksNetTests
Bug: 112869080
Merged-In: Id59dc06fb85e4ac88098f56b621ec880610759ce
Change-Id: I3c05e8fdd70497426d4fa433295c4fbdad07d9c9
2019-01-28 13:28:35 +09:00
Pavel Grafov
3aeb3f3455 Whitelist packages from VPN lockdown.
Bug: 77468593
Test: atest com.android.server.connectivity.VpnTest
Change-Id: I9119c139ab07a761ce5dfd1365b70eb905fd32dc
2019-01-25 19:59:03 +00:00
Dan Albert
8840cbd3fa Merge "Revert "Whitelist packages from VPN lockdown.""
am: 7e81ae73b4

Change-Id: Ibaf799dc2664a6b3b743030da956679a3414ad9d
2019-01-24 13:45:19 -08:00
Dan Albert
7e81ae73b4 Merge "Revert "Whitelist packages from VPN lockdown."" 2019-01-24 21:08:46 +00:00
Dan Albert
45f1a24661 Revert "Whitelist packages from VPN lockdown."
This reverts commit f1a610a1c2.

Reason for revert: broke pi-dev-plus-aosp

Change-Id: Iaf5c8aa4a8720eb2852da8cd91c81a77ccb92b68
2019-01-24 21:05:39 +00:00
Irina Dumitrescu
83662532c8 Merge "Add API for proxy configuration over VPN."
am: b11e29d4b3

Change-Id: I647aec5f7678668b8ef7d616150adac1086dbbdd
2019-01-24 10:08:07 -08:00
Treehugger Robot
b11e29d4b3 Merge "Add API for proxy configuration over VPN." 2019-01-24 17:52:22 +00:00
Pavel Grafov
4934a54f2e Merge "Whitelist packages from VPN lockdown."
am: bec7854508

Change-Id: I329e24f1359a11a72ae9d0a23d2dc5b5de5aa8a7
2019-01-24 09:49:42 -08:00
Pavel Grafov
bec7854508 Merge "Whitelist packages from VPN lockdown." 2019-01-24 17:34:55 +00:00
Pavel Grafov
f1a610a1c2 Whitelist packages from VPN lockdown.
Bug: 77468593
Test: atest com.android.server.connectivity.VpnTest
Test: atest MixedDeviceOwnerTest#testAlwaysOnVpn
Test: MixedDeviceOwnerTest#testAlwaysOnVpnAcrossReboot
Change-Id: I7f6c5b9172063b588feacd6b9930a6cb88f764ab
Merged-In: I7f6c5b9172063b588feacd6b9930a6cb88f764ab
2019-01-24 16:17:11 +00:00
Irina Dumitrescu
de132bb6d6 Add API for proxy configuration over VPN.
Test: runtest -x
frameworks/base/tests/net/java/com/android/server/ConnectivityServiceTest.java
&& atest HostsideVpnTests
Bug: 76001058
Change-Id: Id4dde4a4103fd93bfbbacc52d0e5ade56ae67a6a
Merged-In: Id4dde4a4103fd93bfbbacc52d0e5ade56ae67a6a
2019-01-24 16:07:20 +00:00
Lucas Lin
37f5d453ee Merge "Popup a notification after logging in the captive portal network"
am: 01eeab4954

Change-Id: I78321e10014525dfb02da29ee2f3cd4487bf30db
2019-01-24 03:27:36 -08:00
Lucas Lin
01eeab4954 Merge "Popup a notification after logging in the captive portal network" 2019-01-24 11:06:12 +00:00
Remi NGUYEN VAN
61c2962d74 Merge "Add additional SystemApi for NetworkStack"
am: 24f1f0be3c

Change-Id: I2614b1484498ad9d285be5f6628a94983f1561e4
2019-01-24 02:06:15 -08:00
Remi NGUYEN VAN
24f1f0be3c Merge "Add additional SystemApi for NetworkStack" 2019-01-24 09:55:01 +00:00