Commit graph android_packages_modules_Co.../tests/net/java/com/android
Message SHA1
Merge "Fix testLegacyLockdownVpn flaky" am: 58b8d1eb22 am: b08d1c3095 am: 4ac82f64c9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1659998

Change-Id: Ib3ec17315225e4f0ed173d4d17165b8f21e07acb

Chalard Jean   authored and   Automerger Merge Worker   commited 2021-04-01 10:10:39 +00:00
4ebc0197f2
Fix testLegacyLockdownVpn flaky
When WiFi disconnects, the VPN disconnects immediately. The
broadcast can therefore be sent before the broadcast receiver is
registered, which causes the receiver to not see the broadcast.

The puzzling part is that CONNECTIVITY_ACTION is a sticky
broadcast, so one would expect the broadcast to still be
received, even if the registration is done after the broadcast
is sent. The reason this doesn't happen is that the context used
by the test is a BroadcastInterceptingContext, which does not
treat sticky broadcasts as sticky.

Bug: 184115648
Test: atest --iterations 1000 'ConnectivityServiceTest#testLegacyLockdownVpn'
Change-Id: Ib44c92839d25951cc7d2db0f923e1b104690e1e0

Chalard Jean   commited 2021-04-01 06:27:46 +00:00
face022980
[NS10] Fix a bug where registerIgnoringScore is broken
Fixes: 184028345
Test: ConnectivityServiceTest
Change-Id: Ib5cd2c27a2bd0f53b500e8edbe48126fbf58f34d

Chalard Jean   commited 2021-03-31 20:59:50 +09:00
e81dbd212a
[NS09] Implement the new ranking code
At this stage, this is turned off. Unit tests will be
in a followup change.

Test: In a followup
Bug: 167544279
Change-Id: I4448a3546fbc1a3dddf757982c031c5f39ba2889

Chalard Jean   commited 2021-03-31 20:59:47 +09:00
b887f60347
Merge changes Id7ee1bd3,I5ea44a94 into sc-dev
* changes:
  [NS08] Expose public NetworkScore API
  [NS07] Add the rest of the scoring policy

Chalard Jean   authored and   Android (Google) Code Review   commited 2021-03-31 11:42:19 +00:00
d7a91befe1
Merge changes I24580ea4,Id48b8eab am: cbc6a315c5 am: ce1d32cd36 am: e4ef990c5d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1657763

Change-Id: I9d304c35374670eb0e4dcfb9caf6b065878d97e6

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-30 18:33:04 +00:00
5c88750cfc
Merge changes I24580ea4,Id48b8eab
* changes:
  Allow the system to register 250 NetworkCallbacks.
  Add more test coverage for limiting the number of callbacks.

Lorenzo Colitti   authored and   Gerrit Code Review   commited 2021-03-30 16:01:58 +00:00
cbc6a315c5
[NS07] Add the rest of the scoring policy
Bug: 167544279
Test: FrameworksNetTests
Change-Id: I5ea44a94ac6f16486274e9091f15a84734db2341

Chalard Jean   commited 2021-03-30 23:50:41 +09:00
7851544cb5
Allow the system to register 250 NetworkCallbacks.
Give anyone with PERMISSION_MAINLINE_NETWORK_STACK (i.e.,
either the system or the networkstack process) a separate limit
of 250 callbacks per UID.

Bug: 183921387
Test: new unit tests
Change-Id: I24580ea48e3ad502ef584efc5fde0b5d22e392b4

Lorenzo Colitti   commited 2021-03-30 22:54:01 +09:00
b4f8d8e130
Add more test coverage for limiting the number of callbacks.
Bug: 183921387
Test: test-only change
Change-Id: Id48b8eab507fb616cb0adfeba52e00858d44b8a6

Lorenzo Colitti   commited 2021-03-30 20:28:36 +09:00
64ef4d3785
Merge changes I3826b9ef,I91d68ca3
* changes:
  Add static for constant
  Get NetworkCapabilities from NetworkCallback

