Commit Graph

395 Commits

Author SHA1 Message Date
dcashman 5822a4af84 Enable world-readable selinuxfs policy binary.
Change-Id: I1eefb457cea1164a8aa9eeb7683b3d99ee56ca99
2014-04-07 14:05:43 -07:00
Narayan Kamath 4456a55ce6 Move zygote init config to its own file.
This allows us to choose different configs depending on
whether or not the target is 64 capable, and what its preferred
default is.

bug: 13647418
Change-Id: Ie1ce4245a3add7544c87d27c635ee390f4062523
2014-03-31 12:31:11 +01:00
Mark Salyzyn 3c253dc88f logd: core requirement
- has no dependency on /data, switch from main to core

Change-Id: I4bfe3e67d4cbd31e943c609f5626e533857a27a9
2014-03-21 16:06:54 -07:00
Mark Salyzyn 581edc1b6c set /proc/sys/net/unix/max_dgram_qlen to large value
- init: set /proc/sys/net/unix/max_dgram_qlen to 300
- libsysutils: Add listen backlog argument to startListener
- logd: set listen backlog to 300

Change-Id: Id6d37d6c937ba2d221e76258d89c9516619caeec
2014-03-03 12:48:00 -08:00
Nick Kralevich 9453bce4cf Merge "Apply restorecon_recursive to all of /data." 2014-02-26 21:36:30 +00:00
Mark Salyzyn 0175b0747a logd: initial checkin.
* Create a new userspace log daemon for handling logging messages.

Original-Change-Id: I75267df16359684490121e6c31cca48614d79856
Signed-off-by: Nick Kralevich <nnk@google.com>

* Merge conflicts
* rename new syslog daemon to logd to prevent confusion with bionic syslog
* replace racy getGroups call with KISS call to client->getGid()
* Timestamps are filed at logging source
* insert entries into list in timestamp order
* Added LogTimeEntry tail filtration handling
* Added region locking around LogWriter list
* separate threads for each writer
* /dev/socket/logd* permissions

Signed-off-by: Mark Salyzyn <salyzyn@google.com>

(cherry picked from commit 3e76e0a497)

Author: Nick Kralevich <nnk@google.com>
Change-Id: Ice88b1412d8f9daa7f9119b2b5aaf684a5e28098
2014-02-26 09:52:35 -08:00
Dan Willemsen 78ef91aa5e Start debuggerd64 for 64-bit processes
Change-Id: I2fc33d9eb2726b043d2f13bfab0c605dbb6083c7
2014-02-16 11:30:27 -08:00
Stephen Smalley f2b7ee7655 Apply restorecon_recursive to all of /data.
With the following prior changes:
I77bf2a0c4c34b1feef6fdf4d6c3bd92dbf32f4a1
I698b1b2c3f00f31fbb2015edf23d33b51aa5bba1
I8dd915d9bb80067339621b905ea2b4ea0fa8d71e
it should now be safe (will correctly label all files)
and reasonably performant (will skip processing unless
file_contexts has changed since the last call) to call
restorecon_recursive /data from init.rc.

The call is placed after the setprop selinux.policy_reload 1 so that
we use any policy update under /data/security if present.

Change-Id: Ib8d9751a47c8e0238cf499fcec61898937945d9d
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-02-06 14:33:29 -05:00
Stephen Smalley 82e87ed479 Move creation of /data/misc/wifi and /data/misc/dhcp to main init.rc file.
mkdir /data/misc/wifi subdirectories and /data/misc/dhcp is performed
in the various device-specific init*.rc files but seems generic.
Move it to the main init.rc file.

Drop the separate chown for /data/misc/dhcp as this is handled by mkdir
built-in if the directory already exists.

Add a restorecon_recursive /data/misc/wifi/sockets.

Change-Id: I51b09c5e40946673a38732ea9f601b2d047d3b62
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-01-29 14:09:28 -05:00
Nick Kralevich d49aa2537c adbd: switch to su domain when running as root
When adbd runs as root, it should transition into the
su domain. This is needed to run the adbd and shell
domains in enforcing on userdebug / eng devices without
breaking developer workflows.

Introduce a new device_banner command line option.

Change-Id: Ib33c0dd2dd6172035230514ac84fcaed2ecf44d6
2014-01-22 14:20:17 -08:00
Stephen Smalley 9e9f05e5eb restorecon /data/misc/media.
Otherwise it will be mislabeled on upgrades with existing userdata.

