kernel-ark/net/sunrpc/auth_gss
Chuck Lever 9568c5e9a6 SUNRPC: Introduce rpcauth_get_pseudoflavor()
A SECINFO reply may contain flavors whose kernel module is not
yet loaded by the client's kernel.  A new RPC client API, called
rpcauth_get_pseudoflavor(), is introduced to do proper checking
for support of a security flavor.

When this API is invoked, the RPC client now tries to load the
module for each flavor first before performing the "is this
supported?" check.  This means if a module is available on the
client, but has not been loaded yet, it will be loaded and
registered automatically when the SECINFO reply is processed.

The new API can take a full GSS tuple (OID, QoP, and service).
Previously only the OID and service were considered.

nfs_find_best_sec() is updated to verify all flavors requested in a
SECINFO reply, including AUTH_NULL and AUTH_UNIX.  Previously these
two flavors were simply assumed to be supported without consulting
the RPC client.

Note that the replaced version of nfs_find_best_sec() can return
RPC_AUTH_MAXFLAVOR if the server returns a recognized OID but an
unsupported "service" value.  nfs_find_best_sec() now returns
RPC_AUTH_UNIX in this case.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2013-03-29 15:43:07 -04:00
..
auth_gss.c SUNRPC: Introduce rpcauth_get_pseudoflavor() 2013-03-29 15:43:07 -04:00
gss_generic_token.c net: return operator cleanup 2010-09-23 14:33:39 -07:00
gss_krb5_crypto.c SUNRPC: Don't use variable length automatic arrays in kernel code 2012-03-12 13:37:16 -04:00
gss_krb5_keys.c NFS: Don't use GFP_KERNEL in rpcsec_gss downcalls 2010-05-14 15:09:33 -04:00
gss_krb5_mech.c SUNRPC: Define rpcsec_gss_info structure 2013-03-29 15:42:56 -04:00
gss_krb5_seal.c SUNRPC: Fix a few sparse warnings 2012-03-11 19:30:02 -04:00
gss_krb5_seqnum.c net: return operator cleanup 2010-09-23 14:33:39 -07:00
gss_krb5_unseal.c gss_krb5: Add support for rc4-hmac encryption 2010-05-14 15:09:20 -04:00
gss_krb5_wrap.c sunrpc: trim off trailing checksum before returning decrypted or integrity authenticated buffer 2013-02-08 15:19:10 -05:00
gss_mech_switch.c SUNRPC: Introduce rpcauth_get_pseudoflavor() 2013-03-29 15:43:07 -04:00
Makefile Net: sunrpc: auth_gss: Makefile: Remove deprecated kbuild goal definitions 2010-11-22 08:16:16 -08:00
svcauth_gss.c Merge branch 'for-3.9' of git://linux-nfs.org/~bfields/linux 2013-02-28 18:02:55 -08:00