Treehugger Robot   authored and   Gerrit Code Review   commited 2021-03-30 08:22:41 +00:00
364ad64fa7
Merge changes If539cf5d,I9765f1c9,I6d3007a1 am: 2206e976c1 am: 8c9d2c1823 am: 958a701738
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652262

Change-Id: I94e5cf19a7b7dac8400cb7acf80b39a864099956

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-30 02:24:00 +00:00
61a9bf9f02
Merge "Add session ID to VpnTransportInfo" into sc-dev
Lorenzo Colitti   authored and   Android (Google) Code Review   commited 2021-03-30 00:39:38 +00:00
624a47fc57
Merge changes If539cf5d,I9765f1c9,I6d3007a1
* changes:
  Add test coverage for NetworkAgent callbacks.
  Add a setTeardownDelayMs API to NetworkAgent.
  Address comments on onBlockedStatusChanged(Network, int) CL.

Lorenzo Colitti   authored and   Gerrit Code Review   commited 2021-03-30 00:38:47 +00:00
2206e976c1
Merge "Remove NetworkPolicyManager.isUidBlocked() API." am: 9cff99d059 am: d5da6e7182 am: b8d6d47bd5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652550

Change-Id: Ic5c9fb2603a010976bc93e5059e5548ee782005e

Sudheer Shanka   authored and   Automerger Merge Worker   commited 2021-03-29 17:45:42 +00:00
9d483f1a54
Remove NetworkPolicyManager.isUidBlocked() API.
It isn't used by ConnectivityService any more and even if
it needs such utility method in the future, we could create
one which is part of connectivity module and doesn't need
to be exposed as part of NetworkPolicyManager API surface.

Bug: 183696103
Test: atest ./tests/net/java/com/android/server/ConnectivityServiceTest.java
Change-Id: Ie3c681f88e4b2b9bb92d2224c5ea96b074f155d5

Sudheer Shanka   commited 2021-03-29 12:39:12 +00:00
90358f5154
Add test coverage for NetworkAgent callbacks.
Tests the onNetworkCreated, onNetworkUnwanted and
onNetworkDisconnected callbacks, and the teardown delay timer.

Bug: 181941583
Test: atest --rerun-until-failure 500 ConnectivityServiceTest#testNetworkAgentCallbacks
Change-Id: If539cf5d01ba23193afab2433ed0ac4e7f0550ec

Lorenzo Colitti   commited 2021-03-29 21:33:11 +09:00
1bc9ad0375
Merge "Support Dual ViLTE stats" am: 371bd281f5 am: 4890738bde am: f4cd11179a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1540920

Change-Id: I5739265c2747055b0252da7d1fb9e47d61ca111c

Junyu Lai   authored and   Automerger Merge Worker   commited 2021-03-29 09:05:02 +00:00
92a0b5130f
Merge "Support Dual ViLTE stats"
Junyu Lai   authored and   Gerrit Code Review   commited 2021-03-29 06:59:19 +00:00
371bd281f5
Merge "Re-implement NetworkUtils#queryUserAccess."
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-03-29 04:57:40 +00:00
a99e50dbf7
Re-implement NetworkUtils#queryUserAccess.
Currently, queryUserAccess talks to netd via FwmarkServer.
Doing this from the module would require exposing queryUserAccess
as an NDK API or reimplementing FwmarkClient.

Because queryUserAccess really only uses information that comes
from ConnectivityService/PermissionMonitor anyway, just use that
information without calling to net.

Test: atest HostsideVpnTests
Bug: 171540887
Merged-In: If855de1ea3e1fd2ed30f2795d9b4acfcf969a2dc

Change-Id: If855de1ea3e1fd2ed30f2795d9b4acfcf969a2dc

