From: Dmitry V. Levin Date: Tue, 23 Aug 2016 14:27:49 +0000 (+0000) Subject: Introduce a separate SEN entry for fstatat64 syscall X-Git-Tag: v4.14~174 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c4da489a74a7b7cad6ea8084eae31f2beb7cdf8d;p=strace Introduce a separate SEN entry for fstatat64 syscall * linux/dummy.h (sys_fstatat64): Redirect to sys_newfstatat. * linux/32/syscallent.h: Replace SEN(newfstatat) with SEN(fstatat64). * linux/alpha/syscallent.h: Likewise. * linux/arm/syscallent.h: Likewise. * linux/avr32/syscallent.h: Likewise. * linux/bfin/syscallent.h: Likewise. * linux/hppa/syscallent.h: Likewise. * linux/i386/syscallent.h: Likewise. * linux/m68k/syscallent.h: Likewise. * linux/microblaze/syscallent.h: Likewise. * linux/mips/syscallent-o32.h: Likewise. * linux/powerpc/syscallent.h: Likewise. * linux/s390/syscallent.h: Likewise. * linux/sh/syscallent.h: Likewise. * linux/sh64/syscallent.h: Likewise. * linux/sparc/syscallent.h: Likewise. * linux/sparc64/syscallent.h: Likewise. * linux/xtensa/syscallent.h: Likewise. * pathtrace.c (pathtrace_match): Handle SEN_fstatat64. --- diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h index 9c864855..7848c34d 100644 --- a/linux/32/syscallent.h +++ b/linux/32/syscallent.h @@ -80,7 +80,7 @@ [ 76] = { 6, TD, SEN(splice), "splice" }, [ 77] = { 4, TD, SEN(tee), "tee" }, [ 78] = { 4, TD|TF, SEN(readlinkat), "readlinkat" }, -[ 79] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[ 79] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [ 80] = { 2, TD, SEN(fstat64), "fstat64" }, [ 81] = { 0, 0, SEN(sync), "sync" }, [ 82] = { 1, TD, SEN(fsync), "fsync" }, diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h index eaa316fd..1c3bb548 100644 --- a/linux/alpha/syscallent.h +++ b/linux/alpha/syscallent.h @@ -417,7 +417,7 @@ [452] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [453] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [454] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[455] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[455] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [456] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [457] = { 4, TD|TF, SEN(renameat), "renameat" }, [458] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h index 18910e4b..75f37212 100644 --- a/linux/arm/syscallent.h +++ b/linux/arm/syscallent.h @@ -351,7 +351,7 @@ [324] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [325] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [326] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[327] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[327] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [328] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [329] = { 4, TD|TF, SEN(renameat), "renameat" }, [330] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/avr32/syscallent.h b/linux/avr32/syscallent.h index 0b4ceac3..9204c902 100644 --- a/linux/avr32/syscallent.h +++ b/linux/avr32/syscallent.h @@ -273,7 +273,7 @@ [245] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [246] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [247] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[248] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[248] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [249] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [250] = { 4, TD|TF, SEN(renameat), "renameat" }, [251] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h index dd99fa60..02259654 100644 --- a/linux/bfin/syscallent.h +++ b/linux/bfin/syscallent.h @@ -325,7 +325,7 @@ [297] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [298] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [299] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[300] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[300] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [301] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [302] = { 4, TD|TF, SEN(renameat), "renameat" }, [303] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/dummy.h b/linux/dummy.h index 87d21277..93a20346 100644 --- a/linux/dummy.h +++ b/linux/dummy.h @@ -59,6 +59,7 @@ #define sys_connect sys_bind #define sys_fchdir sys_close #define sys_fdatasync sys_close +#define sys_fstatat64 sys_newfstatat #define sys_fsync sys_close #define sys_getegid sys_getuid #define sys_getegid16 sys_geteuid16 diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h index 49280479..123bd03e 100644 --- a/linux/hppa/syscallent.h +++ b/linux/hppa/syscallent.h @@ -282,7 +282,7 @@ [277] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [278] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [279] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[280] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[280] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [281] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [282] = { 4, TD|TF, SEN(renameat), "renameat" }, [283] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/i386/syscallent.h b/linux/i386/syscallent.h index d6175fae..c0308c46 100644 --- a/linux/i386/syscallent.h +++ b/linux/i386/syscallent.h @@ -325,7 +325,7 @@ [297] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [298] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [299] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[300] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[300] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [301] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [302] = { 4, TD|TF, SEN(renameat), "renameat" }, [303] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/m68k/syscallent.h b/linux/m68k/syscallent.h index 0f4895c5..a98d2718 100644 --- a/linux/m68k/syscallent.h +++ b/linux/m68k/syscallent.h @@ -318,7 +318,7 @@ [290] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [291] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [292] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[293] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[293] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [294] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [295] = { 4, TD|TF, SEN(renameat), "renameat" }, [296] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h index 482e2757..f4f09a06 100644 --- a/linux/microblaze/syscallent.h +++ b/linux/microblaze/syscallent.h @@ -325,7 +325,7 @@ [297] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [298] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [299] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[300] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[300] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [301] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [302] = { 4, TD|TF, SEN(renameat), "renameat" }, [303] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/mips/syscallent-o32.h b/linux/mips/syscallent-o32.h index cb8afb96..965b32f2 100644 --- a/linux/mips/syscallent-o32.h +++ b/linux/mips/syscallent-o32.h @@ -293,7 +293,7 @@ [4290] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [4291] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [4292] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[4293] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[4293] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [4294] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [4295] = { 4, TD|TF, SEN(renameat), "renameat" }, [4296] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/powerpc/syscallent.h b/linux/powerpc/syscallent.h index b6dfb850..f6746496 100644 --- a/linux/powerpc/syscallent.h +++ b/linux/powerpc/syscallent.h @@ -317,7 +317,7 @@ [288] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [289] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [290] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[291] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[291] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [292] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [293] = { 4, TD|TF, SEN(renameat), "renameat" }, [294] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/s390/syscallent.h b/linux/s390/syscallent.h index fb5ddc1c..87ece157 100644 --- a/linux/s390/syscallent.h +++ b/linux/s390/syscallent.h @@ -321,7 +321,7 @@ [290] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [291] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [292] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[293] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[293] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [294] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [295] = { 4, TD|TF, SEN(renameat), "renameat" }, [296] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/sh/syscallent.h b/linux/sh/syscallent.h index d2b462d5..e4152a8e 100644 --- a/linux/sh/syscallent.h +++ b/linux/sh/syscallent.h @@ -325,7 +325,7 @@ [297] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [298] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [299] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[300] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[300] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [301] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [302] = { 4, TD|TF, SEN(renameat), "renameat" }, [303] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/sh64/syscallent.h b/linux/sh64/syscallent.h index 35048814..f99743ac 100644 --- a/linux/sh64/syscallent.h +++ b/linux/sh64/syscallent.h @@ -351,7 +351,7 @@ [325] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [326] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [327] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[328] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[328] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [329] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [330] = { 4, TD|TF, SEN(renameat), "renameat" }, [331] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/sparc/syscallent.h b/linux/sparc/syscallent.h index ec86f7e7..b2e51f30 100644 --- a/linux/sparc/syscallent.h +++ b/linux/sparc/syscallent.h @@ -287,7 +287,7 @@ [286] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [287] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [288] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[289] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[289] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [290] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [291] = { 4, TD|TF, SEN(renameat), "renameat" }, [292] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/sparc64/syscallent.h b/linux/sparc64/syscallent.h index 9bef6a6e..6f6b8c27 100644 --- a/linux/sparc64/syscallent.h +++ b/linux/sparc64/syscallent.h @@ -285,7 +285,7 @@ [286] = { 4, TD|TF, SEN(mknodat), "mknodat" }, [287] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [288] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[289] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[289] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [290] = { 3, TD|TF, SEN(unlinkat), "unlinkat" }, [291] = { 4, TD|TF, SEN(renameat), "renameat" }, [292] = { 5, TD|TF, SEN(linkat), "linkat" }, diff --git a/linux/xtensa/syscallent.h b/linux/xtensa/syscallent.h index ffb7d434..d553c51a 100644 --- a/linux/xtensa/syscallent.h +++ b/linux/xtensa/syscallent.h @@ -288,7 +288,7 @@ [296] = { 4, TD|TF, SEN(utimensat), "utimensat" }, [297] = { 5, TD|TF, SEN(fchownat), "fchownat" }, [298] = { 3, TD|TF, SEN(futimesat), "futimesat" }, -[299] = { 4, TD|TF, SEN(newfstatat), "fstatat64" }, +[299] = { 4, TD|TF, SEN(fstatat64), "fstatat64" }, [300] = { 3, TD|TF, SEN(fchmodat), "fchmodat" }, [301] = { 3, TD|TF, SEN(faccessat), "faccessat" }, [302 ... 303] = { }, diff --git a/pathtrace.c b/pathtrace.c index 74dc3a08..398fb287 100644 --- a/pathtrace.c +++ b/pathtrace.c @@ -174,6 +174,7 @@ pathtrace_match(struct tcb *tcp) case SEN_faccessat: case SEN_fchmodat: case SEN_fchownat: + case SEN_fstatat64: case SEN_futimesat: case SEN_inotify_add_watch: case SEN_mkdirat: