Expand description
Shell-free execution of a box this process has already verified.
The verified release supplies the interpreter and the script or module identity; the caller supplies only additional argument strings, streams, and environment values. Nothing is passed through a shell, and the argument vector is built from signed metadata rather than from a command string, so there is no point at which a name from a manifest could become a second command.
Signals are forwarded through a channel the caller owns, not through handlers this crate
installs. A library that registered a process-wide SIGINT handler would silently displace the
handler of the application embedding it — in a desktop app that is a bug, not a feature. So the
seam is explicit: a caller that wants forwarding wires its own handler to a SignalSender, and
a caller that does not gets a child that simply runs. The Node consumer takes the same shape
through an injectable signalSource; here the injection is the only form.
Structs§
- BoxInvocation
- What would be spawned, once the trust chain has finished and the environment is resolved.
- BoxRun
Result - How a box run ended.
- Process
Spawner - Starts a real process. Never through a shell: the argument vector is passed as it was built, so a value from a manifest cannot become a second command.
- RunBox
Options - Where a one-shot run should stage the box.
- RunOptions
- How a box should be run.
Enums§
- Forwarded
Signal - A signal a caller may ask to be forwarded to the box.
- Stdio
Mode - What a child’s stream should be connected to.
Traits§
- Running
Box - A box that has started and not yet finished.
- Spawn
Box - How a box is started. The default starts a real process; a test supplies its own.
Functions§
- run_box
- Verifies, extracts, runs and removes a box in one call.
- run_
extracted_ box - Executes a prepared box with its own interpreter and returns its terminal result.
Type Aliases§
- Signal
Receiver - The receiving half handed to
run_extracted_box. - Signal
Sender - The sending half a caller keeps to forward signals into a running box.