Change-Id: Ibde88d5d692ead45b480bb34cfe0831baeffbf94
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-01-15 13:19:31 -05:00
rpcraig 2dcbb81d89 Label existing /data/mediadrm files.
Use restorecon_recursive to label devices
where the directory and subfiles have
already been built and labeled.

Change-Id: I0dfe1e542fb153ad20adf7b2b1f1c087b4956a12
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
2014-01-07 22:28:04 -05:00
Nick Kralevich 5b8abdf627 Merge "Apply strict SELinux checking of PROT_EXEC on mmap/mprotect calls." 2014-01-02 20:58:35 +00:00
Stephen Smalley 5e1461dc90 Apply strict SELinux checking of PROT_EXEC on mmap/mprotect calls.
If checkreqprot == 1, SELinux only checks the protection flags passed
by the application, even if the kernel internally adds PROT_EXEC for
READ_IMPLIES_EXEC personality flags.  Switch to checkreqprot == 0
to check the final protection flags applied by the kernel.

Change-Id: Ic39242bbbd104fc9a1bcf2cd2ded7ce1aeadfac4
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-12-23 16:29:25 -05:00
Stephen Smalley 610653fe93 Run the console service shell in the shell domain.
This allows it to be permissive in userdebug/eng builds
but confined/enforcing in user builds.

Change-Id: Ie322eaa0acdbefea2de4e71ae386778c929d042b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-12-23 14:11:44 -05:00
Nick Kralevich 354e9edbd7 Relabel /data/misc/zoneinfo
The files in zoneinfo changed from system_data_file to
zoneinfo_data_file. Fixup pre-existing files.

Change-Id: Idddbd6c2ecf66cd16b057a9ff288cd586a109949
2013-12-13 16:03:48 -08:00
Stephen Smalley 17bec835d5 Do not change ownership on /sys/fs/selinux/enforce.
There is no longer any reason to permit system UID to set enforcing mode.

Change-Id: Ie28beed1ca2b215c71f2847e2390cee1af1713c3
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-12-09 10:23:16 -05:00
The Android Open Source Project 7fc7a07b23 Merge commit '252d9030cd4b2e3e6cf13fa33f328eccedb5e26c' into HEAD 2013-12-05 12:38:34 -08:00
The Android Open Source Project 66ed50af68 Merge commit '536dea9d61a032e64bbe584a97463c6638ead009' into HEAD
Change-Id: I5c469a4b738629d99d721cad7ded02d6c35f56d5
2013-11-22 13:44:43 -08:00
Elliott Hughes 4a4616f645 am 048bb92f: Merge "split setptop ethernet tcp buffer from wifi"
* commit '048bb92f3f33196d96a51b446c73805e208a5333':
  split setptop ethernet tcp buffer from wifi
2013-11-20 18:10:49 -08:00
Jianzheng Zhou 52ea510f8f split setptop ethernet tcp buffer from wifi
Change-Id: I0582ec75fddb904ca14b9cbddf593ddbd4195c41
Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
2013-11-15 13:44:00 +08:00
Jeff Sharkey 9b41f45201 am a9e453f1: Merge "vold no longer does MS_MOVE; remove tmpfs." into klp-dev
* commit 'a9e453f1b552699f69dca19599c7624a581089bd':
  vold no longer does MS_MOVE; remove tmpfs.
2013-10-17 18:48:45 -07:00
Jeff Sharkey 00c8e1a219 vold no longer does MS_MOVE; remove tmpfs.
MS_MOVE was used when staging external storage devices, which no
longer occurs.  In fact, having a writable tmpfs was masking a vold
bug around moving apps to SD cards.

Bug: 11175082
Change-Id: Ib2d7561c3a0b6fde94f651a496cb0c1f12f88d96
2013-10-17 16:47:20 -07:00
Jeff Sharkey a5fdea7189 am e93a0517: Set GID required to write, media_rw mount point.
* commit 'e93a0517f4c88310066ac39c6b268ebfcceef44e':
  Set GID required to write, media_rw mount point.
2013-10-08 14:12:38 -07:00
Jeff Sharkey e93a0517f4 Set GID required to write, media_rw mount point.
Add sdcard FUSE daemon flag to specify the GID required for a package
to have write access.  Normally sdcard_rw, but it will be media_rw
for secondary external storage devices, so DefaultContainerService
can still clean up package directories after uninstall.

