From 2591900b6920a71f754779807bafeb01bfef5ab3 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner
Date: Tue, 28 Nov 2017 01:22:55 +0100
Subject: fusefrontend: Handle PlaintextNames mode in Unlink

In PlaintextNames mode the "gocryptfs.longname." prefix does not have any
special meaning. We should not attempt to delete any .name files.

Partially fixes https://github.com/rfjakob/gocryptfs/issues/174
---
 internal/fusefrontend/fs.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'internal')

diff --git a/internal/fusefrontend/fs.go b/internal/fusefrontend/fs.go
index a77eae0..46787e2 100644
--- a/internal/fusefrontend/fs.go
+++ b/internal/fusefrontend/fs.go
@@ -388,7 +388,7 @@ func (fs *FS) Unlink(path string, context *fuse.Context) (code fuse.Status) {
 	}
 
 	cName := filepath.Base(cPath)
-	if nametransform.IsLongContent(cName) {
+	if !fs.args.PlaintextNames && nametransform.IsLongContent(cName) {
 		var dirfd *os.File
 		dirfd, err = os.Open(filepath.Dir(cPath))
 		if err != nil {
-- 
cgit v1.2.3