Add file descriptors that should be ignored in the file descriptor
table check.
Use this to ignore the pipe file descriptors when starting an app
with invoke-with (wrapper).
Bug: 32607405
Test: m
Test: Device boots
Test: Apps start
Test: adb root && adb shell setprop wrap.com.android.calculator2 logwrapper && adb shell am start -S -n com.android.calculator2/.Calculator
Change-Id: I4a30dfc9382d3172cc815bd41b17a123799354f6
This makes testing/debugging the job a bit easier.
Test: device boots, packages get compiled
Bug: 32871170
(cherry picked from commit a50d58e22630cd651a815381639e70476991bdbf)
Change-Id: I5b94a8f0b3bbf9075dcaecf028aaf79a21aaab7b
Extract postOta/idle optimizations in their own method.
In preparation for adding the logic to handle secondary dex files.
Test: device boots, pacakges get compiled
Bug: 32871170
(cherry picked from commit be6a71a0b3f369843a26c91dd5123d0499f00e7e)
Change-Id: Ie6cdd8461e7214f5de68bc9172f4171ebf72aa39
PM should already provide the real path of the application directory.
Test: runtest -x .../DexManagerTests.java
Bug: 33807524
Bug: 32871170
(cherry picked from commit c066205cea051c6d9f386188b9cb426c03dbee2d)
Change-Id: Ie6b5f5e61d08710e7ef7d3149b7b13cc7d03a242
Add DexManager to keep track of how dex files are used.
Every time a dex file is loaded, PackageManager will notify DexManager
which will process the load. The DexManager will look up what package
owns the dex file and record its use in package-dex-usage.list (through
PackageDexUsage).
Test: device boots, package-dex-usage.list is created and contains valid data, after device reboot the list is succesfully read from disk.
runtest -x .../PackageDexUsageTests.java
runtest -x .../DexManagerTests.java
Bug: 32871170
(cherry picked from commit b8976d8f22fecaa9ed39276d9d8ded17d35b51a6)
Change-Id: I9d779b2d39814d7c54fc7a888df93d403a001df5
Add PackageDexUsage to handle the I/O operations of dex usage data. It
is responsible to encode, save and load dex
Test: runtest -x .../PackageDexUsageTests.java
Bug: 32871170
(cherry picked from commit 0318162abcbd07a0472989df43e00e353fac731b)
Change-Id: I6d483d480d62aa14cb1663560fd88092469a2835
Implemented getActiveScorerPackage() in the NetworkScoreService to
make it more efficient (no need to query PM).
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 33781558
Change-Id: Iee7610e4982b44aefa1ef8b6c208292b8f9adcf8
Merged-In: I2144351c2c09cad30f80399069364f3572e38445
Implemented isCallerActiveScorer() in the NetworkScoreService to make
it more efficient (no need to query PM). Exposed the call as a new
internal API on NetworkScoreManager and deprecated the call on
NetworkScorerAppManager.
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 33781558
Change-Id: I8ad232f8ef34b6e2f155ebb232e64300303300f0
Merged-In: I0e2142af95b068d322343f7c9362ac53d46b545e
This warning was generated by the static analyzer:
warning: The left expression of the compound assignment is an
uninitialized value. The computed value will also be garbage
*mDirtyMask |= animator->dirtyMask();
This can be fixed by initializing dirtyMask before using it in
AnimateFunctor.
Bug: None
Test: Static analyzer no longer complains about this.
Change-Id: I892749079cf93a012f1bed059a3f0c8bbaed9d7e
* changes:
Dynamically add the webview_zygote's preloaded APK to the zygote FD whitelist.
Split core/jni/fd_utils-inl.h into a .h/.cpp pair.
Zygote: Additional whitelisting for legacy devices.
Zygote: Additional whitelists for runtime overlay / other static resources.
Renamed some test methods to reflect the proper permission.
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 1764042
Change-Id: Ia7db8826ad18c3b8f119aa063cb2c7b3793a9d17
Merged-In: I5551ddcb411432c6aeb14c03d9a284aa68f1bd1b
This refactors the whitelist to be a class, rather than just a static C array.
The whitelist can then be augmented dynamically when the package path is known
in the webview_zygote.
Test: m
Test: sailfish boots
Test: Enable Multi-process WebView in developer options, perform a search in GSA.
Bug: 21643067
Change-Id: Ia1f2535c7275b42b309631b4fe7859c30cbf7309
(cherry picked from commit 061ee3088a79ab0e07d37d1c0897d51422f29c4e)
On M and below, we provide a blanket whitelist for all files under
"/vendor/zygote_whitelist". This path is whitelisted purely to allow
this patch to be applied easily on legacy devices and configurations.
Note that this does not amount to a loosening of our security policy
because whitelisted files are reopened anyway.
(cherry picked from commit 5e2f7c6229d7191183888d685b57a7d0a2835fce)
Bug: 32691930
Test: manual
Change-Id: If5b53f6f0a707f8d36603c09bfd3f72dbfbbbb99
Code search show nobody referenced it and aosp image still compiles after
remove it.
Test: make -j18 systemimage userdataimage ramdisk
Change-Id: I3e37ea590610091b938296c999dceb3caf919906
Merged-In: I3e37ea590610091b938296c999dceb3caf919906
Signed-off-by: Tao Wu <lepton@google.com>
Partially cherry picked from commit 1c15c635785c64a.
These files are safe to reopen for the same reason that files in
/system/framework are. They're regular files and will not change after
the first zygote fork.
(cherry picked from commit 25cd01cc69fcad34756b00e52a79c0c54178f2e6)
Bug: 32618130
Test: m
Change-Id: I119e0bfcbf397cb331064adf148d92a5cd3ea92f
Disable BluetoothOppLauncherActivity component if the
UserManager#BLUETOOTH_DISALLOWED user restriction is set.
Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest#testBluetoothRestriction
Bug: 32895060
Change-Id: I4316843b2858aefa750f12a8a0e940424aa21a10