kernel_optimize_test/fs/nfsd
J. Bruce Fields fdcaa4af5e nfsd4: readdirplus shouldn't return parent of export
commit 51b2ee7d006a736a9126e8111d1f24e4fd0afaa6 upstream.

If you export a subdirectory of a filesystem, a READDIRPLUS on the root
of that export will return the filehandle of the parent with the ".."
entry.

The filehandle is optional, so let's just not return the filehandle for
".." if we're at the root of an export.

Note that once the client learns one filehandle outside of the export,
they can trivially access the rest of the export using further lookups.

However, it is also not very difficult to guess filehandles outside of
the export.  So exporting a subdirectory of a filesystem should
considered equivalent to providing access to the entire filesystem.  To
avoid confusion, we recommend only exporting entire filesystems.

Reported-by: Youjipeng <wangzhibei1999@gmail.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Cc: stable@vger.kernel.org
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-01-23 16:03:58 +01:00
..
acl.h
auth.c
auth.h
blocklayout.c block: add a bdev_is_partition helper 2020-09-25 08:18:57 -06:00
blocklayoutxdr.c
blocklayoutxdr.h
cache.h nfsd4: make drc_slab global, not per-net 2020-06-01 17:44:45 -04:00
current_stateid.h
export.c NFSD: Map nfserr_wrongsec outside of nfsd_dispatch 2020-10-02 09:37:42 -04:00
export.h
fault_inject.c
filecache.c fsnotify: generalize handle_inode_event() 2020-12-30 11:54:18 +01:00
filecache.h
flexfilelayout.c
flexfilelayoutxdr.c
flexfilelayoutxdr.h
idmap.h
Kconfig NFSv4.2: Fix NFS4ERR_STALE error when doing inter server copy 2020-10-21 10:31:20 -04:00
lockd.c
Makefile nfsd: remove fault injection code 2020-09-25 18:01:26 -04:00
netns.h nfsd: netns.h: delete a duplicated word 2020-07-24 17:25:13 -04:00
nfs2acl.c NFSD: Hoist status code encoding into XDR encoder functions 2020-10-12 10:29:44 -04:00
nfs3acl.c NFSD: Hoist status code encoding into XDR encoder functions 2020-10-12 10:29:44 -04:00
nfs3proc.c NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL 2020-11-05 17:20:12 -05:00
nfs3xdr.c nfsd4: readdirplus shouldn't return parent of export 2021-01-23 16:03:58 +01:00
nfs4acl.c
nfs4callback.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
nfs4idmap.c nfsd: Use seq_putc() in two functions 2020-07-13 17:28:46 -04:00
nfs4layouts.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
nfs4proc.c NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy 2020-11-05 17:25:14 -05:00
nfs4recover.c nfsd: avoid a NULL dereference in __cld_pipe_upcall() 2020-07-13 17:28:46 -04:00
nfs4state.c NFSD: Fix 5 seconds delay when doing inter server copy 2020-12-30 11:53:44 +01:00
nfs4xdr.c NFSD: Encode a full READ_PLUS reply 2020-10-12 10:29:45 -04:00
nfscache.c silence nfscache allocation warnings with kvzalloc 2020-09-25 18:01:28 -04:00
nfsctl.c nfsd: remove fault injection code 2020-09-25 18:01:26 -04:00
nfsd.h nfsd: add defines for NFSv4.2 extended attribute support 2020-07-13 17:27:03 -04:00
nfsfh.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
nfsfh.h
nfsproc.c NFSD: Hoist status code encoding into XDR encoder functions 2020-10-12 10:29:44 -04:00
nfssvc.c nfsd: Fix message level for normal termination 2020-12-30 11:53:44 +01:00
nfsxdr.c NFSD: Hoist status code encoding into XDR encoder functions 2020-10-12 10:29:44 -04:00
pnfs.h
state.h nfsd: remove fault injection code 2020-09-25 18:01:26 -04:00
stats.c
stats.h
trace.c
trace.h nfsd: rename delegation related tracepoints to make them less confusing 2020-09-25 18:01:27 -04:00
vfs.c NFSD: Correct type annotations in user xattr helpers 2020-09-25 18:01:27 -04:00
vfs.h nfsd: define xattr functions to call into their vfs counterparts 2020-07-13 17:27:03 -04:00
xdr.h NFSD: Hoist status code encoding into XDR encoder functions 2020-10-12 10:29:44 -04:00
xdr3.h NFSD: Encoder and decoder functions are always present 2020-10-02 09:37:41 -04:00
xdr4.h NFSD: Encoder and decoder functions are always present 2020-10-02 09:37:41 -04:00
xdr4cb.h