Commit graph

4,722 commits

Message SHA1
Fix network usage stats on 464xlat tethered.
Usage stats corrections for 464xlat in NetworkStatsFactory are not applied
to tethered traffic. Add adjustments in NetworkStatsService. After
migrating external callers off NetworkStatsFactory, we will be able to
only apply adjustments in NetworkStatsService and remove stacked
interface tracking from NetworkStatsFactory.
Bug: 72107146
Fixes: 72107146
Test: runtest frameworks-net & manual - checked corrected network usage
Merged-In: Ieb25c41c651499fdd01225ae5ac21d95e3d823f5
Merged-In: I016722f3a0ae2ae0a1d48bfacc4fe07ee3578ef7
(cherry-pick of aosp I5ce450e616b4fddf21f2a491fe5d0c9e9f969bda)

Change-Id: Id41cf22a0f9a63cb1832e9375bfb045861f08e52

Remi NGUYEN VAN   commited 2018-04-02 13:30:02 +00:00
24c949481e
Fix PermissionMonitorTest that has been failing.
The fail is related to a recent fix to PermissionMonitor
that went into pi-dev only : ag/3799094, which fixed getting
the remote package name for the correct macro user instead of
the default. That fix had broken the test, this change fixes it.

Test: test now passes
Bug: 77315205
Change-Id: I26f8276eafe80478d5fefcff92e7dc2f12128bb4

Chalard Jean   commited 2018-04-02 07:44:21 +00:00
d5fa0ef148
Merge "Add method to NetworkStatsService for UID stats." into pi-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2018-04-02 05:40:04 +00:00
ce5d395bb1
Merge changes from topic "encap-api" into pi-dev
* changes:
  Require explicitly supplied truncation length
  Clarify UDP encapsulation socket API

Benedict Wong   authored and   Android (Google) Code Review   commited 2018-03-30 20:28:19 +00:00
167464627a
Merge "Add OEM_PAID capability to system api" into pi-dev
Pavel Maltsev   authored and   Android (Google) Code Review   commited 2018-03-30 16:32:52 +00:00
62e4efeee2
Merge "API council requested tweaks to NetworkRequest." into pi-dev
Jeff Sharkey   authored and   Android (Google) Code Review   commited 2018-03-30 16:30:24 +00:00
66b0087e58
Add method to NetworkStatsService for UID stats.
Useful for clients such as BatteryStats which currently rely
on NetworkStatsFactory. Data at that stage is incomplete as
it does not account for tethering, VT data and corresponding
464xlat corrections.

Test: runtest frameworks-net, CTS tests pass.
Bug: b/72107146
Merged-In: I31c5b9b4a7c6e72910152415894a137f000a5858
Merged-In: I2527d95000c7500c824ede70f87ecb38e21ed323
(cherry picked from aosp 6f124c455f)

Change-Id: Ie80f1bb21124241f3414f9be77aceac9a44ec6d1

Remi NGUYEN VAN   commited 2018-03-30 18:58:18 +09:00
1a81431b16
Merge "Fix socket leaks in various android.net.Network methods." into pi-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2018-03-30 09:47:51 +00:00
4baa5d48e3
Merge "Limit the number of routes for performance" into pi-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2018-03-30 08:48:25 +00:00
3957f6dc0d
Merge "Clarify documentation for getActiveNetworkInfo and friends" into pi-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2018-03-30 08:22:29 +00:00
7db624228a
Merge "Allow null subscriberId in NetworkStatsManager." into pi-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2018-03-30 07:39:23 +00:00
d1b38d88cd
Limit the number of routes for performance
In evaluating whether "most" of the addressing space is
covered, the list of routes are obtained from a third-party
app, so it's possbile the system service stalls unless
some limit is enforced on how much work it has to do.
This change limits the number of routes to 400, as determined
by time measurement on various devices.

Bug: 74176086
Test: runtest framework-net
Change-Id: Ie4a96098bc044ade87b188839586f14dd101c100

Chalard Jean   commited 2018-03-30 15:41:50 +09:00
e876507ce9
Require explicitly supplied truncation length
Instead of providing default truncation lengths (based on RFC or
otherwise), this change imposes a restriction that the truncation length
must be supplied for all auth or aead algorithms.

Bug: 77204048
Test: Updated tests, ran on walleye
Merged-In: I4a0e2e71aa97259e56f44e7c8a2ce53135708d97
Change-Id: I4a0e2e71aa97259e56f44e7c8a2ce53135708d97
(cherry picked from commit b0571f55db)

