本文整理汇总了Golang中github.com/hanwen/go-fuse/fuse/nodefs.File.Chown方法的典型用法代码示例。如果您正苦于以下问题:Golang File.Chown方法的具体用法?Golang File.Chown怎么用?Golang File.Chown使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/hanwen/go-fuse/fuse/nodefs.File
的用法示例。
在下文中一共展示了File.Chown方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Chown
func (n *pathInode) Chown(file nodefs.File, uid uint32, gid uint32, context *fuse.Context) (code fuse.Status) {
// Note that Linux currently (Linux 4.4) DOES NOT pass a file descriptor
// to FUSE for fchown. We still check because it may change in the future.
if file != nil {
code = file.Chown(uid, gid)
if code != fuse.ENOSYS {
return code
}
}
files := n.Inode().Files(fuse.O_ANYWRITE)
for _, f := range files {
// TODO - pass context
code = f.Chown(uid, gid)
if code.Ok() {
return code
}
}
if len(files) == 0 || code == fuse.ENOSYS || code == fuse.EBADF {
// TODO - can we get just FATTR_GID but not FATTR_UID ?
code = n.fs.Chown(n.GetPath(), uid, gid, context)
}
return code
}