CI: disable /proc/fds and RESOLVE_NO_SYMLINK in samba-no-opath-build runner
authorRalph Boehme <slow@samba.org>
Tue, 19 Dec 2023 10:12:49 +0000 (11:12 +0100)
committerVolker Lendecke <vl@samba.org>
Mon, 22 Jan 2024 10:53:29 +0000 (10:53 +0000)
commit62cbe145c7e500c4759ed2005c78bd5056c87f43
tree1d7739b65db1e08903206d9be709948e6b3463cf
parent5c2f96442a25a1725809a28b3719afbc0bd01830
CI: disable /proc/fds and RESOLVE_NO_SYMLINK in samba-no-opath-build runner

This is a more sensible combination of missing Linux specific features:

- O_PATH
- openat2() with RESOLVE_NO_SYMLINKS
- somehow safely reopen an O_PATH file handle

Currently only O_PATH is disabled for these jobs, but that doesn't really match
and know OS.

The following list shows which features are available and used by Samba on a few
OSes:

        | O_PATH         | RESOLVE_NO_SYMLINKS | Safe reopen    | CI covered
--------|----------------|---------------------|----------------------------
        | Supported Used | Supported Used      | Supported Used |
============================================================================
Linux   | +         +    | +         +         | +         +    | +
FreeBSD | +         +    | + [1]     -         | + [2]     -    | -
AIX     | -         -    | -         -         | -         -    | +

So by also disabling RESOLVE_NO_SYMLINKS and Safe Reopen, we cover classic UNIX
systems like AIX.

[1] via open() flag O_RESOLVE_BENEATH
[2] via open() flag O_EMPTY_PATH

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15549

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
script/autobuild.py
selftest/skip.opath-required