Benedict Wong   commited 2018-03-29 23:07:42 -07:00
ce07a39d78
Clarify UDP encapsulation socket API
This change updates the getSocket() methods for IPsec to improve clarity
of the return types, both for public APIs, and internal-only methods.

Bug: 72473753
Test: APIs updated, CTS + unit tests ran.
Merged-In: I0afebd432c5d04c47c93daa1ce616d712aa323d7
Change-Id: I0afebd432c5d04c47c93daa1ce616d712aa323d7
(cherry picked from commit 9660f605b6)

Benedict Wong   commited 2018-03-29 23:05:42 -07:00
1d51c1161b
Clarify documentation for getActiveNetworkInfo and friends
For VPNs it's unobvious what these methods do, so document that.

Bug: 70917007
Test: Comment changes only. Checkdoc passes.
Change-Id: I31ec1aea356d88d969eaf9fc7d8c2ed13ce924eb

Chalard Jean   commited 2018-03-30 12:22:06 +09:00
7c85ba400c
Allow null subscriberId in NetworkStatsManager.
Use a MATCH_MOBILE_WILDCARD template to avoid filtering by
subscriberId when querying statistics from NetworkStatsService.

Bug: 74038898
Change-Id: I8296220472a9ba37044dd1a5ede9bdb45d3ed339
Fixes: 74038898
Test: runtest frameworks-net, CTS tests pass
Merged-In: I1e4e283c6eaecf33d12488e41e0c524f6ff83954
Merged-In: Ia84d2c7cc63bf8b8bf30f133e0382fd7103bf490
(cherry-picked from aosp I4b39e7031416cb33b23d89aa36ff0f774eaa942f)

Remi NGUYEN VAN   commited 2018-03-30 12:18:23 +09:00
42e2185505
Fix socket leaks in various android.net.Network methods.
Bug: 72124526
Test: make CtsNetTestCases
Change-Id: I3398b67272360f894e01a8cdfbc47b17d77c2330

Paul Jensen   commited 2018-03-29 07:43:01 -04:00
75184ed674
Add Network.fromNetworkHandle()
This is the counterpart to Network.getNetworkHandle() and facilitates
native code calling back to Java with network handle values from
getNetworkHandle.

Bug: 77210159
Bug: 64148938
Test: make CtsNetTestCases

Change-Id: I032b959d84180c063a79ddd97c35e7384b0f50a1

Paul Jensen   commited 2018-03-29 07:24:59 -04:00
bcf88e4576
API council requested tweaks to NetworkRequest.
If you put values into the Builder, you should be able to observe
those values on the built object.

Test: atest android.net.cts.NetworkRequestTest
Bug: 74945408
Change-Id: I9aacceb82c98f7881f0eb5e1106d89d469b816a7

Jeff Sharkey   commited 2018-03-28 14:02:00 -06:00
fc5a07fe83
Add OEM_PAID capability to system api
Some system apps should be able to request OEM_PAID networks.  This
makes a lot of sense when Android is used as in-vehicle infotainment
systems.

Bug: 68762530

Test: runtest -x frameworks/base/tests/net/ -c android.net.NetworkCapabilitiesTest

Change-Id: Ic916de7522a9f803a2410bc4e3e82101fd9d0dbd

Pavel Maltsev   commited 2018-03-27 23:17:14 -07:00
0b2e0b0280
Merge "Minor clean-up in NetworkCapabilities" am: 98dc002acc am: 6d8274ebf1
am: fbb48a210f

Bug: 72828388
Test: frameworks/base/tests/net/ -c android.net.NetworkCapabilitiesTest

Change-Id: I2f45d2c70c7c0142ae3b3ce9e6329c5f25b63380
(cherry picked from commit feb8d1498a822730e29cf346fe3382e3f5293a58)

Pavel Maltsev   commited 2018-03-27 22:45:49 +00:00
3585034ec9
Merge "Get application info in the correct user id" into pi-dev
Tony Mak   authored and   Android (Google) Code Review   commited 2018-03-26 17:04:47 +00:00
d5bff7f0dd
Merge "Improve ConnectivityManager.getNetworkWatchlistConfigHash() javadoc" into pi-dev
Ricky Wai   authored and   Android (Google) Code Review   commited 2018-03-26 16:46:20 +00:00
9bf657d1e7
Merge "add airplane mode shell commands to connectivity" into pi-dev
Michael West   authored and   Android (Google) Code Review   commited 2018-03-26 16:38:03 +00:00
83c1f9e33b
Get application info in the correct user id
Fixes: 76396560

