9 #include <linux/types.h>
10 #include <linux/module.h>
14 # define RPCDBG_FACILITY RPCDBG_AUTH
17 static struct rpc_auth null_auth;
18 static struct rpc_cred null_cred;
20 static struct rpc_auth *
21 nul_create(
struct rpc_clnt *clnt, rpc_authflavor_t flavor)
28 nul_destroy(
struct rpc_auth *
auth)
35 static struct rpc_cred *
36 nul_lookup_cred(
struct rpc_auth *
auth,
struct auth_cred *acred,
int flags)
38 return get_rpccred(&null_cred);
45 nul_destroy_cred(
struct rpc_cred *
cred)
53 nul_match(
struct auth_cred *acred,
struct rpc_cred *
cred,
int taskflags)
64 *p++ =
htonl(RPC_AUTH_NULL);
66 *p++ =
htonl(RPC_AUTH_NULL);
85 rpc_authflavor_t flavor;
89 if (flavor != RPC_AUTH_NULL) {
90 printk(
"RPC: bad verf flavor: %u\n", flavor);
96 printk(
"RPC: bad verf size: %u\n", size);
105 .au_flavor = RPC_AUTH_NULL,
107 .create = nul_create,
108 .destroy = nul_destroy,
109 .lookup_cred = nul_lookup_cred,
113 struct rpc_auth null_auth = {
117 .au_flavor = RPC_AUTH_NULL,
122 const struct rpc_credops null_credops = {
123 .cr_name =
"AUTH_NULL",
124 .crdestroy = nul_destroy_cred,
126 .crmatch = nul_match,
127 .crmarshal = nul_marshal,
128 .crrefresh = nul_refresh,
129 .crvalidate = nul_validate,
133 struct rpc_cred null_cred = {
135 .cr_auth = &null_auth,
136 .cr_ops = &null_credops,
138 .cr_flags = 1
UL << RPCAUTH_CRED_UPTODATE,
140 .cr_magic = RPCAUTH_CRED_MAGIC,