Fix buffer overflow in unit tests.

The imageloader unit tests have a buffer overflow do to an unsafe
implicit conversion of non-null terminated data to an std::string. This
manually wraps the data in a StringPiece.

BUG=chromium:664658
TEST=FEATURES=test emerge-${BOARD} imageloader

Change-Id: I18270654de2e2e3e90955ab581d3f6597ff674ba
Reviewed-on: https://chromium-review.googlesource.com/410040
Commit-Ready: Greg Kerr <kerrnel@chromium.org>
Tested-by: Greg Kerr <kerrnel@chromium.org>
Reviewed-by: Ricky Zhou <rickyz@chromium.org>
3 files changed
tree: 20cd7185558d73113584bb39be8090cd32cb18cd
  1. .presubmitignore
  2. README.md
  3. imageloadclient-glue.xml
  4. imageloadclient.cc
  5. imageloadclient.h
  6. imageloader-glue.xml
  7. imageloader-seccomp-amd64.policy
  8. imageloader-seccomp-arm.policy
  9. imageloader-seccomp-x86.policy
  10. imageloader.conf
  11. imageloader.gyp
  12. imageloader.h
  13. imageloader_common.cc
  14. imageloader_common.h
  15. imageloader_impl.cc
  16. imageloader_impl.h
  17. imageloader_main.cc
  18. imageloader_unittest.cc
  19. imageloader_wrapper
  20. mock_verity_mounter.h
  21. org.chromium.ImageLoader.conf
  22. org.chromium.ImageLoader.service
  23. public_keys/
  24. run_tests.cc
  25. test/
  26. verity_mounter.cc
  27. verity_mounter.h
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.