From: Julian Seward Date: Fri, 7 Nov 2014 00:05:56 +0000 (+0000) Subject: Add a no-op wrapper for a new-in-10.10 syscall: getattrlistbulk X-Git-Tag: svn/VALGRIND_3_11_0~847 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6f2d1b4dd5bd37da4ae4505ab3a0153c4e7e76ba;p=thirdparty%2Fvalgrind.git Add a no-op wrapper for a new-in-10.10 syscall: getattrlistbulk git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14701 --- diff --git a/coregrind/m_syswrap/priv_syswrap-darwin.h b/coregrind/m_syswrap/priv_syswrap-darwin.h index c9e2b59b66..e03d91e5c2 100644 --- a/coregrind/m_syswrap/priv_syswrap-darwin.h +++ b/coregrind/m_syswrap/priv_syswrap-darwin.h @@ -535,7 +535,7 @@ DECL_TEMPLATE(darwin, disconnectx); // 448 // NYI coalition // 458 // NYI coalition_info // 459 // NYI necp_match_policy // 460 -// NYI getattrlistbulk // 461 +DECL_TEMPLATE(darwin, getattrlistbulk); // 461 // 462 // NYI openat // 463 // NYI openat_nocancel // 464 diff --git a/coregrind/m_syswrap/syswrap-darwin.c b/coregrind/m_syswrap/syswrap-darwin.c index 016ef7f0df..5fda32a6d4 100644 --- a/coregrind/m_syswrap/syswrap-darwin.c +++ b/coregrind/m_syswrap/syswrap-darwin.c @@ -8924,6 +8924,25 @@ PRE(kernelrpc_mach_port_unguard_trap) #if DARWIN_VERS >= DARWIN_10_10 +PRE(sysctlbyname) +{ + // int sysctlbyname(const char *name, size_t namelen, void *old, + // size_t *oldlenp, void *new, size_t newlen) + PRINT("sysctlbyname(FIXME)(%lx(%s),%ld, %lx,%lx, %lx,%lx)", + ARG1, ARG1 ? (const HChar*)ARG1 : "(null)", + ARG2, ARG3, ARG4, ARG5, ARG6); +} + +PRE(getattrlistbulk) +{ + // int getattrlistbulk(int dirfd, struct attrlist *alist, + // void *attributeBuffer, size_t bufferSize, + // uint64_t options); + // Presumably the last arg is value-pair in the 32 bit case. + PRINT("getattrlistbulk(FIXME)(%ld, %lx, %lx, %lu, %lu)", + ARG1, ARG2, ARG3, ARG4, ARG5); +} + PRE(bsdthread_ctl) { // int bsdthread_ctl(user_addr_t cmd, user_addr_t arg1, @@ -8931,15 +8950,6 @@ PRE(bsdthread_ctl) PRINT("bsdthread_ctl(FIXME)(%lx,%lx,%lx,%lx)", ARG1, ARG2, ARG3, ARG4); } -PRE(sysctlbyname) -{ - // int sysctlbyname(const char *name, size_t namelen, void *old, - // size_t *oldlenp, void *new, size_t newlen) - PRINT("sysctlbyname(FIXME)(%lx(%s),%ld, %lx,%lx, %lx,%lx", - ARG1, ARG1 ? (const HChar*)ARG1 : "(null)", - ARG2, ARG3, ARG4, ARG5, ARG6); -} - #endif /* DARWIN_VERS >= DARWIN_10_10 */ @@ -9453,8 +9463,9 @@ const SyscallTableEntry ML_(syscall_table)[] = { MACX_(__NR_disconnectx, disconnectx), #endif #if DARWIN_VERS >= DARWIN_10_10 - MACX_(__NR_bsdthread_ctl, bsdthread_ctl), - MACX_(__NR_sysctlbyname, sysctlbyname), + MACX_(__NR_sysctlbyname, sysctlbyname), // 274 + MACX_(__NR_getattrlistbulk, getattrlistbulk), // 461 + MACX_(__NR_bsdthread_ctl, bsdthread_ctl), // 478 #endif // _____(__NR_MAXSYSCALL) MACX_(__NR_DARWIN_FAKE_SIGRETURN, FAKE_SIGRETURN) diff --git a/include/vki/vki-scnums-darwin.h b/include/vki/vki-scnums-darwin.h index 9146a5e165..49cdcac64e 100644 --- a/include/vki/vki-scnums-darwin.h +++ b/include/vki/vki-scnums-darwin.h @@ -712,6 +712,7 @@ #endif /* DARWIN_VERS >= DARWIN_10_9 */ #if DARWIN_VERS == DARWIN_10_10 +#define __NR_getattrlistbulk VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(461) #define __NR_bsdthread_ctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(478) #endif