Commit Graph

7959 Commits

Author SHA1 Message Date
Mathieu Chartier
bdf7b312b2 Revert "Disable BootImageProfileTest presubmit"
This reverts commit 33b9bb815b.

Bug: 149802360
Reason for revert: Test is hopefully fixed

(cherry-picked from commit ac3eecfd8a)

Test: atest BootImageProfileTest

Merged-In: Ifc99b98d0b438f5c0d7ae29a9046c4fc5fe2cf21
Change-Id: Ifc99b98d0b438f5c0d7ae29a9046c4fc5fe2cf21
2020-02-27 10:06:12 -08:00
Mathieu Chartier
5c8a5051b3 Use shell commands instead of ITestDevice for BootImageProfile test
For some reason, ITestDevice property getting and setting is flaky on
GCE. This causes frequent test failures.

(cherry-picked from commit 94d9a21ccb)

Test: tested on cuddlefish device
Bug: 149802360

Merged-In: Iba48c173bdea2d55d8f2aa7f0fa382628582fe1c
Change-Id: Iba48c173bdea2d55d8f2aa7f0fa382628582fe1c
2020-02-25 12:44:02 -08:00
Mathieu Chartier
75446bc101 Make BootImageProfileTest less flaky
Use the system properties instead of phenotype since GMS can change the
values more arbitrarily for PH properties.

Test: manual
Bug: 149645847

(cherry-picked from commit 599079b381)

Merged-In: If0a716075597f45e95b8357480e4b4a7c52fbb2a
Change-Id: If0a716075597f45e95b8357480e4b4a7c52fbb2a
2020-02-25 12:41:38 -08:00
Gavin Corkery
025b96ee57 Merge "Ensure staged rollback status is logged on boot" into rvc-dev 2020-02-24 15:23:01 +00:00
Charles Chen
1ac295ec08 Revert "Revert "Always get window insets from server""
This reverts commit 288e1bd045.

The previous implementation of computeWindowInsets is to
use last view from WM#addView, which may be invalid because
the last added view is removed and throws NPE when getting
property from the invalid view.
In this CL, we change the approach to always obtain window
insets from server.

fixes: 148789183
fixes: 149480577
Test: atest FrameworksCoreTests:WindowMetricsTest
Test: atest WindowMetricsTests

Change-Id: I6db5970d14ac9eebe0ab0df65cb1300515ad1754
(cherry picked from commit 6bb2d4f68c)
2020-02-24 03:46:51 +00:00
Gavin Corkery
7c46fe3663 Ensure staged rollback status is logged on boot
In the cases that a logging parent cannot be found for any packages
in a rollback, the watchdog event should still be logged. Ensure
that the state of a rollback is captured on boot by removing the
condition of only saving a rollback id if there is a logging package,
and by adding a symbolic null package to the list of logging packages
on boot if none were found. Expand tests to verify.

Bug: 149957011
Test: atest StagedRollbackTest
Test: atest NetworkStagedRollbackTest
Change-Id: I56f8afb6730e59fbe67ea8747e0da3aca19a0d8a
2020-02-23 17:23:23 +00:00
Winson Chung
c4d8bcad86 Merge "Ensure task description icon resources are loaded from the right package" 2020-02-21 22:59:44 +00:00
Sudheer Shanka
77f2a2c3dd Merge "Update BlobStoreMS to augment storage stats with blobs data." 2020-02-21 19:28:09 +00:00
Chalard Jean
94fa6dc345 Merge changes Ia91b3b3c,Id9ecdac5,I4b17d1b1
* changes:
  Revert "[NS D01] Remove candidates that don't satisfy the request."
  Revert "[NS D02] Mix in the ignore on wifi policy."
  Revert "Address comments on ag/10316753"
2020-02-21 11:06:55 +00:00
Chalard Jean
9bcd42255b Revert "[NS D02] Mix in the ignore on wifi policy."
This reverts commit 14af825dbe.

Reason for revert: The feature was punted out of R.

Change-Id: Id9ecdac5292eeddf7c12f2330421248b0f8355a9
2020-02-21 09:28:18 +00:00
Chalard Jean
33834771a3 Revert "Address comments on ag/10316753"
This reverts commit 78b6667292.

Reason for revert: Feature punted

Change-Id: I4b17d1b186369f2ecfcecf4906cd2b99a66bc7a0
2020-02-21 09:28:00 +00:00
TreeHugger Robot
f748ca137e Merge changes from topic "revert-10338939-YCRBMILGZV"
* changes:
  Revert "[NS D03] Migrate the bad wifi avoidance policy"
  Revert "[NS D04] Implement a simple speed comparison between scores."
2020-02-21 08:51:09 +00:00
TreeHugger Robot
80c2e07e00 Merge changes from topic "revert-10343065-HRWTWGOFZV"
* changes:
  Revert "[NS D05] Rework how to tear down networks"
  Revert "[NS D06] Implement more policies"
  Revert "[NS D07] Use the unmodified legacy score"
2020-02-21 07:53:30 +00:00
Chalard Jean
5845d54106 Revert "[NS D03] Migrate the bad wifi avoidance policy"
Revert submission 10338939

Reason for revert: The feature was punted out of R.
Reverted Changes:
I32c12702c:[NS D04] Implement a simple speed comparison betwe...
I688593cc0:[NS D03] Migrate the bad wifi avoidance policy

Change-Id: I640635a1ed94bed3b53466abe2a988caf0eca2b0
2020-02-21 06:47:35 +00:00
JW Wang
ddf44f4d9b Merge changes I3f7c88ee,Ia5d85d3c,I34d26ddc,I0a64e2dc
* changes:
  Remove unused code (4/n)
  Pass "-g --user all" when installing apps (3/n)
  No need to switch users before running tests (2/n)
  Wait for rollback becomes available (1/n)
2020-02-20 10:55:45 +00:00
JW Wang
14168f321a Remove unused code (4/n)
Bug: 149876119
Test: m
Change-Id: I3f7c88eeb74ce5b44646fcb7a690665b78a17f2d
2020-02-20 18:52:21 +08:00
JW Wang
67eb86bb4c Pass "-g --user all" when installing apps (3/n)
'-g' to grant permissions automatically without checking the API level.
This works around the issue of b/149733368#comment2.

'--user all' to install the app on all users. This is more efficient
than calling #installPackageAsUser one by one on each user.

Bug: 149876119
Test: atest MultiUserRollbackTest
Change-Id: Ia5d85d3c13925ae969ffab9319360c1fefe1f950
2020-02-20 18:52:18 +08:00
JW Wang
f2a75879d3 No need to switch users before running tests (2/n)
My local test shows that switch-user doesn't work on my physical device.
In fact there are APIs to run tests against a particular user without
switching. It also speeds up tests without switching users from time to
time.

Bug: 149876119
Test: atest MultiUserRollbackTest
Change-Id: I34d26ddcb6a6e9cdc39228310830a3cd83212e4a
2020-02-20 18:49:59 +08:00
TreeHugger Robot
64996c3ded Merge "Add CutoutSpecificationTest in Presubmit Test scope" 2020-02-20 09:18:40 +00:00
JW Wang
eb908a9ee1 Wait for rollback becomes available (1/n)
Sometimes RollbackManager is slow in making rollbacks available.
Let's give it enough time to do the job and make test less flaky.

Bug: 149876119
Test: atest MultiUserRollbackTest

Change-Id: I0a64e2dcde1f5e6dae618cacd6546ad953c1aca7
2020-02-20 16:25:10 +08:00
Chalard Jean
fb8307638a Revert "[NS D05] Rework how to tear down networks"
Revert submission 10343065

Reason for revert: This is part of a feature that was punted out of R.
Reverted Changes:
Ic9a3d3363:[NS D05] Rework how to tear down networks
I7d815f873:[NS D06] Implement more policies
I561098476:[NS D07] Use the unmodified legacy score

Change-Id: I8d2696d15999265d79abfc9163e7e5ccad873cfe
2020-02-20 07:32:12 +00:00
Chalard Jean
3ee4b2ec83 Revert "[NS D06] Implement more policies"
Revert submission 10343065

Reason for revert: This is part of a feature that was punted out of R.
Reverted Changes:
Ic9a3d3363:[NS D05] Rework how to tear down networks
I7d815f873:[NS D06] Implement more policies
I561098476:[NS D07] Use the unmodified legacy score

Change-Id: I378449443f99eb0a7f01f31f53398b8f55ce87f1
2020-02-20 07:32:12 +00:00
Chalard Jean
10c8d542ff Revert "[NS D07] Use the unmodified legacy score"
Revert submission 10343065

