linux/fs/nfsd
J. Bruce Fields 3ab4d8b121 knfsd: nfsd: set rq_client to ip-address-determined-domain
We want it to be possible for users to restrict exports both by IP address and
by pseudoflavor.  The pseudoflavor information has previously been passed
using special auth_domains stored in the rq_client field.  After the preceding
patch that stored the pseudoflavor in rq_pflavor, that's now superfluous; so
now we use rq_client for the ip information, as auth_null and auth_unix do.

However, we keep around the special auth_domain in the rq_gssclient field for
backwards compatibility purposes, so we can still do upcalls using the old
"gss/pseudoflavor" auth_domain if upcalls using the unix domain to give us an
appropriate export.  This allows us to continue supporting old mountd.

In fact, for this first patch, we always use the "gss/pseudoflavor"
auth_domain (and only it) if it is available; thus rq_client is ignored in the
auth_gss case, and this patch on its own makes no change in behavior; that
will be left to later patches.

Note on idmap: I'm almost tempted to just replace the auth_domain in the idmap
upcall by a dummy value--no version of idmapd has ever used it, and it's
unlikely anyone really wants to perform idmapping differently depending on the
where the client is (they may want to perform *credential* mapping
differently, but that's a different matter--the idmapper just handles id's
used in getattr and setattr).  But I'm updating the idmapd code anyway, just
out of general backwards-compatibility paranoia.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-17 10:23:07 -07:00
..
auth.c [PATCH] knfsd: nfsd: nfsd_setuser doesn't really need to modify rqstp->rq_cred. 2006-04-11 06:18:52 -07:00
export.c knfsd: nfsd: set rq_client to ip-address-determined-domain 2007-07-17 10:23:07 -07:00
lockd.c knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4 2007-07-17 10:23:07 -07:00
Makefile knfsd: trivial makefile cleanup 2007-05-09 12:30:54 -07:00
nfs2acl.c [PATCH] Fix a free-wrong-pointer bug in nfs/acl server. 2007-02-19 16:13:28 -08:00
nfs3acl.c [PATCH] NFS3: Calculate 'w' a bit later in nfs3svc_encode_getaclres() 2006-12-08 08:29:02 -08:00
nfs3proc.c RPC: add wrapper for svc_reserve to account for checksum 2007-05-09 12:30:54 -07:00
nfs3xdr.c knfsd: various nfsd xdr cleanups 2007-05-09 12:30:54 -07:00
nfs4acl.c knfsd: nfsd4: fix handling of acl errrors 2007-07-17 10:23:07 -07:00
nfs4callback.c knfsd: nfsd4: fix enc_stateid_sz for nfsd callbacks 2007-07-17 10:23:07 -07:00
nfs4idmap.c knfsd: nfsd: set rq_client to ip-address-determined-domain 2007-07-17 10:23:07 -07:00
nfs4proc.c knfsd: nfsd4: simplify exp_pseudoroot arguments 2007-07-17 10:23:07 -07:00
nfs4recover.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
nfs4state.c knfsd: nfsd4: don't delegate files that have had conflicts 2007-07-17 10:23:07 -07:00
nfs4xdr.c knfsd: nfsd4: simplify exp_pseudoroot arguments 2007-07-17 10:23:07 -07:00
nfscache.c [PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses 2007-02-12 09:48:36 -08:00
nfsctl.c knfsd: nfsd: remove unused header interface.h 2007-07-17 10:23:07 -07:00
nfsfh.c knfsd: nfsd: set rq_client to ip-address-determined-domain 2007-07-17 10:23:07 -07:00
nfsproc.c RPC: add wrapper for svc_reserve to account for checksum 2007-05-09 12:30:54 -07:00
nfssvc.c Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
nfsxdr.c knfsd: various nfsd xdr cleanups 2007-05-09 12:30:54 -07:00
stats.c [PATCH] knfsd: nfsd4: add per-operation server stats 2006-07-10 13:24:27 -07:00
vfs.c knfsd: nfsd: provide export lookup wrappers which take a svc_rqst 2007-07-17 10:23:07 -07:00