diff options
| author | Jakob Unterwurzacher | 2017-02-16 21:16:42 +0100 | 
|---|---|---|
| committer | Jakob Unterwurzacher | 2017-02-16 21:16:42 +0100 | 
| commit | 45c1ea499ee7f1f4309f1f8aa8b78c16642662db (patch) | |
| tree | 58693f862af838096998e2f220f04468e3c4cb28 | |
| parent | 55d0523dbe405c52e651c2063e1479726e05c2c0 (diff) | |
fusefrontend_reverse: handle .name files in Access()
These were currently passed to decryptPath() were it caused
a warning.
| -rw-r--r-- | internal/fusefrontend_reverse/rfs.go | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/internal/fusefrontend_reverse/rfs.go b/internal/fusefrontend_reverse/rfs.go index 4a2cc06..bb3b0e5 100644 --- a/internal/fusefrontend_reverse/rfs.go +++ b/internal/fusefrontend_reverse/rfs.go @@ -228,11 +228,14 @@ func (rfs *ReverseFS) GetAttr(relPath string, context *fuse.Context) (*fuse.Attr  // Access - FUSE call  func (rfs *ReverseFS) Access(relPath string, mode uint32, context *fuse.Context) fuse.Status { -	if rfs.isTranslatedConfig(relPath) { -		return fuse.OK -	} -	if rfs.isDirIV(relPath) { -		return fuse.OK +	if rfs.isTranslatedConfig(relPath) || rfs.isDirIV(relPath) || rfs.isNameFile(relPath) { +		// Virtual files can always be read and never written +		var R_OK uint32 = 4 +		if mode == R_OK || mode == 0 { +			return fuse.OK +		} else { +			return fuse.EPERM +		}  	}  	absPath, err := rfs.abs(rfs.decryptPath(relPath))  	if err != nil { | 
