Commit Graph

88 Commits

Author SHA1 Message Date
Mark Salyzyn ffa763208b libcutils: fs_config: target_out_path assumed /system breaking partitions
(cherry picked from commit 6e9cb8fd79)

Strip off trailing / then /system and then add back the appropriate
config directory.  This fixes an issue with reading vendor, oem or odm
partitions.

Test: manual build successfully interprets all etc/fs_config_* files.
Test: manual incremental build successfully interprets all etc/fs_config_* files.
Bug: 36071012
Change-Id: Iba363f0731bb8d15e595bb45c56db97722edabc2
2017-04-10 19:32:11 +00:00
Mark Salyzyn a53b83c2f4 libcutils: create private/fs_config.h
(cherry picked from commit a9403f0db8)

private/fs_config.h is required in order to build an independent
test that requires internal binary knowledge of the
etc/fs_config_(files|dirs) files.

Test: compile
Bug: 36071012
Change-Id: I268bcfdbb6d45b7bf6040cbf307a4e34812f5fef
2017-04-10 15:26:43 +00:00
Lorenzo Colitti db3d45fa48 Merge "Make the xtables lock readable only by AID_RADIO and root." am: 438720ac2c am: 82cf4caaaa
am: bc918e922e

Change-Id: Icb129aaa1998632b6fffde4802a123b6bee9a26a
2017-03-24 06:34:51 +00:00
Lorenzo Colitti 438720ac2c Merge "Make the xtables lock readable only by AID_RADIO and root." 2017-03-24 06:25:38 +00:00
Mark Salyzyn 02842f2138 Merge "libcutils: fs_config() add check /odm/etc/fs_config_*" am: 1e62880f70 am: e1d2e3436e
am: cdbdf087bd

Change-Id: Ia4c97d29b9813c4ee233b0d62397f11bd79fb020
2017-03-23 20:05:44 +00:00
Mark Salyzyn 2b616cea9e libcutils: fs_config() add check /odm/etc/fs_config_*
Add reading of vendor file-system config files
/odm/etc/fs_config_dirs and /odm/etc/fs_config_files.

Order of interpretation (for dirs and files respectively):
- /system/etc/fs_config_dirs or /system/etc/fs_config_files
- /vendor/etc/fs_config_dirs or /vendor/etc/fs_config_files
- /oem/etc/fs_config_dirs or /oem/etc/fs_config_files
- /odm/etc/fs_config_dirs or /odm/etc/fs_config_files
- internal android_dirs[] or android_files[] structures.

No restrictions are placed on the odm file-system config files,
although the developer is advised to restrict the scope to the /odm
file-system since the intent is to provide support only for
customized portions of odm.img.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: Ic3afb5bb4ea20b15bd5df728be9f16045bf5b039
2017-03-22 15:28:40 -07:00
Lorenzo Colitti 5e801e7bd5 Make the xtables lock readable only by AID_RADIO and root.
Anyone who can read this file can call flock(..., LOCK_EX) on it,
thereby blocking any future iptables commands from running.
Restrict it to user AID_RADIO, which includes device-specific
network management daemons, and group root.

Bug: 36108349
Test: see https://android-review.googlesource.com/#/c/348939/
Change-Id: I4dae4b5a835fabdc1a61a330e0446b39651f8156
2017-03-22 17:03:19 +09:00
Mark Salyzyn 9e16f964fe Merge "libcutils: fs_config() add check /oem/etc/fs_config_*" am: c530045850 am: 6b5913a8b6
am: 8876fffd08

Change-Id: I07ea126a8fae279e888322c88a400d38aad3f381
2017-03-21 18:41:11 +00:00
Mark Salyzyn 74b0b50bbe Merge changes I4077bd6a,I92c4090e,Iff579600 am: e9539eb02f am: 122310429f
am: c232220ff0

Change-Id: I60b0aa1f9c5dba88426fefbc415366d507aeacf6
2017-03-21 17:02:03 +00:00
Mark Salyzyn 62c701e174 libcutils: fs_config() add check /oem/etc/fs_config_*
Add reading of vendor file-system config files
/oem/etc/fs_config_dirs and /oem/etc/fs_config_files.

Order of interpretation (for dirs and files respectively):
- /system/etc/fs_config_dirs or /system/etc/fs_config_files
- /vendor/etc/fs_config_dirs or /vendor/etc/fs_config_files
- /oem/etc/fs_config_dirs or /oem/etc/fs_config_files
- internal android_dirs[] or android_files[] structures.

