diff options
author | Stefan Metzmacher <metze@samba.org> | 2022-08-08 15:25:39 +0200 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2022-08-15 15:03:37 +0000 |
commit | b89001e9226ecb0f4e5c906f7195f0e53cd7d608 (patch) | |
tree | 2359614ec4450d98b9e1e9c44e92d6a123dba61a /lib/replace | |
parent | 37ba6df174d73b82e951de401cba7f839ad61ab5 (diff) | |
download | samba-b89001e9226ecb0f4e5c906f7195f0e53cd7d608.tar.gz |
lib/replace: use syscall(__NR_openat2) if available
There's no glibc wrapper for openat2() yet, so we need
to use syscall(__NR_openat2) ourself.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Diffstat (limited to 'lib/replace')
-rw-r--r-- | lib/replace/replace.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/replace/replace.c b/lib/replace/replace.c index e937d81dbd1..5ec2f7ccc56 100644 --- a/lib/replace/replace.c +++ b/lib/replace/replace.c @@ -1087,7 +1087,15 @@ ssize_t rep_copy_file_range(int fd_in, long rep_openat2(int dirfd, const char *pathname, struct open_how *how, size_t size) { +#ifdef __NR_openat2 + return syscall(__NR_openat2, + dirfd, + pathname, + how, + size); +#else errno = ENOSYS; return -1; +#endif } #endif /* !HAVE_OPENAT2 */ |