Initial setup and derive macro

Bug: 195310053
Test: m libkmr_derive
Change-Id: Ic640cac45abe2e1337d3041876859fc02ed461a0
10 files changed
tree: 36033ce1da89a7a09c89ad337b048f823978a956
  1. derive/
  2. .gitignore
  3. Android.bp
  4. NOTICE
  5. OWNERS
  6. README.md
  7. rustfmt.toml
README.md

KeyMint/Rust

This repo holds work in progress for a Rust implementation of Android's KeyMint HAL.

Repo Structure

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.

SubdirCrate Namestd?Description
derivekmr-deriveYes (build-only)Proc macros for deriving the AsCborValue trait
commonkmr-commonNoCommon code used throughout KeyMint/Rust
halkmr-halYesHAL service implementation
boringsslkmr-boringsslYesBoring/OpenSSL-based implementations of crypto traits
testskmr-testsTests and test infrastructure
takmr-taNoTA implementation
ta-mainkmr-taYesTA implementation using TCP