Commit Graph

9946 Commits

Author SHA1 Message Date
David Brazdil
a5083783f7 Merge "Annotate two non-SDK methods known to be used by apps" am: de441278e7
am: 32d2f8fe46

Change-Id: I0d1a0e85eebb555ca43c2d43e6c28ce96af94122
2018-12-20 05:59:08 -08:00
David Brazdil
ad857d637a Annotate two non-SDK methods known to be used by apps
Exempted-From-Owner-Approval: Mechanical changes to the codebase
which have been approved by Android API council and announced on
android-eng@

Bug: 121237128
Bug: 120783643
Test: m appcompat
Change-Id: Ib7a8bdf3151290aa8a5ca85dc8650612432f0d59
2018-12-20 13:36:21 +00:00
Nicolas Geoffray
955963c109 Merge "Use the boot class loader as parent of system server loader." am: 7baf5a8d73
am: c2a38e56f3

Change-Id: I5b467cd965f89240910f6a286d723a50d621b81b
2018-12-19 01:08:02 -08:00
Nicolas Geoffray
7baf5a8d73 Merge "Use the boot class loader as parent of system server loader." 2018-12-19 08:35:24 +00:00
Nucca Chen
97de461dcb Merge "Add new netd event callback for changes to NAT64 prefix" am: ed30ec8dd1
am: dba2101a3c

Change-Id: I4e263d78c48a07fbcbfddc63e118c45b4cfb9c5a
2018-12-17 19:52:40 -08:00
Nucca Chen
ed30ec8dd1 Merge "Add new netd event callback for changes to NAT64 prefix" 2018-12-18 03:19:45 +00:00
Nicolas Geoffray
5d1814e1b3 Use the boot class loader as parent of system server loader.
ART expects the parent of the system server class loader to
be the boot class loader during AOT, so use that at runtime too.

bug: 120039104
Test: boot test
Change-Id: I164f98d319f875d24baa360a4b3d152e8e2fc4d9
2018-12-13 09:27:04 +00:00
Treehugger Robot
a32f898720 Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master" 2018-12-13 05:45:20 +00:00
Steven Moreland
14b2f1aebb Merge "SystemConfig: allow reading sku specific props" am: 2a23450552
am: 79ad229599

Change-Id: Ic07a75a9e66a3d20579ef71b442d32db04fbeb28
2018-12-12 08:50:03 -08:00
Steven Moreland
79ad229599 Merge "SystemConfig: allow reading sku specific props"
am: 2a23450552

Change-Id: I536568038a50d6a45a7387f46efbc5feb65ef9ee
2018-12-12 08:37:08 -08:00
Steven Moreland
2a23450552 Merge "SystemConfig: allow reading sku specific props" 2018-12-12 16:19:43 +00:00
Xin Li
15b123ef45 DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master
Bug: 120502534
Change-Id: Idc8bfb6d97a869b76cfb87ca1a494201baf9e8bd
2018-12-11 14:13:44 -08:00
Xin Li
75f75c18cc DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master
Bug: 120502534
Change-Id: I7351a1832c4bd2fd86324183ab83e9088d716822
2018-12-10 12:30:19 -08:00
Steven Moreland
d7827fdf5c SystemConfig: allow reading sku specific props
Sometimes, very similar devices share the same exact images but use
slightly different hardware. In this case, they distinguish themselves
with skus like ro.boot.product.hardware.sku. This SKU is also used to
distinguish between which HALs are exposed in the VINTF manifest.

