initial revision for imageloader

- also add unit tests (run them by FEATURES="test" emerge-${BOARD} ...)

BUG=chromium:616816
TEST=emerge-cyan chromeos-base/imageloader && cros deploy <ip for cyan> chromeos-base/imageloader
Change-Id: Idb3593ac65a83dedb85d78c42104d1b4ead5c7e0
Reviewed-on: https://chromium-review.googlesource.com/348080
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Ashish Gaurav <ashishgaurav@chromium.org>
Tested-by: Ashish Gaurav <ashishgaurav@chromium.org>
13 files changed
tree: fb3490768a3a1070a8acc1987381828de52d7beb
  1. README.md
  2. imageloadclient-glue.xml
  3. imageloadclient.cc
  4. imageloadclient.h
  5. imageloader-glue.xml
  6. imageloader.cc
  7. imageloader.gyp
  8. imageloader.h
  9. imageloader_common.cc
  10. imageloader_common.h
  11. org.chromium.ImageLoader.conf
  12. org.chromium.ImageLoader.service
  13. run_tests.cc
README.md

src/platform/imageloader

This aims to provide a generic utility to load (mount) and unload (unmount) verified disk images through DBus IPC.

Binaries

  • imageloader
  • imageloadclient

imageloader can be run as root and can handle mounting and unmounting of disk images. imageloadclient is a simple client (intended to be run as chronos) that can talk to imageloader and ask it to mount and unmount stuff. When imageloader is not running, DBus can invoke it via the one time run option (imageloader -o) and get the task done.