]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
macos: Add a no-op wrapper for a new-in-10.10 syscall: faccessat
authorRhys Kidd <rhyskidd@gmail.com>
Sun, 30 Apr 2017 00:28:10 +0000 (00:28 +0000)
committerRhys Kidd <rhyskidd@gmail.com>
Sun, 30 Apr 2017 00:28:10 +0000 (00:28 +0000)
Patch from Louis Brunner.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16322

coregrind/m_syswrap/priv_syswrap-darwin.h
coregrind/m_syswrap/syswrap-darwin.c
include/vki/vki-scnums-darwin.h

index ea01eac9ca01bca7a5202ca6a16929cf7d78c062..1b3cc9b7977feedea91e71b37447b8a1bb1a7960 100644 (file)
@@ -569,7 +569,7 @@ DECL_TEMPLATE(darwin, getattrlistbulk);          // 461
 // NYI openat          // 463
 // NYI openat_nocancel // 464
 // NYI renameat        // 465
-// NYI faccessat       // 466
+DECL_TEMPLATE(darwin, faccessat);                // 466
 // NYI fchmodat        // 467
 // NYI fchownat        // 468
 // NYI fstatat         // 469
index 83e3c15ccda1e1f20605fddb7173aaee9d8b4bab..eb24688a88c65b770074cfa484aa24b51037fbe7 100644 (file)
@@ -9699,6 +9699,14 @@ POST(getattrlistbulk)
       POST_MEM_WRITE(ARG3, ARG4);
 }
 
+PRE(faccessat)
+{
+    PRINT("faccessat(FIXME)(fd:%ld, path:%#lx(%s), amode:%#lx, flag:%#lx)",
+        ARG1, ARG2, (HChar*)ARG2, ARG3, ARG4);
+    PRE_REG_READ4(int, "faccessat",
+                  int, fd, user_addr_t, path, int, amode, int, flag);
+}
+
 PRE(readlinkat)
 {
     Word  saved = SYSNO;
@@ -10321,6 +10329,7 @@ const SyscallTableEntry ML_(syscall_table)[] = {
    MACXY(__NR_sysctlbyname,        sysctlbyname),       // 274
    MACXY(__NR_necp_match_policy,   necp_match_policy),  // 460
    MACXY(__NR_getattrlistbulk,     getattrlistbulk),    // 461
+   MACX_(__NR_faccessat,           faccessat),          // 466
    MACX_(__NR_readlinkat,          readlinkat),         // 473
    MACX_(__NR_bsdthread_ctl,       bsdthread_ctl),      // 478
    MACX_(__NR_csrctl,              csrctl),             // 483
index 165aa06c17055833f1773535e62a0a1016d68baf..84b2d6df911d00cf03f3efcf4d796bcf7bd9eb7c 100644 (file)
 #endif /* DARWIN_VERS >= DARWIN_10_12 */
 
 #if DARWIN_VERS >= DARWIN_10_10
+#define __NR_faccessat              VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(466)
 #define __NR_readlinkat             VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(473)
 #define __NR_bsdthread_ctl          VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(478)
 #define __NR_csrctl                 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(483)