Long ago, we mounted secondary physical cards as readable by all
users on the device, which enabled the use-case of loading media on
a card and viewing it from all users.
More recently, we started giving write access to these secondary
physical cards, but this created a one-directional channel for
communication across user boundaries; something that CDD disallows.
This change is designed to give us the best of both worlds: the
package-specific directories are writable for the user that mounted
the card, but access to those "Android" directories are blocked for
all other users. Other users remain able to read content elsewhere
on the card.
Bug: 22787184
Change-Id: I4a04a1a857a65becf5fd37d775d927af022b40ca
* commit '4c0ebdf2ed3ae5ea61887c5ef97efc363b85d3ad': (200 commits)
metrics: Import protobufs from Chromium.
metrics: replace "Logging.*" with "Platform.*"
platform2: Fix issues with new version of libchrome
init: fix typo and prevent startup error
metrics: Add a check for abnormally small messages to prevent crashes
libchromeos: Switch http Response to use streams
Revert "metrics: Fix the import path of protobufs."
metrics: Fix the import path of protobufs.
platform2: Switch over to libchrome r323904
metrics: add TPM.EarlyResetDuringCommand CrOS event.
delete __STDC_{FORMAT,LIMIT}_MACROS
metrics: make metrics library also use /var/lib/metrics/uma-events
metrics: tell what file we can't open on error
metrics: move sample file from /var/run to /var/lib
metrics: don't upload metrics when metrics are disabled
metrics: Disable uploader on non-official build.
platform2: Switch over to using base64 functions from libchromeos
metrics: fix -Winconsistent-missing-override warning
metrics: Fix upload_service to work with base::MessageLoop
metrics: generate app_version from standard lsb-release fields
...
* commit 'db639251c9e2a5cba4d19655ffe8bfc9e63c2923': (225 commits)
Remove superfluous legacy DBus includes
crash: do not call list-proxies if it does not exist.
crash: Point to canonical org.chromium.SessionManagerInterface.xml
crash: update OWNERS file
platform2: Explicitly use base:: namespace with CommandLine
crash-reporter: add support for device coredump
delete __STDC_{FORMAT,LIMIT}_MACROS
crash: Convert list_proxies to chromeos-dbus-bindings generator
crash: Fix session manager D-Bus call service name
crash: Remove glib from crash_reporter
crash: Shorten crash-reporter project alias.
crash-reporter: Use chromeos::KeyValueStore.
crash-reporter: Clean up testing code.
crash-reporter: Add session_manager logs to Chrome crashes.
crash-reporter: Attach Chrome logs to crash reports.
crash-reporter: add a sanity check for kernel dmesg records
Update libchrome to r307740 and fix build errors
crash-reporter: disable device coredumps in verified mode
crash-reporter: accept kernel dmesg records with no ramoops header
crash-reporter: remove gflags dependency
...
* commit '15b8a778760707b33bffd97491ccc80854d994ce': (200 commits)
metrics: Import protobufs from Chromium.
metrics: replace "Logging.*" with "Platform.*"
platform2: Fix issues with new version of libchrome
init: fix typo and prevent startup error
metrics: Add a check for abnormally small messages to prevent crashes
libchromeos: Switch http Response to use streams
Revert "metrics: Fix the import path of protobufs."
metrics: Fix the import path of protobufs.
platform2: Switch over to libchrome r323904
metrics: add TPM.EarlyResetDuringCommand CrOS event.
delete __STDC_{FORMAT,LIMIT}_MACROS
metrics: make metrics library also use /var/lib/metrics/uma-events
metrics: tell what file we can't open on error
metrics: move sample file from /var/run to /var/lib
metrics: don't upload metrics when metrics are disabled
metrics: Disable uploader on non-official build.
platform2: Switch over to using base64 functions from libchromeos
metrics: fix -Winconsistent-missing-override warning
metrics: Fix upload_service to work with base::MessageLoop
metrics: generate app_version from standard lsb-release fields
...
* commit '5cab52906c1e7d7dd0adc0b03b8eb8994e5d3e9c': (225 commits)
Remove superfluous legacy DBus includes
crash: do not call list-proxies if it does not exist.
crash: Point to canonical org.chromium.SessionManagerInterface.xml
crash: update OWNERS file
platform2: Explicitly use base:: namespace with CommandLine
crash-reporter: add support for device coredump
delete __STDC_{FORMAT,LIMIT}_MACROS
crash: Convert list_proxies to chromeos-dbus-bindings generator
crash: Fix session manager D-Bus call service name
crash: Remove glib from crash_reporter
crash: Shorten crash-reporter project alias.
crash-reporter: Use chromeos::KeyValueStore.
crash-reporter: Clean up testing code.
crash-reporter: Add session_manager logs to Chrome crashes.
crash-reporter: Attach Chrome logs to crash reports.
crash-reporter: add a sanity check for kernel dmesg records
Update libchrome to r307740 and fix build errors
crash-reporter: disable device coredumps in verified mode
crash-reporter: accept kernel dmesg records with no ramoops header
crash-reporter: remove gflags dependency
...
This causes build failures in google3 where they use GCC. glibc only
provides const-correct overloads for string functions for GCC >= 4.4,
but clang -- which is what we use -- pretends to be GCC 4.2.
Change-Id: I2a054823ea6201ebcea46d5e77b80a975eefc622
/system/etc/recovery.img defaults to 0644. Change it to 0440.
Bug: 22641135
Change-Id: I45cdb0cc1b58f35fbcd0f16e7cc6c4eef63b0b74
(cherry picked from commit b602e6f9a3)
This is mostly just the AdbWrapper that we used in our tests, but I've
cleaned up the API to be a little more Pythonic (mostly in the sense
that commands are passed as lists rather than strings that are
shlex.split() by the shell command), and implemented the workaround
error checking for adb shell.
Move the tests up a directory. Having them buried a level down has
only been annoying.
There are now two files containing Python tests. test_device.py
contains tests specifically checking the AndroidDevice API, and
test_adb.py checks the ADB client program. To run both, use
python -m unittest discover [-v]
Change-Id: Ibd158c528d31126a5b048bd00bc93039dbc468bc
Support added so init scripts can now import directories.
BUG: 22721249
Change-Id: I02b566bfb50ea84469f1ea0c6ad205435a1df286
TEST: Tested importing a folder on arm64 emulator