Commit graph

102 commits

Author SHA1 Message Date
Elliott Hughes
c86ea11fe9 Switch to a shell_and_utilities phony module.
(cherrypick of cb7d59687483c9532beecde60fe96053eda76948.)

Bug: N/A
Test: builds
Change-Id: I6416d9dded4cc225f57f0a521cf6114f39203ece
2017-04-03 17:13:58 +00:00
Jeff Vander Stoep
2064364765 embedded.mk: Make phony selinux_policy
Moves selinux policy build decisions to system/sepolicy/Android.mk.
This is done because the PRODUCT_FULL_TREBLE variable isn't available
in embedded.mk and TARGET_SANITIZE isn't available to dependencies of
init.

Test: Build/boot Bullhead PRODUCT_FULL_TREBLE=false
Test: Build/boot Marlin PRODUCT_FULL_TREBLE=true
Test: Build Marlin TARGET_SANITIZE=address. Verify asan rules are
      included in policy output.

Bug: 36138508
Change-Id: I792786cd867bae3e1baeb824167a848948a719df
2017-03-26 14:51:38 -07:00
Jaesoo Lee
a1d99c1351 removed "android.hardware.configstore@1.0-impl" from PRODUCT_PACKAGES
This change removes the passthough mode implemention of Configstore.

Bug: 35325577
Test: android.hardware.configstore@1.0-impl.so not exist in outputs and
    Configstore works in binderized mode

Change-Id: Ie9ec24c33701356b7fa8c4f6cfc372c09051f62c
Merged-In: Ic16d5ebe30fabfd62ba4e444fe2775ddfbe2a18a
2017-03-21 11:01:53 +09:00
Alex Klyubin
4fe461d2a0 Remove unused /selinux_version
This file is no longer needed because it was needed for supporting
reloadable/dynamic SELinux policy which is no longer supported.

Test: Clean build, flash, device boots without additional denials.
      Reboot to recovery works, no additional denials.
Bug: 33642277
Change-Id: Ie65e74b8c8437694bc1ea019ab844f60f9e89ade
2017-03-15 09:47:36 -07:00
Jaesoo Lee
2b61f19254 Merge "configstore: add default implementation of configstore@1.0 HAL" 2017-03-14 06:44:13 +00:00
Jiyong Park
4ed780c454 configstore: add default implementation of configstore@1.0 HAL
This change adds default implementation of configstore@1.0 HAL to all
embedded devices.

Bug: 34314793
Test: build. make sure /system/bin/hw has file
android.hardware.configstore@1.0-service

cherry-picked
1d6ab958c configstore: add default implementation of configstore@1.0 HAL

Merged-in: I65f416560de9d65c57e6cfcb9a6fe26b0140d4a6
Change-Id: Ib68fa325a0f0ce60db0701e16a5a9056411fb398
2017-03-10 10:13:17 +09:00
Jeff Vander Stoep
f57a154f2e Include file_contexts conditionally elsewhere
Test: Marlin and Bullhead build and boot with no new denials.
Test: Marlin and Bullhead recovery boots with no new denials.
Test: Bullhead boots with file_contexts.bin in /
Test: Marlin boot with /system/etc/selinux/plat_file_contexts and
      /vendor/etc/selinux/nonplat_file_contexts.
Bug: 36002414

Change-Id: I25af653e060c0c72ea6ad08db8869132885adff8
2017-03-08 21:12:47 -08:00
Alex Klyubin
8e87853a04 Include secilc and sepolicy conditionally, elsewhere
This removes the unconditional inclusion of secilc and sepolicy.
These artefacts are now conditionally included by system/core/init.
The reason for declaring the conditional inclusion there is because
the desired conditional inclusion based on PRODUCT_FULL_TREBLE cannot
be declared here because PRODUCT_FULL_TREBLE is not yet available when
this file is interpreted.

Test: Device boots, no additional SELinux denials. This test is
      performed on a device with PRODUCT_FULL_TREBLE set to true, and
      on a device with PRODUCT_FULL_TREBLE set to false.