Lorenzo Colitti   authored and   Remi NGUYEN VAN   commited 2021-03-29 12:11:19 +09:00
092af05525
Add session ID to VpnTransportInfo
- This will be visible only to apps with the NETWORK_SETTINGS
  permissions (signature), and will be redacted for all other callers.
- This string is expected to be the same as set by
  VpnService#setSession, and in general, VpnConfig.session. But it
  will be a general API that Vpn.java can call when setting the
  VpnTransportInfo.
- This string cannot be updated once the VPN NetworkAgent is connected.

Bug: 171872481
Test: atest ConnectivityServiceTest
      atest VpnTransportInfoTest
      atest android.net.cts.NetworkAgentTest
Change-Id: I8d09e25b83f7ee8be21ec9c9bd3c72a251f1370d

lifr   commited 2021-03-29 10:12:17 +08:00
5acb6b6d4e
Merge changes from topic "blocked-reasons-callback-tests" am: 2108a92452 am: 7de5bd543e am: 994e2cedb1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652214

Change-Id: I4d69b1ce096d83c311620950650460024ae348c0

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-26 05:27:47 +00:00
080d3830c2
Add unit tests for onBlockedStatusChanged(Network, int).
Bug: 165835257
Test: atest FrameworksNetTests
Change-Id: I0597df71aa94817835d7a2fb54bfcf9222a34b64

Lorenzo Colitti   commited 2021-03-26 02:37:20 +09:00
9150b1ec95
Add onBlockedStatusChanged(Network, int) to NetworkCallback.
This is similar to onBlockedStatusChanged(Network, boolean) but
it allows the callback holder to know the exact reason why
networking was blocked. It is useful to privileged system
components such as JobScheduler that are able to ignore some
blocked reasons but not others.

Also add a new BLOCKED_REASON_LOCKDOWN_VPN that is used when
networking is blocked because an always-on VPN is in
lockdown mode.

Also move BLOCKED_METERED_REASON_MASK to ConnectivityManager.
This is necessary because ConnectivityService must ensure that
the blocked status callbacks are correctly sent when meteredness
changes (e.g., a UID that is blocked on metered networks will
become unblocked on a network that becomes unmetered). In order
to do this it needs to know which reasons apply only on metered
networks.

Bug: 165835257
Test: unit tests in subsequent CLs in the stack
Change-Id: I647db4f5a01280be220288e73ffa85c15bec9370

Lorenzo Colitti   commited 2021-03-26 02:37:19 +09:00
60104f59a0
[NS06] Implement the don't-reap mechanism
This exposes a mechanism for network providers to tell
the network stack that a given network must be kept up
for some specific reason. This is meant to be easier
for them than to have to file a request, in particular
because there is no guaranteed way to make sure the
request will be best matched by any given network.

Test: new test for this
Bug: 167544279
Change-Id: I238a3ee5ee9262477a23b897e4141769dd1505d1

Chalard Jean   commited 2021-03-25 14:10:06 +00:00
f278aba302
[NS05] Feed network offer callbacks
The design is very simply expressed :
An offer is needed for a request if and only if that offer
might beat the satisfier for that request.

The implementation of "might beat" is NetworkRanker#mightBeat.

Test: FrameworksNetTests FrameworksWifiTests NetworkStackTests
Bug: 167544279
Change-Id: I0fe911eef2483ecbac48c733d56283b81538690a

Chalard Jean   commited 2021-03-25 22:13:10 +09:00
7b6a33bd50
Merge "Add static for constant" into sc-dev
Lucas Lin   authored and   Android (Google) Code Review   commited 2021-03-25 11:34:09 +00:00
3818accfc1
Merge "Add annotation for Vpn#getNetwork()"
Lucas Lin   authored and   Gerrit Code Review   commited 2021-03-25 11:29:38 +00:00
3483ccf883
Merge "Remove the usage of NETID_UNSET from Vpn.java"
Lucas Lin   authored and   Gerrit Code Review   commited 2021-03-25 11:29:17 +00:00
0f114dff28
Add annotation for Vpn#getNetwork()
- Add @VisibleForTesting & @Nullable for Vpn#getNetwork().
- Remove null check in caller side(test) of Vpn#getNetwork()
because if the code is working properly, it can never be null.