Create /mnt/media_rw which is where vold will mount raw secondary
external storage devices before wrapping them in a FUSE instance.

Bug: 10330128, 10330229
Change-Id: I4385c36fd9035cdf56892aaf7b36ef4b81f4418a
2013-10-08 12:56:37 -07:00
Colin Cross ad2961397f am 410f8c30: am 79b277ab: Merge "Set security context of /adb_keys and /data/misc/adb/adb_keys."
* commit '410f8c305b416484f17f068c37b785605a2f69eb':
  Set security context of /adb_keys and /data/misc/adb/adb_keys.
2013-10-03 15:15:43 -07:00
Colin Cross 410f8c305b am 79b277ab: Merge "Set security context of /adb_keys and /data/misc/adb/adb_keys."
* commit '79b277ab73711313690d03a9fb2e9cb3f9242b39':
  Set security context of /adb_keys and /data/misc/adb/adb_keys.
2013-10-03 15:14:14 -07:00
Colin Cross 0d3ac55d06 am 230252d5: am 61afb07b: Merge "Trigger a policy reload from post-fs-data."
* commit '230252d5cd70f5be4c24046c7a409e9498ac97f5':
  Trigger a policy reload from post-fs-data.
2013-10-01 18:53:51 -07:00
Colin Cross 230252d5cd am 61afb07b: Merge "Trigger a policy reload from post-fs-data."
* commit '61afb07b9b14233f76a969840f74ce1ced22bf58':
  Trigger a policy reload from post-fs-data.
2013-10-01 18:50:18 -07:00
Stephen Smalley deb41e5127 Set security context of /adb_keys and /data/misc/adb/adb_keys.
I97b3d86a69681330bba549491a2fb39df6cf20ef introduced a separate type
for the adb_keys file.  Set the security context of the adb_keys file
accordingly by adding restorecon commands to init.rc.

Change-Id: I30e4d2a1ae223a03eadee58a883c79932fff59fe
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-10-01 09:21:47 -04:00
Colin Cross 61afb07b9b Merge "Trigger a policy reload from post-fs-data." 2013-09-30 20:04:12 +00:00
Ken Sumrall dfcbf02bb0 am 6b1a0272: Merge "Create a separate copy of the fsck logs" into klp-dev
* commit '6b1a027239689a817aa5ca44a2bcbfe48ed21408':
  Create a separate copy of the fsck logs
2013-09-23 18:59:39 -07:00
Ken Sumrall 6b1a027239 Merge "Create a separate copy of the fsck logs" into klp-dev 2013-09-23 20:06:57 +00:00
Ken Sumrall 4eaf905858 Create a separate copy of the fsck logs
The log_target parameter of android_fork_execvp_ext() is now a
bit field, and multiple targets can be set to log to multiple
places at the same time.

The new target LOG_FILE will log to a file specified by the new
parameter file_path.

Set LOG_FILE and log to a file in /dev (the only writable filesystem
avilable when e2fsck runs) when invoking e2fsck in fs_mgr.

Bug: 10021342

Change-Id: I63baf644cc8c3afccc8345df27a74203b44d0400
2013-09-20 17:44:33 -07:00
Jeff Sharkey 9729b41574 am 44d6342c: Remove mkdir() side effect, add .nomedia, utils.
* commit '44d6342caa0db1f613809e9ba1ea8d9af0183b74':
  Remove mkdir() side effect, add .nomedia, utils.
2013-09-20 15:57:58 -07:00
Jeff Sharkey 44d6342caa Remove mkdir() side effect, add .nomedia, utils.
Before this change, FUSE lookup() would have the side effect of
creating the directory on behalf of apps.  This resulted in most
directories being created just by Settings trying to measure disk
space.  Instead, we're switching to have vold do directory creation
when an app doesn't have enough permissions.

Create fs_mkdirs() utility to create all parent directories in a
path as needed.  Allow traversal (+x) into /storage directories.

Fix FUSE derived permissions to be case insensitive.  Mark well-known
directories as .nomedia when created.

Bug: 10577808, 10330221
Change-Id: I53114f2e63ffbe6de4ba6a72d94a232523231cad
2013-09-20 14:21:09 -07:00
Nick Kralevich 1998e505a9 am 2e940286: am 0f507339: Merge "Do not change ownership of /sys/fs/selinux/load to system UID."
* commit '2e9402863b40fe8bf2ddd8169c62f2419d968ff9':
  Do not change ownership of /sys/fs/selinux/load to system UID.
