Commit graph

10329 commits

Author SHA1 Message Date
Leo Wang
f2bd3fdd19 Merge "Provide a way to select force encryption from vendor partition" into lmp-mr1-dev 2015-01-09 01:17:51 +00:00
Christopher R. Palmer
ba95be58c5 init: Fix memory corruption when sanitizing platform paths
This commit fixes code that incorrectly increments s when it
hits the terminator character of the string being sanitized.
This means it will randomly start trashing memory beyond the
end of the string being sanitized until it happens to hit two
NULs (\0\0) which will break it out of the loop.

(cherry picked from commit 07f3fee164)

Bug: 18885357
Change-Id: If6b01fe2b9bd5985f08f1278deb03b311d0170dc
2015-01-07 12:18:00 -08:00
Paul Lawrence
703b87de5b Provide a way to select force encryption from vendor partition
This allows a vendor to force encryption on devices via a vendor
partition flag:

ro.vold.forceencryption 1

Bug: 18764230
Change-Id: Id0049ce64e34e4f6f96e593aadd70c277ac131c8
2015-01-07 11:44:51 -08:00
Eric Laurent
4fca59181c audio: add usage "virtual source" to audio attributes.
Bug: 16006090.
Change-Id: I2d22b52e97095b57a6508b82bd11e27f860bb2e7
2014-12-09 12:13:13 -08:00
Eric Laurent
47f52f247d audio: new stream types
Added stream types for internal use by audio policy
and audio flinger.

Bug: 18067208.
Change-Id: I90fd4df9ed5e0d8fb8c220d67e95fd0e32a06f14
2014-11-24 10:41:21 -08:00
Daisuke Okitsu
a5a4e9e0ca sdcard: mount sdcard with the noexec option
Vold mounts the sdcard with noexec, but the fuse deamon
mounts with exec, so it is still possible to execute
binaries:

  /dev/fuse /storage/sdcard1 fuse rw,nosuid,nodev,relatime,
  user_id=1023,group_id=1023,default_permissions,allow_other 0 0

  /dev/block/vold/179:65 /mnt/media_rw/sdcard1 vfat rw,dirsync,
  nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,
  dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,
  shortname=mixed,utf8,errors=remount-ro 0 0

With this change both vold and fuse mounts with noexec.

(cherry picked from commit f777d6694eecf6e61d9859df2090199863050017)

Change-Id: I66cbfc3a3a89a26958f83577f5e7a5e27f99184e
2014-11-24 08:39:15 -08:00
Nick Kralevich
83d85563c5 logd: throttle SELinux denials to 20/sec
Impose a limit of 20 selinux denials per second. Denials beyond
that point don't add any value, and have the potential to cause
crashes or denial of service attacks.

Do some other misc cleanup while I'm here.

Bug: 18341932

(cherry picked from commit c234a1b879)

Change-Id: Ic5c96003db82e504baf301e87be5c8c539c73c2a
2014-11-19 14:06:53 -08:00
Nick Kralevich
86c9e5f7e2 Introduce "adb keygen"
Introduce the "adb keygen" command.

  Usage: adb keygen <filename>

This command creates an adb public/private key pair in a user
specified file. This can be used to create new adb keys, or rotate
existing keys.

Modify adb's key generation routines to use the HOSTNAME/LOGNAME
environment variables if available. This allows someone to override
the username/hostname embedded within the adb public key file if
desired. Fallback to the old mechanisms if those environment
variables aren't available.

Bug: 18342715
Change-Id: Ibccee6088d4609aa05ad6687d3a1d8a8689d3e8a

(cherry picked from commit af782b9f2a)

Change-Id: Ic76ffc9412171dddc879af0bbf6e20fbe1a8f057
2014-11-14 21:09:48 +00:00
Christopher Ferris
bc137cf4a3 Merge "Convert futex to cond wait." into lmp-mr1-dev 2014-11-14 18:35:14 +00:00
Christopher Ferris
db44538387 Convert futex to cond wait.
Switch to the better supported pthread_cond to handle the Wait/Wake
functions.

Also, increase the number of simultaneous threads in the thread tests.

Bug: 18381207
Change-Id: I63240208e8b7f641b3f35a3fc0bb1acf80dc796e
2014-11-13 20:37:22 -08:00
Daniel Rosenberg
323df093c8 Merge "property_service: Added vendor build properties to load_all_props" into lmp-mr1-dev 2014-11-14 01:08:17 +00:00
Sami Tolvanen
72f0d92c72 DO NOT MERGE: Do not mount devices with invalid verity metadata
The return value of read_verity_metadata is propagated to caller
even if the verity metadata is invalid, provided that it can be
read from the device. This results in devices with invalid verity
metadata signatures to be mounted normally, which is not desirable.
This change fixes the bug by changing the return value in case of
verification failure to FS_MGR_SETUP_VERITY_FAIL.

Bug: 15984840
Bug: 18120110
Change-Id: Ic29f37a23cb417c2538d60fb05de9dd310d50f4a
(cherry picked from commit c95e9da396)
2014-11-13 15:43:08 -08:00
Sami Tolvanen
9573a13bbc DO NOT MERGE: Switch fs_mgr to use SHA-256 instead of SHA-1
Verity metadata signatures will be switched to SHA-256. Switch
fs_mgr signature verification to use the correct algorithm.

Needs matching changes from
  https://googleplex-android-review.git.corp.google.com/#/c/579905/
  https://googleplex-android-review.git.corp.google.com/#/c/583213/
  https://googleplex-android-review.git.corp.google.com/#/c/583214/
  https://googleplex-android-review.git.corp.google.com/#/c/583233/

Bug: 15984840
Bug: 18120110
Bug: 17917515
Change-Id: I8f90519bffa105a0eb7abeaad3aea1ffceb851e2
(cherry picked from commit a3465e250c)
2014-11-13 15:42:50 -08:00
Daniel Rosenberg
4cf5297cc8 property_service: Added vendor build properties to load_all_props
Signed-off-by: Daniel Rosenberg <drosen@google.com>

(cherry picked from commit b95122205d)

Bug: 18281574
Change-Id: Id1f1c4e9e0d1bfbcae3995fb7966d18bf7d6e06d
2014-11-13 13:08:28 -08:00
JP Abgrall
eb6036ac6b fs_mgr: let fsck.f2fs actually attempt a fix
The newer fsck.f2fs (1.4.0++) has better fix support, so invoke it.

Requires http://ag/583949 f2fs-tools update.

Bug: 17640053
Bug: 18292088
Change-Id: I42370d92b232e0bdbf28cccf7035a15dbffeb268
Signed-off-by: JP Abgrall <jpa@google.com>
2014-11-08 01:20:24 +00:00
Christopher Ferris
0eabf64ce0 Fix adb/fastboot windows compilations.
Many of the windows files where not including stdlib.h even though they
are using malloc/free calls.

Bug: 18283958
(cherry picked from commit ae7bf0959b)

Change-Id: Iebc09cc314fa8f0ba6c6cd45ba26135052f156dd
2014-11-06 18:32:39 -08:00
Nick Kralevich
ac12f25004 Ensure /data/adb exists
automerge: 6672300

* commit '667230074b6e4e306a50d84a88a57bf4f1ec0291':
  Ensure /data/adb exists
2014-11-05 19:18:32 +00:00
Nick Kralevich
667230074b Ensure /data/adb exists
Ensure that /data/adb always exists. This directory is used
for writing adb debugging information when persist.adb.trace_mask
is set.

Bug: https://code.google.com/p/android/issues/detail?id=72895

(cherry picked from commit 89252ce31a)

Change-Id: I44e01bee50125f4e6e5fff6e74c53bb2022ce355
2014-11-05 10:17:39 -08:00
Michael Lentine
b542285436 Merge "Fix native_handle_create to check if malloc fails" into lmp-mr1-dev 2014-11-03 22:13:48 +00:00
Michael Lentine
2b8852dece Fix native_handle_create to check if malloc fails
Bug: 18076253
Change-Id: I8dbe3af88f52f18f74a3ab857fea53ae7585e2f7
2014-11-03 13:48:15 -08:00
Christopher Ferris
56bf9d8e60 am 4b970895: am 5bd96311: DO NOT MERGE Restore libcorkscrew unwinding. automerge: 5a69c1d -s ours automerge: d7c8db1 -s ours
* commit '4b970895848ff114ac1011a293663eb6d43e8fd7':
2014-11-03 21:11:40 +00:00
Christopher Ferris
a228c63288 am a18bcfa4: am 91ce3576: resolve merge conflicts of 290efd2 to klp-modular-dev-plus-aosp. automerge: e916313
* commit 'a18bcfa45e9d37650bca158577d02f5059453935':
2014-11-03 21:11:39 +00:00
Christopher Ferris
4b97089584 am 5bd96311: DO NOT MERGE Restore libcorkscrew unwinding. automerge: 5a69c1d -s ours automerge: d7c8db1 -s ours
* commit '5bd963117aa121d1fdfd5def4379cd363cf60ece':
2014-11-03 21:02:01 +00:00
Christopher Ferris
a18bcfa45e am 91ce3576: resolve merge conflicts of 290efd2 to klp-modular-dev-plus-aosp. automerge: e916313
* commit '91ce3576337b0541912da7ec4b1efd802568dfce':
2014-11-03 21:02:00 +00:00
Christopher Ferris
5bd963117a DO NOT MERGE Restore libcorkscrew unwinding. automerge: 5a69c1d -s ours
automerge: d7c8db1  -s ours

* commit 'd7c8db124c1b4b13d7f55f7c338913ec6d0cd3d1':
2014-11-03 20:53:33 +00:00
Christopher Ferris
91ce357633 resolve merge conflicts of 290efd2 to klp-modular-dev-plus-aosp.
automerge: e916313

* commit 'e916313defbd09479dc29d38f3aa467f3b296f7c':
2014-11-03 20:53:28 +00:00
Christopher Ferris
b87e8276a5 Merge "Fix debuggerd issues." into lmp-mr1-dev 2014-11-03 19:21:30 +00:00
Nick Kralevich
3e05314026 Fix mac build
"errno.h" doesn't get included on mac so we need to do it explicitely.

system/core/libnativebridge/tests/CodeCacheExists_test.cpp:30:15: error:
use of undeclared identifier 'ENOENT'
      ASSERT_EQ(ENOENT, errno);

(cherry picked from commit bcd1a834d4)

Change-Id: Ib894e3a3912a943c61787461f127e4b11aacf212
2014-11-03 18:15:37 +00:00
Christopher Ferris
84ddb34a3a Fix debuggerd issues.
- Fix a problem where a tid exits before the attach completes, and it
  causes debuggerd to self terminate.
- Fix a problem where sibling tid dumps do not properly wait for the tid
  to get signalled.

Bug: 17800180
Bug: 12567315
Change-Id: Ic3cd619cc2c72402f9a45f14abeed4721b50d64d
2014-11-02 23:36:15 -08:00
Sami Tolvanen
4cafe2ff89 Fix verity on system partitions larger than 2G
If the system partition is larger than 2G, the device fails to read
verity metadata, because fseek accepts only a 32-bit signed offset.
Switch from fseek to lseek64 to allow seeking using a 64-bit offset,
which solves the problem. At the same time, move away from stdio in
the function.

Bug: 17705619
Change-Id: I226320498dcb750ec6cde84411c7fe0774c9cab7
2014-10-29 11:06:47 -07:00
Calin Juravle
47a919c6fb Merge "Add code cache tests to libnativebridge." into lmp-mr1-dev 2014-10-28 17:16:33 +00:00
Calin Juravle
9c094da831 Merge "Handle code_cache dir creation in libnativebridge" into lmp-mr1-dev 2014-10-28 17:16:24 +00:00
Calin Juravle
9ef4fa4c2c Add code cache tests to libnativebridge.
Bug: 18027433

(cherry picked from commit 59a719c466)

Change-Id: I32bcf3ae0d4569d4d8b88168e6c36ddff70b8f7d
2014-10-28 16:06:43 +00:00
Paul Lawrence
3dbcc8b933 Merge "adb warns on remount when verity is enabled" into lmp-mr1-dev 2014-10-27 19:31:51 +00:00
Iliyan Malchev
5b244cd414 toolbox: add prlimit command
adb shell prlimit <pid> <cur> <max>

prlimit uses prlimit internally to allow you to set the limits on an arbitrary
process, if you have the privileges to.

Change-Id: Ie9a5dc510c7c695debd8f948361d4c51befa5604
Signed-off-by: Iliyan Malchev <malchev@google.com>
2014-10-27 12:25:41 -07:00
Paul Lawrence
f643beced1 adb warns on remount when verity is enabled
Bug: 18119147
Change-Id: I75e5edf83fa01dbf2495e24df4597dce41f13654
2014-10-27 10:56:31 -07:00
Calin Juravle
1402fbb135 Handle code_cache dir creation in libnativebridge
Also:

- add kPreInitiliazed state to native bridge with check transition:
kOpened->kPreInitialized->kInitialized
- made sure we free the memory for the code_cache_path
- tidy up some error messages
- tidy up tests
- add a dummy native bridge to test with

Bug: 18027433
Bug: 18097480

