Commit Graph

5591 Commits

Author SHA1 Message Date
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
Christopher Ferris 71a8aa3473 Merge "Update comment from review." 2013-09-30 18:21:15 +00:00
Christopher Ferris 474afff229 Update comment from review.
Missed this typo that enh pointed out.

Bug: 8410085
Change-Id: Ic636ae218fc153bc5e3b1a0fdc2f7161980e5eec
2013-09-30 11:16:17 -07:00
Christopher Ferris f41cf2086d Merge "Create a single backtrace library." 2013-09-30 18:02:54 +00:00
Christopher Ferris 7fb22878d4 Create a single backtrace library.
This library will be used to abstract away getting backtrace
data from how it is implemented. This is the first step to
replacing libcorkscrew with libunwind.

Bug: 8410085
Change-Id: Ie8f159e96a055d378e1ddc72d40239fba4cf52b7
2013-09-28 12:26:35 -07:00
Ying Wang aa62be65ed Merge "Use SSE2 enhanced memset for capable x86 processors" 2013-09-26 17:08:02 +00:00
jp abgrall 9196266939 Merge "cutils: list: add list_for_each_safe" 2013-09-25 18:31:44 +00:00
Kenny Root e245b8fb5d Merge changes I9f858204,Ib35643b3
* changes:
  mincrypt: merge the two RSA verifiers
  mincrypt: support SHA-256 hash algorithm
2013-09-25 16:31:44 +00:00
Doug Zongker 0a862dcd63 mincrypt: merge the two RSA verifiers
The e=3 and e=65537 implementations are nearly identical, refactor
them down into one.

(cherry picked from commit 8fdbf97652)

Change-Id: I9f858204d52a0ae880170d955bf8f29fed57ee94
2013-09-25 09:26:51 -07:00
Doug Zongker 8e5b63d045 mincrypt: support SHA-256 hash algorithm
- adds a library to compute the SHA-256 hash

- updates the RSA verifier to take an argument specifying either SHA-1
  or SHA-256

- updates DumpPublicKey to with new "key" version numbers for
  specifying SHA-256

- adds new argument to adb auth code to maintain existing behavior

(cherry picked from commit 515e1639ef)

Change-Id: Ib35643b3d864742e817ac6e725499b451e45afcf
2013-09-25 09:26:34 -07:00
Benoit Goby f2c4c4ada7 Merge "init: Fix queue_all_property_triggers with nonexistent properties" 2013-09-24 23:10:44 +00:00
Benoit Goby d679e1b572 init: Fix queue_all_property_triggers with nonexistent properties
Don't queue actions for "on property=*" if the property does not exist.
This fixes these errors on boot:

    init: property 'sys.powerctl' doesn't exist while
    expanding '${sys.powerctl}'
    init: powerctl: cannot expand '${sys.powerctl}

Change-Id: I3bd354d73a860f856be5df2c654f940445f9efd9
2013-09-24 15:20:34 -07:00
Daniel Leung 51546ee32c Use SSE2 enhanced memset for capable x86 processors
Originally, if TARGET_ARCH_VARIANT is x86-atom, the SSE2 enhanced
memset is used. This patch extends this to all x86 processors which
support SSE2 (i.e. ARCH_X86_HAVE_SSE2 is true).

Indentation added to the ifeq cases to make this easier to read.

Change-Id: I05f49e237a95359d3f2e3216b037e3fc1a0fbcb0
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-09-24 12:53:18 -07:00
Elliott Hughes 3c8bdef029 Merge "libsparse: Use BIONIC implementation of mmap64()" 2013-09-19 21:22:47 +00:00
Nick Kralevich 0f507339ec Merge "Do not change ownership of /sys/fs/selinux/load to system UID." 2013-09-19 15:47:53 +00: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
Elliott Hughes a208ea6301 Merge "Fix fstab memory leak" 2013-09-18 23:35:01 +00:00
Irina Tirdea d431b8d7f1 Fix fstab memory leak
When reading the fstab config file fails, fstab memory is not freed.
When fstab structure is no longer needed, only half of it is freed.

