NFS: add support for multiple sec= mount options
authorWeston Andros Adamson <dros@netapp.com>
Fri, 18 Oct 2013 19:15:19 +0000 (15:15 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 28 Oct 2013 19:38:02 +0000 (15:38 -0400)
commit4d4b69dd847a098cdca341c45326f6c6f61b8691
treefdd1d7204d48f7af1f93f06844ee507e36dc917b
parent5837f6dfcb00f764976ddc178933e612702cbf54
NFS: add support for multiple sec= mount options

This patch adds support for multiple security options which can be
specified using a colon-delimited list of security flavors (the same
syntax as nfsd's exports file).

This is useful, for instance, when NFSv4.x mounts cross SECINFO
boundaries. With this patch a user can use "sec=krb5i,krb5p"
to mount a remote filesystem using krb5i, but can still cross
into krb5p-only exports.

New mounts will try all security options before failing.  NFSv4.x
SECINFO results will be compared against the sec= flavors to
find the first flavor in both lists or if no match is found will
return -EPERM.

Signed-off-by: Weston Andros Adamson <dros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/internal.h
fs/nfs/nfs4client.c
fs/nfs/nfs4namespace.c
fs/nfs/nfs4proc.c
fs/nfs/super.c
include/linux/nfs_xdr.h