Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Prepare ¶
func Prepare(ctx context.Context, client *http.Client, origin, principal, operationID, instanceID string) (firecrackerbootprobev2.Snapshot, error)
Prepare requests one distinct persisted v2 prepared-session snapshot over the already-mutually-authenticated control transport. M4 owns post-stage authorization, journal, launch-started, and terminal-ACK recovery.
func SubmitStageReady ¶
func SubmitStageReady(ctx context.Context, client *http.Client, origin string, snapshot firecrackerbootprobev2.Snapshot, identity firecracker.TrustedM4Identity, guestNonce string, observationPrivateKey ed25519.PrivateKey, now time.Time, resolver firecrackerbootprobeprotocol.HostTrustResolver) (firecrackerbootprobeprotocol.VerifiedCommand, error)
SubmitStageReady signs the locally compiled M4 stage with the distinct observation key, submits it to the private M3 route, and accepts a response only after its command signature and compiled identity have been verified. It does not journal, start, or report a Jailer launch.
Types ¶
type StageReadySubmitter ¶
type StageReadySubmitter struct {
Client *http.Client
Origin string
Now func() time.Time
Resolver firecrackerbootprobeprotocol.HostTrustResolver
}
StageReadySubmitter binds the concrete mutually-authenticated control client to the M4 composition root. It contains no M4 identity: that identity is compiled by the staged host immediately before submission.
func (StageReadySubmitter) Submit ¶
func (submitter StageReadySubmitter) Submit(ctx context.Context, snapshot firecrackerbootprobev2.Snapshot, identity firecracker.TrustedM4Identity, guestNonce string, observationPrivateKey ed25519.PrivateKey) (firecrackerbootprobeprotocol.VerifiedCommand, error)
Submit signs and verifies the private M4 stage-ready handoff through this exact control transport.