[PATCH 1/8] keyctl: Use printuid for printing UID/GID

Eugene Syromyatnikov evgsyr at gmail.com
Thu Sep 29 12:56:02 UTC 2016


UID/GID are unsigned except special -1 value (which is also special in
context of specific keyctl commands), so special printing function
should be used.

* keyctl.c (keyctl_chown_key): Use printuid instead of printf with "%d"
  conversion for printing UID/GID.
  (keyctl_get_persistent): Likewise.
---
 keyctl.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/keyctl.c b/keyctl.c
index 456649e..ecb3e79 100644
--- a/keyctl.c
+++ b/keyctl.c
@@ -136,7 +136,8 @@ static void
 keyctl_chown_key(struct tcb *tcp, key_serial_t id, int user, int group)
 {
 	print_keyring_serial_number(id);
-	tprintf(", %d, %d", user, group);
+	printuid(", ", user);
+	printuid(", ", group);
 }
 
 static void
@@ -189,7 +190,8 @@ keyctl_set_timeout(struct tcb *tcp, key_serial_t id, unsigned timeout)
 static void
 keyctl_get_persistent(struct tcb *tcp, int uid, key_serial_t id)
 {
-	tprintf("%d, ", uid);
+	printuid("", uid);
+	tprintf(", ");
 	print_keyring_serial_number(id);
 }
 
-- 
1.7.10.4





More information about the Strace-devel mailing list