History log of /system/core/init/property_service.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c787cf291ac8ef343dea81ca696b028c6974e0b2 11-Jan-2016 Tom Cherry <tomcherry@google.com> Remove special case handling of "ro." properties permissions

Currently, properties that begin with "ro." are special cased to skip
over the "ro." part of the prefix before matching with entries in
property_contexts. This is not strictly needed however and it is
causing complications with the separated prop files work from Bug
21852512, so it is now removed.

Bug 26425619

Change-Id: I3cd14fa2176f96b3931e5f6a50c4a7bcd3af3da6
/system/core/init/property_service.cpp
1563d6546cd1d329c6ee64288f1915e9fd284ea9 08-Dec-2015 Tom Cherry <tomcherry@google.com> Remove property_area_initialized

This is deadcode as property_init() will only ever be called once and
the only remaining caller of properties_initialized() is
Service::NotifyStateChange() which can only be called after properties
have been initialized.

Change-Id: Ie071af84fcdbead72d259890fc8fb8db624282e7
/system/core/init/property_service.cpp
c68998441cdf32159912704fdd264b4750390012 08-Dec-2015 Tom Cherry <tomcherry@google.com> Merge "Remove ANDROID_PROPERTY_WORKSPACE"
4f71319df011d796a60a43fc1bc68e16fbf7d321 05-Dec-2015 Elliott Hughes <enh@google.com> Track rename of base/ to android-base/.

Change-Id: Idf9444fece4aa89c93e15640de59a91f6e758ccf
/system/core/init/property_service.cpp
265f525e21d1dea3c09678a545c2df324736a490 22-Sep-2015 Tom Cherry <tomcherry@google.com> Remove ANDROID_PROPERTY_WORKSPACE

Bug 23290008

Change-Id: I95babe735444ada10c67594ace700cae5d1ec0b3
/system/core/init/property_service.cpp
6036114f93cbe0072f4e9ba57b22e433ef8afaf4 02-Dec-2015 Tom Cherry <tomcherry@google.com> Abort if __system_property_area_init fails

If __system_property_area_init() fails, there is a fundamental issue
with the system and we should abort from init.

Bug: 21852512
Change-Id: I05d7978ba3bcc347027a6d9443de7cdd229033d2
/system/core/init/property_service.cpp
545b7c9e395fcbf4f9747b0a311abd909ad59cc3 10-Oct-2015 Nick Kralevich <nnk@google.com> am 2fb90dc8: Merge changes from topic \'userspace-audit\'

* commit '2fb90dc8b2b590e674c5e433e8bf3d3f08a887c8':
debuggerd: audit pid, uid and gid on SE Linux denial
property_service: log pid,uid and gid of setprop client
2fb90dc8b2b590e674c5e433e8bf3d3f08a887c8 10-Oct-2015 Nick Kralevich <nnk@google.com> Merge changes from topic 'userspace-audit'

* changes:
debuggerd: audit pid, uid and gid on SE Linux denial
property_service: log pid,uid and gid of setprop client
d7aea443d9bc0b1f37a2c31d0d476d61ff41fb66 02-Oct-2015 William Roberts <william.c.roberts@intel.com> property_service: log pid,uid and gid of setprop client

When auditing setprop denials, it is often unclear of who the process is
in a multi-process domain. To help identify the invoker, log the pid, uid,
and gid of the caller.

Before:
avc: denied { set } for property=wifi.xxx ...

After:
avc: denied { set } for property=wifi.xxx pid=30691 uid=123 gid=345 ...

Change-Id: I5cdcb3d18fbd52e0987b5e1497b9f6620c6c742a
Signed-off-by: William Roberts <william.c.roberts@intel.com>
/system/core/init/property_service.cpp
62b3f91d142e8c0b698729d3d7f3f4a9b8924c2f 24-Jul-2015 Yabin Cui <yabinc@google.com> am bff40697: am addf7a96: Merge "init: Let property_get return std::string."

* commit 'bff406978aad1a599d01f539d0a9b5718aaceca3':
init: Let property_get return std::string.
0ff8590e78d32a38169f1a1f0156d5287f9d6162 24-Jul-2015 Yabin Cui <yabinc@google.com> resolved conflicts for merge of bff40697 to mnc-dr-dev-plus-aosp

Change-Id: I7d7a614a5eb987ef6aecd32ed15a6eaa43e93957
74edcea90e31a3795e58aa1b2bbe96032f0bcd61 24-Jul-2015 Yabin Cui <yabinc@google.com> init: Let property_get return std::string.

Bug: 22654233

Change-Id: Id6091f58432f75e966b9871256049fbe17766c10
/system/core/init/property_service.cpp
c1fa34b9f600c827769b4401d8b12e7c587b68f4 13-Jul-2015 Paul Lawrence <paullawrence@google.com> am d5ef9841: Merge "Change init sequence to support file level encryption" into mnc-dr-dev

* commit 'd5ef984195779aa9e27d7baabdd751d641eea1a0':
Change init sequence to support file level encryption
948410a4936fda5348304af9711db932926bcc1a 01-Jul-2015 Paul Lawrence <paullawrence@google.com> Change init sequence to support file level encryption

File level encryption must get the key between mounting userdata and
calling post_fs_data when the directories are created. This requires
access to keymaster, which in turn is found from a system property.

Split property loaded into system and data, and load in right order.

Bug: 22233063
/system/core/init/property_service.cpp
e8308f852c867bc676e71875ea57de022464ea09 07-Jul-2015 Paul Lawrence <paullawrence@google.com> am 81046166: Merge "Revert "Change init sequence to support file level encryption"" into mnc-dev

* commit '8104616696ac5e806b16a393ea02c4f5d8efc328':
Revert "Change init sequence to support file level encryption"
c011b031c988038f81c72875fdd6ac7349774f35 07-Jul-2015 Paul Lawrence <paullawrence@google.com> am 81046166: Merge "Revert "Change init sequence to support file level encryption"" into mnc-dev

* commit '8104616696ac5e806b16a393ea02c4f5d8efc328':
Revert "Change init sequence to support file level encryption"
437bc5dceca1608456c1c40b694645bc2d100ad4 07-Jul-2015 Paul Lawrence <paullawrence@google.com> Revert "Change init sequence to support file level encryption"

This reverts commit d815178b7512cb44d8b5f234e3f823b5a3e44dea.

Change-Id: I7e3f55d3092fcd04ea9f62f1971c9d42570f096c
/system/core/init/property_service.cpp
22d0ee6a25b3bedd6c3cd52473df1404fce8615f 06-Jul-2015 Paul Lawrence <paullawrence@google.com> am a65e402b: Merge "Change init sequence to support file level encryption" into mnc-dev

* commit 'a65e402b613e927697d35e7936c6d80908d77e88':
Change init sequence to support file level encryption
d3669ff27f782ce1da324f0a6043204a3a4e9f3f 06-Jul-2015 Paul Lawrence <paullawrence@google.com> am a65e402b: Merge "Change init sequence to support file level encryption" into mnc-dev

* commit 'a65e402b613e927697d35e7936c6d80908d77e88':
Change init sequence to support file level encryption
d815178b7512cb44d8b5f234e3f823b5a3e44dea 01-Jul-2015 Paul Lawrence <paullawrence@google.com> Change init sequence to support file level encryption

File level encryption must get the key between mounting userdata and
calling post_fs_data when the directories are created. This requires
access to keymaster, which in turn is found from a system property.

Split property loaded into system and data, and load in right order.

Bug: 22233063
Change-Id: I8a6c40d44e17de386417a443c9dfc3b4e7fe59a5
/system/core/init/property_service.cpp
746d5cd66ae3c5c6ee422d45be08dcd4403b6d24 13-Jun-2015 Nick Kralevich <nnk@google.com> am a27dca0f: am 60c5a460: Merge "Remove calls to is_selinux_enabled()"

* commit 'a27dca0f7a5d6c1f79aaf213a6b26428e4ad855e':
Remove calls to is_selinux_enabled()
4d87095ebfefdb9e641492462f0a0e21d5b96ecf 13-Jun-2015 Nick Kralevich <nnk@google.com> Remove calls to is_selinux_enabled()

d34e407aeb5898f19d4f042b7558420bbb3a1817 removed support for
running with SELinux completely disabled. SELinux must either be
in permissive or enforcing mode now.

Remove unnecessary calls to is_selinux_enabled(). It always returns
true now.

