def getattr(self, path, fh=None):
stat = self.send_cmd(cmd='stat', path=path)
if stat['status'] != 'ok':
raise FuseOSError(ENOENT)
fuse_stat = {}
# Set it to 777 access
fuse_stat['st_mode'] = 0
if stat['type'] == 'folder':
fuse_stat['st_mode'] |= S_IFDIR
else:
fuse_stat['st_mode'] |= S_IFREG
fuse_stat['st_size'] = stat.get('size', 0)
fuse_stat['st_ctime'] = dateparse(stat['created']).timestamp() # TODO change to local timezone
fuse_stat['st_mtime'] = dateparse(stat['updated']).timestamp()
fuse_stat['st_atime'] = dateparse(stat['updated']).timestamp() # TODO not supported ?
fuse_stat['st_mode'] |= S_IRWXU | S_IRWXG | S_IRWXO
fuse_stat['st_nlink'] = 1
fuse_stat['st_uid'] = os.getuid()
fuse_stat['st_gid'] = os.getgid()
return fuse_stat
评论列表
文章目录