Test: Create work profile and launch hangouts in work profile.
Change-Id: Ic3727ac899153b6a96dd9b6d6921c32ba0bbd93e

Tony Mak   commited 2018-03-26 11:58:38 +00:00
bbd068ec5f
Pass all relevant resolver info to netd
Test: runtest frameworks-net passes
Test: manual testing of opportunistic and strict mode works
Bug: 34953048
Bug: 64133961
Bug: 72345192
Merged-In: I96f7747b8f0bb38d95579b688b4c2d068f1229cf
Merged-In: Ia4d896c4cc33c02f0c46d5d4c760cc33b13dff0b
Change-Id: Ia4f1905e1fa60e7a468c2246fb809191d2ba796b
(cherry picked from commit e5dac904d361a349f1cfc48500a678d22e3a7316)

Erik Kline   commited 2018-03-23 21:59:24 -07:00
05c62dfd61
add airplane mode shell commands to connectivity
Fixes: 74410990
Test: Manually checked that commands enable/disable airplane mode.

Change-Id: I942bd4679fcd498a39b9b2cab68e8d3c00ce62d3

mswest46   authored and   Michael West   commited 2018-03-24 01:53:45 +00:00
c6a5bcfce1
Merge "Have the status bar listen to all macro-users VPN changes." into pi-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2018-03-23 09:26:46 +00:00
55f0dd815d
Have PermissionMonitor arbiter which app can access background networks
This will let ConnectivityService send the right callbacks to the
relevant apps.

Test: manual with apps
      runtest frameworks-net
      cts
      new tests for this functionality
Bug: 67408339

Change-Id: I6f08efd9e73c7e191f833d7f307a3bf4c9e2f0b4

Chalard Jean   commited 2018-03-23 13:37:56 +09:00
a43eede395
Improve ConnectivityManager.getNetworkWatchlistConfigHash() javadoc
Test: NULL
Bug: 74831039
Change-Id: I227ba1377a51821204cd5830e7da6ff3a15bca02

Ricky Wai   commited 2018-03-22 20:13:05 +00:00
573dcabcff
Have the status bar listen to all macro-users VPN changes.
Bug: 73217368
Test: manual
      Using Datally on work profile. Before this, enabling the VPN
      does not show the key icon. After this it does.

Change-Id: I454eb8f3881a48af1b0187c2b14a2a399d3c2445

Chalard Jean   commited 2018-03-22 13:25:52 +09:00
06f604fcbd
Check mOwnedByTransform to avoid DELSA on SPI
The owned by transform flag prevents the removal
of an SPI from accidentally deleting an associated
SA in the kernel. That flag wasn't actually being
checked, so deleting an SPI would result in the
transform being removed.

The existing code already guarantees that the SA is
deleted when the transform is deleted

Bug: 73258845
Test: runtest frameworks-net
Merged-In: I4c26aea7af817a5d9e54da5db1cdf4f943bcae06
Change-Id: I4c26aea7af817a5d9e54da5db1cdf4f943bcae06
(cherry picked from commit 22795302be4ec35449908cf566aa7c16945df836)

Nathan Harold   commited 2018-03-20 18:29:02 -07:00
75e48d2435
Added implementation for VTI add/remove address
This change adds implementation details for add/remove addresses onto a
VTI.

Bug: 73675031
Test: New tests added, passing on Walleye
Merged-In: Idde9d943a5285d2c13c5c6b0f7b8a9faf718e6a5
Change-Id: Idde9d943a5285d2c13c5c6b0f7b8a9faf718e6a5
(cherry picked from commit ecc9f7cc08804e3fa15fea04ae94ea1bc74edbfe)

Benedict Wong   authored and   Nathan Harold   commited 2018-03-20 16:01:27 -07:00
8520015095
Merge "Deprecate most of NetworkInfo." into pi-dev
Chalard Jean   authored and   Android (Google) Code Review   commited 2018-03-10 07:51:11 +00:00
c0c8a768a7
Deprecate most of NetworkInfo.
getType, getTypeName, isConnectedOrConnecting, isConnected,
isAvaisable, isFailover, isRoaming, getState, getDetailedState,
getReason, and the TYPE_* constants in ConnectivityManager
along with methods that use them are now stacked on a boat
bound for the other side of the Styx.

Test: no code changes
Bug: 62844794
Change-Id: Idd70763de5b1af5580b4734cd443ac4b570069cc

