A Cargo workspace producing a self-contained tdreport executable from a no_std Rust bare-metal payload and a Rust KVM hypervisor runner. It creates an Intel Trust Domain (TDX VM) through /dev/kvm, issues TDCALL[TDG.MR.REPORT], and prints the resulting TDREPORT.
# 1. Build the payload, TDVF, and self-contained runner
./build.sh
# 2. Run and print the TDREPORT
sudo ./tdreport.binTo also save the raw 1024-byte report:
sudo ./tdreport.bin --output tdreport-report.binFor development, the standalone runner and TDVF remain available separately:
sudo ./kvm-runner.bin td-shim-tdreport.binThe tdreport package includes its TDVF image, so consumer projects do not need
to set TDREPORT_TDVF_PATH:
[dependencies]
tdreport = { path = "../tdreport/tdreport" }let report: [u8; 1024] = tdreport::tdreport()?;TDREPORT_TDVF_PATH remains available as an optional build-time override for
development with a custom TDVF image.