Test: Device with PRODUCT_FULL_TREBLE set to true contains secilc and
      the three *.cil files, but does not contain the sepolicy file.
      Device with PRODUCT_FULL_TREBLE set to false contains sepolicy
      file but does not contain the secilc file or any *.cil files.
Bug: 31363362

Change-Id: Ia3f38948b71a054918f5f63c594ba62a033e1066
2017-03-02 12:58:38 -08:00
Yifan Hong
c3373a32e4 sintf.xml => manifest.xml
Bug: 35870239
Test: make -j64 and ensure manifest.xml is there.
Change-Id: I5eccc6dcdc04a3caadc3ccce1d8b58c12f5950ee
2017-03-01 18:09:28 -08:00
Treehugger Robot
569cb34dc0 Merge "Add system/manifest.xml on device" 2017-03-01 02:54:52 +00:00
Yifan Hong
7ebc342b86 Add system/manifest.xml on device
Similar to vendor/manifest.xml on device, this file lists
all HALs defined in the framework (and hence go
to the system image). IServiceManager / IMemory /
etc. getService should consult this file (via VINTF
object under /system/libvintf) to return the HAL in the correct
transport mode.

Bug: 34772739 Create system/manifest.xml
Bug: 35219444 Need interface + instance entry

Test: compiles and manually confirm that system/manifest.xml exist.
Change-Id: I5b3c79b068841e47062cbab6f72d70555801a21d
2017-02-28 16:13:42 -08:00
Alex Klyubin
46dd574918 Make secilc available
The SELinux policy compiler needs to be available on-device to compile
SELinux policy at boot on some devices. For now, we're including this
unconditionally, but, going forward, we will include this binary only
on devices which need it.

Test: Device boots -- secilc is not yet used anyway
Bug: 31363362
Change-Id: I7712b70d7c5b4c57bec2cdb44519b42d26758d09
2017-02-27 13:28:42 -08:00
Steven Moreland
f086747106 embedded.mk: allocator service
We are splitting android.hidl.memory into android.hidl.allocator and
android.hidl.memory to reflect the fact that we have two separate
interfaces which are served over different transports.

Bug: 35327976
Test: hidl_test, device boots with allocator

Merged-In: I36b1554d20f89ecd60a836c04f788ac83e0a1f5c
Change-Id: I36b1554d20f89ecd60a836c04f788ac83e0a1f5c
2017-02-17 20:47:16 +00:00
Sandeep Patil
b0481560e4 SELinux: split property_contexts into platform and non-platform components.
Bug: 33746484
Test: Successfully boot with original service and property contexts.
      Successfully boot with split serivce and property contexts.

Change-Id: I1932684f600dd34d5136e72ac053fae13f0c3eba
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-26 15:30:31 -08:00
Yifan Hong
7dbae043ff Add lshal to embedded.mk.
Test: make -j64 and flash the device and
ensure that lshal is available on the device.

Bug: 34712252
Change-Id: If61047afb27f9da9f8825ce18e2dfc0b3dec10e2
2017-01-26 18:17:36 +00:00
Josh Gao
6651199eeb Merge "Add crash_dump and tombstoned products." 2017-01-18 23:04:09 +00:00
Jorim Jaggi
8cbd925748 Revert "SELinux: split property_contexts into platform and non-platform components."
This reverts commit c5ffdd4bb4.

Change-Id: I4c5fa6c68cbf0124117153660a2fd363f72388b6
2017-01-18 15:37:30 +00:00
Sandeep Patil
c5ffdd4bb4 SELinux: split property_contexts into platform and non-platform components.
Bug: 33746484
Test: Successfully boot with original service and property contexts.
      Successfully boot with split serivce and property contexts.

Change-Id: I1f218ca842407d30650b8987ded6679672171091
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-18 00:41:15 +00:00
Josh Gao
e6b2ddaf69 Add crash_dump and tombstoned products.
Bug: http://b/30705528
Change-Id: I3f6c98f6f907f93e082db085a122557fc8488c83
2017-01-17 13:55:18 -08:00
Sandeep Patil
e4ade08f63 SELinux: split service_contexts into platform and non-platform components.
Bug: 33746484
Test: Successfully boot with original service and property contexts.
      Successfully boot with split serivce and property contexts.

Change-Id: I6fec8d9b3023de09d69198c9e72311a1f03fe844
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-17 04:39:00 +00:00
Treehugger Robot
2ec742a956 Merge "embedded.mk: add android.hidl.memory@1.0-impl" 2017-01-09 20:51:16 +00:00
Steven Moreland
94946d0eb8 embedded.mk: add android.hidl.memory@1.0-impl
Bug: 34134179
Test: both 32 and 64 bit versions of this file are on the device after a
clean build.

Change-Id: I75ab12246c2c44e39b5e863dfec98dc72a36fbbe
2017-01-08 10:00:20 -08:00
Dan Cashman
6f1ea7101f Split seapp_contexts into plat and nonplat components.
Bug: 33746381
Test: Device boots with no extra denials.
Change-Id: Ib403be429562f5e22ed4dd042fb04b0795b558db
2017-01-05 12:56:24 -08:00
dcashman
b52f040bec Build split file_contexts.
Bug: 31363362
Test: Device uses new file_contexts files for labeling decisions.
Change-Id: I33c3297a2ec806f4b9f5dd25f3dd20c4b1001641
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-05 11:25:13 -08:00
Elliott Hughes
5f60b74297 Merge "Revert "Revert "Merge changes from topic 'fsconfig-2'""" 2016-12-27 20:51:07 +00:00
Steven Moreland
7676451252 embedded.mk: +android.hidl.memory@1.0-service
This is the service that provides shared memory for hidl/treble
processes.

Bug: 32185232
Test: builds
Change-Id: I79162a781daad7aa704f4ee071fef0bbdea59a18
2016-12-22 11:39:11 -08:00
Elliott Hughes
2d7c86dfea Revert "Revert "Merge changes from topic 'fsconfig-2'""
This reverts commit fad4b4b715.

Incorporating the following fixes:

1.

fsconfig: fix fs_config_* build for discovered headers

When android_file system_config.h is picked up from the device
directory, neither TARGET_FS_CONFIG_GEN or TARGET_ANDROID_FILESYSTEM_CONFIG_H
are specified. Thus, the build is not generating the required fs_config_files
and fs_config_dirs.

Test: Ensure that make fs_config_files works, and produces the same output as before
      Build the system image and mount it as a loop back and dump the file system
      capabilities with getcap. Verify that output to the supplied
      android_file system_config.h

From the loopback of the system.img mount, from CWD system/bin:
$ getcap *
cnss-daemon = cap_net_bind_service+ep
hostapd = cap_net_admin,cap_net_raw+ep
imsdatadaemon = cap_net_bind_service+ep
ims_rtp_daemon = cap_net_bind_service+ep
logd = cap_setgid,cap_audit_control,cap_syslog+ep
mm-qcamera-daemon = cap_sys_nice+ep
pm-service = cap_net_bind_service+ep
run-as = cap_setgid,cap_setuid+ep
surfaceflinger = cap_sys_nice+ep
webview_zygote32 = cap_setgid,cap_setuid,cap_setpcap+ep
webview_zygote64 = cap_setgid,cap_setuid,cap_setpcap+ep

