]> granicus.if.org Git - strace/commitdiff
Alias sys_mkdir and sys_mkdirat to sys_chmod and sys_fchmodat
authorDmitry V. Levin <ldv@altlinux.org>
Mon, 1 Dec 2014 18:24:55 +0000 (18:24 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 1 Dec 2014 19:52:26 +0000 (19:52 +0000)
Special parsers for mkdir and mkdirat are redundant because
sys_chmod and sys_fchmodat implement the same decoding.

* file.c (decode_mkdir, sys_mkdir, sys_mkdirat): Remove.
* linux/dummy.h (sys_mkdir): Alias to sys_chmod.
(sys_mkdirat): Alias to sys_fchmodat.
* linux/syscall.h (sys_mkdir, sys_mkdirat): Remove.
* pathtrace.c (pathtrace_match): Do not check for sys_mkdirat.

file.c
linux/dummy.h
linux/syscall.h
pathtrace.c

diff --git a/file.c b/file.c
index 522b541f9cbf77eca31803b6c018b98c6e666c20..e4dd33b6aa0b6d91048bceff1a162314ddebf3d3 100644 (file)
--- a/file.c
+++ b/file.c
@@ -1347,30 +1347,6 @@ sys_chdir(struct tcb *tcp)
        return 0;
 }
 
-static int
-decode_mkdir(struct tcb *tcp, int offset)
-{
-       if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[offset]);
-               tprintf(", %#lo", tcp->u_arg[offset + 1]);
-       }
-       return 0;
-}
-
-int
-sys_mkdir(struct tcb *tcp)
-{
-       return decode_mkdir(tcp, 0);
-}
-
-int
-sys_mkdirat(struct tcb *tcp)
-{
-       if (entering(tcp))
-               print_dirfd(tcp, tcp->u_arg[0]);
-       return decode_mkdir(tcp, 1);
-}
-
 int
 sys_link(struct tcb *tcp)
 {
index 31be7b74bcb8846eb596212e5e2773324b3233f6..7a8b17caf9282a19eb6d7062c73f7d4b85e9ffa2 100644 (file)
@@ -68,6 +68,8 @@
 #define        sys_getresgid           sys_getresuid
 #define        sys_lstat               sys_stat
 #define        sys_lstat64             sys_stat64
+#define        sys_mkdir               sys_chmod
+#define        sys_mkdirat             sys_fchmodat
 #define        sys_mlock               sys_munmap
 #define        sys_mq_unlink           sys_chdir
 #define        sys_munlock             sys_munmap
index 0e6959897d7352fdc958a1b633a924ea19a41a7a..47c7a5080adc250b75a537bb8246b8be5518dcfc 100644 (file)
@@ -140,8 +140,6 @@ int sys_madvise();
 int sys_mbind();
 int sys_migrate_pages();
 int sys_mincore();
-int sys_mkdir();
-int sys_mkdirat();
 int sys_mknod();
 int sys_mknodat();
 int sys_mlockall();
index ccfb3c27369a063cfcda0d3355f933b5a3b7c7b9..28fc7c9ad8773c82c16bcc206a4514da922b6ec3 100644 (file)
@@ -181,7 +181,6 @@ pathtrace_match(struct tcb *tcp)
            s->sys_func == sys_faccessat ||
            s->sys_func == sys_fchmodat ||
            s->sys_func == sys_futimesat ||
-           s->sys_func == sys_mkdirat ||
            s->sys_func == sys_unlinkat ||
            s->sys_func == sys_newfstatat ||
            s->sys_func == sys_mknodat ||