(cherry picked from commit f9d9e2a2d9)

Change-Id: I9ce578949dbe522d5033465df7ca49fdd3aa3cbf
2014-10-27 15:37:32 +00:00
Christopher Ferris
d7c8db124c DO NOT MERGE Restore libcorkscrew unwinding.
automerge: 5a69c1d  -s ours

* commit '5a69c1db365323f984c6a8afd1fc035551e96d99':
  DO NOT MERGE Restore libcorkscrew unwinding.
2014-10-24 20:37:13 +00:00
Christopher Ferris
e916313def resolve merge conflicts of 290efd2 to klp-modular-dev-plus-aosp.
Change-Id: Ic6b18eeae43c2ef2256a0508ac60c1724385d3b0
2014-10-24 13:20:17 -07:00
Narayan Kamath
6e93b246d4 am 80f227c1: am 66f0d93c: Don\'t allow SUPPORTED_ABIs to be set by the native bridge.
* commit '80f227c1f75d753396a6efd6fccfc0c76c93bae4':
  Don't allow SUPPORTED_ABIs to be set by the native bridge.
2014-10-22 20:44:58 +00:00
Narayan Kamath
80f227c1f7 am 66f0d93c: Don\'t allow SUPPORTED_ABIs to be set by the native bridge.
* commit '66f0d93c265657e17c7a1ddd74beb61070a8df69':
  Don't allow SUPPORTED_ABIs to be set by the native bridge.
2014-10-21 21:42:58 +00:00
Narayan Kamath
66f0d93c26 Don't allow SUPPORTED_ABIs to be set by the native bridge.
SUPPORTED_ABIs is a prioritized list of all ABIs a device
support, and must not vary depending on whether or not an app
is emulated.

bug: 18061712
Change-Id: I3ec3897d23e37c645b4d9d9e6e32aae9afff952c
2014-10-21 18:33:27 +01:00
Arve Hjønnevåg
b50d0cd53f Merge "rootdir: Make trusty version readable by dumpstate" into lmp-mr1-dev 2014-10-20 21:53:59 +00:00
Adam Lesinski
a0a7ac037d am fe963bfd: am a1ac84cd: MingW doesn\'t handle __attribute__((weak)) for Windows PE
* commit 'fe963bfd8cf3a240785892f8194debb4e0ebb92d':
  MingW doesn't handle __attribute__((weak)) for Windows PE
2014-10-20 21:20:40 +00:00
Adam Lesinski
fe963bfd8c am a1ac84cd: MingW doesn\'t handle __attribute__((weak)) for Windows PE
* commit 'a1ac84cd8d7357f38a9fc60ab9d42e81d1790fd2':
  MingW doesn't handle __attribute__((weak)) for Windows PE
2014-10-20 21:14:50 +00:00
Adam Lesinski
a1ac84cd8d MingW doesn't handle __attribute__((weak)) for Windows PE
Windows PE format doesn't have the same support for weak symbols
as ELF does.

The symbol android_log_id_to_name was strangely omitted from the
resulting Windows executable and the callsite where it was supposed
to be called was relaced with a different symbol, which caused a crash
in AAPT on Windows.

This change works due to a careful set of #ifdefs that ensure only one
definition of android_log_id_to_name is defined, but there are other
uses of __attribute__((weak)) which should be inspected.

Change-Id: I3b58076e31d9b28c5143773a170e9ffda9fa3815
2014-10-20 12:33:59 -07:00
Dmitriy Ivanov
37ef356a8e Merge "Remove libsigchain from LD_PRELOADs" into lmp-mr1-dev 2014-10-20 16:39:57 +00:00
Arve Hjønnevåg
7770252a84 rootdir: Make trusty version readable by dumpstate
Change-Id: I761650d286b454f1fe01a585e7cd6ec769bfc527
2014-10-16 16:11:37 -07:00
Xavier Ducrohet
81080625a2 am 88b463a1: am 1c77bf4c: Merge "Fix windows specific behavior of FileMap" into lmp-dev
* commit '88b463a1c12cccc6738baa51642bf639bd9a6e53':
  Fix windows specific behavior of FileMap
2014-10-16 19:19:16 +00:00
Xavier Ducrohet
88b463a1c1 am 1c77bf4c: Merge "Fix windows specific behavior of FileMap" into lmp-dev
* commit '1c77bf4ce5059f3a770418cfa8afed39ee41ab24':
  Fix windows specific behavior of FileMap
2014-10-16 19:13:46 +00:00