diff options
author | Benjamin Coddington <bcodding@redhat.com> | 2023-08-22 21:22:38 +0300 |
---|---|---|
committer | Anna Schumaker <Anna.Schumaker@Netapp.com> | 2023-08-30 18:08:27 +0300 |
commit | f67b55b6588bcf9316a1e6e8d529100a5aa3ebe6 (patch) | |
tree | c790d554977c94f9a4eda281a195dd9174872c1f /fs/nfs/nfs4session.h | |
parent | 51d674a5e4889f1c8e223ac131cf218e1631e423 (diff) | |
download | linux-f67b55b6588bcf9316a1e6e8d529100a5aa3ebe6.tar.xz |
NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN
Commit 64cfca85bacd asserts the only valid return values for
nfs2/3_decode_dirent should not include -ENAMETOOLONG, but for a server
that sends a filename3 which exceeds MAXNAMELEN in a READDIR response the
client's behavior will be to endlessly retry the operation.
We could map -ENAMETOOLONG into -EBADCOOKIE, but that would produce
truncated listings without any error. The client should return an error
for this case to clearly assert that the server implementation must be
corrected.
Fixes: 64cfca85bacd ("NFS: Return valid errors from nfs2/3_decode_dirent()")
Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs/nfs/nfs4session.h')
0 files changed, 0 insertions, 0 deletions