sunrpc: Convert kuids and kgids to uids and gids for printing

When printing kuids and kgids for debugging purpropses convert them
to ordinary integers so their values can be fed to the oridnary
print functions.

Cc: "J. Bruce Fields" <bfields@fieldses.org>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
This commit is contained in:
Eric W. Biederman 2013-02-01 17:10:52 -08:00
parent 9132adb021
commit cdba321e29
3 changed files with 13 additions and 7 deletions

View File

@ -96,7 +96,9 @@ generic_create_cred(struct rpc_auth *auth, struct auth_cred *acred, int flags)
dprintk("RPC: allocated %s cred %p for uid %d gid %d\n", dprintk("RPC: allocated %s cred %p for uid %d gid %d\n",
gcred->acred.machine_cred ? "machine" : "generic", gcred->acred.machine_cred ? "machine" : "generic",
gcred, acred->uid, acred->gid); gcred,
from_kuid(&init_user_ns, acred->uid),
from_kgid(&init_user_ns, acred->gid));
return &gcred->gc_base; return &gcred->gc_base;
} }

View File

@ -517,7 +517,7 @@ gss_refresh_upcall(struct rpc_task *task)
int err = 0; int err = 0;
dprintk("RPC: %5u %s for uid %u\n", dprintk("RPC: %5u %s for uid %u\n",
task->tk_pid, __func__, cred->cr_uid); task->tk_pid, __func__, from_kuid(&init_user_ns, cred->cr_uid));
gss_msg = gss_setup_upcall(task->tk_client, gss_auth, cred); gss_msg = gss_setup_upcall(task->tk_client, gss_auth, cred);
if (PTR_ERR(gss_msg) == -EAGAIN) { if (PTR_ERR(gss_msg) == -EAGAIN) {
/* XXX: warning on the first, under the assumption we /* XXX: warning on the first, under the assumption we
@ -549,7 +549,8 @@ gss_refresh_upcall(struct rpc_task *task)
gss_release_msg(gss_msg); gss_release_msg(gss_msg);
out: out:
dprintk("RPC: %5u %s for uid %u result %d\n", dprintk("RPC: %5u %s for uid %u result %d\n",
task->tk_pid, __func__, cred->cr_uid, err); task->tk_pid, __func__,
from_kuid(&init_user_ns, cred->cr_uid), err);
return err; return err;
} }
@ -562,7 +563,8 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred)
DEFINE_WAIT(wait); DEFINE_WAIT(wait);
int err = 0; int err = 0;
dprintk("RPC: %s for uid %u\n", __func__, cred->cr_uid); dprintk("RPC: %s for uid %u\n",
__func__, from_kuid(&init_user_ns, cred->cr_uid));
retry: retry:
gss_msg = gss_setup_upcall(gss_auth->client, gss_auth, cred); gss_msg = gss_setup_upcall(gss_auth->client, gss_auth, cred);
if (PTR_ERR(gss_msg) == -EAGAIN) { if (PTR_ERR(gss_msg) == -EAGAIN) {
@ -604,7 +606,7 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred)
gss_release_msg(gss_msg); gss_release_msg(gss_msg);
out: out:
dprintk("RPC: %s for uid %u result %d\n", dprintk("RPC: %s for uid %u result %d\n",
__func__, cred->cr_uid, err); __func__, from_kuid(&init_user_ns, cred->cr_uid), err);
return err; return err;
} }
@ -1059,7 +1061,8 @@ gss_create_cred(struct rpc_auth *auth, struct auth_cred *acred, int flags)
int err = -ENOMEM; int err = -ENOMEM;
dprintk("RPC: %s for uid %d, flavor %d\n", dprintk("RPC: %s for uid %d, flavor %d\n",
__func__, acred->uid, auth->au_flavor); __func__, from_kuid(&init_user_ns, acred->uid),
auth->au_flavor);
if (!(cred = kzalloc(sizeof(*cred), GFP_NOFS))) if (!(cred = kzalloc(sizeof(*cred), GFP_NOFS)))
goto out_err; goto out_err;

View File

@ -65,7 +65,8 @@ unx_create_cred(struct rpc_auth *auth, struct auth_cred *acred, int flags)
unsigned int i; unsigned int i;
dprintk("RPC: allocating UNIX cred for uid %d gid %d\n", dprintk("RPC: allocating UNIX cred for uid %d gid %d\n",
acred->uid, acred->gid); from_kuid(&init_user_ns, acred->uid),
from_kgid(&init_user_ns, acred->gid));
if (!(cred = kmalloc(sizeof(*cred), GFP_NOFS))) if (!(cred = kmalloc(sizeof(*cred), GFP_NOFS)))
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);