userns: Properly print bluetooth socket uids
authorEric W. Biederman <ebiederm@xmission.com>
Thu, 4 Oct 2012 03:32:17 +0000 (20:32 -0700)
committerEric W. Biederman <ebiederm@xmission.com>
Fri, 12 Oct 2012 20:16:47 +0000 (13:16 -0700)
With user namespace support enabled building bluetooth generated the warning.
net/bluetooth/af_bluetooth.c: In function ‘bt_seq_show’:
net/bluetooth/af_bluetooth.c:598:7: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 7 has type ‘kuid_t’ [-Wformat]

Convert sock_i_uid from a kuid_t to a uid_t before printing, to avoid
this problem.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Cc: Masatake YAMATO <yamato@redhat.com>
Cc: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
net/bluetooth/af_bluetooth.c

index 9d49ee6d72190c8f9b727ed98ee1ba9f0c256f48..ba033f09196ee45d7d6fbd170386a0d62af1d4ac 100644 (file)
@@ -591,7 +591,7 @@ static int bt_seq_show(struct seq_file *seq, void *v)
                           atomic_read(&sk->sk_refcnt),
                           sk_rmem_alloc_get(sk),
                           sk_wmem_alloc_get(sk),
-                          sock_i_uid(sk),
+                          from_kuid(seq_user_ns(seq), sock_i_uid(sk)),
                           sock_i_ino(sk),
                           &src_baswapped,
                           &dst_baswapped,