Merge remote-tracking branch 'goog/upstream-master' into merge-citadel-pre-1.0.0

* goog/upstream-master:
  keymaster: add HardwareAuth & Verification Token types
  keymaster: document bootloader parameters
  Add protocol for session bound physical input events
  Add auth token HMAC key sharing protocol
  Revert "Support message CRCs in the transport protocol."
  Support message CRCs in the transport protocol.
  Retrieve repo snapshot info from Nugget OS
  Improve Nugget OS version reporting
  NUGGET_PARAM_REBOOT always does a hard reboot
  Print more debug information about image header

Test: manual -- boot, set and change credential
Test: selected CTS and VTS tests from release-tests.sh
Bug: 79416307
Change-Id: Ieea084bb0b64d3c66ce2c2e43f3a93514e79a4d1
tree: f1be5ffd003175a9d2c531c47c80a52421736463
  1. citadel/
  2. libnos/
  3. libnos_datagram/
  4. libnos_transport/
  5. nugget/
  6. Android.bp
  7. BUILD
  8. LICENSE
  9. METADATA
  10. MODULE_LICENSE_APACHE2
  11. NOTICE
  12. README.md
  13. WORKSPACE
README.md

Generic host components for Nugget

Nugget will be used in different contexts and with different hosts. This repo contains the components that can be shared between those hosts.

nugget

The nugget directory contains items that are shared between the host and the firmware. Those include:

  • shared headers
  • service protos

libnos

libnos is a C++ library for communication with a Nugget device. It offers an interface to manage a connection and exchange data and a generator for RPC stubs based on service protos.

libnos_datagram

libnos_datagram is a C library for exchanging datagrams with a Nugget device. This directory only contains the API of the library as the different platforms will need to implement it differently.

libnos_transport

libnos_transport is a C library for communicating with a Nugget device via the transport API. This is built on top of the libnos_datagram library for exchanging datagrams.