History log of /bionic/libc/include/sys/_system_properties.h
Revision Date Author Comments
4a50d8ead71c3dd6d9eebe23626d0d4e96dd963b 11-Nov-2014 Daniel Rosenberg <drosen@google.com> bionic: libc: Added path to vendor build properties file.

Signed-off-by: Daniel Rosenberg <drosen@google.com>

(cherry picked from commit 71d220c1de1372e20c8bbec4ccf387991a3bb549)

Bug: 18281574
Change-Id: I2843f23ecb4c4ca79b230d8041bbca02dbedeadc
c9ae21a5c3b2e1baafe50f752e2e07e343d39530 19-Feb-2014 Narayan Kamath <narayan@google.com> Move system_properties over to C++.

This change constitutes the minimum amount of
work required to move the code over to C++, address
compiler warnings, and to make it const correct and
idiomatic (within the constraints of being called
from C code).

bug: 13058886

Change-Id: Ic78cf91b7c8e8f07b4ab0781333a9e243763298c
5e9a086145764d64c0f7fbce5489d820aa7fdcd4 25-Jun-2013 Colin Cross <ccross@android.com> bionic: add compatibility mode for properties

Allow a new bionic to work with an old init property area by supporting
the old format.

(cherry picked from commit ad76c85b9ca587084089d086f954158bc0eae905)

Change-Id: Ib496e818a62a5834d40c71eb4745783d998be893
ad76c85b9ca587084089d086f954158bc0eae905 25-Jun-2013 Colin Cross <ccross@android.com> bionic: add compatibility mode for properties

Allow a new bionic to work with an old init property area by supporting
the old format.

Change-Id: I9268214b2f8930e75e3b5c26afe94fa92068bf0b
be30c7a78a1cf4adc8ec9bbdf17e85186fdb05b2 19-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: revert to a single (larger) property area

d329697 is too complicated. Change the multiple property pages back to
a single 128K property area that's mapped in entirely at initialization
(the memory will not get allocated until the pages are touched).

d329697 has other changes useful for testing (moving property area
initialization inside bionic and adding __system_property_set_filename)
so undo the change manually rather than with git revert.

Change-Id: Icd137669a4f8bc248e9dd2c1e8cc54e9193c9a6d
Signed-off-by: Greg Hackmann <ghackmann@google.com>
4482d8513920d614e3799a214c5bad07b72580d2 20-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: reimplement property area as hybrid trie/binary tree

See the comments for an explanation of how properties are stored.

The trie structure is designed to scale better than the previous
array-based implementation. Searching an array with n properties
required average O(n) string compares of the entire key; searching the
trie requires average O(log n) string compares of each token (substrings
between '.' characters).

Change-Id: Ic28b3c5246004a3c502eb02d6e1c9b512884d872
Signed-off-by: Greg Hackmann <ghackmann@google.com>
c79de97cccbe695cd37d3be1985c8e0e5100d51d 25-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: replace 4K property pages with 32K property pages

Fixes apps compiled statically against new libc but running with old
init

Bug: 9558625
Change-Id: I79e6f02575d278d4c7d8e8546d772ed0529bcaab
Signed-off-by: Greg Hackmann <ghackmann@google.com>
de76bafb21477fbfac903abdc8154925da94b21e 25-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: replace 4K property pages with 32K property pages

Fixes apps compiled statically against new libc but running with old
init

Bug: 9558625
Change-Id: I79e6f02575d278d4c7d8e8546d772ed0529bcaab
Signed-off-by: Greg Hackmann <ghackmann@google.com>
44c273c2933bb6550b0fa12bfe218594f0780e25 25-Jun-2013 Greg Hackmann <ghackmann@google.com> Revert "bionic: reimplement property area as hybrid trie/binary tree"

This reverts commit 6ac8e6a46d71a51bec16938efa89f275fa89cf7d.
fa8cc0629f6227b507434245d237d44d7e119b16 25-Jun-2013 Greg Hackmann <ghackmann@google.com> Revert "bionic: revert to a single (larger) property area"

This reverts commit 5f05348c18286a2cea46eae8acf94ed5b7932fac.
1540f601be32bdd4af8e8c13bdf2bc06bdaa76f1 19-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: revert to a single (larger) property area

d329697 is too complicated. Change the multiple property pages back to
a single 128K property area that's mapped in entirely at initialization
(the memory will not get allocated until the pages are touched).

d329697 has other changes useful for testing (moving property area
initialization inside bionic and adding __system_property_set_filename)
so undo the change manually rather than with git revert.

Signed-off-by: Greg Hackmann <ghackmann@google.com>

(cherry picked from commit 5f05348c18286a2cea46eae8acf94ed5b7932fac)

Change-Id: I690704552afc07a4dd410277893ca9c40bc13e5f
996cdc4b1a7fcae89650bee0a44b6cb7900a4a3c 20-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: reimplement property area as hybrid trie/binary tree

See the comments for an explanation of how properties are stored.

The trie structure is designed to scale better than the previous
array-based implementation. Searching an array with n properties
required average O(n) string compares of the entire key; searching the
trie requires average O(log n) string compares of each token (substrings
between '.' characters).

Signed-off-by: Greg Hackmann <ghackmann@google.com>

(cherry picked from commit 6ac8e6a46d71a51bec16938efa89f275fa89cf7d)

Change-Id: Icbe31908572f33b4d9b85d5b62ac837cbd0f85e0
cb215a7e9ecec9feb5aae9d9a5b1c89f392208e7 13-Feb-2013 Greg Hackmann <ghackmann@google.com> bionic: make property area expandable

The property area is initially one 4K region, automatically expanding as
needed up to 64 regions.

To avoid duplicating code, __system_property_area_init() now allocates
and initializes the first region (previously it was allocated in init's
init_property_area() and initialized in bionic). For testing purposes,
__system_property_set_filename() may be used to override the file used
to map in regions.

Signed-off-by: Greg Hackmann <ghackmann@google.com>

(cherry picked from commit d32969701be070c0161c2643ee3c3df16066bbb8)

Change-Id: I038d451fe8849b0c4863663eec6f57f6521bf4a7
5f05348c18286a2cea46eae8acf94ed5b7932fac 19-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: revert to a single (larger) property area

d329697 is too complicated. Change the multiple property pages back to
a single 128K property area that's mapped in entirely at initialization
(the memory will not get allocated until the pages are touched).

d329697 has other changes useful for testing (moving property area
initialization inside bionic and adding __system_property_set_filename)
so undo the change manually rather than with git revert.

Change-Id: I0ecb27843404f93af5489f15bfe657d65175e4f0
Signed-off-by: Greg Hackmann <ghackmann@google.com>
6ac8e6a46d71a51bec16938efa89f275fa89cf7d 20-Jun-2013 Greg Hackmann <ghackmann@google.com> bionic: reimplement property area as hybrid trie/binary tree

See the comments for an explanation of how properties are stored.

The trie structure is designed to scale better than the previous
array-based implementation. Searching an array with n properties
required average O(n) string compares of the entire key; searching the
trie requires average O(log n) string compares of each token (substrings
between '.' characters).

Change-Id: I491305bc7aca59609abcd871a5f33d97f89ce714
Signed-off-by: Greg Hackmann <ghackmann@google.com>
d32969701be070c0161c2643ee3c3df16066bbb8 13-Feb-2013 Greg Hackmann <ghackmann@google.com> bionic: make property area expandable

The property area is initially one 4K region, automatically expanding as
needed up to 64 regions.

To avoid duplicating code, __system_property_area_init() now allocates
and initializes the first region (previously it was allocated in init's
init_property_area() and initialized in bionic). For testing purposes,
__system_property_set_filename() may be used to override the file used
to map in regions.

Change-Id: Ibe00ef52464bfa590953c4699a6d98383b0142b1
Signed-off-by: Greg Hackmann <ghackmann@google.com>
5cf32de7a0fea0b10959b598300babc6e4f54d95 24-Jan-2013 Colin Cross <ccross@android.com> bionic: move system property writing from init to bionic