No restrictions are placed on the oem file-system config files,
although the developer is advised to restrict the scope to the /oem
file-system since the intent is to provide support only for
customized portions of oem.img.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: I56f3fed5efa44d622a9a110937dbc949083d44ae
2017-03-21 08:15:58 -07:00
Mark Salyzyn 9ceadcb0c4 libcutils: fs_config() add check /vendor/etc/fs_config_*
Add reading of vendor file-system config files
/vendor/etc/fs_config_dirs and /vendor/etc/fs_config_files.

Order of interpretation (for dirs and files respectively):
- /system/etc/fs_config_dirs or /system/etc/fs_config_files
- /vendor/etc/fs_config_dirs or /vendor/etc/fs_config_files
- internal android_dirs[] or android_files[] structures.

No restrictions are placed on the vendor file-system config files,
although the developer is advised to restrict the scope to the /vendor
file-system since the intent is to provide support only for
customized portions of vendor.img.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: I4077bd6afcda2ee16189b2eb3c322af15205bbb9
2017-03-21 08:14:42 -07:00
Mark Salyzyn a45eae93f6 libcutils: fs_config: sort files
Sort android_files[] first by requirements, grouping, specificity and
finally by alphanumeric order.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: I92c4090eac0067e0327ac7c8dde229747893d585
2017-03-21 08:14:42 -07:00
Mark Salyzyn c4f9f4c216 libcutils: fs_config: sort dirs
Sort android_dirs[] first by requirements, grouping, specificity and
finally by alphanumeric order.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: Iff579600b05d7b2a0b9fc7d9e9d897e0bb69aebd
2017-03-21 08:14:42 -07:00
Mark Salyzyn 02d5aa9c4b Merge "libcutils: fs_config.c code compliance" am: b501400a76 am: 679942bf0d
am: a02ef7ca54

Change-Id: I30352abb637c8410c94650a9f03d41a12d0595c8
2017-03-21 15:00:54 +00:00
Mark Salyzyn 166e24c91b libcutils: fs_config.c code compliance
Comply with clang-format. Adjust some comments.

Test: full build and install smoke test and inspection
Bug: 36071012
Change-Id: I459a08b4dc4333ab3d75207621a27587849386a5
2017-03-20 15:32:11 -07:00
Po-Chien Hsueh a030c3340c fs_config: Move hostapd to vendor partition
Move hostapd to /vendor/bin/ because it's only used by WIFI HAL.

Bug: 34236942
Bug: 34237659
Test: Hotspot works fine. Integration test.

Change-Id: I8d9f51ed85a0614bf0141461dabeddae094ad4e0
2017-03-06 14:46:32 +08:00
Treehugger Robot 1e48879b6c Merge "Bluetooth hal: moved to vendor partition." 2017-02-28 04:00:58 +00:00
Steven Moreland 18676b2ca8 Bluetooth hal: moved to vendor partition.
Bug: 35328775
Test: works in both binderized and passthrough modes
Merged-In: I61f1ff6b777089d7aad5184c0aee4f653897b32e
Change-Id: I61f1ff6b777089d7aad5184c0aee4f653897b32e
2017-02-28 01:34:59 +00:00
TreeHugger Robot 68f95f715c Merge "Bluetooth hal: moved to vendor partition." 2017-02-28 01:30:07 +00:00
TreeHugger Robot 390f926140 Merge changes from topic 'remove_cap'
* changes:
  libcutils: remove storaged caps
  storaged: reduce storaged privilege
2017-02-28 00:45:25 +00:00
Steven Moreland d0a19a6487 Bluetooth hal: moved to vendor partition.
Bug: 35328775
Test: works in both binderized and passthrough modes
Change-Id: I61f1ff6b777089d7aad5184c0aee4f653897b32e
2017-02-27 15:41:48 -08:00
Alex Klyubin b914f3f835 Merge "Make secilc accessible by root only" am: e803818832 am: 94259da99f
am: 97c93b48ab

Change-Id: I4cb11522ed51aa08afb3e49976ab765641a1a613
2017-02-27 23:27:58 +00:00
Alex Klyubin 3380927e71 Make secilc accessible by root only
There's no reason for SELinux policy compiler to be accessible by
anybode other than root.

