The Security Protocol and Data Model (SPDM) Specification defines messages, data objects, and sequences for performing message exchanges over a variety of transport and physical media. - https://www.dmtf.org/sites/default/files/standards/documents/DSP0274_1.3.0.pdf
This series is a very initial start on adding SPDM support to QEMU. This series uses libspdm [1] which is a reference implementation of SPDM. The series starts by adding support for building and linking with libspdm. It then progresses to handling SPDM requests in the NVMe device over the PCIe DOE protocol. This is a very early attempt. The code quality is not super high, the C code hasn't been tested at all. This is really just an RFC to see if QEMU will accept linking with libspdm. So, the main question is, how do people feel about linking with libspdm to support SPDM? 1: https://github.com/DMTF/libspdm Alistair Francis (3): subprojects: libspdm: Initial support hw: nvme: ctrl: Initial support for DOE hw: nvme: ctrl: Process SPDM requests meson.build | 78 +++++++++++++++++++++++++++++++++++ hw/nvme/nvme.h | 4 ++ include/hw/pci/pcie_doe.h | 1 + hw/nvme/ctrl.c | 35 ++++++++++++++++ .gitmodules | 3 ++ meson_options.txt | 3 ++ scripts/meson-buildoptions.sh | 3 ++ subprojects/.gitignore | 1 + subprojects/libspdm.wrap | 5 +++ 9 files changed, 133 insertions(+) create mode 100644 subprojects/libspdm.wrap -- 2.41.0