#[non_exhaustive]pub struct GroupKeySetConfig {
pub key_set_id: u16,
pub epoch_key: [u8; 16],
pub epoch_start_time: u64,
}Expand description
The persisted material for one group key set.
Stored inside FabricEntry::group_keys and round-tripped through the
TLV snapshot at context tags t6 (key-set array) and t7 (outbound counter).
This carries only what the controller needs to send group-encrypted
messages; a full GroupKeySet cluster record lives in the device, not
here.
This is a pub type because callers that program group keys (e.g.
higher-level fabric-management APIs) need to construct and inspect it.
#[non_exhaustive]: persisted record whose shape may grow (e.g. key policy
epoch, security level flags); marking it keeps such additions non-breaking.
Construct via GroupKeySetConfig::new.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.key_set_id: u16Group Key Set ID (GrpKeySetID, 16-bit, spec §4.15).
epoch_key: [u8; 16]16-byte epoch key (EpochKey0 / EpochKey1 / EpochKey2 per policy).
epoch_start_time: u64Epoch key start time in Matter epoch seconds (0 = unset / pre-operational).
Implementations§
Trait Implementations§
Source§impl Clone for GroupKeySetConfig
impl Clone for GroupKeySetConfig
Source§fn clone(&self) -> GroupKeySetConfig
fn clone(&self) -> GroupKeySetConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more