Test: Device boots -- secilc isn't used yet anyway
Bug: 31363362
Change-Id: I26cf34f1412b8dd471f79271c491b473617a6df6
2017-02-27 13:27:58 -08:00
Jin Qian 135f161bae libcutils: remove storaged caps
Test: adb shell dumpsys storaged --force
Bug: 35323867
Change-Id: Ia58e5aa24885dcf56f8c4bec9dc15d0f3b4c3f4f
2017-02-27 12:54:32 -08:00
Steven Moreland ba2e677615 Merge "fs_config: wifi is now on vendor partition" am: 11d3d4d22a am: c405ad5c43 am: 0d94c26fc9
am: 141b829e72

Change-Id: Ibd47a0775ca2c27579f4ff98ae2e8c5a55fcb5e8
2017-02-14 03:14:18 +00:00
Steven Moreland b7ca92349e fs_config: wifi is now on vendor partition
Bug: 34135607
Test: pass
Change-Id: I0c9dd9642e780a0303e6aaa6d80e443c59cc0c28
2017-02-13 17:21:17 -08:00
Josh Gao 0633e1ce75 Revert "Give crash_dump CAP_SYS_PTRACE." am: ac91b0c452 am: c49f8f3e3d am: 3d1ca37b0d
am: f11accb25b

Change-Id: Ifc56a652f63419e72274c725d401f67b6fd86320
2017-02-06 19:07:46 +00:00
Josh Gao ac91b0c452 Revert "Give crash_dump CAP_SYS_PTRACE."
This reverts commit 36397cb168.

Bug: http://b/34853272
Test: debuggerd -b `pidof system_server`
Test: debuggerd -b `pidof zygote`
Change-Id: Ibccbccd956779f268d498a52aa737c1959538831
2017-02-01 17:55:22 -08:00
Josh Gao 17e6df25d2 Merge "Give crash_dump CAP_SYS_PTRACE." am: 9e60a54f67 am: a417d90e36 am: 55cb039f55
am: e5c8e7ddaf

Change-Id: I66c1b0751eada4047e5ce6a19634bc3912924280
2017-01-25 21:40:08 +00:00
Josh Gao 36397cb168 Give crash_dump CAP_SYS_PTRACE.
CAP_SYS_PTRACE is needed to ptrace processes that have capabilities
greater than their bounding set. Eventually, this will still be an
improvement, because we can ptrace attach, and then turn on a seccomp
filter that blocks further attaches.

Bug: http://b/34694637
Test: debuggerd `pidof system_server`
Change-Id: I4b9da164ec1fbb5060fdba590e886ac24b6a0785
2017-01-25 11:48:23 -08:00
Jaekyun Seok 3e1bddf9dd Merge "Load default/build props from each partition" am: 8dbab358f0 am: 57337e7791 am: ac747ef65a
am: f184d8bf47

Change-Id: I867e61238287e2e76049ef65cfe408b03691c5eb
2017-01-20 05:40:43 +00:00
Treehugger Robot 8dbab358f0 Merge "Load default/build props from each partition" 2017-01-20 03:58:52 +00:00
Josh Gao 85401cca56 Merge "debuggerd: advance our amazing bet." am: 230201dcbf am: 11b938e881 am: 787f1b29d0
am: 1b1e416fcc

Change-Id: Id6387b7f7ce6aac7ee1ac68ffcf76e69f5c3a924
2017-01-19 00:45:12 +00:00
Jaekyun Seok de21de7a42 Load default/build props from each partition
The following files will be loaded additionally.
- /odm/default.prop and /vendor/default.prop for default props.
- /odm/build.prop for build props.

The props files must follow the following priority order.
- /default.prop > /odm/default.prop > /vendor/default.prop
- /system/build.prop > /odm/build.prop > /vendor/buid.prop

Test: tested default/build prop files with enabling early mount, but
didn't test files of odm partition because odm partition doesn't
exist now.
Bug: 34116668
Change-Id: I946d076dae38f2288865dd986fb16d801d4abcc0
2017-01-19 08:45:40 +09:00
Josh Gao cbe70cb0a8 debuggerd: advance our amazing bet.
Remove debuggerd in favor of a helper process that gets execed by
crashing processes.

