diff options
author | Jakob Unterwurzacher | 2018-09-22 21:10:54 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2018-09-23 12:17:59 +0200 |
commit | e4f1a32a9a109805107fc0655006f2eedf75c52c (patch) | |
tree | 982203b2a29f961334e10d245c099dfc8fce8366 | |
parent | a1fb4566186ec38ec2b21b936f29df669efbfe4f (diff) |
fusefrontend: Fix uint16 build failure on Darwin
Error was:
# github.com/rfjakob/gocryptfs/internal/fusefrontend
internal/fusefrontend/fs.go:179: cannot use perms | 256 (type uint16) as type uint32 in argument to syscall.Fchmod
internal/fusefrontend/fs.go:185: cannot use perms (type uint16) as type uint32 in argument to syscall.Fchmod
-rw-r--r-- | internal/fusefrontend/fs.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/internal/fusefrontend/fs.go b/internal/fusefrontend/fs.go index 557393b..1b6941e 100644 --- a/internal/fusefrontend/fs.go +++ b/internal/fusefrontend/fs.go @@ -162,7 +162,8 @@ func (fs *FS) openWriteOnlyFile(dirfd int, cName string, newFlags int) (fuseFile if err != nil { return nil, fuse.ToStatus(err) } - perms := st.Mode & 0777 + // The cast to uint32 fixes a build failure on Darwin, where st.Mode is uint16. + perms := uint32(st.Mode & 0777) // Verify that we don't have read permissions if perms&0400 != 0 { tlog.Warn.Printf("openWriteOnlyFile: unexpected permissions %#o, returning EPERM", perms) |