In this CL, we add the following locations to read from:
odm/etc/sysconf/sku_${sku}/*.xml
odm/etc/permissions/sku_${sku}/*.xml

Only the configurations already available to be set from the ODM image
can be set here.

Bug: 119129238
Test: boot
Test: manually use unavailable-feature from odm sku directory

Change-Id: I465ac818e5c68f1118668f13b45940fd8fa0fa62
2018-12-10 19:29:35 +00:00
Adrian Roos
38d5c1e8eb Merge "FRP: save password quality in DPM.resetPassword" am: 08d4eb174d
am: 635731866e

Change-Id: Idcccada2ecdb5b1cf011d11dd239c1ee27169882
2018-12-07 03:32:45 -08:00
Adrian Roos
ebf84c264a FRP: save password quality in DPM.resetPassword
When setting a password from DPM.resetPassword(), the actual quality of the
password was not passed to LockSettingsService (instead, the minimum required
quality was passed which is often UNSPECIFIED). As a result, during FRP we
would see inconsistent state and skip it.

Bug: 110172241
Test: Set credential via DPM.resetPassword(), factory reset device to trigger FRP, verify FRP shows.
Change-Id: I54376f60ac53451ace22965d331b47cd8c2e614e
2018-12-06 19:29:39 +01:00
nuccachen
6e81f2a7dc Add new netd event callback for changes to NAT64 prefix
Bug: 78545619
Test: system/netd/tests/runtests.sh pass
Test: Register a callback in ConnectivityService temporarily and print out
event parameters. Check event parameters as expected in logs while NAT64 prefix
is added and removed.

Change-Id: I11b2b0aeb159d5fe8dc01ccf6dc64bd9d4d960a5
2018-12-04 15:25:57 +08:00
Nicolas Geoffray
c64eef6211 Merge "Start using shared libraries class loader." am: e7753e084f
am: 4879460f35

Change-Id: I0d3898a78d116aebb425a9a1cacb5dbac82b3e6d
2018-12-02 13:14:26 -08:00
Nicolas Geoffray
e7753e084f Merge "Start using shared libraries class loader." 2018-12-02 20:39:38 +00:00
Nicolas Geoffray
972b39e4e4 Start using shared libraries class loader.
Change 1/2. Change 2/2 will setup the class loader namespace for
shared libraries.

This change sets up shared libraries class loaders for applications
and for dexopt.

bug: 111174995
Test: DexoptUtilsTest, device boots
Exempt-From-Owner-Approval: PS1 was approved by owner, PS2 is a build fix.

(cherry picked from commit 8d144eb8bd)
Merged-In: Ie9a2b4eaa85cda59951703433f7a2d03bc12095d

Change-Id: I76383308418485ad6739f8a404d02c2771e4afe4
2018-12-02 20:39:29 +00:00
Jeff Sharkey
74c52585f4 Merge changes from topic "sqlitez" am: a920b9c85e
am: fd5131bba5

Change-Id: Id9ca077e14373ad19b2ac98ce65a89ea3fc2873e
2018-12-02 11:56:50 -08:00
Jeff Sharkey
1bf3db90f4 Revert SQLiteQueryBuilder for now. am: 6c90f1ded2
am: d551877fe8

Change-Id: I663ee9e0f55f9c53cba3cecc9c530470377c5ec9
2018-12-02 11:42:46 -08:00
Jeff Sharkey
0da04839b7 Support for appending "standalone" WHERE chunks.
The existing appendWhere() methods aren't very friendly for
developers, since they require manual tracking of state to decide if
subsequent standalone chunks should be prefixed with "AND".

While it's tempting to offer direct argument binding on the builder
class, we can't really deliver on that API in a secure way, so instead
add separate bindSelection() method which explicitly burns arguments
into a standalone selection string, which can then be appended to
the builder.

This was the last piece of new functionality being used by
SQLiteStatementBuilder, so we can delete that class and migrate
users back to SQLiteQueryBuilder.

Bug: 111268862
Test: atest frameworks/base/core/tests/coretests/src/android/database/DatabaseUtilsTest.java
Test: atest frameworks/base/core/tests/utiltests/src/com/android/internal/util/ArrayUtilsTest.java
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Test: atest cts/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
Merged-In: I418f24338c90bae8a9dad473fa76329cea00a8c5
Change-Id: I418f24338c90bae8a9dad473fa76329cea00a8c5
2018-12-01 17:23:05 -07:00
Jeff Sharkey
3e26b7db55 Extend SQLiteQueryBuilder for update and delete.
Developers often accept selection clauses from untrusted code, and
SQLiteQueryBuilder already supports a "strict" mode to help catch
SQL injection attacks.  This change extends the builder to support
update() and delete() calls, so that we can help secure those
selection clauses too.

Extend it to support selection arguments being provided when
appending appendWhere() clauses, meaning developers no longer need
to manually track their local selection arguments along with
remote arguments.

Extend it to support newer ContentProvider.query() variant that
accepts "Bundle queryArgs", and have all query() callers flow
through that common code path.  (This paves the way for a future
CL that will offer to gracefully extract non-WHERE clauses that
callers have tried smashing into their selections.)

Updates ContentValues to internally use more efficient ArrayMap.

Bug: 111268862
Test: atest frameworks/base/core/tests/utiltests/src/com/android/internal/util/ArrayUtilsTest.java
Test: atest cts/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
Merged-In: I60b6f69045766bb28d2f21a32c120ec8c383b917
Change-Id: I60b6f69045766bb28d2f21a32c120ec8c383b917
2018-12-01 17:23:04 -07:00
Hung-ying Tyan
c3f416b6cd Merge "Allow all system configs in /product" am: eca4c3a0d6
am: 0601a2a886

Change-Id: I4822a4cfddc768fd210f0fe74cf2345f88b0a1b7
2018-11-19 20:09:55 -08:00
Treehugger Robot
eca4c3a0d6 Merge "Allow all system configs in /product" 2018-11-20 03:45:37 +00:00
Eugene Susla
6b833a4df8 Merge "Remove exclusive OWNERS for BitUtils" am: 26aff41aa5
am: 60e62c4e20

Change-Id: I5ff9051230f1f24277f8c864ab99a400accd4c3d
2018-11-19 17:44:39 -08:00
Treehugger Robot
26aff41aa5 Merge "Remove exclusive OWNERS for BitUtils" 2018-11-20 01:20:44 +00:00
Eugene Susla
a931f9eec0 Remove exclusive OWNERS for BitUtils
BitUtils is a fairly generic place where all framework engineers should
be able to contribute reusable code.

Test: test after merge in gerrit UI
Change-Id: Ibd00f0618e3e85aab466cedc43605115994cca4f
2018-11-19 14:38:12 -08:00
Peter Collingbourne
ceebc76cb2 Merge "Preserve x18 while preloading SP-HALs in the zygote." am: 23fd045842
am: e03a81cce8

Change-Id: I577e0964abbf758234af6f80dcc69a55ee57d736
2018-11-15 16:10:08 -08:00
Peter Collingbourne
23fd045842 Merge "Preserve x18 while preloading SP-HALs in the zygote." 2018-11-15 23:38:36 +00:00
Junyu Lai
556ae82025 Merge "Extend onDnsEvent callback to report more fields." am: 89eb3e6117
am: 7a782be65d

Change-Id: Ic1b35f2b02dc60e301d39e89008617b341194382
2018-11-04 20:54:14 -08:00
Junyu Lai
89eb3e6117 Merge "Extend onDnsEvent callback to report more fields." 2018-11-05 04:29:47 +00:00
Orion Hodson
4bff3b4fb6 Merge "Add post fork hook for System Server" am: f2a342b3ab
am: a58c2a07c1

Change-Id: I15b3a4ee67b4f78a6903315358f8349f3bd4aa4a
2018-10-31 08:06:24 -07:00
junyulai
4c2d2d5461 Extend onDnsEvent callback to report more fields.
When native layer reports onDnsEvent, netId, eventType and
returnCode are available only in NetdEventListenerService, but
not for the clients who register event on it.

Thus, extend the callback to give clients more detail on the
network the look up was performed on and the result of the
lookup.

Bug: 113916551
Test: 1. runtest frameworks-net
      2. runtest frameworks-services -c com.android.server. \
         net.watchlist.NetworkWatchlistServiceTests
Change-Id: If7beecea50e1baf18cb5c6775ad3ecb1a60b312a
2018-10-31 21:22:45 +08:00
Orion Hodson
46724e7370 Add post fork hook for System Server
Adds a post fork hook for System Server that is used to enable JIT.

Bug: 62356545
Bug: 66095511
Test: device boots, no permission errors
Change-Id: I963e8c4903fb20fd0b5a207fdc6746035b69c569
2018-10-31 06:32:13 +00:00
Junyu Lai
cadfe44e05 Merge "Fix negative uid stats caused by 464xlat adjust when eBPF is on." am: 0d63da86e2
am: d62c2baa6d

Change-Id: I3ee791e4b6fdd9d508807810183dc02c69bd2c0b
2018-10-30 19:46:18 -07:00
junyulai
c33ac0d43b Fix negative uid stats caused by 464xlat adjust when eBPF is on.
When using xt_qtaguid to count per uid stats,
NetworkStatsService needs to adjust the 464xlat traffic since
iptables module would double count for ipv4 and ipv6 packet.
But for eBPF, the per uid stats is collected in a different
hook, so the adjustment on root uid would only be needed in tx
direction.

Bug: 112226716
Test: 1. Make ipv4 traffic in ipv6-only network and check data
         usage.
      2. Make ipv4 traffic in a client which connect to
         ipv6-only hotspot.
      3. runtest frameworks-net
      4. cts-tradefed run cts -m CtsNetTestCases -t \
                 android.net.cts.TrafficStatsTest
      5. cts-tradefed run cts -m CtsUsageStatsTestCases

Change-Id: Ic9a84f5446eddc943c255d5f3b89dad171f53cac
2018-10-30 21:23:38 +08:00
Peter Collingbourne
6f4986b67c Preserve x18 while preloading SP-HALs in the zygote.
Shadow call stack (SCS) is a security mitigation that uses a separate
stack (the SCS) for return addresses. In versions of Android newer
than P, the compiler cooperates with the system to ensure that the
SCS address is always stored in register x18, as long as the app was
compiled with a new enough compiler and does not use features that
rely on SP-HALs (this restriction is because the SP-HALs might not
preserve x18 due to potentially having been compiled with an old
compiler as a consequence of Treble; it generally means that the
app must be a system app without a UI). This change makes it so that
we temporarily store the address on the stack while preloading the
SP-HALs, so that such apps can use the same zygote as everything else.

Bug: 112907825
Change-Id: I5300fe89a0bba514894bdfb58237091d80fd0db8
2018-10-26 15:50:49 -07:00
Nathan Harold
41e2d7494f Merge "Move some members to the "Q blacklist"." am: f5cf9f24ed
am: 13c9e7e2f3

Change-Id: Ia2419cce28d26d9464da2a5172cb332b629e943e
2018-10-24 16:14:06 -07:00
Hans Boehm
8e96fe2c7f Merge "Remove NotificationVisibility storage pool" am: 24141e8124
am: cd2a7fb3b6

Change-Id: Ice97927d55a7c6bf867bcb136bf661243b572c19
2018-10-24 15:19:58 -07:00
Nathan Harold
f5cf9f24ed Merge "Move some members to the "Q blacklist"." 2018-10-23 21:53:51 +00:00
Mathew Inwood
45d2c252b1 Move some members to the "Q blacklist".
Based on some analysis, these fields/methods are likely false positives.
Set maxTargetSdk=P so that any apps using them are required to migrate off
them in future. See the bug for more details.

Exempted-From-Owner-Approval: Automatic changes to the codebase
affecting only @UnsupportedAppUsage annotations, themselves added
without requiring owners approval earlier.

Bug: 115609023
Test: m
Merged-In: I719b5c94e5b1f4fa562dd5d655953422958ad37e
Change-Id: I719b5c94e5b1f4fa562dd5d655953422958ad37e
(cherry picked from commit 8c854f86a4)
2018-10-22 17:28:24 -07:00
Hans Boehm
24141e8124 Merge "Remove NotificationVisibility storage pool" 2018-10-22 20:20:38 +00:00
Hans Boehm
2aa911c01e Remove NotificationVisibility storage pool
Based on recent measurements, storage pools of small objects are
generally not useful.

We ran into this because growing ArrayDeques are potentially very
unfriendly towards a generational GC, and racing recycle calls
can cause it it grow beyond MAX_POOL_SIZE. This isn't a big deal,
but there's no reason we should even be thinking about it.

Test: Build and boot AOSP

Change-Id: Icbda95e472e206c54f141129cc36ddc6d163b095
2018-10-19 18:35:29 -07:00
Dan Sandler
7105e37a8c Add configurable default setting for assistant componentname
By requiring an explicit default setting, it eliminates all ambiguous
states where a disambiguation would normally be shown. With this
change in place, at no point should a disambiguation be shown.

(Note: this is a fix to Change-Id: Ib32daf that clarifies
the logic if R.string.config_defaultAssistantComponentName
has not been set in a given build.)

Test: manual
Bug: 111603898
Change-Id: Id39fdf700ed4ef08ebbc333b5452223430ac2e48
Merged-In: Ib32dafbd3c6fcbe11186dc8ecab6b09c9b734067
(cherry picked from commit c6ed3a29f0e2f0f1ceb727c5ece07702987e4ba5)
2018-10-20 00:17:56 +00:00
David Brazdil
65240e8229 Merge "Add entries to hidden api greylist" am: 7d044566c6
am: be42ec18df

Change-Id: I33b270876d603d19a752c5f3fabb44cebe4bf95f
2018-10-18 14:56:52 -07:00
David Brazdil
be42ec18df Merge "Add entries to hidden api greylist"
am: 7d044566c6

Change-Id: Id7966477ee57cd3a8d3b02c4772b6a572e3f5f1a
2018-10-18 14:25:12 -07:00
Dan Sandler
134e4b284b resolve merge conflicts of aad998c0b4 to pi-dev-plus-aosp
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Icf172daeb848f746c81acd25a4406decc00ed875
Merged-In: Ib32dafbd3c6fcbe11186dc8ecab6b09c9b734067
2018-10-18 13:44:22 +00:00
Steve Elliott
730d1d5cd3 DO NOT MERGE: Add configurable default setting for assistant componentname
By requiring an explicit default setting, it eliminates all ambiguous
states where a disambiguation would normally be shown. With this
change in place, at no point should a disambiguation be shown.

Test: manual
Bug: 111603898
Change-Id: Ib32dafbd3c6fcbe11186dc8ecab6b09c9b734067
2018-10-17 17:46:28 +00:00