diff options
Diffstat (limited to 'lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc')
-rwxr-xr-x | lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc index 114841f76..4a24bdae6 100755 --- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc @@ -513,34 +513,3 @@ static void ioctl_common_post(void *ctx, const ioctl_desc *desc, int res, int d, return; return; // FIXME } - -#if SANITIZER_INTERCEPT_IOCTL -#define INIT_IOCTL \ - ioctl_init(); \ - INTERCEPT_FUNCTION(ioctl); -INTERCEPTOR(int, ioctl, int d, unsigned request, void *arg) { - void *ctx; - COMMON_INTERCEPTOR_ENTER(ctx, ioctl, d, request, arg); - - CHECK(ioctl_initialized); - - // Note: TSan does not use common flags, and they are zero-initialized. - // This effectively disables ioctl handling in TSan. - if (!common_flags()->handle_ioctl) - return REAL(ioctl)(d, request, arg); - - const ioctl_desc *desc = ioctl_lookup(request); - if (!desc) - Printf("WARNING: unknown ioctl %x\n", request); - - if (desc) - ioctl_common_pre(ctx, desc, d, request, arg); - int res = REAL(ioctl)(d, request, arg); - // FIXME: some ioctls have different return values for success and failure. - if (desc && res != -1) - ioctl_common_post(ctx, desc, res, d, request, arg); - return res; -} -#else -#define INIT_IOCTL -#endif |