summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/fsimpl/devpts/slave.go
diff options
context:
space:
mode:
authorCraig Chi <craigchi@google.com>2020-07-14 15:42:47 -0700
committerCraig Chi <craigchi@google.com>2020-07-14 15:56:41 -0700
commit8494a0325d2ca7ba7bc9c17e55546f1665500660 (patch)
tree47942736bccdeddd71b58859eb65007d447ee6f9 /pkg/sentry/fsimpl/devpts/slave.go
parent8a0082f5f3aaad053873800feae8d0fb8b504c50 (diff)
Include context in kernfs.Inode.Stat method
To implement stat(2) in FUSE, we have to embed credentials and pid in request header. The information should be extracted from the context passed to VFS layer. Therefore `Stat()` signature in `kernfs.Inode` interface should include context as first argument. Some other fs implementations need to be modified as well, such as devpts, host, pipefs, and proc. Fixes #3235
Diffstat (limited to 'pkg/sentry/fsimpl/devpts/slave.go')
-rw-r--r--pkg/sentry/fsimpl/devpts/slave.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/pkg/sentry/fsimpl/devpts/slave.go b/pkg/sentry/fsimpl/devpts/slave.go
index cf1a0f0ac..2018b978a 100644
--- a/pkg/sentry/fsimpl/devpts/slave.go
+++ b/pkg/sentry/fsimpl/devpts/slave.go
@@ -73,8 +73,8 @@ func (si *slaveInode) Valid(context.Context) bool {
}
// Stat implements kernfs.Inode.Stat.
-func (si *slaveInode) Stat(vfsfs *vfs.Filesystem, opts vfs.StatOptions) (linux.Statx, error) {
- statx, err := si.InodeAttrs.Stat(vfsfs, opts)
+func (si *slaveInode) Stat(ctx context.Context, vfsfs *vfs.Filesystem, opts vfs.StatOptions) (linux.Statx, error) {
+ statx, err := si.InodeAttrs.Stat(ctx, vfsfs, opts)
if err != nil {
return linux.Statx{}, err
}
@@ -183,7 +183,7 @@ func (sfd *slaveFileDescription) SetStat(ctx context.Context, opts vfs.SetStatOp
// Stat implements vfs.FileDescriptionImpl.Stat.
func (sfd *slaveFileDescription) Stat(ctx context.Context, opts vfs.StatOptions) (linux.Statx, error) {
fs := sfd.vfsfd.VirtualDentry().Mount().Filesystem()
- return sfd.inode.Stat(fs, opts)
+ return sfd.inode.Stat(ctx, fs, opts)
}
// LockPOSIX implements vfs.FileDescriptionImpl.LockPOSIX.