Reason for revert: This is part of a feature that was punted out of R.
Reverted Changes:
Ic9a3d3363:[NS D05] Rework how to tear down networks
I7d815f873:[NS D06] Implement more policies
I561098476:[NS D07] Use the unmodified legacy score

Change-Id: I184817e3aa290afdbe6721a7c36332b940434d3a
2020-02-20 07:32:12 +00:00
Yan Yan
bbe083a8f3 Merge "Do not expose module IPsec(IKE) API from frameworks" 2020-02-20 06:42:22 +00:00
Bill Lin
f351272c36 Add CutoutSpecificationTest in Presubmit Test scope
1) Add CutoutSpecificationTest in Presubmit
2) Add CutoutSpecificationTest in FrameworksTestsFilter

Fixes: 149883140
Test: atest FrameworksCoreTests:CutoutSpecificationTest
Test: adb shell am instrument -w \
    -e filter com.android.server.wm.test.filters.FrameworksTestsFilter \
    -e selectTest_verbose true \
    com.android.frameworks.coretests/androidx.test.runner.AndroidJUnitRunner

Change-Id: I7db8f7797740d48a158650b63b7e90e5f1f28361
2020-02-20 14:19:55 +08:00
Automerger Merge Worker
5c3fd8d2b3 Merge "Sanitize owner UID iff owning app does not have location permissions." am: 239908298e am: 8b18b53599 am: 662028385d
Change-Id: I9b8fb3ff8d907ecda918a8a926edb133b742c8f1
2020-02-20 05:59:35 +00:00
Automerger Merge Worker
8b18b53599 Merge "Sanitize owner UID iff owning app does not have location permissions." am: 239908298e
Change-Id: Ie5876d063d7440aacc57d48cb4573798303910ea
2020-02-20 05:30:20 +00:00
Qingxi Li
239908298e Merge "Sanitize owner UID iff owning app does not have location permissions." 2020-02-20 05:20:27 +00:00
Automerger Merge Worker
4aa7f5edb8 Merge "Update NetworkMonitor integration test constructor" am: a975b9a901 am: 23e15a6802 am: 98f3257fff
Change-Id: Ifc184f8262b33ddbbad1ccc7a1ef0b67259f2e55
2020-02-20 04:31:39 +00:00
Automerger Merge Worker
778d82248d Merge "Disable BootImageProfileTest presubmit" am: 31d2ae697f am: 5691f1b79c am: ad70b790c1
Change-Id: I21cb3a1e08c7de0d2285810172d5a7b503fffed6
2020-02-20 04:30:25 +00:00
Automerger Merge Worker
23e15a6802 Merge "Update NetworkMonitor integration test constructor" am: a975b9a901
Change-Id: Idc27d7900d98eaa8ab3265d6ad6ad82b075197e5
2020-02-20 01:24:58 +00:00
Chalard Jean
a975b9a901 Merge "Update NetworkMonitor integration test constructor" 2020-02-20 01:13:05 +00:00
Benedict Wong
be37378755 Merge "DO NOT MERGE: RELAND: NetworkRequest: Embed requestor uid & packageName" into stage-aosp-master 2020-02-20 01:03:46 +00:00
Qingxi Li
9c5d8b963c Sanitize owner UID iff owning app does not have location permissions.
This change adds permission checking to ensure that the following
conditions are enforced in order for apps to receive the owner UID:
1. The app must be the owner of the network
2. The app must hold the FINE_LOCATION permission/appop
3. The user must have their location toggle enabled.

Bug: 142072839
Test: atest FrameworksNetTests
Change-Id: I7a981a82f1219828ee89c8c96eb9d2efd153377f
2020-02-20 01:02:42 +00:00
Automerger Merge Worker
ad70b790c1 Merge "Disable BootImageProfileTest presubmit" am: 31d2ae697f am: 5691f1b79c
Change-Id: I1d8f4f4372aafefa009b21e515756a6adbb030c6
2020-02-20 00:40:01 +00:00
Automerger Merge Worker
5691f1b79c Merge "Disable BootImageProfileTest presubmit" am: 31d2ae697f
Change-Id: I6183422976507b55302980052abfdf60a1938c02
2020-02-20 00:24:35 +00:00
Winson Chung
d6722037ba Ensure task description icon resources are loaded from the right package
- We previously assumed that icons set in the task description would be
  loaded from the same package as the root activity (which is incorrect),
  instead, they should be fetched from the activity which set them.

  We also deprecate getIcon() because:
  - apps could only get the icons they set previously (not very useful)
  - it didn't return resource icons, only in memory or loaded from disk
  - the name doesn't indicate that it could result in a disk load
  Instead, callers (namely SysUI) should now call loadIcon() to get the
  actual icon directly (or loaded if necessary).

