summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/fs/inode_operations.go
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2020-02-07 22:50:34 +0000
committergVisor bot <gvisor-bot@google.com>2020-02-07 22:50:34 +0000
commitc59074e13f4238524f276b59269273e09b42ef83 (patch)
treee263d6a3e43fe67861c942d679b5c49edebf7a66 /pkg/sentry/fs/inode_operations.go
parentf254cdfc3df2b43550d3f2abac64cc06d13e3451 (diff)
parent17b9f5e66238bde1e4ed3bd9e5fb67342c8b58ec (diff)
Merge release-20200127.0-99-g17b9f5e (automated)
Diffstat (limited to 'pkg/sentry/fs/inode_operations.go')
-rw-r--r--pkg/sentry/fs/inode_operations.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/pkg/sentry/fs/inode_operations.go b/pkg/sentry/fs/inode_operations.go
index 70f2eae96..2bbfb72ef 100644
--- a/pkg/sentry/fs/inode_operations.go
+++ b/pkg/sentry/fs/inode_operations.go
@@ -190,7 +190,18 @@ type InodeOperations interface {
// ListXattr returns the set of all extended attributes names that
// have values. Inodes that do not support extended attributes return
// EOPNOTSUPP.
- ListXattr(ctx context.Context, inode *Inode) (map[string]struct{}, error)
+ //
+ // If this is called through the listxattr(2) syscall, size indicates the
+ // size of the buffer that the application has allocated to hold the
+ // attribute list. If the list would be larger than size, implementations may
+ // return ERANGE to indicate that the buffer is too small, but they are also
+ // free to ignore the hint entirely. All size checking is done independently
+ // at the syscall layer.
+ ListXattr(ctx context.Context, inode *Inode, size uint64) (map[string]struct{}, error)
+
+ // RemoveXattr removes an extended attribute specified by name. Inodes that
+ // do not support extended attributes return EOPNOTSUPP.
+ RemoveXattr(ctx context.Context, inode *Inode, name string) error
// Check determines whether an Inode can be accessed with the
// requested permission mask using the context (which gives access