]> granicus.if.org Git - strace/commitdiff
2003-09-06 Dmitry V. Levin <ldv@altlinux.org>
authorRoland McGrath <roland@redhat.com>
Thu, 13 Nov 2003 22:32:27 +0000 (22:32 +0000)
committerRoland McGrath <roland@redhat.com>
Thu, 13 Nov 2003 22:32:27 +0000 (22:32 +0000)
* util.c (printuid): New function.
* defs.h: Declare it.
* file.c (sys_chown): Use it.
* file.c (sys_fchown): Likewise.
* process.c (sys_setreuid, sys_setregid, sys_setresuid,
sys_setresgid): Likewise.

defs.h
file.c
util.c

diff --git a/defs.h b/defs.h
index 504cbf5f0bfc6a36b6dbef9fcc330f38598effde..bec6bebe864a74683454c669c1bfc6e52e721bee 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -441,6 +441,7 @@ extern void printsiginfo P((siginfo_t *, int));
 extern void printsock P((struct tcb *, long, int));
 extern void print_sock_optmgmt P((struct tcb *, long, int));
 extern void printrusage P((struct tcb *, long));
+extern void printuid P((const char *, unsigned long));
 extern int clearbpt P((struct tcb *));
 extern int setbpt P((struct tcb *));
 extern int sigishandled P((struct tcb *, int));
diff --git a/file.c b/file.c
index 8205d354c4e3ca4f8af1172d3b2e3c2c6cb53b85..5ab057ca69ebffa1bd6e4c5d0ff1758fa378e9a9 100644 (file)
--- a/file.c
+++ b/file.c
@@ -1721,7 +1721,8 @@ struct tcb *tcp;
 {
        if (entering(tcp)) {
                printpath(tcp, tcp->u_arg[0]);
-               tprintf(", %lu, %lu", tcp->u_arg[1], tcp->u_arg[2]);
+               printuid(", ", tcp->u_arg[1]);
+               printuid(", ", tcp->u_arg[2]);
        }
        return 0;
 }
@@ -1731,8 +1732,9 @@ sys_fchown(tcp)
 struct tcb *tcp;
 {
        if (entering(tcp)) {
-               tprintf("%ld, %lu, %lu",
-                       tcp->u_arg[0], tcp->u_arg[1], tcp->u_arg[2]);
+               tprintf("%ld", tcp->u_arg[0]);
+               printuid(", ", tcp->u_arg[1]);
+               printuid(", ", tcp->u_arg[2]);
        }
        return 0;
 }
diff --git a/util.c b/util.c
index c2ec5fe6029ce1bdee1189256f1dd09ff0d2ba32..7dcc5b3b134e4d00b0ee17957ef3a3633d849913 100644 (file)
--- a/util.c
+++ b/util.c
@@ -313,6 +313,15 @@ char *fmt;
        tprintf("]");
 }
 
+void
+printuid(text, uid)
+const char *text;
+unsigned long uid;
+{
+       tprintf("%s", text);
+       tprintf((uid == -1) ? "%ld" : "%lu", uid);
+}
+
 static char path[MAXPATHLEN + 1];
 
 void