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:
falseintegrity 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:
falsethe 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.
Zero for the Null policy.
The documentation for this class was generated from the following file Core/Interface/SolidSyslogSecurityPolicyDefinition.h