libfdt: Make Phandle::new() const

Decouple the definition of valid phandle values enforced by
Phandle::new() from the FdtError type and allow callers to generate a
libfdt::Result<Phandle> by implementing the standard TryFrom trait.

This was initially intended to be used in const expressions e.g.

    const PHANDLE: Phandle = Phandle::new().unwrap();

but this will actually required stabilization of const_option first. For
now, the constructor is at least marked const.

Test: atest liblibfdt.integration_test
Change-Id: Ib9893595b1dd3972782e488f087fec2872679293
2 files changed
tree: 6ec962c601d5e9685d9dfc50679f2ee1e1ba70cd
  1. apex/
  2. apkdmverity/
  3. authfs/
  4. compos/
  5. demo/
  6. demo_native/
  7. docs/
  8. encryptedstore/
  9. javalib/
  10. launcher/
  11. libs/
  12. microdroid/
  13. microdroid_manager/
  14. pvmfw/
  15. rialto/
  16. secretkeeper/
  17. service_vm/
  18. tests/
  19. virtualizationmanager/
  20. virtualizationservice/
  21. vm/
  22. vm_payload/
  23. vmbase/
  24. vmclient/
  25. zipfuse/
  26. .clang-format
  27. .gitignore
  28. Android.bp
  29. OWNERS
  30. PREUPLOAD.cfg
  31. README.md
  32. rustfmt.toml
  33. TEST_MAPPING
README.md

Android Virtualization Framework (AVF)

Android Virtualization Framework (AVF) provides secure and private execution environments for executing code. AVF is ideal for security-oriented use cases that require stronger isolation assurances over those offered by Android’s app sandbox.

Visit our public doc site to learn more about what AVF is, what it is for, and how it is structured. This repository contains source code for userspace components of AVF.

If you want a quick start, see the getting started guideline and follow the steps there.

For in-depth explanations about individual topics and components, visit the following links.

AVF components:

How-Tos: