From ddcc7405e68e6be2cce02dddde3fa6e019c62951 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 3 Aug 2025 21:22:10 +0200 Subject: fusefronted: report correct directory size in fstat Fixes https://github.com/rfjakob/gocryptfs/issues/951 --- internal/fusefrontend/file.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/fusefrontend/file.go b/internal/fusefrontend/file.go index bb9e539..afee158 100644 --- a/internal/fusefrontend/file.go +++ b/internal/fusefrontend/file.go @@ -436,7 +436,10 @@ func (f *File) Getattr(ctx context.Context, a *fuse.AttrOut) syscall.Errno { } f.rootNode.inoMap.TranslateStat(&st) a.FromStat(&st) - a.Size = f.rootNode.contentEnc.CipherSizeToPlainSize(a.Size) + if a.IsRegular() { + a.Size = f.rootNode.contentEnc.CipherSizeToPlainSize(a.Size) + } + // TODO: Handle symlink size similar to node.translateSize() if f.rootNode.args.ForceOwner != nil { a.Owner = *f.rootNode.args.ForceOwner } -- cgit v1.2.3