Bug: 143363444
Test: atest TaskDescriptionTest
Test: atest ActivityManagerTest
Change-Id: I48aaba17de2edf0b3a61fa049cf897020d4c2ef1
2020-02-19 15:49:00 -08:00
Roshan Pius
b2e49ac48b DO NOT MERGE: RELAND: NetworkRequest: Embed requestor uid & packageName
Add the requestorUid & requestorPackageName fields to
NetworkCapabilities. This is populated by CS when
a new network request is received.
These 2 requestor fields are also optionally used for network
matching. All of the regular app initiated requests will have the
requestor uid and package name set by connectivity service. Network
agents can optionally set the requestorUid and requestorPackageName
to restrict the network created only to the app that requested the network.

This will help removing the necessity for the various specifiers to embed
the uid & package name info in the specifier for network matching.

Note: NetworkSpecifier.assertValidFromUid() is deprecated & removed in
favor of setting the uid/package name on the agent to restrict the
network to a certain app (useful for wifi peer to peer API & wifi aware).

Bug: 144102365
Test: Verified that wifi network request related CTS verifier tests
pass.
Test: Device boots up and connects to wifi networks
Merged-In: I207c446108afdac7ee2c25e6bbcbc37c4e3f6529

Change-Id: I58775e82aa7725aac5aa27ca9d2b5ee8f0be4242
2020-02-19 23:12:32 +00:00
Roshan Pius
fbf32a013d DO NOT MERGE: RELAND: NetworkRequest: Embed requestor uid & packageName
Add the requestorUid & requestorPackageName fields to
NetworkCapabilities. This is populated by CS when
a new network request is received.
These 2 requestor fields are also optionally used for network
matching. All of the regular app initiated requests will have the
requestor uid and package name set by connectivity service. Network
agents can optionally set the requestorUid and requestorPackageName
to restrict the network created only to the app that requested the network.

This will help removing the necessity for the various specifiers to embed
the uid & package name info in the specifier for network matching.

Note: NetworkSpecifier.assertValidFromUid() is deprecated & removed in
favor of setting the uid/package name on the agent to restrict the
network to a certain app (useful for wifi peer to peer API & wifi aware).

Bug: 144102365
Test: Verified that wifi network request related CTS verifier tests
pass.
Test: Device boots up and connects to wifi networks
Merged-In: I207c446108afdac7ee2c25e6bbcbc37c4e3f6529

Change-Id: I58775e82aa7725aac5aa27ca9d2b5ee8f0be4242
2020-02-19 23:12:28 +00:00
Automerger Merge Worker
0bdf785b96 Merge changes from topic "settings-vpn" am: 70f90282ef am: ff39b8ba90 am: 752013f696
Change-Id: Idac6e83bab50b818e2776f28da380f08000e2a42
2020-02-19 23:08:32 +00:00
Sudheer Shanka
e9232d6d6f Update BlobStoreMS to augment storage stats with blobs data.
- Any pending sessions data is attributed to the apps
  which contributed them.
- Any commited blobs data is attributed to the app which
  has a lease on it. If multiple apps have lease on a blob, don't
  attribute the blob to those apps for now.
- Remove StorageStatsAugmenter.augmentStatsForUser as it
  is not used for anything currently.
- Fix an issue in how we override existing committers and leasees.

Bug: 148694869
Test: atest cts/tests/BlobStore/src/com/android/cts/blob/BlobStoreManagerTest.java
Test: atest tests/tests/os/src/android/os/storage/cts/StorageStatsManagerTest.java
Test: atest hostsidetests/appsecurity/src/android/appsecurity/cts/StorageHostTest.java
Test: manual
Change-Id: Ia4af0a2549c75db66741f2d1979de95d2d150bc8
2020-02-19 14:45:12 -08:00
evitayan
daeb328e32 Do not expose module IPsec(IKE) API from frameworks
Module IPsec(IKE) will not be in bootclasspath or expose API
from frameworks/base anymore. Instead it will be built as a
java_sdk_library and expose APIs under its own directory.

