- Apr 07, 2017
-
-
Sandeep Patil authored
The sepolicy version takes SDK_INT.<minor> format. Make sure our 'current' policy version reflects the format and make it '100000.0'. This ensures any vendor.img compiled with this will never work with a production framework image either. Make version_policy replace the '.' in version by '_' so secilc is happy too. This unblocks libvintf from giving out a runtme API to check vendor's sepolicy version. The PLAT_PUBLIC_SEPOLICY_CURRENT_VERSION will eventually be picked up from the build system. Bug: 35217573 Test: Build and boot sailfish. Boot sailfish with sepolicy compilation on device. Signed-off-by:
Sandeep Patil <sspatil@google.com> Change-Id: Ic8b6687c4e71227bf9090018999149cd9e11d63b
-
TreeHugger Robot authored
* changes: Allow 'su' domain access to vndbinder. Modify checkfc to check (vnd|hw)service_manager_type.
-
Martijn Coenen authored
For example, for listing vndbinder services using 'adb shell service -v list' Test: adb shell service -v list Bug: 36987120 Change-Id: Ibf3050710720ae4c920bc4807c9a90ba43717f3b
-
Martijn Coenen authored
added checkfc options 'l' and 'v' to verify hwservice_manager_type and vndservice_manager_type on service context files, respectively. The checkfc call to verify the new hwservice_contexts files will be added together with hwservicemanager ACL CLs later. Bug: 34454312 Bug: 36052864 Test: device boots, works Change-Id: Ie3b56da30be47c95a6b05d1bc5e5805acb809783
-
- Apr 06, 2017
-
-
TreeHugger Robot authored
-
TreeHugger Robot authored
* changes: sepolicy: fix comments around 'domain' access to search in /vendor sepolicy: remove redudant rule for symlinks in /vendor/app sepolicy: restrict access for /vendor/framework. sepolicy: restrict /vendor/overlay from most coredomains sepolicy: restrict /vendor/app from most coredomains
-
TreeHugger Robot authored
-
Sandeep Patil authored
Some of the same process HAL labeling was missing from Marlin. These are identified by tracking library dependencies. Bug: 37084733 Test: Build and boot sailfish. The change allows the labelled libraries to be opened by any domain. So, the boot test is sufficient. Change-Id: Id55e834d6863ca644f912efdd690fccb71d3eaf3 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
Effectively removes TODOs and finalizes the initial solution to allow all domains access to 'vendor_file'. Bug: 36681074 Test: Build and boot sailfish (no policy changes in the CL) Change-Id: I50c05e20175c5273b34901809d967dd3e48bdb0e Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
All accesses to /vendor/app within platform include permissions to read symlinks in the location. This rule is redundant now. Bug: 36806861 Test: Boot sailfish and find no denials for 'vendor_app_file' Change-Id: Ic17a67521cff6717d83b78bb4ad8e21e772f6d4f Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
/vendor/framework is now designated location for vendor's platform libraries. The directory is thus only made available for 'dex2oat' coredomain. Bug: 36680116 Test: Boot sailfish & angler and launch gApps, dialer w/ no denials for 'vendor_framework_file' Change-Id: I24c2ec30f836330005a972ae20d839bef9dcb8aa Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
The change makes 'vendor_overlay_file' accessible only to few platform domains like idmap, system_server, zygote and appdomain. The overlay files contains RROs (runtime resource overlays) Bug: 36681210 Test: Boot sailfish (treble device) from wiped flashall Test: Connect to wifi and launch chrome to load few websites. Test: Launch camera and record + playback video Change-Id: I3596ca89ad51d0e7d78c75121f22ea71209ee332 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
The change makes 'vendor_app_file' accessible only to few platform domains like dex2oat, idmap, installd, system_server and appdomain. Bug: 36681210 Test: Boot sailfish (treble device) from wiped flashall Test: Connect to wifi and launch chrome to load few websites. Test: Launch camera and record + playback video Change-Id: Ib8757fedbf2e19c8381c8cd0f8f2693b2345534b Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Martijn Coenen authored
-
Mark Salyzyn authored
-
TreeHugger Robot authored
-
Martijn Coenen authored
Bug: 34454312 Bug: 36052864 Test: device boots, works Change-Id: If61d9b736a74c5944cef4449de4dfbaf78d9ccfa
-
Ningyuan Wang authored
-
Dan Cashman authored
This is a necessary first step to finalizing the SELinux policy build process. The mapping_sepolicy.cil file is required to provide backward compatibility with the indicated vendor-targeted version. This still needs to be extended to provide N mapping files and corresponding SHA256 outputs, one for each of the N previous platform versions with which we're backward-compatible. Bug: 36783775 Test: boot device with matching sha256 and non-matching and verify that device boots and uses either precompiled or compiled policy as needed. Also verify that mapping_sepolicy.cil has moved. Change-Id: I5692fb87c7ec0f3ae9ca611f76847ccff9182375
-
Dan Cashman authored
sepolicy-analyze allows users to see all types that have a given attribute, but not the reverse case: all attributes of a given type. Add a '--reverse' option which enables this, but keeps the previous interface. Usage: sepolicy-analyze sepolicy attribute -r init Bug: 36508258 Test: Build and run against current policy. (cherry picked from commit d444ebed) Change-Id: I9813ebf61d50fb5abbc8e52be4cf62751979bbd4
-
Mark Salyzyn authored
logcatd is the same as logcat, except that the -L flag, if supplied, runs once, then the command re-runs itself without the -L flag with the same argument set. By introducing a logcatd daemon executable we can solve the problem of the longish reads from pstore that sometimes occur when the system is excessively busy spinning in a foreground task starving this daemon as we absorb the delay in an init service, rather than in an init exec. This would not have been efficiently possible without the introduction of liblogcat. Test: gTest logcat-unit-tests Test: Manual check logpersist operations Bug: 28788401 Bug: 30041146 Bug: 30612424 Bug: 35326290 Change-Id: I3454bad666c66663f59ae03bcd72e0fe8426bb0a
-
Alex Klyubin authored
-
TreeHugger Robot authored
-
TreeHugger Robot authored
* changes: sepolicy: relabel /vendor Sepolicy: Add ASAN-Extract
-
Nathan Harold authored
* changes: Add IpSecService SEPolicy Update Common NetD SEPolicy to allow Netlink XFRM
-
- Apr 05, 2017
-
-
Sandeep Patil authored
The CL splits /vendor labeling from /system. Which was allowing all processes read, execute access to /vendor. Following directories will remain world readable /vendor/etc /vendor/lib(64)/hw/ Following are currently world readable but their scope will be minimized to platform processes that require access /vendor/app /vendor/framework/ /vendor/overlay Files labelled with 'same_process_hal_file' are allowed to be read + executed from by the world. This is for Same process HALs and their dependencies. Bug: 36527360 Bug: 36832490 Bug: 36681210 Bug: 36680116 Bug: 36690845 Bug: 36697328 Bug: 36696623 Bug: 36806861 Bug: 36656392 Bug: 36696623 Bug: 36792803 All of the tests were done on sailfish, angler, bullhead, dragon Test: Boot and connect to wifi Test: Run chrome and load websites, play video in youtube, load maps w/ current location, take pictures and record video in camera, playback recorded video. Test: Connect to BT headset and ensure BT audio playback works. Test: OTA sideload using recovery Test: CTS SELinuxHostTest pass Change-Id: I278435b72f7551a28f3c229f720ca608b77a7029 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Andreas Gampe authored
Add selinux policies for init script and shell script to unzip a tar containing ASAN libraries on boot. Bug: 36458146 Test: m && m SANITIZE_TARGET=address Test: manual (build steps for tar missing) Change-Id: I5c3cb233aae93ee9985431090af902b0e3c1b0a7 (cherry picked from commit 0b743050) Merged-In: I5c3cb233aae93ee9985431090af902b0e3c1b0a7
-
TreeHugger Robot authored
-
Steven Moreland authored
Test: adbd_test (with and without adb root) Note: one test fails without root with and without this change because of an unrelated shell selinux denial. Test: adb screencap, pull, and verify Test: Android Studio screenshot Bug: 36643190 Change-Id: Ib534240bc9bb3a1f32b8865ca66db988902a0f4a
-
Nick Kralevich authored
-
TreeHugger Robot authored
-
Nick Kralevich authored
Remove system_file:file { lock ioctl } from domain_deprecated. The only domains triggering this were dex2oat and netd, which are fixed in this change. Addresses the following logspam similar to: avc: granted { lock } for comm="iptables" path="/system/etc/xtables.lock" dev="sda22" ino=3745 scontext=u:r:netd:s0 tcontext=u:object_r:system_file:s0 tclass=file avc: granted { lock } for comm="dex2oat" path="/system/framework/arm/boot-okhttp.art" dev="dm-0" ino=1295 scontext=u:r:dex2oat:s0 tcontext=u:object_r:system_file:s0 tclass=file Test: device boots and no obvious problems. Bug: 28760354 Bug: 36879751 Change-Id: Iac851c0e49a52ce4000fdfe16e68c17ff819693f
-
- Apr 04, 2017
-
-
Ningyuan Wang authored
This is used for wificond to check if it is allowed to dump logs. Bug: 31336376 Test: compile, manual test Change-Id: I8a1b681255398f9a1f2cf79fd0891e58283aa747
-
TreeHugger Robot authored
-
TreeHugger Robot authored
-
TreeHugger Robot authored
-
Ray Essick authored
-
Alex Klyubin authored
Wifi Keystore HAL is a HwBinder service (currently offered by keystore daemon) which is used by Wifi Supplicant HAL. This commit thus switches the SELinux policy of Wifi Keystore HAL to the approach used for non-HAL HwBinder services. The basic idea is simimilar to how we express Binder services in the policy, with two tweaks: (1) we don't have 'hwservicemanager find' and thus there's no add_hwservice macro, and (2) we need loosen the coupling between core and vendor components. For example, it should be possible to move a HwBinder service offered by a core component into another core component, without having to update the SELinux policy of the vendor image. We thus annotate all components offering HwBinder service x across the core-vendor boundary with x_server, which enables the policy of clients to contain rules of the form: binder_call(mydomain, x_server), and, if the service uses IPC callbacks, also binder_call(x_server, mydomain). Test: mmm system/sepolicy Test: sesearch indicates to changes to binder { call transfer} between keystore and hal_wifi_supplicant_default domains Bug: 36896667 Change-Id: I45c4ce8159b63869d7bb6df5c812c5291776d892
-
Alex Klyubin authored
SELinux policy no longer has allow rules which permit core/non-vendor domains to communicate with tee domain over sockets. This commit thus removes tee from the list of temporary exceptions for the socket communications prohibition. Test: mmm system/sepolicy Bug: 36714625 Bug: 36715266 Change-Id: Iccbd9ea0555b0c9f1cb6c5e0f5a6c0d3f8730b4d
-
Tianjie Xu authored
Currently update_verifier only verifies the blocks when dm-verity is in 'enforcing' mode; and dm-verity will reboot the device upon detection of errors. However, sometimes the verity mode is not guaranteed to be correct. When mode is 'eio' for example, dm-verity will not trigger a reboot but rather fail the read. So update_verifier need to take the responsibility to reboot the device. Otherwise the device will continue to boot without setting the flag "isSlotMarkedSuccessful". Denial message: update_verifier: type=1400 audit(0.0:18): avc: denied { write } for name="property_service" dev="tmpfs" ino=14678 scontext=u:r:update_verifier:s0 tcontext=u:object_r:property_socket:s0 tclass=sock_file permissive=0 Bug: 36260064 Test: powerctl property sets successfully Change-Id: I1260e60f2ef4db50573e515ba95c332512c8ae62 (cherry picked from commit 0d8c1e0a)
-