Skip to content

Commit e2e65d9

Browse files
committed
docs: document the macOS library-validation mitigation for signed distributions
1 parent 9e9450a commit e2e65d9

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

‎docs/packaging.adoc‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,16 @@ uses are resolved at runtime from System32 - so embedding projects (such as
7474
Thunderbird's `third_party/rnp` `moz.build` setup) pick it up with a plain
7575
re-vendor, without any build configuration changes.
7676

77+
On macOS the equivalent exposure exists (the tools load `librnp.dylib` via
78+
`@rpath` from the application directory, before `main()`), but the platform
79+
provides a stronger, kernel-enforced mitigation: code signing the executables
80+
with the hardened runtime and *without* the
81+
`com.apple.security.cs.disable-library-validation` entitlement turns on
82+
library validation, which makes the loader reject any dylib not signed by
83+
the same Team ID - verified empirically on a current Thunderbird release.
84+
Signed macOS distributions should simply keep that configuration for the
85+
bundled rnp tools.
86+
7787
== CMake find_package
7888

7989
The installed CMake package (`<prefix>/lib/cmake/rnp/rnp-config.cmake`)

0 commit comments

Comments
 (0)