commit | 64e07e315f5b9d6fadf9ba3ef803b01798b58b59 | [log] [tgz] |
---|---|---|
author | David Drysdale <drysdale@google.com> | Fri Jun 10 14:45:45 2022 +0100 |
committer | David Drysdale <drysdale@google.com> | Mon Jun 20 07:25:14 2022 +0100 |
tree | 59ed8eb217a4c68c78cfdd740c16df22f1cc264d | |
parent | 62a8ce08cad83fd7e40a965a308c98313f83e2f1 [diff] |
Types for wire messages HAL <-> TA Define types for everything that needs to be communicated between the HAL service and the TA. These are mostly equivalent to various types defined by the HAL specification, but here they are true Rust types that don't require binder as a dependency. The generated.cddl file is the output of the cddl-dump.rs program, which dumps the entire CDDL schema for communication between HAL and TA. Bug: 195310053 Test: build Change-Id: Ia1163d8c06708e8af9c02133a8cf86424ced4a08
This repo holds work in progress for a Rust implementation of Android's KeyMint HAL.
The codebase is divided as follows. Only the crates in bold are expected to be used in Android; the remainder are conveniences to allow development outside of Android.
Subdir | Crate Name | std ? | Description |
---|---|---|---|
derive | kmr-derive | Yes (build-only) | Proc macros for deriving the AsCborValue trait |
common | kmr-common | No | Common code used throughout KeyMint/Rust |
hal | kmr-hal | Yes | HAL service implementation |
boringssl | kmr-boringssl | Yes | Boring/OpenSSL-based implementations of crypto traits |
tests | kmr-tests | Tests and test infrastructure | |
ta | kmr-ta | No | TA implementation |
ta-main | kmr-ta | Yes | TA implementation using TCP |