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
This commit is contained in:
parent
a1fb456618
commit
e4f1a32a9a
|
@ -162,7 +162,8 @@ func (fs *FS) openWriteOnlyFile(dirfd int, cName string, newFlags int) (fuseFile
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fuse.ToStatus(err)
|
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
|
// Verify that we don't have read permissions
|
||||||
if perms&0400 != 0 {
|
if perms&0400 != 0 {
|
||||||
tlog.Warn.Printf("openWriteOnlyFile: unexpected permissions %#o, returning EPERM", perms)
|
tlog.Warn.Printf("openWriteOnlyFile: unexpected permissions %#o, returning EPERM", perms)
|
||||||
|
|
Loading…
Reference in New Issue