aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2025-02-14fortify: check print behaviourOphestra
These output are supposed to be deterministic, so checking them is a good way to catch regressions. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-14state/join: use Join method when availableOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-14app: check username length against LOGIN_NAME_MAXOphestra
This limit is arbitrary, but it's good to enforce it anyway. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-14fortify: print line after ps outputOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13release: 0.2.13Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper: use generic extra files interfaceOphestra
This replaces the pipes object and integrates context into helper process lifecycle. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/proc: cancel ec on parent ctxOphestra
This allows errors written during a timeout to be received and handled. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/seccomp: use sync.Once for closeWriteOphestra
This makes the code much cleaner, and eliminates the intermittent ErrInvalid errors. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/seccomp: benchmark exporterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13nix: test syscall filterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13proc/pipe: implement args and stat fileOphestra
This is a generic implementation of helper/pipe. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/proc: count dispatched errsOphestra
This helps debug implementation errors of [proc.File]. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/proc: store file addresses in linked listOphestra
Storing extra files as a slice requires the caller to allocate a large enough slice before initialising any file and never grow the slice. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-13helper/seccomp: eliminate data race on pfdOphestra
Turns out the doc comment on os.File was lying about its methods being safe for concurrent use. The race detector picked up a data race from concurrent use of Fd and Close. This change eliminates that by calling Fd in the prepare routine. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-11helper/proc: declare generic extra files interfaceOphestra
Helpers use extra files for various purposes. This provides a generic interface for implementing the fulfillment of these extra files without having to specifically handle them in the process creation code. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-08helper/proc: move package out of internalOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-07nix: vm test remove unnecessary setupOphestra
This step is no longer required as the NixOS module is responsible for home directory creation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-07dbus: lock for read in public args interfaceOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-07system/dbus: dump messages on early faultOphestra
In the current app implementation this gets dumped in the wait method after resuming output. Wait is never called in an early fault condition, so any error messages get lost. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-07system/dbus: dump method prints msgbufOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-07helper/seccomp: panic on invalid closeWrite useOphestra
Returning an error here puts exporter in an invalid state. The caller should guard against this condition instead. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-03helper/seccomp: implement reader interface via pipeOphestra
This also does not require the libc tmpfile call. BPF programs emitted by libseccomp seems to be deterministic. The tests would catch regressions as it verifies the program against known good output backed by manual testing. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-01workflows: fix nix store cacheOphestra
Prefix does not seem to match correctly, this appears to be a Gitea implementation bug. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: vm test set sway backgroundOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: update flake lockOphestra
2025-01-25nix: mount nvidia devicesOphestra
These non-standard paths are required in the sandbox for nvidia drivers to work. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25release: 0.2.12Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: verify silent output when not running with -vOphestra
This checks behaviour of fmsg and seccomp. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25helper/seccomp: do not call F_println if not verboseOphestra
This (slightly) improves performance. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25helper/seccomp: separate seccomp packageOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: expose compat flag in nixos moduleOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25helper: block more unusual/privileged syscallsOphestra
These are toggled by F_EXT and exposed as SyscallPolicy.Compat in the Go interface. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24nix: set deny_devel correctlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: rename integration test artifactOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: gc store and purge old cachesOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: merge test build job into testOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23wl: separate inline COphestra
Having a huge blurb of inline C hurts readability on web pages and some text editors. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23release: 0.2.11Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: apply shared home config to reserved aidOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: expose syscall filter policyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: configure target users via nixosOphestra
This makes patching home-manager no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: redirect sway output to journalOphestra
This makes swaymsg exec output appear in test output. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22fst: add missing fields to templateOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22cmd/fpkg: expose syscall policy optionsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22app/share: clean BaseError messageOphestra
This removes trailing '\n' in the PulseAudio warning. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22dbus: enable syscall filterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22ldd: enable syscall filterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22fortify: set up seccomp verbose logging earlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22helper/bwrap: integrate seccomp into helper interfaceOphestra
This makes API usage much cleaner, and encapsulates all bwrap arguments in argsWt. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-21proc: append to ExtraFiles slice pointerOphestra
This is useful for initialising extra files before command. Signed-off-by: Ophestra <cat@gensokyo.uk>