mirror of
https://github.com/rclone/rclone.git
synced 2026-07-09 23:35:06 -04:00
Seekdir handled only a rewind to offset 0 and returned ENOTSUP otherwise. The stateless kernel NFS server opens a fresh directory handle and seeks to the last returned cookie on every readdir continuation, so any listing spanning more than one readdir batch failed over NFS. dirStream is a snapshot taken at Readdir time and go-fuse assigns each entry a sequential offset, so seeking to off positions the stream at index off; off == 0 still resets to the start, preserving the rewind/re-read behaviour. Before: ls of a directory that spans more than one readdir batch failed over NFS with "Unknown error 524". After: it lists correctly. Adds TestDirStreamSeekdir covering rewind, mid-stream resume and the EOF clamp. The full NFS path was validated against a real Linux nfs-kernel-server export over NFSv3, NFSv4.0 and NFSv4.2. Fixes #9547