2013-09-19 08:51:49 -07:00
Nick Kralevich 2e9402863b am 0f507339: Merge "Do not change ownership of /sys/fs/selinux/load to system UID."
* commit '0f507339ec474a2f67227466efc9045630f1f1a4':
  Do not change ownership of /sys/fs/selinux/load to system UID.
2013-09-19 08:50:21 -07:00
Stephen Smalley cc13e8ab87 Do not change ownership of /sys/fs/selinux/load to system UID.
Policy reload is handled by setting the selinux.reload_policy property
and letting the init process perform the actual loading of policy into
the kernel.  Thus, there should be no need for the system UID to directly
write to /sys/fs/selinux/load.

Change-Id: I240c5bb2deaee757a2e1e396e14dea9e5d9286f5
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-09-19 11:26:26 -04:00
Nick Kralevich 0e7bd81c93 am 4f18183b: Merge "Initialize /dev/urandom earlier in boot." into klp-dev
* commit '4f18183bd6d3d2ed5d698c176ecc239211bdb82e':
  Initialize /dev/urandom earlier in boot.
2013-09-18 12:50:32 -07:00
Nick Kralevich b410eb1913 Initialize /dev/urandom earlier in boot.
It's a security best practice to carry entropy across reboots.
(see "man 4 random"). Currently, entropy saving and mixing occur
in the system_server, via the EntropyMixer code. Unfortunately, the
EntropyMixer code runs fairly late in the boot process, which means
early boot doesn't have high quality entropy. This has caused security
problems in the past.

Load entropy data as soon as we can in the early boot process, so that
we can get /dev/random / /dev/urandom into a "random" state earlier.

Bug: 9983133
Change-Id: Id4a6f39e9060f30fe7497bd8f8085a9bec851e80
2013-09-18 07:53:51 -07:00
Rom Lemarchand 342077e78d am 67b00d8b: init.rc: change mem cgroups permissions
* commit '67b00d8b2d96e8133c249bcbc0fb63c49e10e022':
  init.rc: change mem cgroups permissions
2013-09-10 17:51:44 -07:00
Rom Lemarchand 67b00d8b2d init.rc: change mem cgroups permissions
Changing mem cgroups permissions to only be accessible by root and system.

Bug: 10210529
Bug: 10210900
Change-Id: Ib4fff6f49b33013b3629d40ae98a5e2464571b2d
2013-09-10 17:41:21 -07:00
Stephen Smalley 6552f6885f Trigger a policy reload from post-fs-data.
Once userdata is available and decrypted, trigger a policy reload to pick
up any policy update files stored under /data/security.

Change-Id: Ic2b3121c3395429b108c40d1d7f5a3124a5896c5
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-08-26 10:45:05 -04:00
Colin Cross 30caffc025 resolved conflicts for merge of a1af5cf6 to klp-dev-plus-aosp
Change-Id: I08e9898940f7cdd466469b76760807cc5d5c67e4
2013-08-23 14:39:39 -07:00
Colin Cross a1af5cf6d1 am d8d99c45: Merge "Handle policy reloads within ueventd rather than restarting it."
* commit 'd8d99c45b704399d50ae0a5e4df938d825c70cfa':
  Handle policy reloads within ueventd rather than restarting it.
2013-08-23 14:33:46 -07:00
Jeff Brown 46a24db563 Remove input flinger stubs. (DO NOT MERGE)
Bug: 10446930
Change-Id: I88b926380dbe1e866c0b87ec95b3489d87c5907b
2013-08-22 18:38:35 -07:00
Todd Poynor 13f4c9fb27 healthd: normal and charger mode startup
Command line flag -n tells healthd not to use (or wait for) servicemanager
in charger mode.

Change-Id: I255f9597dff6fc904f5ed20fd02f52c0531d14f8
2013-07-26 23:56:17 +00:00
Colin Cross 5ba57f9a95 Merge "add property to adjust extra_free_kbytes kernel vm tunable" 2013-07-26 23:07:00 +00:00
Stephen Smalley e2eb69db6d Handle policy reloads within ueventd rather than restarting it.
Restarting ueventd upon policy reloads has reportedly created
stability problems for some users and could cause events to be lost.
Stop restarting ueventd and instead handle policy reloads within ueventd.

Also stops restarting installd upon policy reloads.

Change-Id: Ic7f310d69a7c420e48fbc974000cf4a5b9ab4a3b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-07-26 15:39:41 -04:00