Compared to the android_filesystem_config.h:
    { 00700, AID_CAMERA,    AID_SHELL,     (1ULL << CAP_SYS_NICE), "system/bin/mm-qcamera-daemon" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/pm-service" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/imsdatadaemon" },
    { 00755, AID_SYSTEM,    AID_RADIO,     (1ULL << CAP_NET_BIND_SERVICE), "system/bin/ims_rtp_daemon" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/cnss-daemon"},

2.

fsconfig: fix error message for duplicate AID

Fixes:
    raise ValueError('Duplicate aid value "%u" for %s' % value,
TypeError: %u format: a number is required, not str

and

    raise ValueError('Duplicate aid value "%s" for %s' % value,
TypeError: not enough arguments for format string

3.

fsconfig: add test for duplicate ranges

Add a test for duplicate range detection.

4.

fsconfig: skip AID_APP, AID_USER and all ranges

Do not output AID_APP, AID_USER and ranges. A range
is defined as ending with AID_ and ending in _START or
_END.

5.

fsconfig: test for skip AID_APP, AID_USER and all ranges

Test against AIDs that caused the bionic tests to fail.

Change-Id: I95569a9ccc83bd3231f8a6f395532cc2de316bd2
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-12-18 10:55:35 -08:00
Daniel Cashman
df1e2102c6 Revert "Add build dependencies for split sepolicy files."
This reverts commit 086189145c.

Change-Id: Idfd210d1f16eefcedda6154b0361611f53c5158f
2016-12-17 00:53:52 +00:00
dcashman
086189145c Add build dependencies for split sepolicy files.
Add build targets for split sepolicy files so they'll appear in the root dir for
on-device compilation.  nonplat_sepolicy will eventually be removed as it should
be provided by a different partition.  Also replace sepolicy.recovery with the
appropriate split components.

Bug: 31363362
Test: Policy builds on-device and boots.
Change-Id: I017dabe6940c3cd20de6c00bb5253274d5a9269b
2016-12-16 14:01:29 -08:00
dcashman
15171f641e Split mac_permissions.xml into plat and non-plat components.
Bug: 31363362
Test: Bullhead and Sailfish both build and boot w/out new denials.
Change-Id: Id7e29ec09510741c4e925231401a6de81704fbf0
2016-12-15 10:04:25 -08:00
Elliott Hughes
fad4b4b715 Revert "Merge changes from topic 'fsconfig-2'"
This reverts commit 1b2de51881, reversing
changes made to 77ea32f378.
2016-12-12 17:28:44 -08:00
Elliott Hughes
1b2de51881 Merge changes from topic 'fsconfig-2'
* changes:
  fs_config: add unit tests
  fs_config: drop fs_config_files/dirs PRODUCT_PACKAGES requirement
  fs_config: add group to build
  fs_config: introduce group generator
  fs_config: add passwd to build
  fs_config: introduce passwd generator
  fs_config: generate friendly in AID class
  fs_config: limit characters for AID_<name> sections
  fs_config: generate oem AID header file
  fs_config: android_id header generator
  fs_config: support parsing android_filesystem_config.h
  fs_config: modularize fs_config_generator
2016-12-10 00:13:05 +00:00
dcashman
c316783843 Sort SELinux package inclusion.
This section will be modified as part of splitting these packages into platform
and non-platform components.  Sort them all to avoid conflicts.

Bug: 31363362
Test: Builds
Change-Id: I91fb4d4d7c0a6971a19047ef2eb2981770a122ff
2016-12-02 09:34:23 -08:00
William Roberts
7fe8b6d817 fs_config: drop fs_config_files/dirs PRODUCT_PACKAGES requirement
When configuring fs_config_files or fs_config_dirs for file_system
capabilities, drop the requirement that OEMs must add the target
to PRODUCT_PACKAGES. This limits the configuration requirement
to only needing to set the new and preferred TARGET_FS_CONFIG_GEN
or the older TARGET_ANDROID_FILESYSTEM_CONFIG_H method.

Test: That only setting TARGET_FS_CONFIG_GEN results in passwd and
group in the build image.
Change-Id: I818854fa1b3e94edaff59a32bd7cf23cf9b504aa
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts
2127b35526 fs_config: add group to build
Setup PRODUCT_PACKAGES for the group file.

The group file is always included in the product
build but may be empty.

Test: That the group file is in the build.
Change-Id: I2ed1759fbe42a7e6833bb754b00cadaf949f128d
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts
6d5e0c5df2 fs_config: add passwd to build
Setup PRODUCT_PACKAGES for the passwd file.

The passwd file is always included in the product
build but may be empty.

Test: That the passwd file is in the build image.
Change-Id: Iedbb81b15d3b281ff4ad36d28adc2ba4523785f2
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
Iliyan Malchev
bd710ed45a build: add hwservicemanager to the core packages
b/31458381
b/31240290

Test: passing build and runtime tests

Change-Id: I294c70d93d23ada94ff1175f2d3babd5b836eeee
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-26 14:21:10 -07:00
Christopher Ferris
07b0a0da9f Merge "Add libc_malloc_debug to the always build list." am: 4d15f2f8c9
am: 093ca195bd

* commit '093ca195bd6a3e21c11ad04553b3fe5c6447ea97':
  Add libc_malloc_debug to the always build list.
2016-01-25 21:33:46 +00:00
Christopher Ferris
4d15f2f8c9 Merge "Add libc_malloc_debug to the always build list." 2016-01-25 21:27:57 +00:00
Alex Klyubin
24b1c64c5b resolve merge conflicts of bb3d77ba95 to master.
Change-Id: Ib69e2a457c416b4da94fb76c231120632d47a07a
2016-01-22 11:05:03 -08:00
James Hawkins
bc5dc64232 bootstat: Add bootstat to the embedded target to support logging boot
time across devices.

Bug: 21724738
Change-Id: I165e8597103ea235a0826e321a1658823c4b4664
2016-01-21 15:39:45 -08:00
Christopher Ferris
ccaeb65d8e Add libc_malloc_debug to the always build list.
Change-Id: I26e553478b5ef4017aea1e06530931d4b18e308b
2015-12-17 15:15:32 -08:00
Dimitry Ivanov
4a1db8a2a1 Merge "Include libGLESv3.so to PRODUCT_PACKAGES" am: 73661d4220 am: 973decf35c
am: fb70c580b1

* commit 'fb70c580b1497a31ff345b36f032241fa55415b2':
  Include libGLESv3.so to PRODUCT_PACKAGES
2015-12-08 03:04:34 +00:00
Dmitriy Ivanov
bb16dcf28e Include libGLESv3.so to PRODUCT_PACKAGES
Bug: http://b/25754041
Change-Id: If5f5030e7e1da037d873f0252dd8beb8ce6fd4db
2015-11-18 15:30:57 -08:00
Dianne Hackborn
30c197eeaf Include the new "cmd" command-line tool in all Android builds.
Change-Id: I93f415ddde0f4e273be04af3379ee706962416d2
2015-10-12 10:39:04 -07:00
Tom Cherry
844079e0f2 resolved conflicts for merge of b8b53534 to mnc-dr-dev-plus-aosp
Change-Id: I72caaa4aaf9ec78abb83e9d9b3ced535ab3f7c04
2015-09-03 15:20:51 -07:00
Tom Cherry
05bd7f3499 move init.trace.rc to frameworks/native
init.trace.rc will be renamed to atrace.rc and use the LOCAL_INIT_RC
mechanism to be included on /system appropriately.

Bug 23186545

Change-Id: Ibb86761d3e8d3c6d194ddb1220f93a71a8c6675b
2015-09-03 14:20:43 -07:00
Badhri Jagan Sridharan
74415b3b6d am 28dd99d8: am a0eb142a: am dfea066f: Merge "Include init.usb.configfs.rc into rootdir" into mnc-dr-dev
* commit '28dd99d8eacb5b1baf4f16a07472de8bbd9d5100':
  Include init.usb.configfs.rc into rootdir
2015-09-03 04:23:00 +00:00
Badhri Jagan Sridharan
a8a4a93733 Include init.usb.configfs.rc into rootdir
Bug=23633457

Change-Id: I26bbc5ff597138b2ccac1de72117753739b31554
2015-09-01 22:43:42 +00:00
Stephen Smalley
d3a803e668 build: switch over to file_contexts.bin only
Change all uses of the file_contexts file to use the
file_contexts.bin file instead.

Depends on
   I75a781100082c23536f70ce3603f7de42408b5ba
   I43806d564b83d57f05f5c36c8eba7b1ff4831b04
   Id560d093440a2aba99cef28c20133b35feebf950
   I15660f4b3e4c5cb8ae0ec1498c74d6fcbb9a0400

Change-Id: Iaf8c4b2e420f610425a07f48db7af32bda3f5b3a
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2015-08-04 14:59:06 -04:00