mxc 0.4.0-aarch64-linux → 0.4.1-aarch64-linux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 40697749dc7afb74546b19dee6b7fd8c5d2ff143a5b041b61bdeb09c32f3c575
4
- data.tar.gz: ec0f98019d301ae75674f09a5e0c0f2d713cfe38e558184116cf14da3e1459e4
3
+ metadata.gz: '019dd4712d55190c3616d7bc558c177fe44a69c1f465eded1897fb3946415f17'
4
+ data.tar.gz: '0036567429da0f40373e2e6538c44bf6cfa08dc02c6e656e9bc1690b432c1505'
5
5
  SHA512:
6
- metadata.gz: 3658a7479944d9f1b1527db35cd754c9b8b589f8ec449e307b41df4cdc8ba26b227d4b318c6c63483d16f829ee09be615e50fa82ce7e3537597ef230c437e056
7
- data.tar.gz: 1932637c3b54ef4653963507e45dd35c8a4a959728a8e7a63738c9b317792c6daee2c6df3419848ed4b47c39fba994f820c28856b2773f41367ccec63bcffb02
6
+ metadata.gz: 446f30c7d676a2fd2ab9572167a20f8412a293a90d2f60659ebb75a581309c1aff4c504bfa5d968179f67cfb2ee89870c2d830a455acc09f72515b2c13f22f37
7
+ data.tar.gz: f2c244717354fd7fe72c644e7faea4566f55eb63a37eada7d03b5498cfa2faae2ff34b16586a79a6cceb7d2ba99fba9f445e111c1cc149d8adbf6cfcb685af77
data/README.md CHANGED
@@ -128,6 +128,8 @@ MXC.backends # => [#<MXC::Backend name=:bubblewrap ...>]
128
128
 
129
129
  On Windows, a single String runs through `cmd.exe` instead of `sh`. See [Running Commands](https://crmne.github.io/mxc/running-commands/#windows) and [Policies](https://crmne.github.io/mxc/policies/#windows) for what else differs.
130
130
 
131
+ A sandbox controls files, network, and resources. It does not always hide other processes: on some backends a command can read their command lines, and on macOS the environment your application started with. [Policies](https://crmne.github.io/mxc/policies/#what-the-command-can-see-of-other-processes) lists what each backend shows.
132
+
131
133
  Docker blocks the namespaces Bubblewrap needs by default, so a default container runs sandboxes on Landlock. [Running in Docker](https://crmne.github.io/mxc/running-in-docker/) shows what that gives up, and the smallest set of changes that makes Bubblewrap work, with a seccomp profile and a Kamal configuration for a job role.
132
134
 
133
135
  ## Documentation
data/lib/mxc/3.2/mxc.so CHANGED
Binary file
data/lib/mxc/3.3/mxc.so CHANGED
Binary file
data/lib/mxc/3.4/mxc.so CHANGED
Binary file
data/lib/mxc/4.0/mxc.so CHANGED
Binary file
data/lib/mxc/sandbox.rb CHANGED
@@ -177,7 +177,8 @@ module MXC
177
177
  add_paths(:readable, paths)
178
178
  end
179
179
 
180
- # Adds paths the command can read and write.
180
+ # Adds paths the command can read and write. A path that is also #readable is writable,
181
+ # whichever was added first. A readable path inside a writable one stays read-only.
181
182
  def with_writable(*paths)
182
183
  add_paths(:writable, paths)
183
184
  end
@@ -470,9 +471,11 @@ module MXC
470
471
 
471
472
  def request(arguments)
472
473
  Preflight.check!(network:, denied:, resources:, backend:)
474
+ readwrite = expand(writable)
473
475
  {
474
- readonly: expand(readable) | library_files(arguments),
475
- readwrite: expand(writable),
476
+ # MXC resolves a path in both lists to read-only.
477
+ readonly: (expand(readable) | library_files(arguments)) - readwrite,
478
+ readwrite:,
476
479
  denied: expand(denied) | hidden_resolver_sockets,
477
480
  environment:,
478
481
  working_directory:,
data/lib/mxc/version.rb CHANGED
@@ -2,5 +2,5 @@
2
2
 
3
3
  module MXC
4
4
  # The gem version.
5
- VERSION = '0.4.0'
5
+ VERSION = '0.4.1'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mxc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Carmine Paolino
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-26 00:00:00.000000000 Z
11
+ date: 2026-11-06 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: An unofficial Ruby binding to Microsoft's MXC. Run commands in Bubblewrap,
14
14
  Seatbelt or Windows ProcessContainer sandboxes with filesystem, network, environment