This commit:
- Removes API from frameworks/base
- Adds ike to FrameworksNetTests manifest so that VpnTest is
  able to load it.

Bug: 145995723
Test: build, flash, boot
Test: atest FramewokrsIkeTests (passed)
Test: m mts && mts-tradefed run mts-ipsec (passed)
Test: manually tested that FrameworksNetTests can use ike.jar
Change-Id: I37ba02eb3003ea28e66f50ca0b612597ef48f6d5
2020-02-19 12:55:25 -08:00
Mathieu Chartier
33b9bb815b Disable BootImageProfileTest presubmit
Test is failing, disabling until fixed.

Bug: 149802360
Test: TH
Change-Id: Iac12d7ecd9e6a042ecafd3a0ef41da7daebe655f
2020-02-19 12:42:44 -08:00
Chalard Jean
ff83b0e467 [NS D07] Use the unmodified legacy score
Ranking used to make use of the various adjustments in
ConnectivityService. These are now implemented in policy.

Test: ConnectivityServiceTest

Change-Id: I56109847678ea5cda1752511123ba652c0f4fe36
2020-02-19 22:17:13 +09:00
Chalard Jean
e9fd5a7229 [NS D06] Implement more policies
Namely :
• Explicitly selected policy
• VPN policy
• Validated policy

These go together to avoid breaking any test, because multiple
tests rely on all of these working.

Test: ConnectivityServiceTest

Change-Id: I7d815f87320c2becbfc93a60a3c54346ff4f47c9
2020-02-19 22:17:12 +09:00
Chalard Jean
ea0cf5084c [NS D05] Rework how to tear down networks
Networks are torn down if they don't satisfy requests but only if
they are found unable to ever do so. This is important because
general-purpose networks typically turn up unvalidated, which
means they would get torn down immediately in the presence of
some worse network that is already validated.

Note that functionally it's the same as before for the existing
scores, except that
• An exiting network that doesn't satisfy any request is always
  torn down immediately – this is WAI
• An unmetered network is never torn down when compared to a
  metered network – this is a bugfix (previously the platform
  would tear down an unmetered cellular on grounds that it
  could not beat the performance of a metered Ethernet, but
  that's wrong ; the bug was never realized because Android
  always thinks Ethernet is unmetered)
• An unvalidated network will not be torn down if the current
  satisfier is also unvalidated, even if the satisfier is much
  faster. This is the reason for the change in the test. It's
  wrong to tear down in this case because even if much slower
  the slower network should win if it validates and the other
  doesn't.

Test: ConnectivityServiceTest
Change-Id: Ic9a3d336306a25d1272976ce467aa7c908af7bef
2020-02-19 21:27:22 +09:00
Automerger Merge Worker
ff39b8ba90 Merge changes from topic "settings-vpn" am: 70f90282ef
Change-Id: If7e8310306889b38527bfab65316a50807814372
2020-02-19 07:51:20 +00:00
Automerger Merge Worker
7deb069d3d Add always-on VPN support for platform VPNs am: 522f3c932d
Change-Id: I9f600a9ea2002bf9a1ee88137e3a29b2c90b22ac
2020-02-19 07:51:14 +00:00
Benedict Wong
24a2be8275 Add support for starting IKEv2/IPsec VPNs from settings
This commit allows the startLegacyVpn() call to start Platform VPN
profiles, allowing Settings to use the IKEv2/IPsec VPN options

When using an aliased private key, the
Ikev2VpnProfile.KEYSTORE_ALIAS_PREFIX must be prepended to the front of
the alias. This will in turn result in the fromVpnProfile() function to
pull the key from the KeyStore, as opposed to the inline-key that the
VpnManager API uses.

Bug: 148991741
Test: FrameworksNetTests passing, new tests added in subsequent CL
Test: Manually tested
Change-Id: Icbca695c353b2e12e99305676404dbf1a4495949
2020-02-19 02:44:34 +00:00
Benedict Wong
522f3c932d Add always-on VPN support for platform VPNs
This commit allows Platform VPNs to be started as part of always-on
mode.

Test: FrameworksNetTests passing, new tests added in subsequent CL
Test: Manually tested.
Change-Id: I5eda88e5b406a0e425eb7424665cf702e0979324
Merged-In: I5eda88e5b406a0e425eb7424665cf702e0979324
2020-02-18 22:13:31 +00:00