Bug: 182963397
Test: atest FrameworksNetTests
Change-Id: Ic52864003fbebd9f4e95d43fefc2e168437b0122
Merged-In: Ic52864003fbebd9f4e95d43fefc2e168437b0122
  (cherry-picked from ag/13946573)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 10:21:07 +00:00
150976c603
Remove the usage of NETID_UNSET from Vpn.java
Modify Vpn#getNetId() to Vpn#getNetwork() and uses NETID_UNSET
when getNetwork() returns null in ConnectivityServiceTest.

Bug: 182963397
Test: atest FrameworksNetTests
Change-Id: I69d449705b1dc541287c72af8dc7705dc4733109
Merged-In: I69d449705b1dc541287c72af8dc7705dc4733109
  (cherry-picked from ag/13927650)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 10:19:05 +00:00
6b49587384
Add static for constant
Bug: 182963397
Test: atest IpConnectivityMetricsTest
Test: atest NetdEventListenerServiceTest
Change-Id: I3826b9efc3418a724bd3753b9ad573adc3343b72
Merged-In: I3826b9efc3418a724bd3753b9ad573adc3343b72
  (cherry-picked from ag/13975513)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 10:16:34 +00:00
2b87890282
Get NetworkCapabilities from NetworkCallback
Register network callback for all networks and record
NetworkCapabilities for every networks. Once onDnsEvent is
triggered, use the netId it passes in to find the corresponding
NetworkCapabilities instead of using netId to create a Network
object(hidden API) then get the NetworkCapabilities by
ConnectivityManager#getNetworkCapabilities.

Bug: 182963397
Test: m
Test: atest IpConnectivityMetricsTest
Test: atest NetdEventListenerServiceTest
Change-Id: I91d68ca33253831b78def1ddeb074ba944a5d6ad
Merged-In: I91d68ca33253831b78def1ddeb074ba944a5d6ad
  (cherry-picked from ag/13959432)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 10:16:20 +00:00
e14573d25e
Merge "Add 5G/NR QOS support" am: df448f6eaa am: 6ed7c1c523 am: 3bad6f9856
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1643762

Change-Id: I74c0d7d771d0b7e067dddc582389f77b8a899542

Jayachandran Chinnakkannu   authored and   Automerger Merge Worker   commited 2021-03-24 18:58:50 +00:00
24411775d7
Merge "Add 5G/NR QOS support"
Jayachandran Chinnakkannu   authored and   Gerrit Code Review   commited 2021-03-24 17:44:48 +00:00
df448f6eaa
Move BLOCKED_REASON_* constants from NPMS into ConnectivityManager.
These constants will now be including all the reasons for why an
uid's network access can be blocked, instead of only the
restrictions that could be imposed by NPMS.

Bug: 183473548
Test: atest ./tests/cts/hostside/src/com/android/cts/net/HostsideRestrictBackgroundNetworkTests.java
Merged-In: I4c544415e12adf442fd2415c371b1b70a39c3aa4
Change-Id: I6dcea43fbefa9eac8b5a971b822a5be5422a54b4

Sudheer Shanka   authored and   Lorenzo Colitti   commited 2021-03-25 01:33:26 +09:00
04aab0f60f
Merge "Move BLOCKED_REASON_* constants from NPMS into ConnectivityManager." into sc-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2021-03-24 16:02:56 +00:00
07c24e301d
Add static for constant
Bug: 182963397
Test: atest IpConnectivityMetricsTest
Test: atest NetdEventListenerServiceTest
Change-Id: I3826b9efc3418a724bd3753b9ad573adc3343b72

