From 1aae061d4d685c606548b9b9110d9091f9271149 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Tue, 23 Aug 2016 23:39:45 +0000 Subject: [PATCH] Move redefinition of stat types to asm_stat.h * file.c: Move redefinition of types that might be used to define struct stat ... * linux/asm_stat.h: ... here. * tests/xstatx.c: Remove redefinition of stat types. --- file.c | 35 ------------------------------- linux/asm_stat.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++-- tests/xstatx.c | 20 ------------------ 3 files changed, 52 insertions(+), 57 deletions(-) diff --git a/file.c b/file.c index 30c2c239..4a7d1cb1 100644 --- a/file.c +++ b/file.c @@ -29,43 +29,8 @@ */ #include "defs.h" - -#undef dev_t -#undef ino_t -#undef mode_t -#undef nlink_t -#undef uid_t -#undef gid_t -#undef off_t -#undef loff_t -#define dev_t __kernel_dev_t -#define ino_t __kernel_ino_t -#define mode_t __kernel_mode_t -#define nlink_t __kernel_nlink_t -#define uid_t __kernel_uid_t -#define gid_t __kernel_gid_t -#define off_t __kernel_off_t -#define loff_t __kernel_loff_t - #include "asm_stat.h" -#undef dev_t -#undef ino_t -#undef mode_t -#undef nlink_t -#undef uid_t -#undef gid_t -#undef off_t -#undef loff_t -#define dev_t dev_t -#define ino_t ino_t -#define mode_t mode_t -#define nlink_t nlink_t -#define uid_t uid_t -#define gid_t gid_t -#define off_t off_t -#define loff_t loff_t - /* for S_IFMT */ #define stat libc_stat #define stat64 libc_stat64 diff --git a/linux/asm_stat.h b/linux/asm_stat.h index c941f22d..72a67e1d 100644 --- a/linux/asm_stat.h +++ b/linux/asm_stat.h @@ -1,2 +1,52 @@ -#include "kernel_types.h" -#include +#ifndef STRACE_ASM_STAT_H +#define STRACE_ASM_STAT_H + +# include "kernel_types.h" + +# undef dev_t +# undef gid_t +# undef ino_t +# undef loff_t +# undef mode_t +# undef nlink_t +# undef off64_t +# undef off_t +# undef time_t +# undef uid_t + +# define dev_t __kernel_dev_t +# define gid_t __kernel_gid_t +# define ino_t __kernel_ino_t +# define loff_t __kernel_loff_t +# define mode_t __kernel_mode_t +# define nlink_t __kernel_nlink_t +# define off64_t __kernel_off64_t +# define off_t __kernel_off_t +# define time_t __kernel_time_t +# define uid_t __kernel_uid_t + +# include + +# undef dev_t +# undef gid_t +# undef ino_t +# undef loff_t +# undef mode_t +# undef nlink_t +# undef off64_t +# undef off_t +# undef time_t +# undef uid_t + +# define dev_t dev_t +# define gid_t gid_t +# define ino_t ino_t +# define loff_t loff_t +# define mode_t mode_t +# define nlink_t nlink_t +# define off64_t off64_t +# define off_t off_t +# define time_t time_t +# define uid_t uid_t + +#endif /* !STRACE_ASM_STAT_H */ diff --git a/tests/xstatx.c b/tests/xstatx.c index 76b0ffb1..24867acc 100644 --- a/tests/xstatx.c +++ b/tests/xstatx.c @@ -97,26 +97,6 @@ typedef off_t libc_off_t; # undef st_atime # undef st_mtime # undef st_ctime -# undef dev_t -# undef gid_t -# undef ino_t -# undef loff_t -# undef mode_t -# undef nlink_t -# undef off64_t -# undef off_t -# undef time_t -# undef uid_t -# define dev_t __kernel_dev_t -# define gid_t __kernel_gid_t -# define ino_t __kernel_ino_t -# define loff_t __kernel_loff_t -# define mode_t __kernel_mode_t -# define nlink_t __kernel_nlink_t -# define off64_t __kernel_off64_t -# define off_t __kernel_off_t -# define time_t __kernel_time_t -# define uid_t __kernel_uid_t # include "asm_stat.h" # if STRUCT_STAT_IS_STAT64 # undef HAVE_STRUCT_STAT_ST_MTIME_NSEC -- 2.40.0