Change-Id: Ife3156b74b13b2e590afe4accf716fc7776567e5
/system/core/init/property_service.cpp
76417519ec7b361604f4977b9ad238d0a276c49d 09-Jun-2015 Jeff Sharkey <jsharkey@android.com> New "selinux.restorecon" control property.

This new property is used as a control verb for running a recursive
restorecon at the path contained in the property value.

Shifts both SELinux actions to occur before the actual property set
occurs, so setters can watch for completion.

Bug: 21121357
Change-Id: I3db3eb876ae66e144b3bfd648349b66a028511fd
/system/core/init/property_service.cpp
cce7e93b287835ffe9cdc3dad3fac52972d84560 12-May-2015 Tom Cherry <tomcherry@google.com> Fix insmod module size

read_file() used to append a new line character to the end of the buffer it
returns, because parse_config() isn't able to cope with input that's not
'\n'-terminated. Fix read_file() to be less insane, and push the workarounds
into the parse_config() callers.

Longer term we should rewrite parse_config().

Bug: http://b/21079470
Change-Id: Ie9d9a7adcd33b66621726aef20c4b8cc51c08be7
(cherry picked from commit eaa3b4ec6f79fe06163b8dd6fe8ba2581d3b9c0b)
/system/core/init/property_service.cpp
eaa3b4ec6f79fe06163b8dd6fe8ba2581d3b9c0b 12-May-2015 Tom Cherry <tomcherry@google.com> Fix insmod module size

read_file() used to append a new line character to the end of the buffer it
returns, because parse_config() isn't able to cope with input that's not
'\n'-terminated. Fix read_file() to be less insane, and push the workarounds
into the parse_config() callers.

Longer term we should rewrite parse_config().

Change-Id: Ie9d9a7adcd33b66621726aef20c4b8cc51c08be7
/system/core/init/property_service.cpp
cb3fce80fafa2848fd4962d9f242c21eef3d82f9 08-May-2015 Andres Morales <anmorales@google.com> load ro.recovery_id property from recovery partition

Change-Id: I9dc1f325e353375d9c1c8ed949636e2404601076
(cherry picked from commit db5f5d43679546ecde2b85151c0a8b8ccd605b07)
/system/core/init/property_service.cpp
db5f5d43679546ecde2b85151c0a8b8ccd605b07 08-May-2015 Andres Morales <anmorales@google.com> load ro.recovery_id property from recovery partition

Change-Id: I9dc1f325e353375d9c1c8ed949636e2404601076
/system/core/init/property_service.cpp
dff18174d2779d65815a5b03956a30c13dd8e71c 08-May-2015 Andres Morales <anmorales@google.com> stop including rootdir build.prop

merged with default.prop

Change-Id: I18fcd37ddc63e3607278d0741181d0779118132d
/system/core/init/property_service.cpp
5147eacad19810200d6ba9a868250d854a3bfc8c 08-May-2015 Andres Morales <anmorales@google.com> stop including rootdir build.prop

merged with default.prop

Change-Id: I18fcd37ddc63e3607278d0741181d0779118132d
/system/core/init/property_service.cpp
929f4070767d1e4806c058849178afa13d9ded1e 25-Apr-2015 Elliott Hughes <enh@google.com> Switch init to epoll.

Not just because it's what the cool kids are doing --- it also lets us
simplify the inner loop and decouple it from whatever systems want to
be woken to perform some activity if there's data to be read on some fd.

Currently this is just used to clean up the existing signal handling,
keychord, and property service code.

Change-Id: I4d7541a2c4386957ad877df69e3be08b96a7dec5
/system/core/init/property_service.cpp
c6c26ed781d9ae1ba388cebba63532d2ecda3227 25-Apr-2015 Elliott Hughes <enh@google.com> Clean up property service initialization.

All the code that was being delayed does is create a socket. We can
do that straight away, avoid the overhead, and simplify our main loop.

The keychord fd, on the other hand, seems a little tricky. It looks
like /dev/keychord isn't immediately available, at least not on N9;
we have to wait for ueventd to set us up the bomb.

Change-Id: I020e75b8e4b233497707f0a3cbbb6038b714161f
/system/core/init/property_service.cpp
95f709a9f59ce79c65a9419d4227e877f3780ec7 16-Apr-2015 Elliott Hughes <enh@google.com> Don't try to read /system/default.prop.

It doesn't exist. We use /system/build.prop.

