aboutsummaryrefslogtreecommitdiffhomepage
path: root/helper
AgeCommit message (Collapse)Author
2024-12-06proc: cleaner extra filesOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-12-06helper/bwrap: implement sync fdOphestra Umiker
This is required by wayland security-context-v1. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-28add package doc commentsOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-26fmsg: support temporarily withholding outputOphestra Umiker
Trying to print to a shared stdout is a terrible idea. This change makes it possible to withhold output for the lifetime of the sandbox. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-25helper/bwrap: register generic PermConfig types with gobOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-20migrate to git.ophivana.moe/security/fortifyOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-15helper/bwrap: add fortify permissive default test caseOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-15helper/bwrap: sort SetEnv argumentsOphestra Umiker
This guarantees consistency of resulting args. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-15helper/bwrap: ordered filesystem argsOphestra Umiker
The argument builder was written based on the incorrect assumption that bwrap arguments are unordered. The argument builder is replaced in this commit to correct that mistake. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-14helper/bwrap: format mode in octalOphestra Umiker
Bubblewrap expects an octal representation of mode. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-13helper/bwrap: allow pushing generic arguments to the end of argument streamOphestra Umiker
Bwrap argument order determines the order their corresponding actions are performed. This allows generic arguments like tmpfs to the end of the stream to override bind mounts. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-12helper: remove unused bwrap config fieldOphestra Umiker
This configuration is not saved anywhere, and does not need to be saved. Bwrap configuration information is already saved into p. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-11helper/bwrap: move interfaceArgs before stringArgsOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-11helper/bwrap: proc, dev and mqueue as string argumentsOphestra Umiker
These flags do not support --chmod. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-09helper/bwrap: pass --unshare-user when unshare everythingOphestra Umiker
Bubblewrap apparently requires --unshare-user even when --unshare-all is set to apply --disable-userns. This behaviour is not clearly documented. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-09helper/bwrap: check args only for internal testsOphestra Umiker
Tests internal to the helper package sets crash-test-dummy as the command whenever a launch is expected to go through, and the hardcoded args are only valid for internal tests, so this characteristic is used here to exclude external tests that pass real program names and custom bwrap configurations. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-08helper: implementation of helper.Helper using bwrapOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-08helper: generalise helper.Helper testOphestra Umiker
For testing the upcoming bwrap implementation of helper.Helper as it must have identical behaviour. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-07helper: move test sample data out of directOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-07helper: helper.Helper interfaceOphestra Umiker
For upcoming bwrap implementation of helper.Helper Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-07helper: move bwrap into helperOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-07helper/args: MustNewCheckedArgs for cleaner hardcoded argsOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-07helper: separate pipes from HelperOphestra Umiker
Upcoming bwrap helper implementation requires two sets of pipes to be managed, fd will also no longer be constant. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-10-06helper: test non-existent helpersOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-29helper: export internal stub functions for cross-package testingOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-29helper: test child process handlingOphestra Umiker
The stub child process simulates reading from the argument fd and copies the entire payload unmodified to stdout. If status pipe is enabled it will simulate sync fd behaviour as well. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-29helper: remove unreachable checkOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-29helper: stub helper for testsOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-25helper/args: simplify argument parsing and eliminate excess memory copiesOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-25helper: clean up and separate helper process management from dbusOphestra Umiker
The previous code was poorly documented and made little sense in some parts. This is a generalised and cleaned up implementation in the helper package making use of the Args interface. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-24helper/args: hold a read lock in WriteToOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-24helper: separate helper args fd builder from dbusOphestra Umiker
This method of passing arguments is used in bubblewrap as well as other tools, this commit separates the argument builder/writer to the helper package and generalise it as an interface. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>