NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'.
SUNRPC has two sorts of credentials, both of which appear as "struct rpc_cred". There are "generic credentials" which are supplied by clients such as NFS and passed in 'struct rpc_message' to indicate which user should be used to authorize the request, and there are low-level credentials such as AUTH_NULL, AUTH_UNIX, AUTH_GSS which describe the credential to be sent over the wires. This patch replaces all the generic credentials by 'struct cred' pointers - the credential structure used throughout Linux. For machine credentials, there is a special 'struct cred *' pointer which is statically allocated and recognized where needed as having a special meaning. A look-up of a low-level cred will map this to a machine credential. Signed-off-by: NeilBrown <neilb@suse.com> Acked-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:

committed by
Anna Schumaker

parent
684f39b4cf
commit
a52458b48a
@@ -57,7 +57,7 @@ nfs4_renew_state(struct work_struct *work)
|
||||
const struct nfs4_state_maintenance_ops *ops;
|
||||
struct nfs_client *clp =
|
||||
container_of(work, struct nfs_client, cl_renewd.work);
|
||||
struct rpc_cred *cred;
|
||||
const struct cred *cred;
|
||||
long lease;
|
||||
unsigned long last, now;
|
||||
unsigned renew_flags = 0;
|
||||
@@ -90,7 +90,7 @@ nfs4_renew_state(struct work_struct *work)
|
||||
|
||||
/* Queue an asynchronous RENEW. */
|
||||
ret = ops->sched_state_renewal(clp, cred, renew_flags);
|
||||
put_rpccred(cred);
|
||||
put_cred(cred);
|
||||
switch (ret) {
|
||||
default:
|
||||
goto out_exp;
|
||||
|
Reference in New Issue
Block a user