Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::format::reload::SwapPackTrust Struct Reference

Trust material for verifying a swap-pack-delivered logic image BEFORE it is loaded. More...

#include <reload_transaction.hpp>

Public Attributes

std::filesystem::path pack_root
 dir the manifest paths are relative to.
SwapPackManifest manifest
 parsed manifest (incl. signer + signature).
std::vector< std::uint8_t > trusted_public_key
 the pinned Ed25519 key the signer must be.
const SignedRevocationList * srl = nullptr
 The revocation list to enforce, already authenticated by the host against the trusted revocation key (the host owns loading it, the monotonic epoch floor, and offline-last-known).

Detailed Description

Trust material for verifying a swap-pack-delivered logic image BEFORE it is loaded.

A swap pack is a signed manifest (Ed25519, pinned key) plus its files, laid out under pack_root. When this is supplied to gate_logic_image(), the pack's signature + per-file SHA-256 integrity are verified on the RAW bytes on disk BEFORE any dlopen/LoadLibrary — because loading a native image runs its static constructors immediately, so a signature/integrity check placed after the load can never stop a malicious image's constructors from executing. Absent (the default), gate_logic_image loads directly: the unsigned local-dev path, unchanged. If you opt IN to trust, the pack MUST be signed by the pinned key or verification fails closed.

Member Data Documentation

◆ manifest

SwapPackManifest pulp::format::reload::SwapPackTrust::manifest

parsed manifest (incl. signer + signature).

◆ pack_root

std::filesystem::path pulp::format::reload::SwapPackTrust::pack_root

dir the manifest paths are relative to.

◆ srl

const SignedRevocationList* pulp::format::reload::SwapPackTrust::srl = nullptr

The revocation list to enforce, already authenticated by the host against the trusted revocation key (the host owns loading it, the monotonic epoch floor, and offline-last-known).

nullptr = no revocation info this load: signature + integrity still gate, a not-yet-known revocation simply cannot block yet — never fail-open on authenticity, only on revocation freshness.

◆ trusted_public_key

std::vector<std::uint8_t> pulp::format::reload::SwapPackTrust::trusted_public_key

the pinned Ed25519 key the signer must be.


The documentation for this struct was generated from the following file: