diff options
| author | Jakob Unterwurzacher | 2021-08-18 15:47:17 +0200 | 
|---|---|---|
| committer | Jakob Unterwurzacher | 2021-08-18 15:48:01 +0200 | 
| commit | 64793fedf4ac8eebe05c57af75877944c60f03a4 (patch) | |
| tree | 02f3d4840dabd2c1e49e3356293507edd898aa83 /internal/fusefrontend | |
| parent | dc52e3215147e3f805be64705ee9e07a2cc453ee (diff) | |
Fix issues found by ineffassign
gocryptfs$ ineffassign ./...
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/configfile/config_file.go:243:2: ineffectual assignment to scryptHash
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/configfile/config_file.go:272:2: ineffectual assignment to scryptHash
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/fusefrontend/file.go:285:3: ineffectual assignment to fileID
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/fusefrontend/node.go:367:3: ineffectual assignment to err
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/fusefrontend/node_open_create.go:68:2: ineffectual assignment to fd
/home/jakob/go/src/github.com/rfjakob/gocryptfs/mount.go:308:2: ineffectual assignment to masterkey
/home/jakob/go/src/github.com/rfjakob/gocryptfs/gocryptfs-xray/xray_main.go:156:13: ineffectual assignment to err
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/fusefrontend/prepare_syscall_test.go:65:16: ineffectual assignment to errno
/home/jakob/go/src/github.com/rfjakob/gocryptfs/internal/syscallcompat/open_nofollow_test.go:34:2: ineffectual assignment to fd
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/acl_test.go:111:6: ineffectual assignment to err
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/acl_test.go:181:2: ineffectual assignment to sz
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/acl_test.go:198:2: ineffectual assignment to sz
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/main_test.go:365:8: ineffectual assignment to err
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/xattr/xattr_fd_test.go:30:6: ineffectual assignment to err
/home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/xattr/xattr_fd_test.go:66:6: ineffectual assignment to err
Diffstat (limited to 'internal/fusefrontend')
| -rw-r--r-- | internal/fusefrontend/file.go | 11 | ||||
| -rw-r--r-- | internal/fusefrontend/node.go | 10 | ||||
| -rw-r--r-- | internal/fusefrontend/prepare_syscall_test.go | 4 | 
3 files changed, 12 insertions, 13 deletions
| diff --git a/internal/fusefrontend/file.go b/internal/fusefrontend/file.go index 716a0db..ef043ae 100644 --- a/internal/fusefrontend/file.go +++ b/internal/fusefrontend/file.go @@ -277,16 +277,13 @@ func (f *File) Read(ctx context.Context, buf []byte, off int64) (resultData fuse  // Empty writes do nothing and are allowed.  func (f *File) doWrite(data []byte, off int64) (uint32, syscall.Errno) {  	fileWasEmpty := false -	// Get the file ID, create a new one if it does not exist yet. -	var fileID []byte  	// The caller has exclusively locked ContentLock, which blocks all other  	// readers and writers. No need to take IDLock. -	if f.fileTableEntry.ID != nil { -		fileID = f.fileTableEntry.ID -	} else { -		// If the file ID is not cached, read it from disk +	// +	// If the file ID is not cached, read it from disk +	if f.fileTableEntry.ID == nil {  		var err error -		fileID, err = f.readFileID() +		fileID, err := f.readFileID()  		// Write a new file header if the file is empty  		if err == io.EOF {  			fileID, err = f.createHeader() diff --git a/internal/fusefrontend/node.go b/internal/fusefrontend/node.go index 8a3cfa2..7280624 100644 --- a/internal/fusefrontend/node.go +++ b/internal/fusefrontend/node.go @@ -354,23 +354,25 @@ func (n *Node) Symlink(ctx context.Context, target, name string, out *fuse.Entry  	if !rn.args.PlaintextNames && nametransform.IsLongContent(cName) {  		err = rn.nameTransform.WriteLongNameAt(dirfd, cName, name)  		if err != nil { -			errno = fs.ToErrno(err) -			return +			return nil, fs.ToErrno(err)  		}  		// Create "gocryptfs.longfile." symlink  		err = syscallcompat.SymlinkatUser(cTarget, dirfd, cName, ctx2)  		if err != nil {  			nametransform.DeleteLongNameAt(dirfd, cName) +			return nil, fs.ToErrno(err)  		}  	} else {  		// Create symlink  		err = syscallcompat.SymlinkatUser(cTarget, dirfd, cName, ctx2) +		if err != nil { +			return nil, fs.ToErrno(err) +		}  	}  	st, err := syscallcompat.Fstatat2(dirfd, cName, unix.AT_SYMLINK_NOFOLLOW)  	if err != nil { -		errno = fs.ToErrno(err) -		return +		return nil, fs.ToErrno(err)  	}  	// Report the plaintext size, not the encrypted blob size  	st.Size = int64(len(target)) diff --git a/internal/fusefrontend/prepare_syscall_test.go b/internal/fusefrontend/prepare_syscall_test.go index 28e655c..693f62a 100644 --- a/internal/fusefrontend/prepare_syscall_test.go +++ b/internal/fusefrontend/prepare_syscall_test.go @@ -63,8 +63,8 @@ func TestPrepareAtSyscall(t *testing.T) {  	syscall.Close(dirfd)  	dirfd, cName, errno = rn.prepareAtSyscall("dir1") -	if err != nil { -		t.Fatal(err) +	if errno != 0 { +		t.Fatal(errno)  	}  	if cName == "" {  		t.Fatal("cName should not be empty") | 
