diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2023-03-11 19:31:40 +0200 |
---|---|---|
committer | Lasse Collin <lasse.collin@tukaani.org> | 2023-03-11 19:31:40 +0200 |
commit | d1bdaaebc68cae7f0ba457fa990b520df2186fd1 (patch) | |
tree | b98adc8e321008292fb9d1f1aab98b2ce6be4cdb /po4a | |
parent | Build: Adjust CMake version search regex. (diff) | |
download | xz-d1bdaaebc68cae7f0ba457fa990b520df2186fd1.tar.xz |
xz: Don't fail if Capsicum is enabled but kernel doesn't support it.
(This commit combines related commits from the master branch.)
If Capsicum support is missing from the kernel or xz is being run
in an emulator that lacks Capsicum suport, the syscalls will fail
and set errno to ENOSYS. Previously xz would display and error and
exit, making xz unusable. Now it will check for ENOSYS and run
without sandbox support. Other tools like ssh behave similarly.
Displaying a warning for missing Capsicum support was considered
but such extra output would quickly become annoying. It would also
break test_scripts.sh in "make check".
Also move cap_enter() to be the first step instead of the last one.
This matches the example in the cap_rights_limit(2) man page. With
the current code it shouldn't make any practical difference though.
Thanks to Xin Li for the bug report, suggesting a fix, and testing:
https://github.com/tukaani-project/xz/pull/43
Thanks to Jia Tan for most of the original commits.
Diffstat (limited to 'po4a')
0 files changed, 0 insertions, 0 deletions