summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/fsimpl/fuse/file.go
diff options
context:
space:
mode:
authorRidwan Sharif <ridwanmsharif@google.com>2020-07-27 14:42:31 -0400
committerAndrei Vagin <avagin@gmail.com>2020-09-16 12:19:30 -0700
commit4a5857d644ae0e62090bbbed86852dceca79395c (patch)
treedb83d5ffdd979334781957050fbf6eb6d43a4741 /pkg/sentry/fsimpl/fuse/file.go
parentbc07df88878f47a496f8b364b286bf0b11c0e76f (diff)
fuse: Implement IterDirents for directory file description
Fixes #3255. This change adds support for IterDirents. You can now use `ls` in the FUSE sandbox. Co-authored-by: Craig Chi <craigchi@google.com>
Diffstat (limited to 'pkg/sentry/fsimpl/fuse/file.go')
-rw-r--r--pkg/sentry/fsimpl/fuse/file.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/pkg/sentry/fsimpl/fuse/file.go b/pkg/sentry/fsimpl/fuse/file.go
index 01d20caf6..186ec2362 100644
--- a/pkg/sentry/fsimpl/fuse/file.go
+++ b/pkg/sentry/fsimpl/fuse/file.go
@@ -42,6 +42,9 @@ type fileDescription struct {
// OpenFlag is the flag returned by open.
OpenFlag uint32
+
+ // off is the file offset.
+ off int64
}
func (fd *fileDescription) dentry() *kernfs.Dentry {
@@ -119,5 +122,6 @@ func (fd *fileDescription) Stat(ctx context.Context, opts vfs.StatOptions) (linu
// SetStat implements FileDescriptionImpl.SetStat.
func (fd *fileDescription) SetStat(ctx context.Context, opts vfs.SetStatOptions) error {
- return nil
+ creds := auth.CredentialsFromContext(ctx)
+ return fd.inode().SetStat(ctx, fd.inode().fs.VFSFilesystem(), creds, opts)
}