lucaslin   commited 2021-03-24 16:23:35 +08:00
c9a448808b
Merge "Add annotation for Vpn#getNetwork()" into sc-dev
Lucas Lin   authored and   Android (Google) Code Review   commited 2021-03-24 03:25:23 +00:00
26990d5bc8
Add 5G/NR QOS support
Bug: 155176305
Bug: 182317794
Test: atest ConnectivityServiceTest
      atest QosCallbackTrackerTest

Change-Id: Idf6d8a7c3b80bc50a2c1244ceaefea9381d40c2f

Jayachandran C   commited 2021-03-23 19:14:21 -07:00
8ae3bf3f92
Merge "Re-implement NetworkUtils#queryUserAccess." into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-24 01:28:35 +00:00
48cd32c356
Merge "Get NetworkCapabilities from NetworkCallback" into sc-dev
Lucas Lin   authored and   Android (Google) Code Review   commited 2021-03-24 01:07:50 +00:00
ffe4be60fb
Move BLOCKED_REASON_* constants from NPMS into ConnectivityManager.
These constants will now be including all the reasons for why an
uid's network access can be blocked, instead of only the
restrictions that could be imposed by NPMS.

Bug: 183473548
Test: atest ./tests/cts/hostside/src/com/android/cts/net/HostsideRestrictBackgroundNetworkTests.java
Ignore-AOSP-First: Merging internally first to handle conflicts.
Change-Id: I4c544415e12adf442fd2415c371b1b70a39c3aa4

Sudheer Shanka   commited 2021-03-23 15:26:29 -07:00
457dfd5dec
Merge "Remove Notification.DevFlags" into sc-dev
Jeff DeCew   authored and   Android (Google) Code Review   commited 2021-03-23 19:50:27 +00:00
8bbf0abc6a
Merge changes I638ed5cd,I29f15571,I21a22ed1 am: 71996469d2 am: 068f44831d am: 12b8bb5c19
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1648068

Change-Id: I6d897cdcfb5b0e4809a32312071eb77623754f94

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-23 14:01:19 +00:00
56ad3fabe4
Remove Notification.DevFlags
Fixes: 176239013
Test: manual
Change-Id: I1aeed1c79e4a829d8829eb08224f9b21fafc50fe

Jeff DeCew   commited 2021-03-23 13:28:55 +00:00
6a77410cf1
Re-implement NetworkUtils#queryUserAccess.
Currently, queryUserAccess talks to netd via FwmarkServer.
Doing this from the module would require exposing queryUserAccess
as an NDK API or reimplementing FwmarkClient.

Because queryUserAccess really only uses information that comes
from ConnectivityService/PermissionMonitor anyway, just use that
information without calling to net.

Test: atest HostsideVpnTests
Bug: 171540887
Change-Id: If855de1ea3e1fd2ed30f2795d9b4acfcf969a2dc

Lorenzo Colitti   authored and   Remi NGUYEN VAN   commited 2021-03-23 13:20:44 +00:00
d81932b836
Get NetworkCapabilities from NetworkCallback
Register network callback for all networks and record
NetworkCapabilities for every networks. Once onDnsEvent is
triggered, use the netId it passes in to find the corresponding
NetworkCapabilities instead of using netId to create a Network
object(hidden API) then get the NetworkCapabilities by
ConnectivityManager#getNetworkCapabilities.

Bug: 182963397
Test: m
Test: atest IpConnectivityMetricsTest
Test: atest NetdEventListenerServiceTest
Change-Id: I91d68ca33253831b78def1ddeb074ba944a5d6ad

lucaslin   commited 2021-03-23 20:02:09 +08:00
ad74ac58dd
Remove NetdService, NetworkStackClient dependency
Netd should be obtained via getSystemService, and
ModuleNetworkStackClient must be used instead of NetworkStackClient for
modules.

Bug: 171540887
Test: m
Change-Id: Ibe703ac56dd70673115cd8b95b44b856a7fc01f3

Remi NGUYEN VAN   commited 2021-03-23 06:05:52 +00:00
e58b20025b