add dot and dot dot directories to sftp/ftp file listing

This commit is contained in:
Nicola Murino
2021-07-31 09:42:23 +02:00
parent f778e47d22
commit a26962f367
9 changed files with 71 additions and 22 deletions

View File

@@ -78,10 +78,15 @@ func (p *prefixMiddleware) Filelist(request *sftp.Request) (sftp.ListerAt, error
case pathIsPrefixParent:
switch request.Method {
case methodList:
now := time.Now()
fileName := p.nextListFolder(request.Filepath)
return listerAt([]os.FileInfo{
vfs.NewFileInfo(fileName, true, 0, time.Now(), false),
}), nil
files := make([]os.FileInfo, 0, 3)
files = append(files, vfs.NewFileInfo(".", true, 0, now, false))
if request.Filepath != "/" {
files = append(files, vfs.NewFileInfo("..", true, 0, now, false))
}
files = append(files, vfs.NewFileInfo(fileName, true, 0, now, false))
return listerAt(files), nil
case methodStat:
return listerAt([]os.FileInfo{
vfs.NewFileInfo(request.Filepath, true, 0, time.Now(), false),