Commit Graph

10317 Commits

Author SHA1 Message Date
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
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
Xavier Ducrohet 1c77bf4ce5 Merge "Fix windows specific behavior of FileMap" into lmp-dev 2014-10-16 19:09:40 +00:00
Xavier Ducrohet 1a55aa5e34 Fix windows specific behavior of FileMap
The implementation of the FileMap destructor would
close the file, only on Windows, which did not match
the behavior on mac/linux.

This is because calling munmap does not close the file
descriptor. It must be closed separately, before or after
munmap.

On Windows, the file must also be closed manually,
before or after closing the mappingFile.

The change basically removes the closing file from
the windows-specific part of the destructor, to
make behavior more consistent on all platforms
where the caller to FileMap is responsible for closing
its own file (since FileMap receives an opened file).

Change-Id: I5e3cfffbb870d5f3595802ccac57dbc1dbf1ce6e
2014-10-16 12:09:06 -07:00
Xavier Ducrohet 66fa33a7ad am dc7957d9: am cd1da4e0: Fix toolchain issue for windows build of libziparchive.
* commit 'dc7957d9b782a759a4eaa75832dd18c9943c7d0c':
  Fix toolchain issue for windows build of libziparchive.
2014-10-16 18:59:54 +00:00
Dmitriy Ivanov 976e1b6431 Remove libsigchain from LD_PRELOADs
Bug: 15345057
Bug: 15426766

(cherry picked from commit c9f9f35efa)

Change-Id: If54e1aeaa1e2abe061ac19666af4f4e058b81df2
2014-10-16 11:45:16 -07:00
Xavier Ducrohet dc7957d9b7 am cd1da4e0: Fix toolchain issue for windows build of libziparchive.
* commit 'cd1da4e04f0eb71a92a586c66acd0e34115608e1':
  Fix toolchain issue for windows build of libziparchive.
2014-10-16 16:55:07 +00:00
Xavier Ducrohet cd1da4e04f Fix toolchain issue for windows build of libziparchive.
With mingw 4.8, the new default packed behavior is broken and makes
zip archive fails due to unexpected misalignment in
CentralDirectoryRecord.

This patch uses -mno-ms-bitfields to revert to the old packed
behavior.

Change-Id: Ic977c841e330e19451db1d31ddb22e570a525062
2014-10-16 07:49:16 +00:00
Dianne Hackborn 1a27d6ab32 am 6d343432: am 67f46cb0: Fix issue #18000467: processgroup truncates buffer
* commit '6d34343263d890114410fafc85885501eca8d3d6':
  Fix issue #18000467: processgroup truncates buffer
2014-10-15 23:25:11 +00:00
Dianne Hackborn 6d34343263 am 67f46cb0: Fix issue #18000467: processgroup truncates buffer
* commit '67f46cb0e137edbf4a6f7014ca8a3a58484016d1':
  Fix issue #18000467: processgroup truncates buffer
2014-10-15 23:15:11 +00:00
Dianne Hackborn 67f46cb0e1 Fix issue #18000467: processgroup truncates buffer
Change-Id: I3d98a4da9c47d83d25a11ff0ef94cfcab1feabea
2014-10-15 11:36:28 -07:00
Dianne Hackborn 00ffc22cbf am e09bfb12: am 2c5e7e10: Maybe fix issue #17969789: Shamu FR: Runtime restart while scrolling Instagram
* commit 'e09bfb1213b9174d4c3d6536b755d924772ce881':
  Maybe fix issue #17969789: Shamu FR: Runtime restart while scrolling Instagram
2014-10-14 19:33:06 +00:00
Dianne Hackborn e09bfb1213 am 2c5e7e10: Maybe fix issue #17969789: Shamu FR: Runtime restart while scrolling Instagram
* commit '2c5e7e102bc2059d22f8457db68c567b64cec963':
  Maybe fix issue #17969789: Shamu FR: Runtime restart while scrolling Instagram
2014-10-14 01:19:29 +00:00
Dianne Hackborn 2c5e7e102b Maybe fix issue #17969789: Shamu FR: Runtime restart while scrolling Instagram
It looks like there were a couple problems in the code:

- It would not 0-terminate the string it read, to make sure we didn't
  see garbage at the end.
- It didn't reduce buf_len as it processes data in the buffer, so if
  we need to read more we will increase the buffer length to be longer
  than the actual available data.

Also put in some logs about every thing we kill, so we can see what
is going on when debugging.  And add a special check for us trying
to kill pid 0 for any reason, since doing so seem to be terminal to
the caller.

Change-Id: I2fe29bfef08938b8a2eb182475c0705c14d8d84f
2014-10-13 17:52:32 -07:00