From 38767ab5278f6fe62dcf70fc151e8a56cfffcfe4 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 26 Jun 2016 18:35:19 +0200 Subject: fuserfrontend: support truncate(2) by wrapping ftruncate(2) Support truncate(2) by opening the file and calling ftruncate(2) While the glibc "truncate" wrapper seems to always use ftruncate, fsstress from xfstests uses this a lot by calling "truncate64" directly. --- internal/fusefrontend/file.go | 2 ++ 1 file changed, 2 insertions(+) (limited to 'internal/fusefrontend/file.go') diff --git a/internal/fusefrontend/file.go b/internal/fusefrontend/file.go index 7f25172..780a792 100644 --- a/internal/fusefrontend/file.go +++ b/internal/fusefrontend/file.go @@ -489,6 +489,8 @@ func (f *file) GetAttr(a *fuse.Attr) fuse.Status { var allocateWarnOnce sync.Once // Allocate - FUSE call, fallocate(2) +// This is not implemented yet in gocryptfs, but it is neither in EncFS. This +// suggests that the user demand is low. func (f *file) Allocate(off uint64, sz uint64, mode uint32) fuse.Status { allocateWarnOnce.Do(func() { tlog.Warn.Printf("fallocate(2) is not supported, returning ENOSYS - see https://github.com/rfjakob/gocryptfs/issues/1") -- cgit v1.2.3