Free fstab memory in all cases (error or when it is no longer needed).

Change-Id: Ib0758a5aaa69505285bf64143632986a2dbbdccb
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
2013-09-18 16:34:02 -07:00
Elliott Hughes 810ff69609 Merge "Cleanup fs_getline from fs_mgr" 2013-09-18 23:26:50 +00:00
Daniel Leung fccfa414c9 libsparse: Use BIONIC implementation of mmap64()
Change-Id: I63692629d3a62b7aee21202b67241904b1cc9789
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2013-09-18 14:42:28 -07:00
Colin Cross 36b39a97f3 Merge "init: Fix get_hardware_name() to cope with long /proc/cpuinfo output" 2013-09-18 21:38:33 +00:00
Irina Tirdea e16d747b51 Cleanup fs_getline from fs_mgr
Since getline is included in bionic, fs_mgr can use this version instead of
the one defined internally by fs_getline.

Replace fs_getline with getline.

Change-Id: I49b53d639bd995f051256fb7573ff6ab45d9c36d
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
2013-09-18 22:55:51 +03:00
jp abgrall 4a280e3dbe Merge "Don't use control requests to read device serial numbers." 2013-09-17 21:15:12 +00:00
Mark Wachsler bd446c76f3 Don't use control requests to read device serial numbers.
Instead of sending control requests to all devices to read their serial
numbers, read the cached strings from sysfs. This fixes two problems:
1) The control requests sometimes timed out, causing devices to show up
as "????????????????", and 2) a control request could mess up devices
which were in the middle of being flashed.

Also enumerate by walking sysfs rather than devs so that we can avoid
opening host controller devices, which can be slow. On a system with 10
EHCI controllers, fastboot devices now takes 7 msec instead of 700 msec.

Change-Id: I2ad2d58b48268d7950bd279fd6a6753dc2f79514
2013-09-16 18:08:07 -04:00
Dima Zavin 6ed51b8a2d Merge "mkbootimg: support longer kernel command lines" 2013-09-13 16:37:47 +00:00
Dima Zavin b4819e4ada Merge "init: support longer command lines" 2013-09-13 16:36:24 +00:00
Andrew Boie 30fb83b6e5 cutils: list: add list_for_each_safe
For when you want to modify the list whilst iterating over it.

Change-Id: I84432892890987c218e56883c35e52c9ff0240a3
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-09-12 15:30:40 -07:00
Andrew Boie d35ce3563b mkbootimg: support longer kernel command lines
We can't simply increase the value of BOOT_ARGS_SIZE since that
would break past binary compatibility; the offset of 'id' would
change. This can cause serious problems with incremental OTA updates.

Instead, define a supplemental field which stores command line
information beyond the first 512 bytes. A value of 1024 was chosen
to keep the total size of struct boot_img_hdr under the smallest
page size of 2048 bytes.

Even if the extra_cmdline field is used, the original cmdline
field is still always NULL-terminated to avoid issues with older
bootloaders that haven't been updated.

Change-Id: I887e6f1db351a5b71a61e3a03363cf8856123d74
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-09-09 13:13:33 -07:00
Andrew Boie 2e63e71f31 init: support longer command lines
The Linux kernel supports command lines up to 2048 bytes on x86,
see COMMAND_LINE_SIZE in asm/setup.h.

If any androidboot.xxxx arguments were past the 1024 byte limit
here, they were lost.

Change-Id: I6247c511a7de04109490fffa0125801d274a5501
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-09-09 13:11:34 -07:00
Colin Cross 596e9c6314 Merge "fix valgrind ioctl warning." 2013-09-05 19:54:31 +00:00
Ben Cheng 2b2f1ae86f Merge "Add -Wno-unused-parameter to suppress the warning." 2013-09-04 21:03:05 +00:00
Ben Cheng c665df33e0 Add -Wno-unused-parameter to suppress the warning.
For example in system/core/libcorkscrew/arch-arm/backtrace-arm.c:

