Commit graph

36608 commits

Author SHA1 Message Date
kaichieh
84fb623f64 Merge "Add odm sepolicy support to selinux.cpp" am: f899548cdb am: 1aecf73b43
am: a4d04e1f26

Change-Id: Iba1cb0c66fffe8d59bf9056bd9a6e6932518d4e4
2017-09-04 05:12:57 +00:00
kaichieh
a4d04e1f26 Merge "Add odm sepolicy support to selinux.cpp" am: f899548cdb
am: 1aecf73b43

Change-Id: Ic28dffc35974efc51c4c780a4be075b45d94eaff
2017-09-04 05:04:57 +00:00
kaichieh
1aecf73b43 Merge "Add odm sepolicy support to selinux.cpp"
am: f899548cdb

Change-Id: I33f7ded656fa2e61e130f158a2d8915f68524b91
2017-09-04 04:55:58 +00:00
Treehugger Robot
f899548cdb Merge "Add odm sepolicy support to selinux.cpp" 2017-09-04 04:45:33 +00:00
Jiyong Park
8f63b6cfca libcutils_header exports liblog_headers
cutils/log.h includes log/log.h. Therefore, libcutils_headers needs to
export the liblog_headers so that the clients of libcutils don't have to
explicitly include liblog (or liblog_headers).

Bug: 37342627
Test: build sdk_gphone_x86 userdebug with BOARD_VNDK_VERSION=current
Change-Id: I8875855222b4d073fac4a22bff488c9d082d39df
2017-09-04 12:18:40 +09:00
Wei Wang
d51d09bf38 Merge "init: add option to read file fully on readahead" am: d97a1710b8 am: df9ac65c75
am: cd2d1faea2

Change-Id: I0614738843369e5c7ee4e39792969d7cc9e516d8
2017-09-02 03:13:16 +00:00
Wei Wang
cd2d1faea2 Merge "init: add option to read file fully on readahead" am: d97a1710b8
am: df9ac65c75

Change-Id: I775dd3e2bb2cde4e116f8f8ff0b1c59ef330d38b
2017-09-02 03:07:15 +00:00
Wei Wang
df9ac65c75 Merge "init: add option to read file fully on readahead"
am: d97a1710b8

Change-Id: I2a49bd384b1fe621314916c1f325c03b7fa43162
2017-09-02 03:01:14 +00:00
Treehugger Robot
d97a1710b8 Merge "init: add option to read file fully on readahead" 2017-09-02 02:53:53 +00:00
Wei Wang
02628f3b23 init: add option to read file fully on readahead
Bug: 62413151
Test: boottime, dumpcache
Change-Id: I1a7b69f0619428e4db31c5a7639c5d895c89ecdb
2017-09-01 15:15:51 -07:00
Josh Gao
a50ded5cf7 Merge "libdebuggerd: cleanup." am: 2b8a95a2a7 am: 8577f499b6
am: faf6159952

Change-Id: I593f2b0dc182d4ca05cc89c855253023c46a3f20
2017-09-01 20:07:19 +00:00
Josh Gao
faf6159952 Merge "libdebuggerd: cleanup." am: 2b8a95a2a7
am: 8577f499b6

Change-Id: I5f45f0a1466685d53f2e1ad0e0f6e3b95fd8598d
2017-09-01 20:02:24 +00:00
Josh Gao
8577f499b6 Merge "libdebuggerd: cleanup."
am: 2b8a95a2a7

Change-Id: Icf6a347c23771894af164265538d3f90e3ecd940
2017-09-01 19:56:17 +00:00
Treehugger Robot
2b8a95a2a7 Merge "libdebuggerd: cleanup." 2017-09-01 19:45:31 +00:00
kaichieh
eef4cd7d08 Add odm sepolicy support to selinux.cpp
init: support loading odm sepolicy

Currently init merges two sepolicy cil files:
    - /system/etc/selinux/plat_sepolicy.cil
    - /vendor/etc/selinux/nonplat_sepolicy.cil

This change replaces nonplat_sepolicy.cil with the following two files:
    - /vendor/etc/selinux/declaration/nonplat_declaration.cil
    - /vendor/etc/selinux/vender_sepolicy.cil

And support merging another default (but optional):
    - /odm/etc/selinux/odm_sepolicy.cil.

Bug: 64240127
Test: boot sailfish normally without odm.cil
Test: boot another device having odm.cil
Change-Id: I0b7f8c656c73ddb0fd46f2af3c625d7c81566f2f
2017-09-01 18:13:29 +08:00
Justin Yun
73bd4f05bf Add vndk tag for libunwindstack which must be a vndk-sp
As a VNDK-SP module, Android.bp must have 'vndk' tag as well as
'vendor_available: true'.

The 'vndk' tag for VNDK-SP module is formated as below:
vndk: {
    enabled: true,
    support_system_process: true,
},

VNDK-SP modules will be installed both in system/lib(64) as normal and
in system/lib(64)/vndk-sp as a vendor variant.

Bug: 64395154
Bug: 63866913
Test: build with BOARD_VNDK_VERSION=current
Merged-In: Idb4757988d1799ffcd3341343fcc4dac34bf7ef3
Change-Id: Idb4757988d1799ffcd3341343fcc4dac34bf7ef3
(cherry picked from commit 14d540a156)
2017-09-01 13:40:23 +09:00
Jiyong Park
533062b8d6 Merge "templatize ld.config.txt" into oc-mr1-dev
am: 2d3cf6799e

Change-Id: I570d4d52b630c3de0e82ec67638c6c37c48d1074
2017-09-01 03:28:45 +00:00
TreeHugger Robot
2d3cf6799e Merge "templatize ld.config.txt" into oc-mr1-dev 2017-09-01 03:23:17 +00:00
Bowgo Tsai
2743cf88e8 Merge "Revert "adbd: lessen security constraints when the device is unlocked"" into oc-mr1-dev
am: 7e929121b1  -s ours

Change-Id: Ia325c7b24a09a6f117e5d26da8d75d341e4fd94a
2017-09-01 01:37:40 +00:00
TreeHugger Robot
7e929121b1 Merge "Revert "adbd: lessen security constraints when the device is unlocked"" into oc-mr1-dev 2017-09-01 01:30:51 +00:00
Jiyong Park
8e14484166 Merge "libz is back to LLNDK" into oc-mr1-dev
am: d9d20baf6f

Change-Id: Id2649fcd9c66003a5e84d75d91a34604b5f5d7e0
2017-09-01 00:54:49 +00:00
TreeHugger Robot
d9d20baf6f Merge "libz is back to LLNDK" into oc-mr1-dev 2017-09-01 00:39:14 +00:00
Jiyong Park
faefa6bd36 fix: boot fails on ASAN builds with VNDK restriction
Fix the bug that caused boot failure on ASAN builds with VNDK
restriciton. The major cause is because incorrect (old) ld.config.txt
was used when the build is sanitized, which prevented the dynamic linker
to find some VNDK libs that only exist in /system/lib/vndk; the old
ld.config.txt does not have the directory in its search paths. So, this
CL fixes the problem by having the same ld.config.txt for both sanitized
and non-sanitizied builds.

Furthermore, ld.config.txt is modified so that dependency to
libclang_rt* libs are redirected to those in /system/lib directory. This
ensures that the sanitizer runtime libs are not dual loaded but are
provided for both platform and vendors.

Bug: 65217017
Test: SANITIZE_TARGET=integer_overflow SANITIZE_TARGET_DIAG=integer_overflow m
on 2017 pixel devices. The build is successful and the device boots to
the UI.

Change-Id: I0e21e20d9aca340b984968e07d4ce542ae10fd31
2017-09-01 07:53:56 +09:00
Jiyong Park
367984602a templatize ld.config.txt
Lists of libraries in between the linker namespaces are no longer
hard-coded in ld.config.txt, but instead come from Soong.

Bug: 37139976
Test: build 2017 pixel device with BOARD_VNDK_VERSION=current m -j
Test: the device is bootable, basic functionalities (camera, camcorder,
wifi, bt, gps, etc.) work.
Change-Id: I8170e6c3f6ee04b16359791d64cc46bd2714a073
2017-09-01 07:53:56 +09:00
Jiyong Park
ab8de9ebc3 Make default namespace for system processes isolated
am: 55f05d79f9

