Jeremy Rose
04e4d2b40f
Block mutating fcntls in restricted macOS Seatbelt policies ( #46500 )
...
## Why
`F_MAKECOMPRESSED` and `F_TRANSFEREXTENTS` can mutate files through read-only descriptors, bypassing `file-write*` and `file-ioctl` restrictions. Even a deny-default Seatbelt policy needs an explicit denial for these operations.
## What changed
Deny `system-fcntl` commands `80` and `110` whenever the filesystem sandbox policy lacks full disk write access.
## Testing
Add macOS regression tests that run Seatbelt children under read-only and workspace-write policies, assert both operations fail with `EPERM`, and verify file contents and metadata remain unchanged. An unrestricted positive control verifies the mutations, allowing for unsupported extent transfers.
GitOrigin-RevId: 7a7a5ef30f9ff658a86071b51f1f7b4952d5cdad
2026-09-18 23:07:12 +00:00
..
2026-09-15 02:35:59 +00:00
2026-09-18 22:41:26 +00:00
2026-09-18 22:29:16 +00:00
2026-09-14 22:31:32 +00:00
2026-09-17 05:26:45 +00:00
2026-09-17 21:25:55 +00:00
2026-09-16 16:56:41 +00:00
2026-09-11 20:10:02 +00:00
2026-09-18 00:25:37 +00:00
2026-09-17 00:49:12 +00:00
2026-09-09 03:17:48 +00:00
2026-09-15 19:13:08 +00:00
2026-09-07 16:55:06 +00:00
2026-09-18 23:05:31 +00:00
2026-09-18 00:25:37 +00:00
2026-09-11 17:00:07 +00:00
2026-09-11 17:00:07 +00:00
2026-09-11 17:00:07 +00:00
2026-09-15 18:52:15 +00:00
2026-09-17 21:25:55 +00:00
2026-09-15 17:32:33 +00:00
2026-09-16 01:01:57 +00:00
2026-09-14 19:12:59 +00:00
2026-09-18 00:59:10 +00:00
2026-09-05 01:25:06 +00:00
2026-09-18 22:29:16 +00:00
2026-09-15 18:23:08 +00:00
2026-09-18 22:40:37 +00:00
2026-09-18 23:06:48 +00:00
2026-09-11 01:57:54 +00:00
2026-09-17 21:35:44 +00:00
2026-09-05 12:17:32 +00:00
2026-09-17 23:35:56 +00:00
2026-09-18 00:51:34 +00:00
2026-09-17 04:37:54 +00:00
2026-09-17 21:25:55 +00:00
2026-09-17 04:23:45 +00:00
2026-09-17 19:34:45 +00:00
2026-09-10 18:10:26 +00:00
2026-09-17 17:59:19 +00:00
2026-09-06 20:52:29 +00:00
2026-09-17 18:56:26 +00:00
2026-09-17 10:02:38 +00:00
2026-09-10 00:26:30 +00:00
2026-09-16 18:13:23 +00:00
2026-09-11 21:59:24 +00:00
2026-09-18 00:51:34 +00:00
2026-09-18 22:42:46 +00:00
2026-09-17 19:42:56 +00:00
2026-09-16 23:26:00 +00:00
2026-09-18 22:42:46 +00:00
2026-09-18 22:29:16 +00:00
2026-09-17 20:05:47 +00:00
2026-09-14 22:40:20 +00:00
2026-09-18 00:51:34 +00:00
2026-09-16 22:43:57 +00:00
2026-09-16 21:15:09 +00:00
2026-09-17 20:05:47 +00:00
2026-09-18 22:29:16 +00:00
2026-09-11 03:16:01 +00:00
2026-09-17 21:25:55 +00:00
2026-09-17 23:35:32 +00:00
2026-09-18 22:29:16 +00:00
2026-09-18 23:07:12 +00:00
2026-09-17 23:35:32 +00:00
2026-09-15 18:06:03 +00:00
2026-09-09 04:00:10 +00:00
2026-09-05 05:21:42 +00:00
2026-09-15 02:33:27 +00:00
2026-09-16 09:03:41 +00:00
2026-09-14 21:06:36 +00:00
2026-09-16 22:33:15 +00:00
2026-09-17 19:34:45 +00:00
2026-09-18 23:05:31 +00:00
2026-09-16 16:56:41 +00:00
2026-09-08 00:13:28 +00:00
2026-09-18 00:51:34 +00:00
2026-09-11 22:09:02 +00:00
2026-09-18 00:36:07 +00:00
2026-09-18 00:36:07 +00:00
2026-09-13 18:53:06 +00:00
2026-09-08 21:19:02 +00:00
2026-09-18 22:42:46 +00:00
2026-09-16 23:26:00 +00:00
2026-09-11 06:45:09 +00:00