открыть и, возможно, создать файл (расширенный) (open and possibly create a file (extended))
Синопсис (Synopsis)
#include <fcntl.h> /* Definition of O_* and S_* constants */
#include <linux/openat2.h> /* Definition of RESOLVE_* constants */
#include <sys/syscall.h> /* Definition of SYS_* constants */
#include <unistd.h>
long syscall(SYS_openat2, int dirfd, const char *pathname,
struct open_how *how, size_t size);
Note: glibc provides no wrapper for openat2(), necessitating the
use of syscall(2).