Crate secgate

source ·

Modules

  • A set of utility types for low-level communication between compartments.

Macros

  • Required to put in your source if you call any secure gates.

Structs

  • Arguments that will be passed to the secure call. Concrete versions of this are generated by the macro.
  • Return value to be filled by the secure call. Concrete versions of this are generated by the macro.
  • A struct of information about a secure gate. These are auto-generated by the crate::secure_gate macro, and stored in a special ELF section (.twz_secgate_info) as an array. The dynamic linker and monitor can then use this to easily enumerate gates.

Enums

  • Enum of possible return codes, similar to Result, but with specific variants of possible failures of initializing or invoking the secure gate call.

Constants

Traits

  • An auto trait that limits the types that can be send across to another compartment. These are:

Type Aliases

  • Non-generic and non-pointer-based SecGateInfo, for use during dynamic linking.

Attribute Macros