Skip to content

Struct SolidSyslogSecurityPolicy

ClassList > SolidSyslogSecurityPolicy

The at-rest integrity/confidentiality contract the block store applies to every record: SealRecord on the way in (before the record is stored), OpenRecord on replay-read (before the record is handed back). More...

  • #include <SolidSyslogSecurityPolicyDefinition.h>

Public Attributes

Type Name
bool(* OpenRecord
Verify record against its trailer (and, for an AEAD policy, decrypt the body in place).
bool(* SealRecord
Authenticate (and, for an AEAD policy, encrypt in place) record and write its trailer.
uint16_t TrailerSize
Bytes SealRecord appends per record; the store reserves this and treats it as opaque.

Detailed Description

A record round-trips through exactly one policy; the two calls must agree on the trailer layout.

Reference implementations span the protection scale: the Null policy is a pass-through that adds no trailer and never rejects (no integrity, no confidentiality); Crc16 is an unkeyed checksum catching accidental corruption; the HmacSha256 and AesGcm policies are keyed and fetch their key on demand from an integrator callback, failing closed (Seal returns false, nothing is stored) if the key is unavailable.

Public Attributes Documentation

variable OpenRecord

Verify record against its trailer (and, for an AEAD policy, decrypt the body in place).

bool(* SolidSyslogSecurityPolicy::OpenRecord) (struct SolidSyslogSecurityPolicy *self, const struct SolidSyslogSecurityRecord *record);

Return value:

  • false integrity check failed: tampering or corruption detected, or the open could not run (e.g. key unavailable); the store discards the record rather than replaying it.

variable SealRecord

Authenticate (and, for an AEAD policy, encrypt in place) record and write its trailer.

bool(* SolidSyslogSecurityPolicy::SealRecord) (struct SolidSyslogSecurityPolicy *self, const struct SolidSyslogSecurityRecord *record);

Return value:

  • false the seal could not be produced (e.g. key unavailable); the store drops the record rather than storing it unprotected.

variable TrailerSize

Bytes SealRecord appends per record; the store reserves this and treats it as opaque.

uint16_t SolidSyslogSecurityPolicy::TrailerSize;

Zero for the Null policy.



The documentation for this class was generated from the following file Core/Interface/SolidSyslogSecurityPolicyDefinition.h