Change-Id: Idd31e85fbe01a506f11c88fd4dcecb23db936d0e
2017-08-31 16:17:20 +00:00
Jiyong Park
697eb2da0d libz is back to LLNDK
For 2016 pixel devices, where VNDK is not fully enforced, move libz back
to LLNDK so that we can pass the CTS without requiring the default
namespace to be isolated.

If we have libz in vndk-sp directory, test_linker_namespaces fails
because /system/lib/vndk-sp/libz.so becomes accessible. In order to make
the lib inaccessible, we have to make the default namespace isolated,
but this can't be done for 2016 pixel devices where VNDK is not fully
enforced. So, we choose to remove /system/lib/vndk-sp/libz.so and keep
the single copy at /system/lib.

Bug: 65018779
Test: android.jni.cts.JniStaticTest#test_linker_namespaces successful on
2016 pixel devices

Change-Id: Ib6b6560b02be69d2015c0afb86acf07c02b30c2f
2017-08-31 22:11:35 +09:00
Bowgo Tsai
149f9b7696 Merge "Revert "adbd: lessen security constraints when the device is unlocked"" am: 9638729a9d am: 08a8c4209f
am: 0bf9c716bd

Change-Id: I6611368010a2cad55acbbb43fd4b6de12235f83c
2017-08-31 08:33:34 +00:00
Bowgo Tsai
0bf9c716bd Merge "Revert "adbd: lessen security constraints when the device is unlocked"" am: 9638729a9d
am: 08a8c4209f

Change-Id: I22a007674b17d7bb1d23ddd49d73ba3a918cfe33
2017-08-31 08:30:33 +00:00
Bowgo Tsai
08a8c4209f Merge "Revert "adbd: lessen security constraints when the device is unlocked""
am: 9638729a9d

Change-Id: I25eab992b0a4c2f144454cd5865fad1a762cfc61
2017-08-31 08:27:33 +00:00
Bowgo Tsai
9fa61b4df3 Revert "adbd: lessen security constraints when the device is unlocked"
This reverts commit f1d3dbc32f.

With the following changes to move /sbin/adbd to /system/bin/adbd,
we don't need this workaround anymore.

  https://android-review.googlesource.com/#/q/topic:move-adbd-to-system+(status:open+OR+status:merged)

Bug: 63313955
Bug: 63381692
Bug: 64822208
Test: 'adb root' works in VTS for a non-A/B device (userdebug GSI + user boot.img)

Change-Id: Ic1249d6abd7d6e6e7380a661df16d25447853a48
Merged-In: Ic1249d6abd7d6e6e7380a661df16d25447853a48
(cherry picked from commit 0603ec4294)
2017-08-31 16:26:49 +08:00
Treehugger Robot
9638729a9d Merge "Revert "adbd: lessen security constraints when the device is unlocked"" 2017-08-31 08:21:08 +00:00
Bowgo Tsai
0768f03157 Merge "Move adbd from root to system" am: 3d6f85167e am: f390f04381
am: 53aeb8af81  -s ours

Change-Id: I4d5de7f790db96009543599793ee429ec125cf79
2017-08-31 06:41:26 +00:00
Bowgo Tsai
53aeb8af81 Merge "Move adbd from root to system" am: 3d6f85167e
am: f390f04381

Change-Id: I5916c9dc47c2560c0acbdc1b405e752e041d4bbe
2017-08-31 06:35:57 +00:00
Bowgo Tsai
0603ec4294 Revert "adbd: lessen security constraints when the device is unlocked"
This reverts commit f1d3dbc32f.

With the following changes to move /sbin/adbd to /system/bin/adbd,
we don't need this workaround anymore.

  https://android-review.googlesource.com/#/q/topic:move-adbd-to-system+(status:open+OR+status:merged)

Bug: 63313955
Bug: 63381692
Bug: 64822208
Test: 'adb root' works in VTS for a non-A/B device (userdebug GSI + user boot.img)

Change-Id: Ic1249d6abd7d6e6e7380a661df16d25447853a48
2017-08-31 14:30:51 +08:00
Bowgo Tsai
f390f04381 Merge "Move adbd from root to system"
am: 3d6f85167e

Change-Id: I3b89a7a8e98252319f850a225ef7ba2080e54879
2017-08-31 06:30:48 +00:00
Treehugger Robot
3d6f85167e Merge "Move adbd from root to system" 2017-08-31 06:22:16 +00:00
Jiyong Park
55f05d79f9 Make default namespace for system processes isolated
The default namespace for system process now becomes isolated, which
means it can load only the libs that are in search.paths and under
permitted.paths.