Bug: http://b/30705528
Test: debuggerd_test
Change-Id: I9906c69473989cbf7fe5ea6cccf9a9c563d75906
2017-01-17 13:57:57 -08:00
Mark Salyzyn 271a1a7cda resolve merge conflicts of a45b1d6f3 to master
Test: compile
Bug: 30465923
Change-Id: I648855539df3cfa176c6ecac19b6a562ba6feaf7
2017-01-11 11:41:38 -08:00
Mark Salyzyn 01e12b4ee7 Merge "liblog: use log/log.h when utilizing ALOG macros" 2017-01-11 19:07:17 +00:00
Mark Salyzyn 30f991f251 liblog: use log/log.h when utilizing ALOG macros
Test: compile
Bug: 30465923
Change-Id: Id6d76510819ebd88c3f5003d00d73a0dbe85e943
2017-01-11 09:31:15 -08:00
Andre Eisenbach 511dd3b3b4 Merge "Allow Bluetooth HAL to access /sys/class/rfkill" am: 6ad690dfd4 am: a398921635 am: d969153aad
am: bb5ca97809

Change-Id: I348245df98cc42fb37555bb2fa7b904ff7a53713
2017-01-11 03:13:51 +00:00
Andre Eisenbach 8097210093 Allow Bluetooth HAL to access /sys/class/rfkill
Test: compiles; HAL can write rfkill state
Change-Id: I5815a1f50ef8d09bf83541a6d2389b61bd007306
2017-01-10 23:40:20 +00:00
Nick Kralevich f8eadb6b9c Merge "fs_config.c: make *.prop files 0600" am: ebc39117ee am: e733fac3ef am: ab72558bcb
am: 88f3f8837b

Change-Id: Ib1a3a51ee1e7228cb587400da9fb6eecac4c0783
2016-12-17 01:27:51 +00:00
Nick Kralevich 5f9fa90425 fs_config.c: make *.prop files 0600
Enforce that the only API for reading properties is through the property
server, not by reading the (system|vendor|rootfs) *.prop files.

Test: Device boots and no property errors.
Change-Id: Ibb6ed4e74a80cac00010c707d7574f8e92fc6448
2016-12-16 14:54:02 -08:00
Jin Qian 6c9477a244 libcutils: add file permission for storaged
Change-Id: I09b11db0a7a94b51b5b279b3e4ec58ea9f0c12d7
2016-12-15 15:56:39 -08:00
Mark Salyzyn 325aa70591 libcutils: fs_config.c beautification
surfaceflinger has an odd indent and wrap.

SideEffects: None
Test: compile
Change-Id: I5183ab200dbcd13efb0727cb91db5b12018ae804
2016-11-04 14:12:31 -07:00
Mark Salyzyn 4109c433f1 logd: set executable's capabilities in file system
am: 0d2a1dcb49

Change-Id: Icb3fb18ee96be0ae250be153a1600eb4e8cd8408
2016-11-04 14:43:12 +00:00
Mark Salyzyn 0d2a1dcb49 logd: set executable's capabilities in file system
Add CAP_SYSLOG, CAP_AUDIT_CONTROL and CAP_SETGID, set
uid and gid to AID_LOGD, and permissions user and group
read and execute only.

Fix up indents for in table for clarity.

Test: gTest logd-unit-tests, liblog-unit-tests and logcat-unit-tests
      Manually inspect owner and group for /system/bin/logd
Bug: 32450474
Change-Id: I5183ab200dbcd13efb0727cb91db5b12018ae804
2016-11-03 13:34:27 -07:00
Robert Sesek 0dad6acaba Merge "Add fs_config entries for the webview_zygote."
am: 2260c09983

Change-Id: I4c4ae12dc5a0625a4e73905ff11e2d5461aec237
2016-11-03 15:32:23 +00:00
Robert Sesek a2ceaf6b8b Add fs_config entries for the webview_zygote.
The webview_zygote is a non-root zygote process that creates isolated_app
children for rendering web content. It needs:
- CAP_SETUID and CAP_SETGID to change the UID of the new child process.
- CAP_SETPCAP to clear the capability bounding set after forking.

Test: m
Test: angler boots

Bug: 21643067
Change-Id: I986fa04be54e812f5dd2afa14e5d2d3e474e2b10
2016-10-31 10:33:36 -04:00
Roshan Pius c8356e5ca7 Merge "Rename 'wifi_legacy_hal' to 'android.hardware.wifi@1.0-service'"
am: 4376d21e7f

Change-Id: I2e187e4374fba232f0641c2fb447a281e507e216
2016-10-25 23:30:07 +00:00
Roshan Pius f6ac81ea4d Rename 'wifi_legacy_hal' to 'android.hardware.wifi@1.0-service'
Add netlink permissions for the new wifi HAL daemon name.

Bug: 31821133
Test: Compiled and ensured that the permission denials are no longer
present in logs.

Change-Id: If939df4760d9f7e85f0f134617d3a79030e09347
2016-10-24 09:30:10 -07:00