diff options
| author | Chuck Lever <chuck.lever@oracle.com> | 2013-03-16 15:55:10 -0400 |
|---|---|---|
| committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-03-29 15:43:33 -0400 |
| commit | a77c806fb9d097bb7733b64207cf52fc2c6438bb (patch) | |
| tree | 198d62d0436f22e7288142eb7341880a1b99ee3e /include/linux | |
| parent | 83523d083a045a2069e5f3443d2e4f810a6e6d9a (diff) | |
SUNRPC: Refactor nfsd4_do_encode_secinfo()
Clean up. This matches a similar API for the client side, and
keeps ULP fingers out the of the GSS mech switch.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Acked-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/sunrpc/auth.h | 4 | ||||
| -rw-r--r-- | include/linux/sunrpc/gss_api.h | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/sunrpc/auth.h b/include/linux/sunrpc/auth.h index 6851da4cb416..0dd00f4f6810 100644 --- a/include/linux/sunrpc/auth.h +++ b/include/linux/sunrpc/auth.h | |||
| @@ -106,6 +106,8 @@ struct rpc_authops { | |||
| 106 | void (*pipes_destroy)(struct rpc_auth *); | 106 | void (*pipes_destroy)(struct rpc_auth *); |
| 107 | int (*list_pseudoflavors)(rpc_authflavor_t *, int); | 107 | int (*list_pseudoflavors)(rpc_authflavor_t *, int); |
| 108 | rpc_authflavor_t (*info2flavor)(struct rpcsec_gss_info *); | 108 | rpc_authflavor_t (*info2flavor)(struct rpcsec_gss_info *); |
| 109 | int (*flavor2info)(rpc_authflavor_t, | ||
| 110 | struct rpcsec_gss_info *); | ||
| 109 | }; | 111 | }; |
| 110 | 112 | ||
| 111 | struct rpc_credops { | 113 | struct rpc_credops { |
| @@ -142,6 +144,8 @@ struct rpc_auth * rpcauth_create(rpc_authflavor_t, struct rpc_clnt *); | |||
| 142 | void rpcauth_release(struct rpc_auth *); | 144 | void rpcauth_release(struct rpc_auth *); |
| 143 | rpc_authflavor_t rpcauth_get_pseudoflavor(rpc_authflavor_t, | 145 | rpc_authflavor_t rpcauth_get_pseudoflavor(rpc_authflavor_t, |
| 144 | struct rpcsec_gss_info *); | 146 | struct rpcsec_gss_info *); |
| 147 | int rpcauth_get_gssinfo(rpc_authflavor_t, | ||
| 148 | struct rpcsec_gss_info *); | ||
| 145 | int rpcauth_list_flavors(rpc_authflavor_t *, int); | 149 | int rpcauth_list_flavors(rpc_authflavor_t *, int); |
| 146 | struct rpc_cred * rpcauth_lookup_credcache(struct rpc_auth *, struct auth_cred *, int); | 150 | struct rpc_cred * rpcauth_lookup_credcache(struct rpc_auth *, struct auth_cred *, int); |
| 147 | void rpcauth_init_cred(struct rpc_cred *, const struct auth_cred *, struct rpc_auth *, const struct rpc_credops *); | 151 | void rpcauth_init_cred(struct rpc_cred *, const struct auth_cred *, struct rpc_auth *, const struct rpc_credops *); |
diff --git a/include/linux/sunrpc/gss_api.h b/include/linux/sunrpc/gss_api.h index 96e5a81a54d7..fca23380e667 100644 --- a/include/linux/sunrpc/gss_api.h +++ b/include/linux/sunrpc/gss_api.h | |||
| @@ -133,6 +133,9 @@ void gss_mech_unregister(struct gss_api_mech *); | |||
| 133 | /* Given a GSS security tuple, look up a pseudoflavor */ | 133 | /* Given a GSS security tuple, look up a pseudoflavor */ |
| 134 | rpc_authflavor_t gss_mech_info2flavor(struct rpcsec_gss_info *); | 134 | rpc_authflavor_t gss_mech_info2flavor(struct rpcsec_gss_info *); |
| 135 | 135 | ||
| 136 | /* Given a pseudoflavor, look up a GSS security tuple */ | ||
| 137 | int gss_mech_flavor2info(rpc_authflavor_t, struct rpcsec_gss_info *); | ||
| 138 | |||
| 136 | /* Returns a reference to a mechanism, given a name like "krb5" etc. */ | 139 | /* Returns a reference to a mechanism, given a name like "krb5" etc. */ |
| 137 | struct gss_api_mech *gss_mech_get_by_name(const char *); | 140 | struct gss_api_mech *gss_mech_get_by_name(const char *); |
| 138 | 141 | ||
