diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-10-13 22:58:19 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-10-13 22:58:19 +0900 |
| commit | fadb42ec8daeeb8a576582d274cd4aeb64e535c0 (patch) | |
| tree | 20db92adde637b3d1bc7a931d0551590e80456cf /internal/outcome/spruntime_test.go | |
| parent | 40e4c9031652731622315e778a9bcace6cea6cb3 (diff) | |
internal/system: skip superfluous chmod
A successful chmod clobbers acl mask, breaking the fast path. This
change also fixes the ACL race.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/outcome/spruntime_test.go')
| -rw-r--r-- | internal/outcome/spruntime_test.go | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/internal/outcome/spruntime_test.go b/internal/outcome/spruntime_test.go index 618fc7ac..20e55d63 100644 --- a/internal/outcome/spruntime_test.go +++ b/internal/outcome/spruntime_test.go @@ -33,9 +33,9 @@ func TestSpRuntimeOp(t *testing.T) { }, nil, []stub.Call{ // this op configures the system state and does not make calls during toSystem }, newI(). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime"), acl.Execute). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), acl.Read|acl.Write|acl.Execute), nil, nil, insertsOps(nil), []stub.Call{ // this op configures the container state and does not make calls during toContainer }, &container.Params{ @@ -61,9 +61,9 @@ func TestSpRuntimeOp(t *testing.T) { }, nil, []stub.Call{ // this op configures the system state and does not make calls during toSystem }, newI(). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime"), acl.Execute). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), acl.Read|acl.Write|acl.Execute), nil, nil, insertsOps(nil), []stub.Call{ // this op configures the container state and does not make calls during toContainer }, &container.Params{ @@ -89,9 +89,9 @@ func TestSpRuntimeOp(t *testing.T) { }, nil, []stub.Call{ // this op configures the system state and does not make calls during toSystem }, newI(). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime"), acl.Execute). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), acl.Read|acl.Write|acl.Execute), nil, nil, insertsOps(nil), []stub.Call{ // this op configures the container state and does not make calls during toContainer }, &container.Params{ @@ -113,9 +113,9 @@ func TestSpRuntimeOp(t *testing.T) { }, hst.Template, nil, []stub.Call{ // this op configures the system state and does not make calls during toSystem }, newI(). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime"), acl.Execute). - Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700). + Ensure(m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), 0700, true). UpdatePermType(system.User, m("/proc/nonexistent/tmp/hakurei.0/runtime/9"), acl.Read|acl.Write|acl.Execute), nil, nil, insertsOps(nil), []stub.Call{ // this op configures the container state and does not make calls during toContainer }, &container.Params{ |
