PEP_SOC_SUBSYSTEM_METADATA structure (pep_x.h)
The PEP_SOC_SUBSYSTEM_METADATA structure contains key-value pairs that contain metadata for a system on a chip (SoC) subsystem. It is used in the context of a PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA notification sent to a platform extension plug-in (PEP).
Syntax
typedef struct _PEP_SOC_SUBSYSTEM_METADATA {
[in/out] UNICODE_STRING Key;
[in/out] UNICODE_STRING Value;
} PEP_SOC_SUBSYSTEM_METADATA, *PPEP_SOC_SUBSYSTEM_METADATA;
Members
[in/out] Key
A buffer for the PEP to write the key portion of the metadata string-pair. Key must be unique among all Key values reported by this subsystem.
Prior to entry into the notification callback routine, the kernel will:
- Pre-allocate 64 WCHARs for Key.Buffer[]
- Zero the buffer
- Set Key.MaximumLength to the size of the buffer in bytes, and
- Set Key.Length = 0
The PEP must use the allocated memory that is pointed to by the address in Key.Buffer to provide the key. Since this memory is pre-allocated, its size cannot be changed. The PEP is responsible for truncating the key string, if necessary, so that it does not exceed the length specified in Key.MaximumLength (including the terminating UNICODE_NULL character).
[in/out] Value
A buffer for the PEP to write the value portion of the metadata string-pair.
Prior to entry into the notification callback routine, the kernel will:
- Pre-allocate 64 WCHARs for Value.Buffer[]
- Zero the buffer
- Set Value.MaximumLength to the size of the buffer in bytes, and
- Set Value.Length = 0
The PEP must use the allocated memory that is pointed to by the address in Value.Buffer to provide the metadata value. Since this memory is pre-allocated, its size cannot be changed. The PEP is responsible for truncating the value string, if necessary, so that it does not exceed the length specified in Value.MaximumLength (including the terminating UNICODE_NULL character).
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported starting with Windows 10. |
Header | pep_x.h (include Pep_x.h) |