/system/framework, /system/app, /system/priv-app, /vendor/app, /data,
etc are added to the permitted paths since libart should be able to
dlopen odex files under the locations.

Following directories become unavailable:
/system/lib/vndk
/system/lib/vndk-sp

Bug: 37013858
Bug: 64888291
Bug: 64950640
Test: 2017 pixel devices builds and boots
Test: android.jni.cts.JniStaticTest#test_linker_namespaces passes
Change-Id: I2bbe9cc19940c3633c2fb901f9bf8ab813e38c13
2017-08-31 11:52:03 +09:00
Christopher Ferris
723f414ac2 Merge "Add proper support for embedded elf files." am: 537c68c8ed am: 863fcdb0ca
am: b41875be0b

Change-Id: I77cfa66ec34c5c30e44062cfabf0454253a3d92d
2017-08-31 02:41:48 +00:00
Christopher Ferris
b41875be0b Merge "Add proper support for embedded elf files." am: 537c68c8ed
am: 863fcdb0ca

Change-Id: I038dcbbd11f35a494a5197b315278b35b9a72236
2017-08-31 02:32:15 +00:00
Christopher Ferris
863fcdb0ca Merge "Add proper support for embedded elf files."
am: 537c68c8ed

Change-Id: Ia28dbb1bbd02d54602a6256295cccf2def9caf04
2017-08-31 02:25:05 +00:00
Christopher Ferris
537c68c8ed Merge "Add proper support for embedded elf files." 2017-08-31 02:17:41 +00:00
Christopher Ferris
3f805ac3f8 Add proper support for embedded elf files.
- Add a method to get the max size of an elf file by reading the
  section header offset + size. This will properly map an elf
  file embedded into an apk, instead of just mapping in what is done
  by the dynamic linker. It does assume that the section headers are
  at the end of the elf file.
- Add new tests for the above functionality.
- Update the unwind_symbols tool to take an address for finding a
  function instead of dumping the entire symbol table.

Bug: 23762183

Test: Unit tests pass, unwind through the camera process and verify
Test: the GoogleCamera.apk shows some function names.
Change-Id: I00c021680fe1d43b60d652bf91bbf6667d9617be
2017-08-30 15:50:11 -07:00
Tom Cherry
b5d7e00815 Merge "use a single file for storing persistent properties" am: e1f9a58c86 am: 39088d35ee
am: f8d36679bf

Change-Id: Id6b9812de8f7cc774fe7300d0b9e13a0d2b3b248
2017-08-30 19:55:39 +00:00
Tom Cherry
f8d36679bf Merge "use a single file for storing persistent properties" am: e1f9a58c86
am: 39088d35ee

Change-Id: I98871252072953ba8f892cdb1feef09a1b59e769
2017-08-30 19:49:38 +00:00
Tom Cherry
39088d35ee Merge "use a single file for storing persistent properties"
am: e1f9a58c86

Change-Id: Iea9d022eee79e3a4ccf9f5ebc6739d565b6e51b1
2017-08-30 19:42:08 +00:00
Tom Cherry
e1f9a58c86 Merge "use a single file for storing persistent properties" 2017-08-30 19:30:18 +00:00
Josh Gao
12f0dfc915 Merge "base: hopefully fix the mac build." am: 815f74a759 am: 8949a0255e
am: 35e06ef181

Change-Id: Ib9202c26a95e3d264bd0ad0bf215ad257e5b5764
2017-08-30 08:21:28 +00:00
Josh Gao
35e06ef181 Merge "base: hopefully fix the mac build." am: 815f74a759
am: 8949a0255e

Change-Id: I97a5cc9e916ea0905861a2bd87c6902cdc66187c
2017-08-30 08:14:27 +00:00
Josh Gao
8949a0255e Merge "base: hopefully fix the mac build."
am: 815f74a759

Change-Id: I335e774a3c6e1ed1fd662552ae158bd232ae6c78
2017-08-30 08:07:27 +00:00
Treehugger Robot
815f74a759 Merge "base: hopefully fix the mac build." 2017-08-30 08:03:32 +00:00