summaryrefslogtreecommitdiffstats
path: root/init
Commit message (Collapse)AuthorAgeFilesLines
* init: allow disabling selinux via a kernel command lineNick Kralevich2013-06-281-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | Create a new "androidboot.selinux" option, to control how userspace handles SELinux. This kernel command line can have three options: * disabled * permissive * enforcing "disabled" completely disables userspace support for SELinux. No policy is ever loaded, nor is the SELinux filesystem /sys/fs/selinux ever mounted. "permissive" loads the SELinux policy, but puts SELinux into permissive mode. SELinux policy violations are logged, but not rejected. "enforcing", the default, loads the SELinux policy, and places SELinux into enforcing mode. Policy violations are rejected. This change addresses post review comments for change b710ed21dec88c0dde8209264df054c842561589 . Change-Id: I912583db8e6a0e9c63380de32ad8ffc47a8a440f
* Merge "init: move SELinux into enforcing mode."Nick Kralevich2013-06-251-21/+20
|\
| * init: move SELinux into enforcing mode.Nick Kralevich2013-06-251-21/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | When init starts up, immediately put SELinux into enforcing mode. This is currently a no-op. We currently have everything in the unconfined domain, so this should not break anything. (if it does, I'll roll it back immediately) If the kernel doesn't have SELinux support compiled in, then don't try loading a policy and continue without SELinux protections. Change-Id: Id0279cf82c545ea0f7090137b7566a5bc3ddd641
* | am 372d668a: am 39021a48: am 83ada447: Merge changes Ib54f39fd,I7e36edd8Colin Cross2013-06-254-15/+38
|\ \ | |/ |/| | | | | | | * commit '372d668a279934ff3b2ec2f07a76fe2f351789d5': init: Retain traditional restart behavior for critical and oneshot services. init: Safely restart services to avoid race conditions.
| * am 39021a48: am 83ada447: Merge changes Ib54f39fd,I7e36edd8Colin Cross2013-06-244-15/+38
| |\ | | | | | | | | | | | | | | | * commit '39021a48a0e0687c654423acd5a4c99a1d79440d': init: Retain traditional restart behavior for critical and oneshot services. init: Safely restart services to avoid race conditions.
| | * am 83ada447: Merge changes Ib54f39fd,I7e36edd8Colin Cross2013-06-244-15/+38
| | |\ | | | | | | | | | | | | | | | | | | | | * commit '83ada447aed69dfcd0a88e952eced8db1e4d6584': init: Retain traditional restart behavior for critical and oneshot services. init: Safely restart services to avoid race conditions.
| | | * Merge changes Ib54f39fd,I7e36edd8Colin Cross2013-06-244-15/+38
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | * changes: init: Retain traditional restart behavior for critical and oneshot services. init: Safely restart services to avoid race conditions.
| | | | * init: Retain traditional restart behavior for critical and oneshot services.Mike Kasick2012-03-224-11/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds an SVC_RESTART state that's used for an explicit "restart" of a running service. This retains the traditional restart behavior for critical and oneshot services (previously altered by 7e36edd8), whereby these services are "simply restarted" instead of counting as a crash (for a critical serivce) or going into the disabled state (for a oneshot service).
| | | | * init: Safely restart services to avoid race conditions.Mike Kasick2012-03-221-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, service restarts (either an explicit "restart", or a "stop, start" pair) exhibited a race condition whereby the new (restarting) service process was often spawned before the old (stopping) process had terminated. This may have resulted in the new service process failing to acquire a limited resource (file lock, socket bind, etc.) that the old process had not yet released. Now, a stopping service remains in the SVC_RUNNING state until its exiting process has been reaped by waitpid. This prevents a "stop, start" sequence from spawning a second service process before resources held by the first are released. This enables safe service restarts by stopping the service, waiting for the old service process to terminate, and (only then) starting the new service process. In the event of "restarting" an already stopped service, the previous behavior is maintained whereby the service is simply started. This scenario could be special-cased by the restart command, however, we have observed instances where services are, unintentionally, stopped and started "too quickly," and so simultaneous processes for the same service should never be allowed. Note that this commit alters the behaviors for explicit restarts of critical and oneshot services. Previously these serivces would simply be restarted, whereas now, an explicit restart of a critical service counts as a crash (which may result in a recovery reboot) and oneshot services go into the disabled state.
| * | | | am 99c1a416: resolved conflicts for merge of 95a41f6b to stage-aosp-masterColin Cross2013-06-175-88/+58
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '99c1a4168ba792437f298d31cd4631ff01661476': init: fix copying boot properties toolbox: hide property implementation from watchprops init: verify size of property buffers passed to property_get init: move the system property writer implementation init: switch property_get to use __system_property_get
| | * | | resolved conflicts for merge of 95a41f6b to stage-aosp-masterColin Cross2013-06-175-88/+58
| | |\ \ \ | | | |/ / | | | | | | | | | | Change-Id: Icfae29edf989fb43a7f0b8bda188a9807f76a3b9
| | | * | init: fix copying boot propertiesColin Cross2013-06-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous patch "init: verify size of property buffers passed to property_get" incorrectly modified one of the callers, resulting in ro.serialno, ro.bootmode, ro.baseband, and ro.bootloader always being set to their default values. Bug: 9469860 (cherry picked from commit 67e3663fc93c65b69b5d121db05b0833b98d97f1) Change-Id: Ia7b337e1fab6e334729f47ee1269e6c736615177
| | | * | init: verify size of property buffers passed to property_getColin Cross2013-06-172-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Verify that the buffer passed as the value parameter to property_get is always big enough. (cherry picked from commit 88ac54a4e8d2a63e4fd9c465e115795ace316776) Change-Id: Iacc2b42bfe4069e0bfcbb1c48474f30126a93139
| | | * | init: move the system property writer implementationColin Cross2013-06-171-51/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the system property writer implementation into bionic to keep it next to the reader implementation and allow for better testing. (cherry picked from commit 9f5af635010a7ba92edf1fca543f7271cc9d75c8) Change-Id: Idf6100d1d0170751acd5163a22597912bff480f0
| | | * | init: switch property_get to use __system_property_getColin Cross2013-06-175-39/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (cherry picked from commit 2deedfe0b1ac86ebd62d19cf7da9e7dcb508ab09) Change-Id: If3fba2cc1dd5c167b0924ddfe42dbe2e6387208a
| | | * | init: prevent action being added to the action_queue twiceColin Cross2013-06-101-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Property triggers may cause an action to be queued twice, resulting in a loop in the action queue. Keep actions that are not on the queue in the list_empty state (act->qlist->next == act->qlist), and only add them to the list if they are in that state. Bug: 8335133 Change-Id: I3a3ec18176cf19cbaa3a45220a03c7560eacfe79
* | | | | init: move initial property area allocation into bionicGreg Hackmann2013-06-181-28/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bionic's __system_property_add() now expands the property area as needed by mapping in more pages. Rather than duplicate the mapping code, move it inside bionic and have bionic's __system_property_area_init() set up the first page. Change-Id: If9917d5f775c1a82eb89be55b84635395145ca49 Signed-off-by: Greg Hackmann <ghackmann@google.com>
* | | | | init: fix copying boot propertiesColin Cross2013-06-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous patch "init: verify size of property buffers passed to property_get" incorrectly modified one of the callers, resulting in ro.serialno, ro.bootmode, ro.baseband, and ro.bootloader always being set to their default values. Bug: 9469860 Change-Id: Id45bd8dd657e8d61f4cfaf7e6b2559d2bfd05181
* | | | | init: verify size of property buffers passed to property_getColin Cross2013-06-172-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Verify that the buffer passed as the value parameter to property_get is always big enough. Change-Id: Ie5b6fcd94bb908215cfd55d0c9b07f717ddb70b1
* | | | | init: move the system property writer implementationColin Cross2013-06-171-51/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the system property writer implementation into bionic to keep it next to the reader implementation and allow for better testing. Change-Id: I9026e604109e30546b2849b60cab2e7e5ff00ba5
* | | | | init: switch property_get to use __system_property_getColin Cross2013-06-175-37/+32
| | | | | | | | | | | | | | | | | | | | Change-Id: I4fc0502a1a5b331087618a4d2e3d90948743d7bd
* | | | | am 05a52055: am 76c58893: Free file handle for /firmware/image after useAjay Dudani2013-06-141-0/+1
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | * commit '05a52055661701c20f71124161798fdea8ea2982': Free file handle for /firmware/image after use
| * | | | am 76c58893: Free file handle for /firmware/image after useAjay Dudani2013-06-141-0/+1
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | * commit '76c5889325c2ada5dda07fd9af20a4a485978538': Free file handle for /firmware/image after use
| | * | | Free file handle for /firmware/image after useAjay Dudani2013-06-131-0/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: Id59e25486b45dffc87a89a961970a6e8128a5237
* | | | | am 5cb9a02b: am 7e723498: Merge "Add permission for bluetooth app in ↵Matthew Xie2013-05-221-0/+8
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | non-primary users" into jb-mr2-dev * commit '5cb9a02b0322c18b48eb9ce261502c3b830c113c': Add permission for bluetooth app in non-primary users
| * | | | am 7e723498: Merge "Add permission for bluetooth app in non-primary users" ↵Matthew Xie2013-05-221-0/+8
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | into jb-mr2-dev * commit '7e72349865db83d62f98eec8bca4b170712fe0e0': Add permission for bluetooth app in non-primary users
| | * | | Merge "Add permission for bluetooth app in non-primary users" into jb-mr2-devMatthew Xie2013-05-221-0/+8
| | |\ \ \
| | | * | | Add permission for bluetooth app in non-primary usersMatthew Xie2013-05-221-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug 8954114 Change-Id: Id6a42f5a5beefa22c3cc8eecfb39a2222017a3b4
* | | | | | am 8f6adcfc: am 49be2407: Revert "Add logic to fixup file contexts after a ↵gcondra@google.com2013-05-201-6/+1
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | policy update." * commit '8f6adcfcc55414cc07c18fe47d7c4314da148544': Revert "Add logic to fixup file contexts after a policy update."
| * | | | | am 49be2407: Revert "Add logic to fixup file contexts after a policy update."gcondra@google.com2013-05-201-6/+1
| |\ \ \ \ \ | | |/ / / / | | | | | | | | | | | | | | | | | | * commit '49be240735a06f44e1d91aa51dd299779ad36d96': Revert "Add logic to fixup file contexts after a policy update."
| | * | | | Revert "Add logic to fixup file contexts after a policy update."repo sync2013-05-171-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ebcf93e3bf92bf46c54c8e0f2ec8936bb2db6aea.
* | | | | | am 253e91b4: am 477e35d6: Revert "Add persistent property for SELinux ↵gcondra@google.com2013-05-201-1/+0
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enforcment status." * commit '253e91b4ffb631b188fdac0c1624786103471f05': Revert "Add persistent property for SELinux enforcment status."
| * | | | | am 477e35d6: Revert "Add persistent property for SELinux enforcment status."gcondra@google.com2013-05-201-1/+0
| |\ \ \ \ \ | | |/ / / / | | | | | | | | | | | | | | | | | | * commit '477e35d6d56c7fe9b2305becdf3ed4f590ddfbd6': Revert "Add persistent property for SELinux enforcment status."
| | * | | | Revert "Add persistent property for SELinux enforcment status."repo sync2013-05-171-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b89bdfde422eff751b3f939f10ab57e22af83eaa.
* | | | | | am 43329bc1: am 8a387870: Revert "Reload policy after setting up the data ↵gcondra@google.com2013-05-204-9/+3
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | partition." * commit '43329bc1c99c0f5f3670a8aaab39e54df34819a1': Revert "Reload policy after setting up the data partition."
| * | | | | am 8a387870: Revert "Reload policy after setting up the data partition."gcondra@google.com2013-05-204-9/+3
| |\ \ \ \ \ | | |/ / / / | | | | | | | | | | | | | | | | | | * commit '8a3878700eb9cd8ecf495cd01f15face5c3879c8': Revert "Reload policy after setting up the data partition."
| | * | | | Revert "Reload policy after setting up the data partition."repo sync2013-05-174-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fee250d27a9c03af1ba439047b976d89563b1887.
* | | | | | am f5410f2b: am 3d32cd93: Revert "Remove /system from the dirs to relabel."gcondra@google.com2013-05-201-0/+1
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | * commit 'f5410f2bde6fd5295cad36e3ba3efba0beb92780': Revert "Remove /system from the dirs to relabel."
| * | | | | am 3d32cd93: Revert "Remove /system from the dirs to relabel."gcondra@google.com2013-05-201-0/+1
| |\ \ \ \ \ | | |/ / / / | | | | | | | | | | | | | | | | | | * commit '3d32cd938746215e5fa9b1a3c3b78903e043ae73': Revert "Remove /system from the dirs to relabel."
| | * | | | Revert "Remove /system from the dirs to relabel."repo sync2013-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3d4d07b2fa3b2447646d3c87a0b401e993ad8363.
* | | | | | am b9866649: am 52351300: Revert "Add a version check for SELinux policy on ↵gcondra@google.com2013-05-201-59/+0
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | device." * commit 'b9866649e24d7b6eedcaf2e03ffc605a3417537d': Revert "Add a version check for SELinux policy on device."
| * | | | | am 52351300: Revert "Add a version check for SELinux policy on device."gcondra@google.com2013-05-201-59/+0
| |\ \ \ \ \ | | |/ / / / | | | | | | | | | | | | | | | | | | * commit '52351300d156826bf22c493828571f45a1cea16a': Revert "Add a version check for SELinux policy on device."
| | * | | | Revert "Add a version check for SELinux policy on device."repo sync2013-05-171-59/+0
| | |/ / / | | | | | | | | | | | | | | | This reverts commit 921be8b6568df0057c4eacbac2e1022b71e09620.
* | | | | am 5a98566d: am 921be8b6: Add a version check for SELinux policy on device.gcondra@google.com2013-05-141-0/+59
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | * commit '5a98566d589408c78e35f4476f478a2fa1c13e78': Add a version check for SELinux policy on device.
| * | | | am 921be8b6: Add a version check for SELinux policy on device.gcondra@google.com2013-05-141-0/+59
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | * commit '921be8b6568df0057c4eacbac2e1022b71e09620': Add a version check for SELinux policy on device.
| | * | | Add a version check for SELinux policy on device.repo sync2013-05-141-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This helps to ensure that when a new system image is installed, old userdata policy isn't applied over the top of it. Bug: 8841348 Change-Id: I135af32250aa62979763e775842ce0af3c8b6f9f
* | | | | am ac5cf925: am 683aa89b: Merge "Remove /system from the dirs to relabel." ↵gcondra@google.com2013-05-081-1/+0
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | into jb-mr2-dev * commit 'ac5cf925f86706d2bf89948e7cd3379376185d3b': Remove /system from the dirs to relabel.
| * | | | am 683aa89b: Merge "Remove /system from the dirs to relabel." into jb-mr2-devgcondra@google.com2013-05-071-1/+0
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | * commit '683aa89bfdf2439d1c5d9a4dc240d6a673678a98': Remove /system from the dirs to relabel.
| | * | | Remove /system from the dirs to relabel.repo sync2013-05-071-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Bug: 8841348 Change-Id: Ia1545288e8a8184feffaaa6158faad62f95cbcce
* | | | | am 803eda6a: am f69cc564: Merge "Update ueventd set the SELinux context on ↵Colin Cross2013-04-301-0/+9
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | sysfs" * commit '803eda6a2dfcb50f61dd4a6a616e560a87453cb0': Update ueventd set the SELinux context on sysfs