# rust-libutee **Repository Path**: openkylin/rust-libutee ## Basic Information - **Project Name**: rust-libutee - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 8 - **Created**: 2025-12-19 - **Last Updated**: 2026-07-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # rust-libutee ## Introduction `rust-libutee` is a Rust wrapper for **libutee**, providing Rust bindings and utilities to interact with the TEE user-mode TEE runtime. Third-party dependencies (`mbedtls-smx`, `libc`, …) are declared in this crate's `Cargo.toml` only, not in the xtee-rust-sdk root workspace. ### Feature: `xtee-panic-notify` For **x-kernel** TAs hosted by [`xtee-utee`](../xtee-utee), enable this feature so `TEE_Panic` calls `xtee_ta_panic_notify` and the CA receives `TEE_ERROR_TARGET_DEAD` on the in-flight invoke connection. Without this feature, `_utee_panic` only spins in a loop (no undefined symbols when building standalone `src/bin/*` tools). - **xtee-utee** enables it via a path dependency in `crates/xtee-utee/Cargo.toml`. - **examples / ta-runtime TA** use the root workspace alias `rust_libutee.workspace = true`. ## Prerequisites Before building the project, ensure that the required cross-compilers are available in your `PATH`. Example: ```bash export PATH=/home/data/tools/aarch64-linux-musl-cross/bin:$PATH export PATH=/home/data/tools/x86_64-linux-musl-cross/bin:$PATH ``` ## Build Standalone (library + `src/bin/*`, default features, no `xtee-panic-notify`): ```bash cd crates/rust-libutee cargo build cargo build --bin storage_test cargo build --target x86_64-unknown-linux-musl --release ``` From **xtee-rust-sdk** root (TA / examples; `xtee-panic-notify` via workspace or `xtee-utee`): ```bash cargo build --workspace --lib ```