Chalard Jean   commited 2018-03-09 16:52:20 +09:00
5acb7b709a
Expose CONNECTIVITY_ACTION to Instant Apps
Test: Broadcast is visible to Instant Apps
Bug: 69421898
Change-Id: I8435e7723cf7a722668b97ff087d1f4453d3e7b7

Chad Brubaker   commited 2018-03-08 10:37:09 -08:00
88a4e80cf0
Connectivity: Fix map access
Found by Errorprone.

Bug: 73288226
Test: mmma frameworks/base/services
Merged-In: I1c4b35811c72d389e53e28c3eb1b411009471b92
Merged-In: Ice91ac58257551485231da4664027a281237de4b
Merged-In: I7d2f578b54c69139be8b887a2381ac1b2e0673a3
Change-Id: I63edad58dbc909c1e772bde85a1b9dd98c551fb1
(cherry picked from commit 3ba8106c23cdf518527f75beaabb48bf3182fb4d)

Andreas Gampe   authored and   Erik Kline   commited 2018-03-07 11:36:57 +09:00
32323983bf
Merge "Extend network request to query networks w/o capabilites" am: 762a14565b am: 76136de729
am: 60bcd4b9d9

Change-Id: I3bf776767be61577f1bca0d98d4aaf82a0e45336

Pavel Maltsev   authored and   android-build-merger   commited 2018-03-03 00:14:52 +00:00
07aeacfbd5
Merge "Extend network request to query networks w/o capabilites" am: 762a14565b
am: 76136de729

Change-Id: Ie0c4fa4648c235589fecd79a25d28f1e62025fb7

Pavel Maltsev   authored and   android-build-merger   commited 2018-03-03 00:03:37 +00:00
60bcd4b9d9
Merge "Extend network request to query networks w/o capabilites"
am: 762a14565b

Change-Id: Id1d86938fa2d5aff4dbf9cde87548d80c76674d9

Pavel Maltsev   authored and   android-build-merger   commited 2018-03-02 23:52:18 +00:00
76136de729
Merge "Extend network request to query networks w/o capabilites"
Treehugger Robot   authored and   Gerrit Code Review   commited 2018-03-02 19:04:31 +00:00
762a14565b
Merge "Give apps with NETWORK_SETTINGS right to see any VPN." am: dce4d4ca32 am: e999899287
am: f6c1bf66ba

Change-Id: I9a9d0eb212f6de105abc070a1eb5ff698b4e67bc

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 13:25:02 +00:00
0c788ec3df
Merge "Give apps with NETWORK_SETTINGS right to see any VPN." am: dce4d4ca32
am: e999899287

Change-Id: I7f08217c5abc86a8784b91145f1b02d6693b3919

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 13:17:23 +00:00
f6c1bf66ba
Merge "Give apps with NETWORK_SETTINGS right to see any VPN."
am: dce4d4ca32

Change-Id: Iab9c8df6071e6dec35b5f492eb8344ba370e0036

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 13:10:45 +00:00
e999899287
Merge "Give VPNs the INTERNET capability when they route most of the IP space" am: ef307293e5 am: 58c3355b8f
am: d98aec5eee

Change-Id: Ifd77149ca2c45249b8776c878c6fac46ae81c2a4

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 12:54:29 +00:00
1618bad6e0
Merge "Give VPNs the INTERNET capability when they route most of the IP space" am: ef307293e5
am: 58c3355b8f

Change-Id: I33c6fcc72753e00af601cf915aa78416174a3871

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 12:46:46 +00:00
d98aec5eee
Merge "Give VPNs the INTERNET capability when they route most of the IP space"
am: ef307293e5

Change-Id: Icd1466c79d2593fcab5bd2e31a1acb3a36a705da

Chalard Jean   authored and   android-build-merger   commited 2018-03-02 12:34:25 +00:00
58c3355b8f
Merge "Give apps with NETWORK_SETTINGS right to see any VPN."
Chalard Jean   authored and   Gerrit Code Review   commited 2018-03-02 11:52:15 +00:00
dce4d4ca32
Merge "Give VPNs the INTERNET capability when they route most of the IP space"
Chalard Jean   authored and   Gerrit Code Review   commited 2018-03-02 11:18:10 +00:00
ef307293e5
Give apps with NETWORK_SETTINGS right to see any VPN.
...not only the ones that apply to them.

Bug: 73217368
Test: runtest frameworks-net and CTS
Change-Id: I436972a3e51e98bdd815771b451bcedadf684763

Chalard Jean   commited 2018-03-02 17:10:11 +09:00
8895306c4a