system/core/libcorkscrew/arch-arm/backtrace-arm.c:555:49: error: unused
parameter 'siginfo' [-Werror=unused-parameter]

Change-Id: Ibe13e8761a2f57324c0f0d87d9add549a20aa37a
2013-09-04 13:51:36 -07:00
Colin Cross d171b65670 Merge "[GNSS] Add AID_GPS to property user white list" 2013-09-04 00:09:30 +00:00
Nick Kralevich 531328400e Merge "init: call restorecon on /sys" 2013-09-03 23:41:26 +00:00
Nick Kralevich 8328edb0a7 Merge "init: allow disabling selinux via a kernel command line" 2013-09-03 23:41:19 +00:00
Nick Kralevich b242339988 Merge "init: move SELinux into enforcing mode." 2013-09-03 23:41:09 +00:00
Nick Kralevich ae76f6dbcf init: call restorecon on /sys
Not all files on /sys are not getting labeled properly. Fix them.

Change-Id: I9dcff76354e7f50d41f1b6e702836cfbbc149278
2013-09-03 15:55:58 -07:00
Nick Kralevich 935bd3e315 init: allow disabling selinux via a kernel command line
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
b710ed21de .

Change-Id: I912583db8e6a0e9c63380de32ad8ffc47a8a440f
2013-09-03 15:55:00 -07:00
Nick Kralevich 56fa0ac6b6 init: move SELinux into enforcing mode.
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
2013-09-03 15:54:15 -07:00
Jin Wei b815701247 fix valgrind ioctl warning.
Initialize local variable to avoid syscall ioctl warning.

Change-Id: Ibad5b86cd799f147c71f182d654e61318e2ac15e
Origin-Change-Id: Iedf5b128ae1743f633d2821ac3e402942ad6642b
Signed-off-by: Jin Wei <wei.a.jin@intel.com>
Signed-off-by: Jian Luo <jian.luo@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 62797
2013-08-31 18:57:46 -04:00
Dima Zavin b35f68a697 Merge "init: load factory properties" 2013-08-28 21:08:43 +00:00
Elliott Hughes a7f6e015a5 Merge "correct msi usb vendor id." 2013-08-28 15:31:51 +00:00
astonehuang 48c5d7b6cd correct msi usb vendor id.
Change-Id: I13128531b8dd7758abddce47ce1c119381773c26
2013-08-28 10:53:17 +08:00
Elliott Hughes 2e5157fa05 Merge "Fix build with gcc-4.8 and array boundaries issue" 2013-08-27 17:12:01 +00:00
Benoit Goby db71324a4f Merge "libusbhost: It's no longer assumed that "bus/usb" exists once "bus" was created" 2013-08-26 22:13:20 +00:00
Ziv Hendel 8cc80fc894 libusbhost: It's no longer assumed that "bus/usb" exists once "bus" was created
On some devices there is a slight delay between the creation of "/dev/bus"
and "/dev/bus/usb". Previously, the code assumed that both are created in the
same time which caused "watch_existing_subdirs" to fail and libusbhost to stop
working until the device is rebooted. The fix will setup an inotify event on the
creation of the "bus/usb" so it will not be missed once it's created.

Change-Id: I17f06dd167e61573307425e48898e12ebc954093
2013-08-26 14:56:39 -07:00
Nicolas SUET 841859f79f [GNSS] Add AID_GPS to property user white list
Add "gps." and "persist.gps." to property_perms white list.

Change-Id: I7177170676d774c87e08d1548f5264ac27cba3ff
Orig-Change-Id: I7a94caa26be4aefd2fe4f155908e2f8f09858bee
Signed-off-by: Nicolas SUET <nicolas.suet@intel.com>
Signed-off-by: jerome Pantaloni <jeromex.pantaloni@intel.com>
Signed-off-by: Jian Luo <jian.luo@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 118091
2013-08-26 16:20:18 -04: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 a8ba1f2f0b Merge "Add support for socket security context specification." 2013-08-24 00:12:03 +00:00