diff options
author | Mike Aizatsky <aizatsky@chromium.org> | 2016-05-18 20:49:49 +0000 |
---|---|---|
committer | Mike Aizatsky <aizatsky@chromium.org> | 2016-05-18 20:49:49 +0000 |
commit | a7c01c6b9c446ee27b17735c3d07a564a16e0a7e (patch) | |
tree | 9a46b32213da48764973f65f46f75832d109e4ee /lib/msan | |
parent | c1bc4d08a216167ffa284e4c7ee36d2807cd32f9 (diff) |
[sanitizer] Move *fstat to the common interceptors
Summary:
Adds *fstat to the common interceptors.
Removes the now-duplicate fstat interceptor from msan/tsan
This adds fstat to asan/esan, which previously did not intercept it.
Resubmit of http://reviews.llvm.org/D20318 with ios build fixes.
Reviewers: eugenis, vitalybuka, aizatsky
Subscribers: zaks.anna, kcc, bruening, kubabrecka, srhines, danalbert, tberghammer
Differential Revision: http://reviews.llvm.org/D20350
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@269981 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/msan')
-rw-r--r-- | lib/msan/msan_interceptors.cc | 65 |
1 files changed, 3 insertions, 62 deletions
diff --git a/lib/msan/msan_interceptors.cc b/lib/msan/msan_interceptors.cc index f23d3eeb3..71a8e6d64 100644 --- a/lib/msan/msan_interceptors.cc +++ b/lib/msan/msan_interceptors.cc @@ -684,64 +684,6 @@ INTERCEPTOR(int, putenv, char *string) { return res; } -#if !SANITIZER_FREEBSD -INTERCEPTOR(int, __fxstat, int magic, int fd, void *buf) { - ENSURE_MSAN_INITED(); - int res = REAL(__fxstat)(magic, fd, buf); - if (!res) - __msan_unpoison(buf, __sanitizer::struct_stat_sz); - return res; -} -#define MSAN_MAYBE_INTERCEPT___FXSTAT INTERCEPT_FUNCTION(__fxstat) -#else -#define MSAN_MAYBE_INTERCEPT___FXSTAT -#endif - -#if !SANITIZER_FREEBSD -INTERCEPTOR(int, __fxstat64, int magic, int fd, void *buf) { - ENSURE_MSAN_INITED(); - int res = REAL(__fxstat64)(magic, fd, buf); - if (!res) - __msan_unpoison(buf, __sanitizer::struct_stat64_sz); - return res; -} -#define MSAN_MAYBE_INTERCEPT___FXSTAT64 INTERCEPT_FUNCTION(__fxstat64) -#else -#define MSAN_MAYBE_INTERCEPT___FXSTAT64 -#endif - -#if SANITIZER_FREEBSD -INTERCEPTOR(int, fstatat, int fd, char *pathname, void *buf, int flags) { - ENSURE_MSAN_INITED(); - int res = REAL(fstatat)(fd, pathname, buf, flags); - if (!res) __msan_unpoison(buf, __sanitizer::struct_stat_sz); - return res; -} -# define MSAN_INTERCEPT_FSTATAT INTERCEPT_FUNCTION(fstatat) -#else -INTERCEPTOR(int, __fxstatat, int magic, int fd, char *pathname, void *buf, - int flags) { - ENSURE_MSAN_INITED(); - int res = REAL(__fxstatat)(magic, fd, pathname, buf, flags); - if (!res) __msan_unpoison(buf, __sanitizer::struct_stat_sz); - return res; -} -# define MSAN_INTERCEPT_FSTATAT INTERCEPT_FUNCTION(__fxstatat) -#endif - -#if !SANITIZER_FREEBSD -INTERCEPTOR(int, __fxstatat64, int magic, int fd, char *pathname, void *buf, - int flags) { - ENSURE_MSAN_INITED(); - int res = REAL(__fxstatat64)(magic, fd, pathname, buf, flags); - if (!res) __msan_unpoison(buf, __sanitizer::struct_stat64_sz); - return res; -} -#define MSAN_MAYBE_INTERCEPT___FXSTATAT64 INTERCEPT_FUNCTION(__fxstatat64) -#else -#define MSAN_MAYBE_INTERCEPT___FXSTATAT64 -#endif - INTERCEPTOR(int, pipe, int pipefd[2]) { if (msan_init_is_running) return REAL(pipe)(pipefd); @@ -1303,6 +1245,9 @@ int OnExit() { #define COMMON_INTERCEPTOR_FD_RELEASE(ctx, fd) \ do { \ } while (false) +#define COMMON_INTERCEPTOR_FD_ACCESS(ctx, fd) \ + do { \ + } while (false) #define COMMON_INTERCEPTOR_FD_SOCKET_ACCEPT(ctx, fd, newfd) \ do { \ } while (false) @@ -1549,10 +1494,6 @@ void InitializeInterceptors() { INTERCEPT_FUNCTION(putenv); INTERCEPT_FUNCTION(gettimeofday); INTERCEPT_FUNCTION(fcvt); - MSAN_MAYBE_INTERCEPT___FXSTAT; - MSAN_INTERCEPT_FSTATAT; - MSAN_MAYBE_INTERCEPT___FXSTAT64; - MSAN_MAYBE_INTERCEPT___FXSTATAT64; INTERCEPT_FUNCTION(pipe); INTERCEPT_FUNCTION(pipe2); INTERCEPT_FUNCTION(socketpair); |