On Fri, 12 Sep 2025 12:11:49 +1000 Wilfred Mallawa <[email protected]> wrote:
> From: Wilfred Mallawa <[email protected]> > > This header contains the transport encoding for an SPDM message that > uses the SPDM over Storage transport as defined by the DMTF DSP0286. > > Signed-off-by: Wilfred Mallawa <[email protected]> FWIW I checked the field definitions that I could find, and this looks fine. If it's possible to give more focused reference (section etc) that might be worth doing. For example I wasn't entirely sure where the size of the security_protocol field is defined. This matches with what libspdm has though. Reviewed-by: Jonathan Cameron <[email protected]> > --- > include/system/spdm-socket.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/include/system/spdm-socket.h b/include/system/spdm-socket.h > index 29aa04fd52..80cd7021c1 100644 > --- a/include/system/spdm-socket.h > +++ b/include/system/spdm-socket.h > @@ -88,6 +88,18 @@ bool spdm_socket_send(const int socket, uint32_t > socket_cmd, > */ > void spdm_socket_close(const int socket, uint32_t transport_type); > > +/* > + * Defines the transport encoding for SPDM, this information shall be passed > + * down to the SPDM server, when conforming to the SPDM over Storage standard > + * as defined by DSP0286. > + */ > +typedef struct { > + uint8_t security_protocol; /* Must be 0xE8 for SPDM > Commands */ > + uint16_t security_protocol_specific; /* Bit[7:2] SPDM Operation > + Bit[0:1] Connection ID */ > + uint32_t length; /* Length of the SPDM Message*/ > +} QEMU_PACKED StorageSpdmTransportHeader; > + > #define SPDM_SOCKET_COMMAND_NORMAL 0x0001 > #define SPDM_SOCKET_STORAGE_CMD_IF_SEND 0x0002 > #define SPDM_SOCKET_STORAGE_CMD_IF_RECV 0x0003
