aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2025-03-16helper: eliminate commandContext replacementOphestra
This is done more cleanly by modifying Args in cmdF. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15sandbox/init: early params nil checkOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15sandbox: return error on doubled startOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15sandbox: expose cancel behaviourOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15helper: expose extra files to directOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15helper: combine helper ipc setupOphestra
The two-step args call is no longer necessary since stat is passed on initialisation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15helper: rearrange initialisation argsOphestra
This improves consistency across two different helper implementations. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15helper: move process wrapper to directOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-15helper: clean up interfaceOphestra
The helper interface was messy due to odd context acquisition order. That has changed, so this cleans it up. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14helper/proc: pass extra files and startOphestra
For integration with native container tooling. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14seccomp: move out of helperOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14helper: embed context on creationOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14ldd: run in native sandboxOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: write uid/gid map as initOphestra
This avoids PR_SET_DUMPABLE in the parent process. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: invert seccomp ruleset defaultsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: mount container /devOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox/mount: pass custom tmpfs nameOphestra
The tmpfs driver allows arbitrary fsname. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: pass params to setup opsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox/mount: fix source flag pathOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: separate tmpfs function from opOphestra
This is useful in the implementation of various other ops. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-14sandbox: separate bind mount function from opOphestra
This is useful in the implementation of various other ops. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13internal/app: rename init to init0Ophestra
This makes way for the new container init. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13sandbox: native container toolingOphestra
This should eventually replace bwrap. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13test: run go test under regular userOphestra
By default test vm commands run as root, this causes buildFHSEnv bwrap to cover some parts of /proc, making it impossible to mount proc in a mount namespace created under it. Running as a regular user gets around this issue. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13test: print output of failed testOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13internal: pull EINTR loop from stdlibOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13sandbox: read overflow idsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-13test/sandbox: bypass fieldsOphestra
A field is bypassed if it contains a single null byte. This will never appear in the text format so is safe to use. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-12ldd: handle musl static behaviourOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-12helper/seccomp: improve error handlingOphestra
This passes both errno and libseccomp return value. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-12helper/seccomp: seccomp_load on negative fdOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-12test/sandbox/mount: work around nondeterminismOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-10nix: update flake lockOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-09helper/proc: expose setup fileOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-07internal/prctl: rename prctl wrappersOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-04test/sandbox: check seccomp outcomeOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-03test/sandbox: check fs outcomeOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-02test/sandbox: assert filesystem jsonOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-02test/sandbox: compare filesystem hierarchyOphestra
For checking deterministic aspects of fs outcome. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-02test: rename session message identifierOphestra
Labelling this as sway is misleading. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-02test/sandbox/assert: wrap printfOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-28test/sandbox: check mount outcomeOphestra
Do this at the beginning of the test for early failure. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-28test/sandbox: assert mntent jsonOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-28test/sandbox: wrap libc getmntentOphestra
For checking mounts outcome. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-28nix: increase nixfmt max widthOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-26app: print comp values earlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-26cmd/fpkg: call app in-processOphestra
Wrapping fortify is slow, painful and error-prone. Start apps in-process instead. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-26cmd/fsu: allow switch from fpkgOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-26fortify: move internal commands upOphestra
This improves readability. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-26app: handle RunState errorsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>