9 #ifndef _LINUX_SUNRPC_AUTH_H
10 #define _LINUX_SUNRPC_AUTH_H
22 #define UNX_MAXNODENAME 32
29 const char *principal;
30 unsigned char machine_cred : 1;
42 struct rpc_auth * cr_auth;
43 const struct rpc_credops *cr_ops;
45 unsigned long cr_magic;
47 unsigned long cr_expire;
48 unsigned long cr_flags;
55 #define RPCAUTH_CRED_NEW 0
56 #define RPCAUTH_CRED_UPTODATE 1
57 #define RPCAUTH_CRED_HASHED 2
58 #define RPCAUTH_CRED_NEGATIVE 3
60 #define RPCAUTH_CRED_MAGIC 0x0f4aa4f0
68 unsigned int au_cslack;
71 unsigned int au_rslack;
73 unsigned int au_verfsize;
75 unsigned int au_flags;
76 const struct rpc_authops *au_ops;
77 rpc_authflavor_t au_flavor;
88 #define RPCAUTH_LOOKUP_NEW 0x01
95 rpc_authflavor_t au_flavor;
97 struct rpc_auth * (*create)(
struct rpc_clnt *, rpc_authflavor_t);
100 struct rpc_cred * (*lookup_cred)(
struct rpc_auth *,
struct auth_cred *,
int);
101 struct rpc_cred * (*crcreate)(
struct rpc_auth*,
struct auth_cred *,
int);
102 int (*pipes_create)(
struct rpc_auth *);
103 void (*pipes_destroy)(
struct rpc_auth *);
104 int (*list_pseudoflavors)(rpc_authflavor_t *,
int);
108 const char * cr_name;
109 int (*cr_init)(
struct rpc_auth *,
struct rpc_cred *);
110 void (*crdestroy)(
struct rpc_cred *);
112 int (*crmatch)(
struct auth_cred *,
struct rpc_cred *,
int);
113 struct rpc_cred * (*crbind)(
struct rpc_task *,
struct rpc_cred *,
int);
118 void *,
__be32 *,
void *);
119 int (*crunwrap_resp)(
struct rpc_task *, kxdrdproc_t,
120 void *,
__be32 *,
void *);
141 void rpcauth_init_cred(
struct rpc_cred *,
const struct auth_cred *,
struct rpc_auth *,
const struct rpc_credops *);
157 struct rpc_cred * get_rpccred(
struct rpc_cred *
cred)