diff options
author | Andrei Belov <defan@nginx.com> | 2021-05-27 17:03:24 +0300 |
---|---|---|
committer | Andrei Belov <defan@nginx.com> | 2021-05-27 17:03:24 +0300 |
commit | 0afb4b5790c5a37ba6b880eb351a65fe00521fbe (patch) | |
tree | c7e0b6bed92ee62a5e8b13c945c4134e68554cec /auto/files | |
parent | 21ff5e086ece7188df3b7338d228fa4fb7f886af (diff) | |
parent | d06e55dfa3692e27a92ff6c2534bb083416bc0c8 (diff) | |
download | unit-0afb4b5790c5a37ba6b880eb351a65fe00521fbe.tar.gz unit-0afb4b5790c5a37ba6b880eb351a65fe00521fbe.tar.bz2 |
Merged with the default branch.1.24.0-1
Diffstat (limited to 'auto/files')
-rw-r--r-- | auto/files | 32 |
1 files changed, 32 insertions, 0 deletions
@@ -49,3 +49,35 @@ nxt_feature_test="#include <fcntl.h> return 0; }" . auto/feature + + +nxt_feature="openat2()" +nxt_feature_name=NXT_HAVE_OPENAT2 +nxt_feature_run= +nxt_feature_incs= +nxt_feature_libs= +nxt_feature_test="#include <fcntl.h> + #include <unistd.h> + #include <sys/syscall.h> + #include <linux/openat2.h> + #include <string.h> + + int main() { + struct open_how how; + + memset(&how, 0, sizeof(how)); + + how.flags = O_RDONLY; + how.mode = O_NONBLOCK; + how.resolve = RESOLVE_IN_ROOT + | RESOLVE_NO_SYMLINKS + | RESOLVE_NO_XDEV; + + int fd = syscall(SYS_openat2, AT_FDCWD, \".\", + &how, sizeof(how)); + if (fd == -1) + return 1; + + return 0; + }" +. auto/feature |