Move the implementation of writing to the system property area
from init to bionic, next to the reader implementation. This
will allow full property testing to be added to bionic tests.

Add new accessor and waiting functions to hide the implementation
from watchprops and various bionic users.

Also hide some of the implementation details of the property area
from init by moving them into _system_properties.h, and other details
from everybody by moving them into system_properties.h.

(cherry picked from commit dc1038b7900acb664e99643d2974e1a0f4703781)

Change-Id: I192d3825ee276c5047bc751039fe6cfe226a7cca
dc1038b7900acb664e99643d2974e1a0f4703781 24-Jan-2013 Colin Cross <ccross@android.com> bionic: move system property writing from init to bionic

Move the implementation of writing to the system property area
from init to bionic, next to the reader implementation. This
will allow full property testing to be added to bionic tests.

Add new accessor and waiting functions to hide the implementation
from watchprops and various bionic users.

Also hide some of the implementation details of the property area
from init by moving them into _system_properties.h, and other details
from everybody by moving them into system_properties.h.

Change-Id: I9026e604109e30546b2849b60cab2e7e5ff00ba5
472fdc95a67a31125674718b48c92b2fc54d17bc 23-Jan-2013 Nick Kralevich <nnk@google.com> am b8726037: am e7d937b5: am b3351f12: Merge "libc: use more secure system properties if available"

* commit 'b8726037ee1100e2704e90d0a54ea2313bf96b00':
libc: use more secure system properties if available
32417fb37642a1f975ec107e6b449ba71196db56 23-Jan-2013 Nick Kralevich <nnk@google.com> libc: use more secure system properties if available

Currently, system properties are passed via the environment
variable ANDROID_PROPERTY_WORKSPACE and a file descriptor passed
from parent to child. This is insecure for setuid executables,
as the environment variable can be changed by the caller.

Modify system property handling so that we get the properties
from a root owned properties file, rather than using an
environment variable. Fall back to the environment variable
if the file doesn't exist.

Bug: 8045561
Change-Id: I54f3efa98cf7d63d88788da5ce0d19e34fd7851a
f27874740f02d8acba79f2d2924a62e9162da02b 22-Jan-2013 Nick Kralevich <nnk@google.com> Revert "libc: make system properties more secure."

This reverts commit f10c5a2215b3da2e226e8bd148c86e2c146d8e90.

Bug: 8045561
8897a9565a220099a6df730ed14c1a346508f9d1 22-Jan-2013 Nick Kralevich <nnk@google.com> Revert "libc: make system properties more secure."

This reverts commit f10c5a2215b3da2e226e8bd148c86e2c146d8e90.

Bug: 8045561
f10c5a2215b3da2e226e8bd148c86e2c146d8e90 18-Jan-2013 Nick Kralevich <nnk@google.com> libc: make system properties more secure.

Currently, system properties are passed via the environment
variable ANDROID_PROPERTY_WORKSPACE and a file descriptor passed
from parent to child. This is insecure for setuid executables,
as the environment variable can be changed by the caller.

Modify system property handling so that we get the properties
from a root owned properties file, rather than using an
environment variable.

Related to bug: 8029617

Change-Id: I5717e51f20f9e4339ed0a1fdf2fc797e52670fbb
07564f2d3a97eb0918adb7237508beeecdea1721 11-Jan-2013 Andrew Boie <andrew.p.boie@intel.com> add factory property file definition

This property file is used for properties which are set at device
provisioning time or in the factory. They are never touched by
a software update or factory data reset and typically contain
data specific to the particular unit.

Change-Id: I2e7c2fe62cb684cb2449eea917c42b19462e89a5
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
1dc9e472e19acfe6dc7f41e429236e7eef7ceda1 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
1767f908af327fa388b1c66883760ad851267013 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
4e468ed2eb86a2406e14f1eca82072ee501d05fd 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution