[roll] Roll fuchsia [tee] Add scaffolding for TEE implementation This adds generated Rust bindings and an implementation of single TEE entry point (TEE_Panic) as well as an example TA that panics on each entry point. The implementation is currently factored as a Rust shared library, but this may evolve over time. The TA links as a shared library with a dependency on `libtee_internal_api.so` and undefined references on the TEE_ entry points. There are 3 layers in the implementation of TEE bindings: - bindings.rs contains the bindgen generate Rust definitions of the TEE internal APIs - binding_stubs.rs contains hand written mechanical forwarding stubs that implement the bindgen extern "C" functions by calling a (non-extern) Rust function in the tee_impl crate. - tee_impl.rs has our implementations of the entry points as regular Rust functions. Over time these will likely call in to other crates to implement more complex functionality. The stubs layer exists so that we can get Rust type checking on our implementations as the generated extern "C" functions do no type checking on parameters and return values. Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1002113 Original-Revision: 1ef09fedb5af5b5edf2072763cbb680deef90cea GitOrigin-RevId: 1526a929242df226ebc638bd95bfbaa47b80e7c0 Change-Id: If07470cb2174315f6caa0d3c6a2c991cd795a349
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.