platform_bionic/libc
Nick Kralevich c5fd81ab25 system_properties.cpp: special case ro.* properties
Currently, reads of ro.* properties are treated differently than
writes of ro.* properties. When writing an ro.* property, we ignore
the "ro." portion of the property, and base the security decision
on the label of the remaining portion.

See e7a9e52740/init/property_service.cpp
line 120-126

For example, for writing, the label associated with
"ro.build.fingerprint" comes from the /property_contexts file
entry:

  # ro.build.fingerprint is either set in /system/build.prop, or is
  # set at runtime by system_server.
  build.fingerprint       u:object_r:fingerprint_prop:s0

However, we fail to follow this same special case when sorting
properties into files. Instead, ro.build.fingerprint is assigned
u:object_r:default_prop:s0 instead of u:object_r:fingerprint_prop:s0

Ignore the "ro." portion when sorting properties into files.
This will make reads and writes of properties use the same label.

Bug: 21852512
Change-Id: Ie88ffc6b78b31fc8ddf370ae27c218546fb25a83
2016-01-05 16:30:17 -08:00
..
arch-arm fix the mremap signature 2015-11-06 13:14:43 -08:00
arch-arm64 fix the mremap signature 2015-11-06 13:14:43 -08:00
arch-common/bionic Properly align init/fini_arrays for crtend.o 2015-05-07 12:56:15 -07:00
arch-mips fix the mremap signature 2015-11-06 13:14:43 -08:00
arch-mips64 fix the mremap signature 2015-11-06 13:14:43 -08:00
arch-x86 Fix -fstack-protector-strong for x86. 2015-12-08 12:48:42 -08:00
arch-x86_64 fix the mremap signature 2015-11-06 13:14:43 -08:00
bionic system_properties.cpp: special case ro.* properties 2016-01-05 16:30:17 -08:00
dns Fix alignment after variable-length data. 2015-07-06 14:43:28 -07:00
include Revert "Revert "Implement getifaddrs(3)/freeifaddrs(3)."" 2016-01-04 13:00:39 -08:00
kernel <netinet/udp.h> should include <linux/udp.h>. 2015-09-22 12:34:13 -07:00
private Merge "sem_timedwait with a null timeout doesn't mean "forever"." 2015-12-17 01:15:15 +00:00
stdio Fix stdio static initializers to make both clang and GCC happy. 2015-12-07 11:07:15 -08:00
stdlib Revert "Revert "Remove __sinit and __sdidinit."" 2015-12-05 07:30:59 -08:00
tools Generate libc version-script for brillo 2015-12-14 14:23:06 -08:00
tzcode Improve libc time zone fallback behavior. 2015-11-13 08:38:48 -08:00
upstream-dlmalloc Fix bug in dlmalloc's version of calloc. 2015-12-16 14:48:03 -08:00
upstream-freebsd Move several FreeBSD functions to OpenBSD. 2015-09-14 19:01:58 -07:00
upstream-netbsd resolve merge conflicts of d676080a37 to lmp-mr1-ub-dev. 2015-10-21 14:56:52 -07:00
upstream-openbsd Rename LIBC64_HIDDEN to LIBC32_LEGACY_PUBLIC. 2015-10-23 12:32:52 -07:00
zoneinfo Update timezone data to 2015g 2015-10-14 08:54:17 +00:00
Android.bp libc: Update Android.bp with recent changes 2016-01-05 14:32:54 -08:00
Android.mk Revert "Revert "Implement getifaddrs(3)/freeifaddrs(3)."" 2016-01-04 13:00:39 -08:00
crt.mk Make .note.android.ident section type SH_NOTE 2015-02-12 21:37:20 -08:00
libc.arm.brillo.map Move __aeabi_ which are not in libgcc.a to LIBC 2016-01-05 13:59:20 -08:00
libc.arm.map Move __aeabi_ which are not in libgcc.a to LIBC 2016-01-05 13:59:20 -08:00
libc.arm64.map Merge changes I4fc241e6,Idca71396 2016-01-04 22:52:21 +00:00
libc.map.txt Move __aeabi_ which are not in libgcc.a to LIBC 2016-01-05 13:59:20 -08:00
libc.mips.brillo.map Merge changes I4fc241e6,Idca71396 2016-01-04 22:52:21 +00:00
libc.mips.map Temporary apply LIBC version to __pthread_gettid 2016-01-05 00:19:13 -08:00
libc.mips64.map Merge changes I4fc241e6,Idca71396 2016-01-04 22:52:21 +00:00
libc.x86.brillo.map Merge changes I4fc241e6,Idca71396 2016-01-04 22:52:21 +00:00
libc.x86.map Temporary apply LIBC version to __pthread_gettid 2016-01-05 00:19:13 -08:00
libc.x86_64.map Merge changes I4fc241e6,Idca71396 2016-01-04 22:52:21 +00:00
MODULE_LICENSE_BSD
NOTICE Regenerate NOTICE files. 2015-08-28 20:23:52 -07:00
SYSCALLS.TXT fix the mremap signature 2015-11-06 13:14:43 -08:00
version_script.txt Revert "Fix volantis boot." 2015-05-08 09:36:03 -07:00