Change-Id: Ie635f9b3cc65de807f128339199b853db5a8eb2f
/system/core/init/property_service.cpp
da40c00137f75543a69972f1be506e2d14a41845 28-Mar-2015 Elliott Hughes <enh@google.com> Log more timing information from init.

Also make important events in init's life NOTICE rather than INFO,
and ensure that NOTICE events actually make it to the kernel log.

Also fix the logging so that if you have a printf format string
error, the compiler now catches it.

Also give messages from init, ueventd, and watchdogd distinct tags.
(Previously they'd all call themselves "init", and dmesg doesn't
include pids, so you couldn't untangle them.)

Also include the tag in SELinux messages.

Bug: 19544788
Change-Id: Ica6daea065bfdb80155c52c0b06f346a7df208fe
/system/core/init/property_service.cpp
930974cedf7d07a789f5d3d77f14abd2d0ed7d79 23-Mar-2015 Elliott Hughes <enh@google.com> Add missing parenthesis in init log message.

Change-Id: Iddcd8a002bfc692b1e70d59fa8c6530306c500fa
/system/core/init/property_service.cpp
cd67f00e18de1c8d48ddb082ecb902fc42c2bacc 21-Mar-2015 Elliott Hughes <enh@google.com> Always use strerror to report errno.

Change-Id: Icd18e4bd7dc093c18967f45b99cd451359457b03
/system/core/init/property_service.cpp
81399e1e0e9189b1b87531bfb566ba5386ab567f 10-Mar-2015 Elliott Hughes <enh@google.com> Use unique_ptr to call closedir.

Change-Id: I8f572a06ce59283e5bd444ae0491dea71b0ea304
/system/core/init/property_service.cpp
db3f267c99411b10144998c6c1f1a6288d0191bc 20-Mar-2015 Elliott Hughes <enh@google.com> Clean up property setting code.

In particular, ensure that all property_set failures are reported.

Change-Id: Iab94a28bcba2346868c0f39bcfe26e55a2c55562
/system/core/init/property_service.cpp
c007bc3856a4cf86b8f610eb045f26a9dedc2894 16-Mar-2015 Dan Albert <danalbert@google.com> Revert "Revert "Create libbase.""

This reverts commit a7870d88167f619e758b5bcd15b410d16da7c16b.
/system/core/init/property_service.cpp
a7870d88167f619e758b5bcd15b410d16da7c16b 16-Mar-2015 Nicolas Geoffray <ngeoffray@google.com> Revert "Create libbase."

Breaks internal master.

This reverts commit 98ff77204cef9bb8f0f27420833233622060a09e.

Change-Id: I18dc6021cb43efff8aa88486c2d980dc2b8eedba
/system/core/init/property_service.cpp
98ff77204cef9bb8f0f27420833233622060a09e 14-Mar-2015 Dan Albert <danalbert@google.com> Create libbase.

Move StringPrintf and the string based file I/O from libutils to
libbase.

Change-Id: I0297a6063874b9d92100e0dd5123fddfbda932fe
/system/core/init/property_service.cpp
f682b4786a4093efb23bf80d69bf80eb274b145b 06-Feb-2015 Elliott Hughes <enh@google.com> Clean up reading and writing in init.

This isn't particularly useful in and of itself, but it does introduce the
first (trivial) unit test, improves the documentation (including details
about how to debug init crashes), and made me aware of how unpleasant the
existing parser is.

I also fixed a bug in passing --- unless you thought the "peboot" and "pm"
commands were features...

Bug: 19217569
Change-Id: I6ab76129a543ce3ed3dab52ef2c638009874c3de
/system/core/init/property_service.cpp
c0e919c92062360a69b771722677d041c9998403 04-Feb-2015 Elliott Hughes <enh@google.com> Stop using #if for conditional compilation.

Use regular 'if' to prevent bitrot.

Also remove remaining typedefs.

Change-Id: I2e6ca928e2db29b88b643cf990ff05cfb0be94a6
/system/core/init/property_service.cpp
f3cf438714aa1284d8a58e2f3b108ba93f6d3abb 04-Feb-2015 Elliott Hughes <enh@google.com> Build init as C++.

This is just the minimal change to keep it building.

Change-Id: I245c5b8413a1db114576c81462eb5737f5ffcef2
/system/core/init/property_service.cpp